diff --git a/src/ru/OPI/src/CommonModules/OPI_Airtable/OPI_Airtable.mdo b/src/ru/OPI/src/CommonModules/OPI_Airtable/OPI_Airtable.mdo index 7dfa64ba1b..621abbf3bb 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Airtable/OPI_Airtable.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Airtable/OPI_Airtable.mdo @@ -5,6 +5,10 @@ OPI airtable + + ru + Airtable (ОПИ) + true true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Bitrix24/OPI_Bitrix24.mdo b/src/ru/OPI/src/CommonModules/OPI_Bitrix24/OPI_Bitrix24.mdo index b85b6c0e53..8b84e57fa6 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Bitrix24/OPI_Bitrix24.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Bitrix24/OPI_Bitrix24.mdo @@ -3,7 +3,7 @@ OPI_Bitrix24 ru - Bitrix24 (OPI) + Bitrix24 (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Dropbox/OPI_Dropbox.mdo b/src/ru/OPI/src/CommonModules/OPI_Dropbox/OPI_Dropbox.mdo index 7902731e7c..f932379008 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Dropbox/OPI_Dropbox.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Dropbox/OPI_Dropbox.mdo @@ -7,7 +7,7 @@ ru - Drop box + Dropbox (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_GoogleCalendar/OPI_GoogleCalendar.mdo b/src/ru/OPI/src/CommonModules/OPI_GoogleCalendar/OPI_GoogleCalendar.mdo index 3d38018f54..141533c52f 100644 --- a/src/ru/OPI/src/CommonModules/OPI_GoogleCalendar/OPI_GoogleCalendar.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_GoogleCalendar/OPI_GoogleCalendar.mdo @@ -5,6 +5,10 @@ OPI google calendar + + ru + Google Calendar (ОПИ) + true true true diff --git a/src/ru/OPI/src/CommonModules/OPI_GoogleDrive/OPI_GoogleDrive.mdo b/src/ru/OPI/src/CommonModules/OPI_GoogleDrive/OPI_GoogleDrive.mdo index 696a3a5326..cb540a246b 100644 --- a/src/ru/OPI/src/CommonModules/OPI_GoogleDrive/OPI_GoogleDrive.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_GoogleDrive/OPI_GoogleDrive.mdo @@ -5,6 +5,10 @@ OPI google drive + + ru + Google Drive (ОПИ) + true true true diff --git a/src/ru/OPI/src/CommonModules/OPI_GoogleSheets/OPI_GoogleSheets.mdo b/src/ru/OPI/src/CommonModules/OPI_GoogleSheets/OPI_GoogleSheets.mdo index c26710fdc3..9b5b143f52 100644 --- a/src/ru/OPI/src/CommonModules/OPI_GoogleSheets/OPI_GoogleSheets.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_GoogleSheets/OPI_GoogleSheets.mdo @@ -5,6 +5,10 @@ OPI google sheets + + ru + Google Sheets (ОПИ) + true true true diff --git a/src/ru/OPI/src/CommonModules/OPI_GoogleWorkspace/OPI_GoogleWorkspace.mdo b/src/ru/OPI/src/CommonModules/OPI_GoogleWorkspace/OPI_GoogleWorkspace.mdo index 45fb1957ce..a253c625f6 100644 --- a/src/ru/OPI/src/CommonModules/OPI_GoogleWorkspace/OPI_GoogleWorkspace.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_GoogleWorkspace/OPI_GoogleWorkspace.mdo @@ -5,6 +5,10 @@ OPI google workspace + + ru + Google Workspace (ОПИ) + true true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Notion/OPI_Notion.mdo b/src/ru/OPI/src/CommonModules/OPI_Notion/OPI_Notion.mdo index 2af4fd559d..cfe6844564 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Notion/OPI_Notion.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Notion/OPI_Notion.mdo @@ -3,7 +3,7 @@ OPI_Notion ru - Методы работы с Notion (ОПИ) + Notion (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Slack/OPI_Slack.mdo b/src/ru/OPI/src/CommonModules/OPI_Slack/OPI_Slack.mdo index 10c2bd2efb..463f14da27 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Slack/OPI_Slack.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Slack/OPI_Slack.mdo @@ -3,7 +3,7 @@ OPI_Slack ru - Slack + Slack (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Telegram/OPI_Telegram.mdo b/src/ru/OPI/src/CommonModules/OPI_Telegram/OPI_Telegram.mdo index cc233a0791..2bd551e40e 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Telegram/OPI_Telegram.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Telegram/OPI_Telegram.mdo @@ -3,7 +3,7 @@ OPI_Telegram ru - Методы интеграции с Telegram (ОПИ) + Telegram (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Twitter/OPI_Twitter.mdo b/src/ru/OPI/src/CommonModules/OPI_Twitter/OPI_Twitter.mdo index 759025a8c6..6129aac20d 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Twitter/OPI_Twitter.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Twitter/OPI_Twitter.mdo @@ -3,7 +3,7 @@ OPI_Twitter ru - Методы работы с Twitter (ОПИ) + Twitter (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_VK/OPI_VK.mdo b/src/ru/OPI/src/CommonModules/OPI_VK/OPI_VK.mdo index f0ebc10c6b..a0a1287621 100644 --- a/src/ru/OPI/src/CommonModules/OPI_VK/OPI_VK.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_VK/OPI_VK.mdo @@ -3,7 +3,7 @@ OPI_VK ru - Методы интеграции с VK (ОПИ) + VK (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_VKTeams/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_VKTeams/Module.bsl new file mode 100644 index 0000000000..ccde4ac03f --- /dev/null +++ b/src/ru/OPI/src/CommonModules/OPI_VKTeams/Module.bsl @@ -0,0 +1,156 @@ +// OneScript: ./OInt/core/Modules/OPI_VKTeams.os +// Lib: VKTeams +// CLI: vkteams + +// MIT License + +// Copyright (c) 2023 Anton Tsitavets + +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: + +// The above copyright notice and this permission notice shall be included in all +// copies or substantial portions of the Software. + +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +// SOFTWARE. + +// https://github.com/Bayselonarrend/OpenIntegrations + +// BSLLS:Typo-off +// BSLLS:IncorrectLineBreak-off +// BSLLS:NumberOfOptionalParams-off +// BSLLS:UsingServiceTag-off +// BSLLS:LineLength-off + +//@skip-check module-structure-top-region +//@skip-check module-structure-method-in-regions +//@skip-check wrong-string-literal-content +//@skip-check method-too-many-params + +// Раскомментировать, если выполняется OneScript +// #Использовать "../../tools" + +#Область ПрограммныйИнтерфейс + +#Область ОбщиеМетоды + +// Проверить токен +// Проверяет работоспособность токена бота +// +// Примечание: +// Метод в документации API: [GET /self/get](@teams.vk.com/botapi/#/self/get_self_get) +// +// Параметры: +// Токен - Строка - Токен бота - token +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams +Функция ПроверитьТокен(Знач Токен) Экспорт + + URL = "/self/get"; + Параметры = НормализоватьОснову(URL, Токен); + + Ответ = OPI_Инструменты.Get(URL, Параметры); + + Возврат Ответ; + +КонецФункции + +// Получить события +// Получает события бота в Polling режиме +// +// Примечание: +// Метод в документации API: [GET /events/get](@teams.vk.com/botapi/#/events/get_events_get) +// +// Параметры: +// Токен - Строка - Токен бота - token +// IDПоследнего - Строка, Число - ID последнего обработанного до этого события - last +// Таймаут - Строка, Число - Время удержания соединения для Long Polling - timeout +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams +Функция ПолучитьСобытия(Знач Токен, Знач IDПоследнего, Знач Таймаут = 0) Экспорт + + URL = "/events/get"; + Параметры = НормализоватьОснову(URL, Токен); + IDПоследнего = OPI_Инструменты.ЧислоВСтроку(IDПоследнего); + + OPI_Инструменты.ДобавитьПоле("lastEventId", IDПоследнего, "Строка", Параметры); + OPI_Инструменты.ДобавитьПоле("pollTime" , Таймаут , "Строка", Параметры); + + Ответ = OPI_Инструменты.Get(URL, Параметры); + + Возврат Ответ; + +КонецФункции + +#КонецОбласти + +#Область ОтправкаСообщений + +// Отправить текстовое сообщение +// Отправляет текстовое сообщение в чат +// +// Примечание: +// Можно упомянуть пользователя, добавив в текст его userId в следующем формате @[userId] +// Метод в документации API: [GET /messages/sendText](@teams.vk.com/botapi/#/messages/get_messages_sendText) +// +// Параметры: +// Токен - Строка - Токен бота - token +// IDЧата - Строка, Число - ID чата для отправки сообщения - chatid +// Текст - Строка - Текст сообщения - text +// IDЦитируемого - Строка, Число - ID цитируемого сообщения, если необходимо - reply +// Клавиатура - Массив Из Строка - Кнопки к сообщению, если необходимо - keyboard +// Разметка - Строка - Вид разметки для текста сообщения: MarkdownV2 или HTML - parsemod +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams +Функция ОтправитьТекстовоеСообщение(Знач Токен + , Знач IDЧата + , Знач Текст + , Знач IDЦитируемого = 0 + , Знач Клавиатура = "" + , Знач Разметка = "MarkdownV2") Экспорт + + URL = "/messages/sendText"; + Параметры = НормализоватьОснову(URL, Токен); + + OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка" , Параметры); + OPI_Инструменты.ДобавитьПоле("text" , Текст , "Строка" , Параметры); + OPI_Инструменты.ДобавитьПоле("replyMsgId" , IDЦитируемого, "Строка" , Параметры); + OPI_Инструменты.ДобавитьПоле("inlineKeyboardMarkup", Клавиатура , "Коллекция", Параметры); + OPI_Инструменты.ДобавитьПоле("parseMode" , Разметка , "Строка" , Параметры); + + Ответ = OPI_Инструменты.Get(URL, Параметры); + + Возврат Ответ; + +КонецФункции + +#КонецОбласти + +#КонецОбласти + +#Область СлужебныеПроцедурыИФункции + +Функция НормализоватьОснову(URL, Знач Токен) + + URL = "https://myteam.mail.ru/bot/v1" + URL; + Параметры = Новый Структура; + OPI_Инструменты.ДобавитьПоле("token", Токен, "Строка", Параметры); + + Возврат Параметры; + +КонецФункции + +#КонецОбласти \ No newline at end of file diff --git a/src/ru/OPI/src/CommonModules/OPI_VkTeams/OPI_VkTeams.mdo b/src/ru/OPI/src/CommonModules/OPI_VKTeams/OPI_VkTeams.mdo similarity index 84% rename from src/ru/OPI/src/CommonModules/OPI_VkTeams/OPI_VkTeams.mdo rename to src/ru/OPI/src/CommonModules/OPI_VKTeams/OPI_VkTeams.mdo index f1a0881271..9d970310cf 100644 --- a/src/ru/OPI/src/CommonModules/OPI_VkTeams/OPI_VkTeams.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_VKTeams/OPI_VkTeams.mdo @@ -1,9 +1,9 @@ - OPI_VkTeams + OPI_VKTeams ru - Vk Teams (ОПИ) + VK Teams (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Viber/OPI_Viber.mdo b/src/ru/OPI/src/CommonModules/OPI_Viber/OPI_Viber.mdo index dc7840096f..34a127edd4 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Viber/OPI_Viber.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Viber/OPI_Viber.mdo @@ -3,7 +3,7 @@ OPI_Viber ru - Методы интеграции с Viber (ОПИ) + Viber (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_VkTeams/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_VkTeams/Module.bsl deleted file mode 100644 index e61f31cb06..0000000000 --- a/src/ru/OPI/src/CommonModules/OPI_VkTeams/Module.bsl +++ /dev/null @@ -1,81 +0,0 @@ -// OneScript: ./OInt/core/Modules/OPI_VkTeams.os -// Lib: VkTeams -// CLI: vkteams - -// MIT License - -// Copyright (c) 2023 Anton Tsitavets - -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to deal -// in the Software without restriction, including without limitation the rights -// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: - -// The above copyright notice and this permission notice shall be included in all -// copies or substantial portions of the Software. - -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -// SOFTWARE. - -// https://github.com/Bayselonarrend/OpenIntegrations - -// BSLLS:Typo-off -// BSLLS:IncorrectLineBreak-off -// BSLLS:NumberOfOptionalParams-off -// BSLLS:UsingServiceTag-off -// BSLLS:LineLength-off - -//@skip-check module-structure-top-region -//@skip-check module-structure-method-in-regions -//@skip-check wrong-string-literal-content -//@skip-check method-too-many-params - -// Раскомментировать, если выполняется OneScript -// #Использовать "../../tools" - -#Область ПрограммныйИнтерфейс - -// Проверить токен -// Проверяет работоспособность токена бота -// -// Примечание: -// Метод в документации API: [GET /self/get](@teams.vk.com/botapi/#/self/get_self_get) -// -// Параметры: -// Токен - Строка - Токен бота - token -// -// Возвращаемое значение: -// Соответствие Из КлючИЗначение - сериализованный JSON ответа от VK Teams -Функция ПроверитьТокен(Знач Токен) Экспорт - - URL = "/self/get"; - Параметры = НормализоватьОснову(URL, Токен); - - Ответ = OPI_Инструменты.Get(URL, Параметры); - - Возврат Ответ; - -КонецФункции - -#КонецОбласти - -#Область СлужебныеПроцедурыИФункции - -Функция НормализоватьОснову(URL, Знач Токен) - - URL = "https://myteam.mail.ru/bot/v1" + URL; - Параметры = Новый Структура; - OPI_Инструменты.ДобавитьПоле("token", Токен, "Строка", Параметры); - - Возврат Параметры; - -КонецФункции - -#КонецОбласти \ No newline at end of file diff --git a/src/ru/OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo b/src/ru/OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo index 6846d3d51e..50eb5dbb80 100644 --- a/src/ru/OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_YandexDisk/OPI_YandexDisk.mdo @@ -3,7 +3,7 @@ OPI_YandexDisk ru - Методы работы с Yandex Disk (ОПИ) + Yandex.Disk (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_YandexID/OPI_YandexID.mdo b/src/ru/OPI/src/CommonModules/OPI_YandexID/OPI_YandexID.mdo index 7b8489440d..8aff0ad3c2 100644 --- a/src/ru/OPI/src/CommonModules/OPI_YandexID/OPI_YandexID.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_YandexID/OPI_YandexID.mdo @@ -3,7 +3,7 @@ OPI_YandexID ru - Методы работы с Yandex ID (ОПИ) + YandexID (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Инструменты/OPI_Инструменты.mdo b/src/ru/OPI/src/CommonModules/OPI_Инструменты/OPI_Инструменты.mdo index 14693fe85e..5a54779063 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Инструменты/OPI_Инструменты.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Инструменты/OPI_Инструменты.mdo @@ -3,7 +3,7 @@ OPI_Инструменты ru - OPI инструменты + Инструменты (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Криптография/OPI_Криптография.mdo b/src/ru/OPI/src/CommonModules/OPI_Криптография/OPI_Криптография.mdo index 710fe257bf..99516677a2 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Криптография/OPI_Криптография.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_Криптография/OPI_Криптография.mdo @@ -3,7 +3,7 @@ OPI_Криптография ru - Криптография (OPI) + Криптография (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl index 6d2112c396..fab56110e4 100644 --- a/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_ПолучениеДанныхТестов/Module.bsl @@ -238,6 +238,7 @@ НовыйТест(ТаблицаТестов, "Б24_УправлениеПользователями" , "Управление пользователями" , Битрикс); НовыйТест(ТаблицаТестов, "ВКТ_ОбщиеМетоды" , "Общие методы" , ВКТ); + НовыйТест(ТаблицаТестов, "ВКТ_ОтправкаСообщений" , "Отправка сообщений" , ВКТ); Возврат ТаблицаТестов; diff --git a/src/ru/OPI/src/CommonModules/OPI_ПреобразованиеТипов/OPI_ПреобразованиеТипов.mdo b/src/ru/OPI/src/CommonModules/OPI_ПреобразованиеТипов/OPI_ПреобразованиеТипов.mdo index 154515af34..b325defb56 100644 --- a/src/ru/OPI/src/CommonModules/OPI_ПреобразованиеТипов/OPI_ПреобразованиеТипов.mdo +++ b/src/ru/OPI/src/CommonModules/OPI_ПреобразованиеТипов/OPI_ПреобразованиеТипов.mdo @@ -3,7 +3,7 @@ OPI_ПреобразованиеТипов ru - Преобразование типов (OPI) + Преобразование типов (ОПИ) true true diff --git a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl index 41598175b6..0a9c15b3ed 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl @@ -1,4 +1,4 @@ -// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os +// OneScript: ./OInt/tests/Modules/internal/OPI_Тесты.os // MIT License @@ -3235,9 +3235,20 @@ OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token", ПараметрыТеста); VkTeams_ПроверитьТокен(ПараметрыТеста); + VkTeams_ПолучитьСобытия(ПараметрыТеста); КонецПроцедуры +Процедура ВКТ_ОтправкаСообщений() Экспорт + + ПараметрыТеста = Новый Структура; + OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_Token", ПараметрыТеста); + OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("VkTeams_ChatID", ПараметрыТеста); + + VkTeams_ОтправитьТекстовоеСообщение(ПараметрыТеста); + +КонецПроцедуры + #КонецОбласти #КонецОбласти @@ -3935,6 +3946,20 @@ КонецПроцедуры +Процедура Проверка_ВКТСобытия(Знач Результат) + + OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["ok"]).Равно(Истина); + OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["events"]).ИмеетТип("Массив"); + +КонецПроцедуры + +Процедура Проверка_ВКТСообщение(Знач Результат) + + OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["ok"]).Равно(Истина); + OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["msgId"]).Заполнено(); + +КонецПроцедуры + #КонецОбласти #Область АтомарныеТесты @@ -10207,7 +10232,7 @@ Процедура VkTeams_ПроверитьТокен(ПараметрыФункции) Токен = ПараметрыФункции["VkTeams_Token"]; - Результат = OPI_VkTeams.ПроверитьТокен(Токен); + Результат = OPI_VKTeams.ПроверитьТокен(Токен); // END @@ -10219,6 +10244,63 @@ КонецПроцедуры +Процедура VkTeams_ПолучитьСобытия(ПараметрыФункции) + + Токен = ПараметрыФункции["VkTeams_Token"]; + IDПоследнего = 0; + + Для Н = 1 По 5 Цикл // В реальной работе - бесконечный цикл + + Результат = OPI_VKTeams.ПолучитьСобытия(Токен, IDПоследнего, 3); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСобытия", "VkTeams"); + + Проверка_ВКТСобытия(Результат); // SKIP + + События = Результат["events"]; + + // Обработка событий... + + Если Не События.Количество() = 0 Тогда + IDПоследнего = События[События.ВГраница()]["eventId"]; + КонецЕсли; + + КонецЦикла; + + // END + + OPI_Инструменты.Пауза(3); + +КонецПроцедуры + +Процедура VkTeams_ОтправитьТекстовоеСообщение(ПараметрыФункции) + + Токен = ПараметрыФункции["VkTeams_Token"]; + IDЧата = ПараметрыФункции["VkTeams_ChatID"]; + Текст = "Текст сообщения"; + + Результат = OPI_VKTeams.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (простое)", "VkTeams"); + + Проверка_ВКТСообщение(Результат); // SKIP + + Текст = "Полужирный текст сообщения"; + IDЦитируемого = Результат["msgId"]; + Разметка = "HTML"; + + Результат = OPI_VKTeams.ОтправитьТекстовоеСообщение(Токен, IDЧата, Текст, IDЦитируемого, , Разметка); + + // END + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение", "VkTeams"); + + Проверка_ВКТСообщение(Результат); + + OPI_Инструменты.Пауза(5); + +КонецПроцедуры + #КонецОбласти #КонецОбласти diff --git a/src/ru/OPI/src/Configuration/Configuration.mdo b/src/ru/OPI/src/Configuration/Configuration.mdo index d3cc9d6c3f..2555f23a2d 100644 --- a/src/ru/OPI/src/Configuration/Configuration.mdo +++ b/src/ru/OPI/src/Configuration/Configuration.mdo @@ -58,7 +58,7 @@ CommonModule.OPI_Airtable CommonModule.OPI_Dropbox CommonModule.OPI_Bitrix24 - CommonModule.OPI_VkTeams + CommonModule.OPI_VKTeams CommonModule.OPI_Тесты CommonModule.OPI_ПолучениеДанныхТестов