MadelineProtoDocs/docs/completePhoneLogin.md

36 lines
1.5 KiB
Markdown
Raw Normal View History

2018-04-01 13:19:25 +02:00
---
2020-01-05 17:55:38 +01:00
title: completePhoneLogin
description: completePhoneLogin parameters, return type and example
redirect_from: /complete_phone_login.html
2018-04-01 13:19:25 +02:00
---
## Method: complete\_phone\_login
### Parameters:
| Name | Type |
|----------|---------------|
|code| A string with the phone code|
2020-02-26 15:46:13 +01:00
### Return type: [auth.Authorization](API_docs/types/auth.Authorization.md) or [account.Password](http://docs.madelineproto.xyz/API_docs/types/account_Password.html) or `['_' => 'account.needSignup']`
2018-04-01 13:19:25 +02:00
2020-01-05 17:55:38 +01:00
You must then use [complete2falogin](complete2FALogin.md) or [completeSignup](completeSignup.md) to login or signup, or simply start using `$MadelineProto` if the result is a `auth.Authorization` object.
2018-04-01 13:19:25 +02:00
2019-06-01 18:08:28 +02:00
### Example ([now fully async!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
2018-04-01 13:19:25 +02:00
```php
2019-10-29 22:23:35 +01:00
yield $MadelineProto->phoneLogin(readline('Enter your phone number: '));
$authorization = yield $MadelineProto->completePhoneLogin(readline('Enter the code you received: '));
2018-04-01 13:19:25 +02:00
if ($authorization['_'] === 'account.noPassword') {
throw new \danog\MadelineProto\Exception('2FA is enabled but no password is set!');
}
if ($authorization['_'] === 'account.password') {
2020-01-05 17:55:38 +01:00
$authorization = yield $MadelineProto->complete2falogin(readline('Please enter your password (hint '.$authorization['hint'].'): '));
2018-04-01 13:19:25 +02:00
}
if ($authorization['_'] === 'account.needSignup') {
2019-10-29 22:23:35 +01:00
$authorization = yield $MadelineProto->completeSignup(readline('Please enter your first name: '), readline('Please enter your last name (can be empty): '));
2018-04-01 13:19:25 +02:00
}
```