2017-08-21 18:22:02 +02:00
|
|
|
---
|
|
|
|
title: invokeWithLayer
|
|
|
|
description: invokeWithLayer parameters, return type and example
|
|
|
|
---
|
|
|
|
## Method: invokeWithLayer
|
|
|
|
[Back to methods index](index.md)
|
|
|
|
|
|
|
|
|
|
|
|
### Parameters:
|
|
|
|
|
|
|
|
| Name | Type | Required |
|
|
|
|
|----------|---------------|----------|
|
|
|
|
|layer|[int](../types/int.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 |
|
|
|
|
|----------|---------------|
|
|
|
|
|AUTH_BYTES_INVALID|The provided authorization is invalid|
|
|
|
|
|CDN_METHOD_INVALID|You can't call this method in a CDN DC|
|
|
|
|
|CONNECTION_API_ID_INVALID|The provided API id is invalid|
|
2017-11-15 13:07:42 +01:00
|
|
|
|CONNECTION_DEVICE_MODEL_EMPTY|Device model empty|
|
2017-11-03 17:39:50 +01:00
|
|
|
|CONNECTION_LANG_PACK_INVALID|Language pack invalid|
|
2017-12-10 11:33:03 +01:00
|
|
|
|CONNECTION_NOT_INITED|Connection not initialized|
|
2017-11-15 13:07:42 +01:00
|
|
|
|CONNECTION_SYSTEM_EMPTY|Connection system empty|
|
2017-11-03 17:39:50 +01:00
|
|
|
|INPUT_LAYER_INVALID|The provided layer is invalid|
|
2017-11-15 13:07:42 +01:00
|
|
|
|INVITE_HASH_EXPIRED|The invite link has expired|
|
2017-12-10 11:33:03 +01:00
|
|
|
|NEED_MEMBER_INVALID|The provided member is invalid|
|
2017-11-08 13:04:40 +01:00
|
|
|
|CHAT_WRITE_FORBIDDEN|You can't write in this chat|
|
2017-11-03 17:39:50 +01:00
|
|
|
|
|
|
|
|
2017-08-21 18:22:02 +02:00
|
|
|
### Example:
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
$MadelineProto = new \danog\MadelineProto\API();
|
2017-12-11 12:12:38 +01:00
|
|
|
$MadelineProto->session = 'mySession.madeline';
|
2017-08-21 18:22:02 +02:00
|
|
|
if (isset($token)) { // Login as a bot
|
|
|
|
$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
|
2017-08-21 18:22:02 +02:00
|
|
|
$MadelineProto->complete_phone_login($code);
|
|
|
|
}
|
|
|
|
|
|
|
|
$X = $MadelineProto->invokeWithLayer(['layer' => int, 'query' => !X, ]);
|
|
|
|
```
|
|
|
|
|
|
|
|
Or, if you're using the [PWRTelegram HTTP API](https://pwrtelegram.xyz):
|
|
|
|
|
|
|
|
### As a bot:
|
|
|
|
|
|
|
|
POST/GET to `https://api.pwrtelegram.xyz/botTOKEN/madeline`
|
|
|
|
|
|
|
|
Parameters:
|
|
|
|
|
|
|
|
* method - invokeWithLayer
|
|
|
|
* params - `{"layer": int, "query": !X, }`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### As a user:
|
|
|
|
|
|
|
|
POST/GET to `https://api.pwrtelegram.xyz/userTOKEN/invokeWithLayer`
|
|
|
|
|
|
|
|
Parameters:
|
|
|
|
|
|
|
|
layer - Json encoded int
|
|
|
|
|
|
|
|
query - Json encoded !X
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Or, if you're into Lua:
|
|
|
|
|
|
|
|
```
|
|
|
|
X = invokeWithLayer({layer=int, query=!X, })
|
|
|
|
```
|
|
|
|
|