MadelineProto/docs/API_docs/methods/initConnection.md

98 lines
2.5 KiB
Markdown
Raw Normal View History

2016-12-20 13:15:22 +01:00
---
title: initConnection
2016-12-20 13:32:11 +01:00
description: initConnection parameters, return type and example
2016-12-20 13:15:22 +01:00
---
## Method: initConnection
2016-12-20 13:15:22 +01:00
[Back to methods index](index.md)
### Parameters:
| Name | Type | Required |
2017-08-20 11:05:56 +02:00
|----------|---------------|----------|
|api\_id|[int](../types/int.md) | Yes|
|device\_model|[string](../types/string.md) | Yes|
|system\_version|[string](../types/string.md) | Yes|
|app\_version|[string](../types/string.md) | Yes|
2017-06-30 15:36:33 +02:00
|system\_lang\_code|[string](../types/string.md) | Yes|
|lang\_pack|[string](../types/string.md) | Yes|
|lang\_code|[string](../types/string.md) | Yes|
|query|[!X](../types/!X.md) | Yes|
### Return type: [X](../types/X.md)
2017-08-28 12:44:50 +02:00
### Can bots use this method: **YES**
2017-11-03 17:39:50 +01:00
### Errors this method can return:
| Error | Description |
|----------|---------------|
|CONNECTION_LAYER_INVALID|Layer invalid|
|INPUT_FETCH_FAIL|Failed deserializing TL payload|
### Example:
```
$MadelineProto = new \danog\MadelineProto\API();
2017-12-11 12:12:38 +01:00
$MadelineProto->session = 'mySession.madeline';
if (isset($token)) { // Login as a bot
2017-06-19 18:56:47 +02:00
$MadelineProto->bot_login($token);
}
if (isset($number)) { // Login as a user
2017-12-11 12:12:38 +01:00
$MadelineProto->phone_login($number);
$code = readline('Enter the code you received: '); // Or do this in two separate steps in an HTTP API
$MadelineProto->complete_phone_login($code);
}
2017-07-23 16:33:46 +02:00
$X = $MadelineProto->initConnection(['api_id' => int, 'device_model' => 'string', 'system_version' => 'string', 'app_version' => 'string', 'system_lang_code' => 'string', 'lang_pack' => 'string', 'lang_code' => 'string', 'query' => !X, ]);
2017-02-13 04:33:06 +01:00
```
2017-07-24 01:32:29 +02:00
Or, if you're using the [PWRTelegram HTTP API](https://pwrtelegram.xyz):
2017-07-23 16:11:02 +02:00
### As a bot:
POST/GET to `https://api.pwrtelegram.xyz/botTOKEN/madeline`
Parameters:
* method - initConnection
2017-07-23 16:40:54 +02:00
* params - `{"api_id": int, "device_model": "string", "system_version": "string", "app_version": "string", "system_lang_code": "string", "lang_pack": "string", "lang_code": "string", "query": !X, }`
2017-07-23 16:11:02 +02:00
2017-07-23 16:34:36 +02:00
2017-07-23 16:11:02 +02:00
### As a user:
POST/GET to `https://api.pwrtelegram.xyz/userTOKEN/initConnection`
Parameters:
api_id - Json encoded int
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
device_model - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
system_version - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
app_version - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
system_lang_code - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
lang_pack - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
lang_code - Json encoded string
2017-08-20 19:09:52 +02:00
2017-07-23 16:11:02 +02:00
query - Json encoded !X
2017-07-23 16:40:54 +02:00
2017-07-23 16:11:02 +02:00
2017-08-20 19:09:52 +02:00
Or, if you're into Lua:
```
2017-07-23 16:33:46 +02:00
X = initConnection({api_id=int, device_model='string', system_version='string', app_version='string', system_lang_code='string', lang_pack='string', lang_code='string', query=!X, })
```