1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-03-19 21:17:55 +02:00

Main build (Jenkins)

This commit is contained in:
Vitaly the Alpaca (bot) 2025-01-16 21:22:31 +03:00
parent 9957d76d21
commit 003878a3cb
78 changed files with 7482 additions and 6462 deletions
ci
docs
en
ru
service/dictionaries
src
en
OInt
core/Modules
tests/Modules/internal
tools/Modules
OPI/src/CommonModules
OPI_SQLite
OPI_Telegram
OPI_TestDataRetrieval
OPI_Tests
cli/data/Classes/internal/Classes
ru
OInt
OPI/src/CommonModules
OPI_Telegram
OPI_ПолучениеДанныхТестов
OPI_Тесты
cli/data/Classes/internal/Classes

20
ci/clitesten vendored

@ -2080,6 +2080,22 @@ def test_telegram(){
powershell encoding: 'UTF-8', script:'./oint.exe telegram ForwardMessage --token "test" --message "test" --from "test" --to "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram DeleteMessage --token "test" --chat "test" --message "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ReplaceMessageKeyboard --token "test" --chat "test" --message "test" --keyboard "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ReplaceMessageText --token "test" --chat "test" --message "test" --text "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ReplaceMessageCaption --token "test" --chat "test" --message "test" --caption "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram FormKeyboardFromButtonArray --buttons "test" --under "test" --column "test" --debug --test '
}
@ -2108,10 +2124,6 @@ def test_telegram(){
powershell encoding: 'UTF-8', script:'./oint.exe telegram GetParticipantCount --token "test" --chat "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram DeleteMessage --token "test" --chat "test" --message "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram GetAvatarIconList --token "test" --debug --test '
}

20
ci/clitestru vendored

@ -2080,6 +2080,22 @@ def test_telegram(){
powershell encoding: 'UTF-8', script:'./oint.exe telegram ПереслатьСообщение --token "test" --message "test" --from "test" --to "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram УдалитьСообщение --token "test" --chat "test" --message "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ЗаменитьКлавиатуруСообщения --token "test" --chat "test" --message "test" --keyboard "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ЗаменитьТекстСообщения --token "test" --chat "test" --message "test" --text "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ЗаменитьОписаниеСообщения --token "test" --chat "test" --message "test" --caption "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram СформироватьКлавиатуруПоМассивуКнопок --buttons "test" --under "test" --column "test" --debug --test '
}
@ -2108,10 +2124,6 @@ def test_telegram(){
powershell encoding: 'UTF-8', script:'./oint.exe telegram ПолучитьЧислоУчастников --token "test" --chat "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram УдалитьСообщение --token "test" --chat "test" --message "test" --debug --test '
}
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
powershell encoding: 'UTF-8', script:'./oint.exe telegram ПолучитьСписокИконокАватаров --token "test" --debug --test '
}

@ -0,0 +1,5 @@
{
"Token": "6129457865:AAFyzNYOAFbu...",
"ChatID": "461699897",
"MessageID": "11410"
}

@ -0,0 +1,5 @@
{
"Token": "6129457865:AAFyzNYOAFbu...",
"ChatID": "461699897",
"MessageID": "11407"
}

@ -0,0 +1,5 @@
{
"Token": "6129457865:AAFyzNYOAFbu...",
"ChatID": "@testsichee",
"MessageID": "13750"
}

@ -1,5 +1,5 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.DeleteMessage(Token, ChatID, MessageID);

@ -1,4 +1,4 @@
 FileID = "CQACAgIAAx0EcNsaZQACNTlng31PuqBvkPeTPp8xD72I9FoCTgACLGwAArP5GEgOZru32ZP8fzYE";
 FileID = "AgACAgIAAxkDAAIrBWdz-63HiyuuYGJK5nyqPoP6ZZ-0AAJz6DEbE_WgS78HisbQ9AQ_AQADAgADcwADNgQ";
Token = "6129457865:AAFyzNYOAFbu...";
Result = OPI_Telegram.DownloadFile(Token, FileID);

@ -1,6 +1,6 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.ForwardMessage(Token, MessageID, ChannelID, ChatID);

@ -1,5 +1,5 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.PinMessage(Token, ChannelID, MessageID);

@ -0,0 +1,6 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
MessageID = "11410";
Description = "New picture description";
Result = OPI_Telegram.ReplaceMessageCaption(Token, ChatID, MessageID, Description);

@ -0,0 +1,12 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
MessageID = "11407";
ButtonArray = New Array;
ButtonArray.Add("New button 3");
ButtonArray.Add("New button 2");
ButtonArray.Add("New button 1");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(ButtonArray, True, False);
Result = OPI_Telegram.ReplaceMessageKeyboard(Token, ChatID, MessageID, Keyboard);

@ -0,0 +1,6 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "@testsichee";
MessageID = "13750";
Text = "New message text";
Result = OPI_Telegram.ReplaceMessageText(Token, ChatID, MessageID, Text);

@ -3,6 +3,11 @@
ChannelID = "@testsichee";
Text = "Строковое значение";
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
KeyboardButtonsArray = New Array;
KeyboardButtonsArray.Add("Button1");
KeyboardButtonsArray.Add("Button2");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(KeyboardButtonsArray, True);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text);

@ -1,5 +1,5 @@
 Token = "6129457865:AAFyzNYOAFbu...";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.UnpinMessage(Token, ChannelID, MessageID);

@ -22,9 +22,7 @@ import TabItem from '@theme/TabItem';
<br/>
:::tip
The use of the `raw` feature is necessary for compound constructions like `BEETWEEN`. For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 `^^.
where `?1 = "10 AND 20,"' which would cause an error.
The use of the `raw` feature is necessary for compound constructions like `BEETWEEN`. For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 ` where `?1 = "10 AND 20,"' which would cause an error.
In such a case, you must use `raw:true` to set the condition directly in the query text
:::

@ -33,7 +33,7 @@ Method at API documentation: [pinChatMessage](https://core.telegram.org/bots/api
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.PinMessage(Token, ChannelID, MessageID);
```

@ -33,7 +33,7 @@ Method at API documentation: [unpinChatMessage](https://core.telegram.org/bots/a
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.UnpinMessage(Token, ChannelID, MessageID);
```

@ -30,7 +30,7 @@ Method at API documentation: [getFile](https://core.telegram.org/bots/api#getfil
```bsl title="1C:Enterprise/OneScript code example"
FileID = "CQACAgIAAx0EcNsaZQACNTlng31PuqBvkPeTPp8xD72I9FoCTgACLGwAArP5GEgOZru32ZP8fzYE";
FileID = "AgACAgIAAxkDAAIrBWdz-63HiyuuYGJK5nyqPoP6ZZ-0AAJz6DEbE_WgS78HisbQ9AQ_AQADAgADcwADNgQ";
Token = "6129457865:AAFyzNYOAFbu...";
Result = OPI_Telegram.DownloadFile(Token, FileID);

@ -1,5 +1,5 @@
---
sidebar_position: 7
sidebar_position: 12
---
import Tabs from '@theme/Tabs';
@ -33,7 +33,7 @@ Method at API documentation: [deleteMessage](https://core.telegram.org/bots/api#
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.DeleteMessage(Token, ChatID, MessageID);
```

@ -1,5 +1,5 @@
---
sidebar_position: 12
sidebar_position: 16
---
import Tabs from '@theme/Tabs';

@ -35,7 +35,7 @@ Method at API documentation: [forwardMessage](https://core.telegram.org/bots/api
Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
ChannelID = "@testsichee";
MessageID = "13617";
MessageID = "13750";
Result = OPI_Telegram.ForwardMessage(Token, MessageID, ChannelID, ChatID);
```

@ -0,0 +1,46 @@
---
sidebar_position: 15
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Replace message caption
Replaces text in a message with media attachments
`Function ReplaceMessageCaption(Val Token, Val ChatID, Val MessageID, Val Description) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| Token | --token | String | &#x2714; | Token |
| ChatID | --chat | String, Number | &#x2714; | Target chat ID |
| MessageID | --message | String, Number | &#x2714; | ID of message to delete |
| Description | --caption | String | &#x2714; | New message description |
Returns: Map Of KeyAndValue - serialized JSON response from Telegram
<br/>
:::tip
Method at API documentation: [editMessageCaption](https://core.telegram.org/bots/api#editmessagecaption)
:::
<br/>
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
MessageID = "11410";
Description = "New picture description";
Result = OPI_Telegram.ReplaceMessageCaption(Token, ChatID, MessageID, Description);
```

@ -0,0 +1,52 @@
---
sidebar_position: 13
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Replace message keyboard
Replaces the message keyboard with a new one
`Function ReplaceMessageKeyboard(Val Token, Val ChatID, Val MessageID, Val Keyboard) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| Token | --token | String | &#x2714; | Token |
| ChatID | --chat | String, Number | &#x2714; | Target chat ID |
| MessageID | --message | String, Number | &#x2714; | ID of message to delete |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2714; | Keyboard. See FormKeyboardFromButtonArray |
Returns: Map Of KeyAndValue - serialized JSON response from Telegram
<br/>
:::tip
Method at API documentation: [editMessageReplyMarkup](https://core.telegram.org/bots/api#editmessagereplymarkup)
:::
<br/>
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "461699897";
MessageID = "11407";
ButtonArray = New Array;
ButtonArray.Add("New button 3");
ButtonArray.Add("New button 2");
ButtonArray.Add("New button 1");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(ButtonArray, True, False);
Result = OPI_Telegram.ReplaceMessageKeyboard(Token, ChatID, MessageID, Keyboard);
```

@ -0,0 +1,46 @@
---
sidebar_position: 14
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Replace message text
Replaces the message text with a new one
`Function ReplaceMessageText(Val Token, Val ChatID, Val MessageID, Val Text) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| Token | --token | String | &#x2714; | Token |
| ChatID | --chat | String, Number | &#x2714; | Target chat ID |
| MessageID | --message | String, Number | &#x2714; | ID of message to delete |
| Text | --text | String | &#x2714; | New message text |
Returns: Map Of KeyAndValue - serialized JSON response from Telegram
<br/>
:::tip
Method at API documentation: [editMessageText](https://core.telegram.org/bots/api#editmessagetext)
:::
<br/>
```bsl title="1C:Enterprise/OneScript code example"
Token = "6129457865:AAFyzNYOAFbu...";
ChatID = "@testsichee";
MessageID = "13750";
Text = "New message text";
Result = OPI_Telegram.ReplaceMessageText(Token, ChatID, MessageID, Text);
```

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| Audio | --audio | BinaryData, String | &#x2714; | Audio file |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |

@ -19,7 +19,7 @@ import TabItem from '@theme/TabItem';
| Name | --name | String | &#x2714; | Contact name |
| LastName | --surname | String | &#x2714; | Contact last name |
| Phone | --phone | String | &#x2714; | Contact phone number |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
Returns: Map Of KeyAndValue - serialized JSON response from Telegram

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| Document | --doc | BinaryData, String | &#x2714; | Document file |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |
| FileName | --filename | String | &#x2716; | Custom displayed file name with extension, if necessary |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| GIF | --gif | BinaryData, String | &#x2714; | GIF file |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| Image | --picture | BinaryData, String | &#x2714; | Image file |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Latitude | --lat | String, Number | &#x2714; | Geographic latitude |
| Longitude | --long | String, Number | &#x2714; | Geographic longitude |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
Returns: Map Of KeyAndValue - serialized JSON response from Telegram

@ -17,7 +17,7 @@ import TabItem from '@theme/TabItem';
| Token | --token | String | &#x2714; | Bot token |
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |
| RepliedID | --reply | String, Number | &#x2716; | Reply to message ID |
@ -39,7 +39,12 @@ Method at API documentation: [sendMessage](https://core.telegram.org/bots/api#se
ChannelID = "@testsichee";
Text = "Строковое значение";
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
KeyboardButtonsArray = New Array;
KeyboardButtonsArray.Add("Button1");
KeyboardButtonsArray.Add("Button2");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(KeyboardButtonsArray, True);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text);
```

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| ChatID | --chat | String, Number | &#x2714; | Target chat ID or ChatID*TopicID |
| Text | --text | String | &#x2714; | Message text |
| Video | --video | BinaryData, String | &#x2714; | Video file |
| Keyboard | --keyboard | String | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Keyboard | --keyboard | String, Structure Of KeyAndValue | &#x2716; | Keyboard. See FormKeyboardFromButtonArray |
| Markup | --parsemode | String | &#x2716; | Text processing type (HTML, Markdown, MarkdownV2) |

@ -0,0 +1,5 @@
{
"Токен": "6129457865:AAFyzNYOAFbu...",
"IDЧата": "461699897",
"IDСообщения": "11407"
}

@ -0,0 +1,5 @@
{
"Токен": "6129457865:AAFyzNYOAFbu...",
"IDЧата": "461699897",
"IDСообщения": "11410"
}

@ -0,0 +1,5 @@
{
"Токен": "6129457865:AAFyzNYOAFbu...",
"IDЧата": "@testsichee",
"IDСообщения": "13750"
}

@ -1,5 +1,5 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ЗакрепитьСообщение(Токен, IDКанала, IDСообщения);

@ -0,0 +1,12 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDСообщения = "11407";
МассивКнопок = Новый Массив;
МассивКнопок.Добавить("Новая кнопка 1");
МассивКнопок.Добавить("Новая кнопка 2");
МассивКнопок.Добавить("Новая кнопка 3");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);

@ -0,0 +1,6 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDСообщения = "11410";
Описание = "Новое описание картинки";
Результат = OPI_Telegram.ЗаменитьОписаниеСообщения(Токен, IDЧата, IDСообщения, Описание);

@ -0,0 +1,6 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "@testsichee";
IDСообщения = "13750";
Текст = "Новый текст сообщения";
Результат = OPI_Telegram.ЗаменитьТекстСообщения(Токен, IDЧата, IDСообщения, Текст);

@ -1,5 +1,5 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ОткрепитьСообщение(Токен, IDКанала, IDСообщения);

@ -3,6 +3,11 @@
IDКанала = "@testsichee";
Текст = "Строковое значение";
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст);
МассивКнопокКлавиатуры = Новый Массив;
МассивКнопокКлавиатуры.Добавить("Кнопка1");
МассивКнопокКлавиатуры.Добавить("Кнопка2");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопокКлавиатуры, Истина);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDКанала, Текст);

@ -1,6 +1,6 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ПереслатьСообщение(Токен, IDСообщения, IDКанала, IDЧата);

@ -1,4 +1,4 @@
 IDФайла = "CQACAgIAAx0EcNsaZQACNTlng31PuqBvkPeTPp8xD72I9FoCTgACLGwAArP5GEgOZru32ZP8fzYE";
 IDФайла = "AgACAgIAAxkDAAIrBWdz-63HiyuuYGJK5nyqPoP6ZZ-0AAJz6DEbE_WgS78HisbQ9AQ_AQADAgADcwADNgQ";
Токен = "6129457865:AAFyzNYOAFbu...";
Результат = OPI_Telegram.СкачатьФайл(Токен, IDФайла);

@ -1,5 +1,5 @@
 Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.УдалитьСообщение(Токен, IDЧата, IDСообщения);

@ -33,7 +33,7 @@ import TabItem from '@theme/TabItem';
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ЗакрепитьСообщение(Токен, IDКанала, IDСообщения);
```

@ -33,7 +33,7 @@ import TabItem from '@theme/TabItem';
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ОткрепитьСообщение(Токен, IDКанала, IDСообщения);
```

@ -30,7 +30,7 @@ import TabItem from '@theme/TabItem';
```bsl title="Пример использования для 1С:Предприятие/OneScript"
IDФайла = "CQACAgIAAx0EcNsaZQACNTlng31PuqBvkPeTPp8xD72I9FoCTgACLGwAArP5GEgOZru32ZP8fzYE";
IDФайла = "AgACAgIAAxkDAAIrBWdz-63HiyuuYGJK5nyqPoP6ZZ-0AAJz6DEbE_WgS78HisbQ9AQ_AQADAgADcwADNgQ";
Токен = "6129457865:AAFyzNYOAFbu...";
Результат = OPI_Telegram.СкачатьФайл(Токен, IDФайла);

@ -1,5 +1,5 @@
---
sidebar_position: 7
sidebar_position: 12
---
import Tabs from '@theme/Tabs';
@ -33,7 +33,7 @@ import TabItem from '@theme/TabItem';
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.УдалитьСообщение(Токен, IDЧата, IDСообщения);
```

@ -1,5 +1,5 @@
---
sidebar_position: 12
sidebar_position: 16
---
import Tabs from '@theme/Tabs';

@ -35,7 +35,7 @@ import TabItem from '@theme/TabItem';
Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDКанала = "@testsichee";
IDСообщения = "13617";
IDСообщения = "13750";
Результат = OPI_Telegram.ПереслатьСообщение(Токен, IDСообщения, IDКанала, IDЧата);
```

@ -0,0 +1,46 @@
---
sidebar_position: 15
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Заменить описание сообщения
Заменяет текст в сообщении с вложениями
`Функция ЗаменитьОписаниеСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Описание) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| Токен | --token | Строка | &#x2714; | Токен |
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата |
| IDСообщения | --message | Строка, Число | &#x2714; | ID удаляемого сообщения |
| Описание | --caption | Строка | &#x2714; | Новое описание сообщения |
Возвращаемое значение: Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
<br/>
:::tip
Метод в документации API: [editMessageCaption](https://core.telegram.org/bots/api#editmessagecaption)
:::
<br/>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDСообщения = "11410";
Описание = "Новое описание картинки";
Результат = OPI_Telegram.ЗаменитьОписаниеСообщения(Токен, IDЧата, IDСообщения, Описание);
```

@ -0,0 +1,52 @@
---
sidebar_position: 13
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Заменить клавиатуру сообщения
Заменяет клавиатуру сообщения на новую
`Функция ЗаменитьКлавиатуруСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Клавиатура) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| Токен | --token | Строка | &#x2714; | Токен |
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата |
| IDСообщения | --message | Строка, Число | &#x2714; | ID удаляемого сообщения |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2714; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
Возвращаемое значение: Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
<br/>
:::tip
Метод в документации API: [editMessageReplyMarkup](https://core.telegram.org/bots/api#editmessagereplymarkup)
:::
<br/>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "461699897";
IDСообщения = "11407";
МассивКнопок = Новый Массив;
МассивКнопок.Добавить("Новая кнопка 1");
МассивКнопок.Добавить("Новая кнопка 2");
МассивКнопок.Добавить("Новая кнопка 3");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);
```

@ -0,0 +1,46 @@
---
sidebar_position: 14
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Заменить текст сообщения
Заменяет текст сообщения на новый
`Функция ЗаменитьТекстСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Текст) Экспорт`
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|-|-|-|-|-|
| Токен | --token | Строка | &#x2714; | Токен |
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата |
| IDСообщения | --message | Строка, Число | &#x2714; | ID удаляемого сообщения |
| Текст | --text | Строка | &#x2714; | Новый текст сообщения |
Возвращаемое значение: Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
<br/>
:::tip
Метод в документации API: [editMessageText](https://core.telegram.org/bots/api#editmessagetext)
:::
<br/>
```bsl title="Пример использования для 1С:Предприятие/OneScript"
Токен = "6129457865:AAFyzNYOAFbu...";
IDЧата = "@testsichee";
IDСообщения = "13750";
Текст = "Новый текст сообщения";
Результат = OPI_Telegram.ЗаменитьТекстСообщения(Токен, IDЧата, IDСообщения, Текст);
```

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Аудио | --audio | ДвоичныеДанные, Строка | &#x2714; | Файл аудио |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |

@ -19,7 +19,7 @@ import TabItem from '@theme/TabItem';
| Имя | --name | Строка | &#x2714; | Имя контакта |
| Фамилия | --surname | Строка | &#x2714; | Фамилия контакта |
| Телефон | --phone | Строка | &#x2714; | Телефон контакта |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
Возвращаемое значение: Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка,Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Документ | --doc | ДвоичныеДанные, Строка | &#x2714; | Файл документа |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |
| ИмяФайла | --filename | Строка | &#x2716; | Отображаемое имя файла c расширением, если необходимо |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Гифка | --gif | ДвоичныеДанные, Строка | &#x2714; | Файл гифки |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Картинка | --picture | ДвоичныеДанные, Строка | &#x2714; | Файл картинки |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Широта | --lat | Строка, Число | &#x2714; | Географическая широта |
| Долгота | --long | Строка, Число | &#x2714; | Географическая долгота |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
Возвращаемое значение: Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram

@ -17,7 +17,7 @@ import TabItem from '@theme/TabItem';
| Токен | --token | Строка | &#x2714; | Токен бота |
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |
| IDВходящего | --reply | Строка, Число | &#x2716; | ID сообщения на которое надо ответить |
@ -39,7 +39,12 @@ import TabItem from '@theme/TabItem';
IDКанала = "@testsichee";
Текст = "Строковое значение";
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст);
МассивКнопокКлавиатуры = Новый Массив;
МассивКнопокКлавиатуры.Добавить("Кнопка1");
МассивКнопокКлавиатуры.Добавить("Кнопка2");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопокКлавиатуры, Истина);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDКанала, Текст);
```

@ -18,7 +18,7 @@ import TabItem from '@theme/TabItem';
| IDЧата | --chat | Строка, Число | &#x2714; | ID целевого чата или IDЧата*IDТемы |
| Текст | --text | Строка | &#x2714; | Текст сообщения |
| Видео | --video | ДвоичныеДанные, Строка | &#x2714; | Файл видео |
| Клавиатура | --keyboard | Строка | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Клавиатура | --keyboard | Строка, Структура Из КлючИЗначение | &#x2716; | Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок |
| Разметка | --parsemode | Строка | &#x2716; | Вид обработки текста (HTML, Markdown, MarkdownV2) |

File diff suppressed because it is too large Load Diff

@ -317,7 +317,7 @@ EndFunction
//
// Note
// The use of the `raw` feature is necessary for compound constructions like `BEETWEEN`.^^
// For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 `^^.
// For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 `^^
// where `?1 = "10 AND 20,"' which would cause an error.
// In such a case, you must use `raw:true` to set the condition directly in the query text
//

@ -297,7 +297,7 @@ EndFunction
// Token - String - Bot token - token
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
// RepliedID - String, Number - Reply to message ID - reply
//
@ -344,7 +344,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Image - BinaryData, String - Image file - picture
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -371,7 +371,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Video - BinaryData, String - Video file - video
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -398,7 +398,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Audio - BinaryData, String - Audio file - audio
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -425,7 +425,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Document - BinaryData, String - Document file - doc
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
// FileName - String - Custom displayed file name with extension, if necessary - filename
//
@ -454,7 +454,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// GIF - BinaryData, String - GIF file - gif
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -535,7 +535,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Latitude - String, Number - Geographic latitude - lat
// Longitude - String, Number - Geographic longitude - long
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
@ -573,7 +573,7 @@ EndFunction
// Name - String - Contact name - name
// LastName - String - Contact last name - surname
// Phone - String - Contact phone number - phone
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
@ -674,6 +674,133 @@ Function ForwardMessage(Val Token, Val OriginalID, Val FromID, Val ToID) Export
EndFunction
// Delete message
// Delete message from chat or channel
//
// Note
// Method at API documentation: [deleteMessage](@core.telegram.org/bots/api#deletemessage)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function DeleteMessage(Val Token, Val ChatID, Val MessageID) Export
OPI_TypeConversion.GetLine(Token);
URL = "api.telegram.org/bot" + Token + "/deleteMessage";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, "String", Parameters);
OPI_Tools.AddField("chat_id" , ChatID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
// Replace message keyboard
// Replaces the message keyboard with a new one
//
// Note
// Method at API documentation: [editMessageReplyMarkup](@core.telegram.org/bots/api#editmessagereplymarkup)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageKeyboard(Val Token, Val ChatID, Val MessageID, Val Keyboard) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id" , MessageID, String_ , Parameters);
OPI_Tools.AddField("reply_markup", Keyboard , "FileString", Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageReplyMarkup";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Replace message text
// Replaces the message text with a new one
//
// Note
// Method at API documentation: [editMessageText](@core.telegram.org/bots/api#editmessagetext)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Text - String - New message text - text
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageText(Val Token, Val ChatID, Val MessageID, Val Text) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, String_, Parameters);
OPI_Tools.AddField("text" , Text , String_, Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageText";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Replace message caption
// Replaces text in a message with media attachments
//
// Note
// Method at API documentation: [editMessageCaption](@core.telegram.org/bots/api#editmessagecaption)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Description - String - New message description - caption
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageCaption(Val Token, Val ChatID, Val MessageID, Val Description) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID , String_, Parameters);
OPI_Tools.AddField("caption" , Description , String_, Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageCaption";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Generate keyboard from array of buttons
// Generates a simple JSON keyboard from an array of buttons for a message or bottom panel
//
@ -910,34 +1037,6 @@ Function GetParticipantCount(Val Token, Val ChatID) Export
EndFunction
// Delete message
// Delete message from chat or channel
//
// Note
// Method at API documentation: [deleteMessage](@core.telegram.org/bots/api#deletemessage)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function DeleteMessage(Val Token, Val ChatID, Val MessageID) Export
OPI_TypeConversion.GetLine(Token);
URL = "api.telegram.org/bot" + Token + "/deleteMessage";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, "String", Parameters);
OPI_Tools.AddField("chat_id" , ChatID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
#EndRegion
#Region ForumTopicManagement

@ -113,6 +113,8 @@ Procedure TelegramAPI_SendTextMessage() Export
OPI_TestDataRetrieval.ParameterToCollection("String" , TestParameters);
Telegram_SendTextMessage(TestParameters);
Telegram_ReplaceMessageText(TestParameters);
Telegram_ReplaceMessageKeyboard(TestParameters);
Telegram_FormKeyboardFromButtonArray(TestParameters);
EndProcedure
@ -127,6 +129,7 @@ Procedure TelegramAPI_SendImage() Export
OPI_TestDataRetrieval.ParameterToCollection("Picture" , TestParameters);
Telegram_SendPicture(TestParameters);
Telegram_ReplaceMessageCaption(TestParameters);
Telegram_DownloadFile(TestParameters);
EndProcedure
@ -2389,29 +2392,36 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
ChannelID = FunctionParameters["Telegram_ChannelID"];
Text = FunctionParameters["String"];
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
KeyboardButtonsArray = New Array;
KeyboardButtonsArray.Add("Button1");
KeyboardButtonsArray.Add("Button2");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage", "Telegram");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(KeyboardButtonsArray, True);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage", "Telegram"); // SKIP
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text); // SKIP
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]); // SKIP
OPI_TestDataRetrieval.WriteParameter("Telegram_MessageID", MessageID); // SKIP
OPI_Tools.AddField("Telegram_MessageID", MessageID, "String", FunctionParameters); // SKIP
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text);
// END
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (channel)");
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text);
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]);
OPI_TestDataRetrieval.WriteParameter("Telegram_ChannelMessageID", MessageID);
OPI_Tools.AddField("Telegram_ChannelMessageID", MessageID, "String", FunctionParameters);
Text = "<b>Text html %F0%9F%93%9E 10%</b>";
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text, , "HTML");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (HTML)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Text = "%F0%9F%A4%BC";
@ -2419,7 +2429,6 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (emoji)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Text = "Text %F0%9F%A5%9D and emoji \(10%\)";
@ -2427,7 +2436,12 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text, , "MarkdownV2");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (text and emoji)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Keyboard = OPI_Tools.JsonToStructure(Keyboard, False);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (keyboard structure)", "Telegram");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
OPI_Tools.Pause(5);
@ -2465,10 +2479,13 @@ Procedure Telegram_SendPicture(FunctionParameters)
Result = OPI_Telegram.SendImage(Token, ChatID, Text, Image);
OPI_TestDataRetrieval.WriteLog(Result, "SendImage", "Telegram");
OPI_TestDataRetrieval.WriteLog(Result, "SendImage", "Telegram"); // SKIP
OPI_TestDataRetrieval.Check_TelegramImage(Result, Text); // SKIP
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]); // SKIP
OPI_TestDataRetrieval.WriteParameter("Telegram_PicMessageID", MessageID); // SKIP
OPI_Tools.AddField("Telegram_PicMessageID", MessageID, "String", FunctionParameters); // SKIP
Result = OPI_Telegram.SendImage(Token, ChannelID, Text, ImagePath);
OPI_TestDataRetrieval.WriteLog(Result, "SendPicture (Path)");
@ -3183,6 +3200,60 @@ Procedure Telegram_DeleteMessage(FunctionParameters)
EndProcedure
Procedure Telegram_ReplaceMessageText(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChannelID"];
MessageID = FunctionParameters["Telegram_ChannelMessageID"];
Text = "New message text";
Result = OPI_Telegram.ReplaceMessageText(Token, ChatID, MessageID, Text);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageText", "Telegram");
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text);
EndProcedure
Procedure Telegram_ReplaceMessageKeyboard(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChatID"];
MessageID = FunctionParameters["Telegram_MessageID"];
ButtonArray = New Array;
ButtonArray.Add("New button 3");
ButtonArray.Add("New button 2");
ButtonArray.Add("New button 1");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(ButtonArray, True, False);
Result = OPI_Telegram.ReplaceMessageKeyboard(Token, ChatID, MessageID, Keyboard);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageKeyboard", "Telegram");
OPI_TestDataRetrieval.Check_TelegramMessageKeyboard(Result, Keyboard);
EndProcedure
Procedure Telegram_ReplaceMessageCaption(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChatID"];
MessageID = FunctionParameters["Telegram_PicMessageID"];
Description = "New picture description";
Result = OPI_Telegram.ReplaceMessageCaption(Token, ChatID, MessageID, Description);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageCaption", "Telegram");
OPI_TestDataRetrieval.Check_TelegramImage(Result, Description);
EndProcedure
#EndRegion
#Region VK

@ -824,6 +824,19 @@ Procedure Check_TelegramCreateTopic(Val Result, Val Name, Icon) Export
EndProcedure
Procedure Check_TelegramMessageKeyboard(Val Result, Val Keyboard) Export
MessageKeyboard = Result["result"]["reply_markup"];
Keyboard_ = OPI_Tools.JsonToStructure(Keyboard);
Keyboard_.Delete("rows");
Keyboard_ = OPI_Tools.JSONString(Keyboard_);
ExpectsThat(Result["ok"]).Равно(True);
ExpectsThat(OPI_Tools.JSONString(MessageKeyboard)).Равно(Keyboard_);
EndProcedure
Procedure Check_VKPost(Val Result) Export
ExpectsThat(Result).ИмеетТип("Map").Заполнено();

@ -317,7 +317,7 @@ EndFunction
//
// Note
// The use of the `raw` feature is necessary for compound constructions like `BEETWEEN`.^^
// For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 `^^.
// For example: with `raw:false` the filter `type:BETWEEN` `value:10 AND 20` will be interpolated as `BETWEEN ?1 `^^
// where `?1 = "10 AND 20,"' which would cause an error.
// In such a case, you must use `raw:true` to set the condition directly in the query text
//

@ -297,7 +297,7 @@ EndFunction
// Token - String - Bot token - token
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
// RepliedID - String, Number - Reply to message ID - reply
//
@ -344,7 +344,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Image - BinaryData, String - Image file - picture
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -371,7 +371,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Video - BinaryData, String - Video file - video
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -398,7 +398,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Audio - BinaryData, String - Audio file - audio
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -425,7 +425,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// Document - BinaryData, String - Document file - doc
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
// FileName - String - Custom displayed file name with extension, if necessary - filename
//
@ -454,7 +454,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Text - String - Message text - text
// GIF - BinaryData, String - GIF file - gif
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Markup - String - Text processing type (HTML, Markdown, MarkdownV2) - parsemode
//
// Returns:
@ -535,7 +535,7 @@ EndFunction
// ChatID - String, Number - Target chat ID or ChatID*TopicID - chat
// Latitude - String, Number - Geographic latitude - lat
// Longitude - String, Number - Geographic longitude - long
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
@ -573,7 +573,7 @@ EndFunction
// Name - String - Contact name - name
// LastName - String - Contact last name - surname
// Phone - String - Contact phone number - phone
// Keyboard - String - Keyboard. See FormKeyboardFromButtonArray - keyboard
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
@ -674,6 +674,133 @@ Function ForwardMessage(Val Token, Val OriginalID, Val FromID, Val ToID) Export
EndFunction
// Delete message
// Delete message from chat or channel
//
// Note
// Method at API documentation: [deleteMessage](@core.telegram.org/bots/api#deletemessage)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function DeleteMessage(Val Token, Val ChatID, Val MessageID) Export
OPI_TypeConversion.GetLine(Token);
URL = "api.telegram.org/bot" + Token + "/deleteMessage";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, "String", Parameters);
OPI_Tools.AddField("chat_id" , ChatID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
// Replace message keyboard
// Replaces the message keyboard with a new one
//
// Note
// Method at API documentation: [editMessageReplyMarkup](@core.telegram.org/bots/api#editmessagereplymarkup)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Keyboard - String, Structure Of KeyAndValue - Keyboard. See FormKeyboardFromButtonArray - keyboard
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageKeyboard(Val Token, Val ChatID, Val MessageID, Val Keyboard) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id" , MessageID, String_ , Parameters);
OPI_Tools.AddField("reply_markup", Keyboard , "FileString", Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageReplyMarkup";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Replace message text
// Replaces the message text with a new one
//
// Note
// Method at API documentation: [editMessageText](@core.telegram.org/bots/api#editmessagetext)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Text - String - New message text - text
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageText(Val Token, Val ChatID, Val MessageID, Val Text) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, String_, Parameters);
OPI_Tools.AddField("text" , Text , String_, Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageText";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Replace message caption
// Replaces text in a message with media attachments
//
// Note
// Method at API documentation: [editMessageCaption](@core.telegram.org/bots/api#editmessagecaption)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
// Description - String - New message description - caption
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function ReplaceMessageCaption(Val Token, Val ChatID, Val MessageID, Val Description) Export
OPI_TypeConversion.GetLine(Token);
String_ = "String";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID , String_, Parameters);
OPI_Tools.AddField("caption" , Description , String_, Parameters);
AddChatIdentifier(ChatID, Parameters);
URL = "api.telegram.org/bot" + Token + "/editMessageCaption";
Response = OPI_Tools.Post(URL, Parameters);
Return Response;
EndFunction
// Generate keyboard from array of buttons
// Generates a simple JSON keyboard from an array of buttons for a message or bottom panel
//
@ -910,34 +1037,6 @@ Function GetParticipantCount(Val Token, Val ChatID) Export
EndFunction
// Delete message
// Delete message from chat or channel
//
// Note
// Method at API documentation: [deleteMessage](@core.telegram.org/bots/api#deletemessage)
//
// Parameters:
// Token - String - Token - token
// ChatID - String, Number - Target chat ID - chat
// MessageID - String, Number - ID of message to delete - message
//
// Returns:
// Map Of KeyAndValue - serialized JSON response from Telegram
Function DeleteMessage(Val Token, Val ChatID, Val MessageID) Export
OPI_TypeConversion.GetLine(Token);
URL = "api.telegram.org/bot" + Token + "/deleteMessage";
Parameters = New Structure;
OPI_Tools.AddField("message_id", MessageID, "String", Parameters);
OPI_Tools.AddField("chat_id" , ChatID , "String", Parameters);
Response = OPI_Tools.Get(URL, Parameters);
Return Response;
EndFunction
#EndRegion
#Region ForumTopicManagement

@ -824,6 +824,19 @@ Procedure Check_TelegramCreateTopic(Val Result, Val Name, Icon) Export
EndProcedure
Procedure Check_TelegramMessageKeyboard(Val Result, Val Keyboard) Export
MessageKeyboard = Result["result"]["reply_markup"];
Keyboard_ = OPI_Tools.JsonToStructure(Keyboard);
Keyboard_.Delete("rows");
Keyboard_ = OPI_Tools.JSONString(Keyboard_);
ExpectsThat(Result["ok"]).Равно(True);
ExpectsThat(OPI_Tools.JSONString(MessageKeyboard)).Равно(Keyboard_);
EndProcedure
Procedure Check_VKPost(Val Result) Export
ExpectsThat(Result).ИмеетТип("Map").Заполнено();

@ -113,6 +113,8 @@ Procedure TelegramAPI_SendTextMessage() Export
OPI_TestDataRetrieval.ParameterToCollection("String" , TestParameters);
Telegram_SendTextMessage(TestParameters);
Telegram_ReplaceMessageText(TestParameters);
Telegram_ReplaceMessageKeyboard(TestParameters);
Telegram_FormKeyboardFromButtonArray(TestParameters);
EndProcedure
@ -127,6 +129,7 @@ Procedure TelegramAPI_SendImage() Export
OPI_TestDataRetrieval.ParameterToCollection("Picture" , TestParameters);
Telegram_SendPicture(TestParameters);
Telegram_ReplaceMessageCaption(TestParameters);
Telegram_DownloadFile(TestParameters);
EndProcedure
@ -2389,29 +2392,36 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
ChannelID = FunctionParameters["Telegram_ChannelID"];
Text = FunctionParameters["String"];
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
KeyboardButtonsArray = New Array;
KeyboardButtonsArray.Add("Button1");
KeyboardButtonsArray.Add("Button2");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage", "Telegram");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(KeyboardButtonsArray, True);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage", "Telegram"); // SKIP
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text); // SKIP
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]); // SKIP
OPI_TestDataRetrieval.WriteParameter("Telegram_MessageID", MessageID); // SKIP
OPI_Tools.AddField("Telegram_MessageID", MessageID, "String", FunctionParameters); // SKIP
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text);
// END
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (channel)");
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text);
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]);
OPI_TestDataRetrieval.WriteParameter("Telegram_ChannelMessageID", MessageID);
OPI_Tools.AddField("Telegram_ChannelMessageID", MessageID, "String", FunctionParameters);
Text = "<b>Text html %F0%9F%93%9E 10%</b>";
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text, , "HTML");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (HTML)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Text = "%F0%9F%A4%BC";
@ -2419,7 +2429,6 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (emoji)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Text = "Text %F0%9F%A5%9D and emoji \(10%\)";
@ -2427,7 +2436,12 @@ Procedure Telegram_SendTextMessage(FunctionParameters)
Result = OPI_Telegram.SendTextMessage(Token, ChannelID, Text, , "MarkdownV2");
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (text and emoji)");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
Keyboard = OPI_Tools.JsonToStructure(Keyboard, False);
Result = OPI_Telegram.SendTextMessage(Token, ChatID, Text, Keyboard);
OPI_TestDataRetrieval.WriteLog(Result, "SendTextMessage (keyboard structure)", "Telegram");
OPI_TestDataRetrieval.Check_TelegramOk(Result);
OPI_Tools.Pause(5);
@ -2465,10 +2479,13 @@ Procedure Telegram_SendPicture(FunctionParameters)
Result = OPI_Telegram.SendImage(Token, ChatID, Text, Image);
OPI_TestDataRetrieval.WriteLog(Result, "SendImage", "Telegram");
OPI_TestDataRetrieval.WriteLog(Result, "SendImage", "Telegram"); // SKIP
OPI_TestDataRetrieval.Check_TelegramImage(Result, Text); // SKIP
MessageID = OPI_Tools.NumberToString(Result["result"]["message_id"]); // SKIP
OPI_TestDataRetrieval.WriteParameter("Telegram_PicMessageID", MessageID); // SKIP
OPI_Tools.AddField("Telegram_PicMessageID", MessageID, "String", FunctionParameters); // SKIP
Result = OPI_Telegram.SendImage(Token, ChannelID, Text, ImagePath);
OPI_TestDataRetrieval.WriteLog(Result, "SendPicture (Path)");
@ -3183,6 +3200,60 @@ Procedure Telegram_DeleteMessage(FunctionParameters)
EndProcedure
Procedure Telegram_ReplaceMessageText(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChannelID"];
MessageID = FunctionParameters["Telegram_ChannelMessageID"];
Text = "New message text";
Result = OPI_Telegram.ReplaceMessageText(Token, ChatID, MessageID, Text);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageText", "Telegram");
OPI_TestDataRetrieval.Check_TelegramMessage(Result, Text);
EndProcedure
Procedure Telegram_ReplaceMessageKeyboard(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChatID"];
MessageID = FunctionParameters["Telegram_MessageID"];
ButtonArray = New Array;
ButtonArray.Add("New button 3");
ButtonArray.Add("New button 2");
ButtonArray.Add("New button 1");
Keyboard = OPI_Telegram.FormKeyboardFromButtonArray(ButtonArray, True, False);
Result = OPI_Telegram.ReplaceMessageKeyboard(Token, ChatID, MessageID, Keyboard);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageKeyboard", "Telegram");
OPI_TestDataRetrieval.Check_TelegramMessageKeyboard(Result, Keyboard);
EndProcedure
Procedure Telegram_ReplaceMessageCaption(FunctionParameters)
Token = FunctionParameters["Telegram_Token"];
ChatID = FunctionParameters["Telegram_ChatID"];
MessageID = FunctionParameters["Telegram_PicMessageID"];
Description = "New picture description";
Result = OPI_Telegram.ReplaceMessageCaption(Token, ChatID, MessageID, Description);
// END
OPI_TestDataRetrieval.WriteLog(Result, "ReplaceMessageCaption", "Telegram");
OPI_TestDataRetrieval.Check_TelegramImage(Result, Description);
EndProcedure
#EndRegion
#Region VK

@ -753,6 +753,160 @@
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--token";
NewLine.Описание = "Token";
NewLine.Область = "Data sending";
NewLine.ОписаниеМетода = "Delete message from chat or channel";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--chat";
NewLine.Описание = "Target chat ID";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--message";
NewLine.Описание = "ID of message to delete";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageKeyboard";
NewLine.МетодПоиска = "REPLACEMESSAGEKEYBOARD";
NewLine.Параметр = "--token";
NewLine.Описание = "Token";
NewLine.Область = "Data sending";
NewLine.ОписаниеМетода = "Replaces the message keyboard with a new one";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageKeyboard";
NewLine.МетодПоиска = "REPLACEMESSAGEKEYBOARD";
NewLine.Параметр = "--chat";
NewLine.Описание = "Target chat ID";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageKeyboard";
NewLine.МетодПоиска = "REPLACEMESSAGEKEYBOARD";
NewLine.Параметр = "--message";
NewLine.Описание = "ID of message to delete";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageKeyboard";
NewLine.МетодПоиска = "REPLACEMESSAGEKEYBOARD";
NewLine.Параметр = "--keyboard";
NewLine.Описание = "Keyboard. See FormKeyboardFromButtonArray";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageText";
NewLine.МетодПоиска = "REPLACEMESSAGETEXT";
NewLine.Параметр = "--token";
NewLine.Описание = "Token";
NewLine.Область = "Data sending";
NewLine.ОписаниеМетода = "Replaces the message text with a new one";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageText";
NewLine.МетодПоиска = "REPLACEMESSAGETEXT";
NewLine.Параметр = "--chat";
NewLine.Описание = "Target chat ID";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageText";
NewLine.МетодПоиска = "REPLACEMESSAGETEXT";
NewLine.Параметр = "--message";
NewLine.Описание = "ID of message to delete";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageText";
NewLine.МетодПоиска = "REPLACEMESSAGETEXT";
NewLine.Параметр = "--text";
NewLine.Описание = "New message text";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageCaption";
NewLine.МетодПоиска = "REPLACEMESSAGECAPTION";
NewLine.Параметр = "--token";
NewLine.Описание = "Token";
NewLine.Область = "Data sending";
NewLine.ОписаниеМетода = "Replaces text in a message with media attachments";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageCaption";
NewLine.МетодПоиска = "REPLACEMESSAGECAPTION";
NewLine.Параметр = "--chat";
NewLine.Описание = "Target chat ID";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageCaption";
NewLine.МетодПоиска = "REPLACEMESSAGECAPTION";
NewLine.Параметр = "--message";
NewLine.Описание = "ID of message to delete";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "ReplaceMessageCaption";
NewLine.МетодПоиска = "REPLACEMESSAGECAPTION";
NewLine.Параметр = "--caption";
NewLine.Описание = "New message description";
NewLine.Область = "Data sending";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
@ -980,37 +1134,6 @@
NewLine.Область = "Administration";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--token";
NewLine.Описание = "Token";
NewLine.Область = "Administration";
NewLine.ОписаниеМетода = "Delete message from chat or channel";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--chat";
NewLine.Описание = "Target chat ID";
NewLine.Область = "Administration";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";
NewLine.Метод = "DeleteMessage";
NewLine.МетодПоиска = "DELETEMESSAGE";
NewLine.Параметр = "--message";
NewLine.Описание = "ID of message to delete";
NewLine.Область = "Administration";
NewLine = CompositionTable.Add();
NewLine.Библиотека = "telegram";
NewLine.Модуль = "OPI_Telegram";

@ -704,7 +704,7 @@
// Заменить клавиатуру сообщения
// Заменяет клавиатуру сообщения на новую
//
//
// Примечание:
// Метод в документации API: [editMessageReplyMarkup](@core.telegram.org/bots/api#editmessagereplymarkup)
//
@ -713,13 +713,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Клавиатура - Строка, Структура Из КлючИЗначение - Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьКлавиатуруСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Клавиатура) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;
@ -737,7 +737,7 @@
// Заменить текст сообщения
// Заменяет текст сообщения на новый
//
//
// Примечание:
// Метод в документации API: [editMessageText](@core.telegram.org/bots/api#editmessagetext)
//
@ -746,13 +746,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Текст - Строка - Новый текст сообщения - text
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьТекстСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Текст) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;
@ -770,7 +770,7 @@
// Заменить описание сообщения
// Заменяет текст в сообщении с вложениями
//
//
// Примечание:
// Метод в документации API: [editMessageCaption](@core.telegram.org/bots/api#editmessagecaption)
//
@ -779,13 +779,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Описание - Строка - Новое описание сообщения - caption
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьОписаниеСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Описание) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;

@ -2391,17 +2391,17 @@
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDКанала = ПараметрыФункции["Telegram_ChannelID"];
Текст = ПараметрыФункции["String"];
МассивКнопокКлавиатуры = Новый Массив;
МассивКнопокКлавиатуры.Добавить("Кнопка1");
МассивКнопокКлавиатуры.Добавить("Кнопка2");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопокКлавиатуры, Истина);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение", "Telegram"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст); // SKIP
IDСообщения = OPI_Инструменты.ЧислоВСтроку(Результат["result"]["message_id"]); // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_MessageID", IDСообщения); // SKIP
OPI_Инструменты.ДобавитьПоле("Telegram_MessageID", IDСообщения, "Строка", ПараметрыФункции); // SKIP
@ -2437,12 +2437,12 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (текст и emoji)");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
Клавиатура = OPI_Инструменты.JsonВСтруктуру(Клавиатура, Ложь);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (клавиатура структура)", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (клавиатура структура)", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
OPI_Инструменты.Пауза(5);
@ -2481,7 +2481,7 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьКартинку", "Telegram"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Текст); // SKIP
IDСообщения = OPI_Инструменты.ЧислоВСтроку(Результат["result"]["message_id"]); // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_PicMessageID", IDСообщения); // SKIP
OPI_Инструменты.ДобавитьПоле("Telegram_PicMessageID", IDСообщения, "Строка", ПараметрыФункции); // SKIP
@ -3201,57 +3201,57 @@
КонецПроцедуры
Процедура Telegram_ЗаменитьТекстСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChannelID"];
IDСообщения = ПараметрыФункции["Telegram_ChannelMessageID"];
Текст = "Новый текст сообщения";
Результат = OPI_Telegram.ЗаменитьТекстСообщения(Токен, IDЧата, IDСообщения, Текст);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьТекстСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
КонецПроцедуры
Процедура Telegram_ЗаменитьКлавиатуруСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDСообщения = ПараметрыФункции["Telegram_MessageID"];
МассивКнопок = Новый Массив;
МассивКнопок.Добавить("Новая кнопка 1");
МассивКнопок.Добавить("Новая кнопка 2");
МассивКнопок.Добавить("Новая кнопка 3");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьКлавиатуруСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКлавиатураСообщения(Результат, Клавиатура);
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКлавиатураСообщения(Результат, Клавиатура);
КонецПроцедуры
Процедура Telegram_ЗаменитьОписаниеСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDСообщения = ПараметрыФункции["Telegram_PicMessageID"];
Описание = "Новое описание картинки";
Описание = "Новое описание картинки";
Результат = OPI_Telegram.ЗаменитьОписаниеСообщения(Токен, IDЧата, IDСообщения, Описание);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьОписаниеСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Описание);
КонецПроцедуры
#КонецОбласти

@ -831,10 +831,10 @@
Клавиатура_ = OPI_Инструменты.JsonВСтруктуру(Клавиатура);
Клавиатура_.Удалить("rows");
Клавиатура_ = OPI_Инструменты.JSONСтрокой(Клавиатура_);
ОжидаетЧто(Результат["ok"]).Равно(Истина);
ОжидаетЧто(OPI_Инструменты.JSONСтрокой(КлавиатураСообщения)).Равно(Клавиатура_);
КонецПроцедуры
Процедура Проверка_ВКПост(Знач Результат) Экспорт
@ -2155,9 +2155,9 @@
КонецФункции
Функция ПолучитьОбщийМодуль(Знач Имя)
Модуль = Вычислить(Имя);
Возврат Модуль;
КонецФункции

@ -704,7 +704,7 @@
// Заменить клавиатуру сообщения
// Заменяет клавиатуру сообщения на новую
//
//
// Примечание:
// Метод в документации API: [editMessageReplyMarkup](@core.telegram.org/bots/api#editmessagereplymarkup)
//
@ -713,13 +713,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Клавиатура - Строка, Структура Из КлючИЗначение - Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьКлавиатуруСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Клавиатура) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;
@ -737,7 +737,7 @@
// Заменить текст сообщения
// Заменяет текст сообщения на новый
//
//
// Примечание:
// Метод в документации API: [editMessageText](@core.telegram.org/bots/api#editmessagetext)
//
@ -746,13 +746,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Текст - Строка - Новый текст сообщения - text
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьТекстСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Текст) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;
@ -770,7 +770,7 @@
// Заменить описание сообщения
// Заменяет текст в сообщении с вложениями
//
//
// Примечание:
// Метод в документации API: [editMessageCaption](@core.telegram.org/bots/api#editmessagecaption)
//
@ -779,13 +779,13 @@
// IDЧата - Строка, Число - ID целевого чата - chat
// IDСообщения - Строка, Число - ID удаляемого сообщения - message
// Описание - Строка - Новое описание сообщения - caption
//
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
Функция ЗаменитьОписаниеСообщения(Знач Токен, Знач IDЧата, Знач IDСообщения, Знач Описание) Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
Строка_ = "Строка";
Параметры = Новый Структура;

@ -831,10 +831,10 @@
Клавиатура_ = OPI_Инструменты.JsonВСтруктуру(Клавиатура);
Клавиатура_.Удалить("rows");
Клавиатура_ = OPI_Инструменты.JSONСтрокой(Клавиатура_);
ОжидаетЧто(Результат["ok"]).Равно(Истина);
ОжидаетЧто(OPI_Инструменты.JSONСтрокой(КлавиатураСообщения)).Равно(Клавиатура_);
КонецПроцедуры
Процедура Проверка_ВКПост(Знач Результат) Экспорт

@ -2391,17 +2391,17 @@
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDКанала = ПараметрыФункции["Telegram_ChannelID"];
Текст = ПараметрыФункции["String"];
МассивКнопокКлавиатуры = Новый Массив;
МассивКнопокКлавиатуры.Добавить("Кнопка1");
МассивКнопокКлавиатуры.Добавить("Кнопка2");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопокКлавиатуры, Истина);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение", "Telegram"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст); // SKIP
IDСообщения = OPI_Инструменты.ЧислоВСтроку(Результат["result"]["message_id"]); // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_MessageID", IDСообщения); // SKIP
OPI_Инструменты.ДобавитьПоле("Telegram_MessageID", IDСообщения, "Строка", ПараметрыФункции); // SKIP
@ -2437,12 +2437,12 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (текст и emoji)");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
Клавиатура = OPI_Инструменты.JsonВСтруктуру(Клавиатура, Ложь);
Результат = OPI_Telegram.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, Клавиатура);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (клавиатура структура)", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (клавиатура структура)", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмОк(Результат);
OPI_Инструменты.Пауза(5);
@ -2481,7 +2481,7 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьКартинку", "Telegram"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Текст); // SKIP
IDСообщения = OPI_Инструменты.ЧислоВСтроку(Результат["result"]["message_id"]); // SKIP
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Telegram_PicMessageID", IDСообщения); // SKIP
OPI_Инструменты.ДобавитьПоле("Telegram_PicMessageID", IDСообщения, "Строка", ПараметрыФункции); // SKIP
@ -3201,57 +3201,57 @@
КонецПроцедуры
Процедура Telegram_ЗаменитьТекстСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChannelID"];
IDСообщения = ПараметрыФункции["Telegram_ChannelMessageID"];
Текст = "Новый текст сообщения";
Результат = OPI_Telegram.ЗаменитьТекстСообщения(Токен, IDЧата, IDСообщения, Текст);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьТекстСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмСообщение(Результат, Текст);
КонецПроцедуры
Процедура Telegram_ЗаменитьКлавиатуруСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDСообщения = ПараметрыФункции["Telegram_MessageID"];
МассивКнопок = Новый Массив;
МассивКнопок.Добавить("Новая кнопка 1");
МассивКнопок.Добавить("Новая кнопка 2");
МассивКнопок.Добавить("Новая кнопка 3");
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);
Клавиатура = OPI_Telegram.СформироватьКлавиатуруПоМассивуКнопок(МассивКнопок, Истина, Ложь);
Результат = OPI_Telegram.ЗаменитьКлавиатуруСообщения(Токен, IDЧата, IDСообщения, Клавиатура);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьКлавиатуруСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКлавиатураСообщения(Результат, Клавиатура);
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКлавиатураСообщения(Результат, Клавиатура);
КонецПроцедуры
Процедура Telegram_ЗаменитьОписаниеСообщения(ПараметрыФункции)
Токен = ПараметрыФункции["Telegram_Token"];
IDЧата = ПараметрыФункции["Telegram_ChatID"];
IDСообщения = ПараметрыФункции["Telegram_PicMessageID"];
Описание = "Новое описание картинки";
Описание = "Новое описание картинки";
Результат = OPI_Telegram.ЗаменитьОписаниеСообщения(Токен, IDЧата, IDСообщения, Описание);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ЗаменитьОписаниеСообщения", "Telegram");
OPI_ПолучениеДанныхТестов.Проверка_ТелеграмКартинка(Результат, Описание);
КонецПроцедуры
#КонецОбласти

@ -757,6 +757,160 @@
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока.ОписаниеМетода = "Удаляет указанное сообщение из чата или канала";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--chat";
НоваяСтрока.Описание = "ID целевого чата";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--message";
НоваяСтрока.Описание = "ID удаляемого сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьКлавиатуруСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬКЛАВИАТУРУСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока.ОписаниеМетода = "Заменяет клавиатуру сообщения на новую";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьКлавиатуруСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬКЛАВИАТУРУСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--chat";
НоваяСтрока.Описание = "ID целевого чата";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьКлавиатуруСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬКЛАВИАТУРУСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--message";
НоваяСтрока.Описание = "ID удаляемого сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьКлавиатуруСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬКЛАВИАТУРУСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--keyboard";
НоваяСтрока.Описание = "Клавиатура. См. СформироватьКлавиатуруПоМассивуКнопок";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьТекстСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬТЕКСТСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока.ОписаниеМетода = "Заменяет текст сообщения на новый";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьТекстСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬТЕКСТСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--chat";
НоваяСтрока.Описание = "ID целевого чата";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьТекстСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬТЕКСТСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--message";
НоваяСтрока.Описание = "ID удаляемого сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьТекстСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬТЕКСТСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--text";
НоваяСтрока.Описание = "Новый текст сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьОписаниеСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬОПИСАНИЕСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока.ОписаниеМетода = "Заменяет текст в сообщении с вложениями";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьОписаниеСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬОПИСАНИЕСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--chat";
НоваяСтрока.Описание = "ID целевого чата";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьОписаниеСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬОПИСАНИЕСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--message";
НоваяСтрока.Описание = "ID удаляемого сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "ЗаменитьОписаниеСообщения";
НоваяСтрока.МетодПоиска = "ЗАМЕНИТЬОПИСАНИЕСООБЩЕНИЯ";
НоваяСтрока.Параметр = "--caption";
НоваяСтрока.Описание = "Новое описание сообщения";
НоваяСтрока.Область = "Отправка данных";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
@ -994,37 +1148,6 @@
НоваяСтрока.Область = "Администрирование";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--token";
НоваяСтрока.Описание = "Токен";
НоваяСтрока.Область = "Администрирование";
НоваяСтрока.ОписаниеМетода = "Удаляет указанное сообщение из чата или канала";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--chat";
НоваяСтрока.Описание = "ID целевого чата";
НоваяСтрока.Область = "Администрирование";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";
НоваяСтрока.Метод = "УдалитьСообщение";
НоваяСтрока.МетодПоиска = "УДАЛИТЬСООБЩЕНИЕ";
НоваяСтрока.Параметр = "--message";
НоваяСтрока.Описание = "ID удаляемого сообщения";
НоваяСтрока.Область = "Администрирование";
НоваяСтрока = ТаблицаСостава.Добавить();
НоваяСтрока.Библиотека = "telegram";
НоваяСтрока.Модуль = "OPI_Telegram";