You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-08-13 20:05:19 +02:00
B24: Отправка сообщений
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -2608,6 +2608,221 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список сообщений чата
|
||||
// Получает список из 20 сообщений чата или диалога, в зависимости от указания IDПервого и IDПоследнего
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.messages.get](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11479)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDПоследнего - Строка, Число - ID последнего загруженного сообщения - last
|
||||
// IDПервого - Строка, Число - ID первого загруженного сообщения - first
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСписокСообщенийЧата(Знач URL
|
||||
, Знач IDЧата
|
||||
, Знач IDПоследнего = ""
|
||||
, Знач IDПервого = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПоследнего);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПервого);
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.messages.get");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("LAST_ID" , IDПоследнего, "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("FIRST_ID" , IDПервого , "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отметить сообщение как прочитанное
|
||||
// Отмечает выбранное сообщение и все сообщения до него как прочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.read](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12053)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDСообщения - Строка, Число - ID последнего прочитанного сообщения - message
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтметитьСообщениеКакПрочитанное(Знач URL, Знач IDЧата, Знач IDСообщения, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.read");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE_ID", IDСообщения, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отметить сообщение как непрочитанное
|
||||
// Отмечает выбранное сообщение и все сообщения после него как непрочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.unread](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12055)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDСообщения - Строка, Число - ID послднего непрочитанного сообщения - message
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтметитьСообщениеКакНепрочитанное(Знач URL, Знач IDЧата, Знач IDСообщения, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.unread");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE_ID", IDСообщения, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить диалог
|
||||
// Получает информацию о диалоге по ID
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.get](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12886)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьДиалог(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.get");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список пользователей диалога
|
||||
// Получает список участников далога
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.users.list](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23800)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСписокПользователейДиалога(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.users.list");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить уведомление о вводе
|
||||
// Отправляет в чат статус "Вам пишут..."
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.writing](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23802)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтправитьУведомлениеОВводе(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.writing");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Прочитать все
|
||||
// Отмечает все сообщения во всех доступных чатах как прочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.read.all](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23804)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПрочитатьВсе(Знач URL, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.read.all");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить сообщение
|
||||
// Отправляет сообщение в диалог
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.message.add](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12115)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// Вложения - Массив из Структура - Массив блоков вложений - blocks
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтправитьСообщение(Знач URL, Знач IDЧата, Знач Текст, Знач Вложения = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.message.add");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE" , Текст , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("ATTACH" , Вложения, "Массив", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру чата
|
||||
// Получает структуру полей чата
|
||||
//
|
||||
@@ -2641,6 +2856,52 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить блок картинки
|
||||
// Формирует картинку для отправки в функции ОтправитьСообщение
|
||||
//
|
||||
// Примечание:
|
||||
// Блоки в документации API: [Ссылка](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&CHAPTER_ID=07867)
|
||||
//
|
||||
// Параметры:
|
||||
// Наименование - Строка - Наименование картинки - title
|
||||
// URL - Строка - URL картинки для отправки - url
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Блок с картинкой
|
||||
Функция ПолучитьБлокКартинки(Знач Наименование, Знач URL) Экспорт
|
||||
|
||||
СтруктураКартинки = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("NAME", Наименование, "Строка", СтруктураКартинки);
|
||||
OPI_Инструменты.ДобавитьПоле("LINK", URL , "Строка", СтруктураКартинки);
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат Новый Структура("IMAGE", СтруктураКартинки);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить блок файла
|
||||
// Формирует блок файла для отправки в функции ОтправитьСообщение
|
||||
//
|
||||
// Примечание:
|
||||
// Блоки в документации API: [Ссылка](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&CHAPTER_ID=07867)
|
||||
//
|
||||
// Параметры:
|
||||
// Наименование - Строка - Наименование картинки - title
|
||||
// URL - Строка - URL файла для отправки - url
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Блок с файлом
|
||||
Функция ПолучитьБлокФайла(Знач Наименование, Знач URL) Экспорт
|
||||
|
||||
СтруктураКартинки = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("NAME", Наименование, "Строка", СтруктураКартинки);
|
||||
OPI_Инструменты.ДобавитьПоле("LINK", URL , "Строка", СтруктураКартинки);
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат Новый Структура("FILE", СтруктураКартинки);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@@ -1,21 +1,21 @@
|
||||
<package-def>
|
||||
<module name="OPI_Криптография" file="tools/Modules/internal/Modules/OPI_Криптография.os"/>
|
||||
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
|
||||
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
|
||||
<module name="OPI_Twitter" file="core/Modules/OPI_Twitter.os"/>
|
||||
<module name="OPI_YandexID" file="core/Modules/OPI_YandexID.os"/>
|
||||
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
|
||||
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
|
||||
<module name="OPI_Bitrix24" file="core/Modules/OPI_Bitrix24.os"/>
|
||||
<module name="OPI_Viber" file="core/Modules/OPI_Viber.os"/>
|
||||
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
|
||||
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
|
||||
<module name="OPI_Airtable" file="core/Modules/OPI_Airtable.os"/>
|
||||
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
|
||||
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
|
||||
<module name="OPI_Bitrix24" file="core/Modules/OPI_Bitrix24.os"/>
|
||||
<module name="OPI_Dropbox" file="core/Modules/OPI_Dropbox.os"/>
|
||||
<module name="OPI_GoogleCalendar" file="core/Modules/OPI_GoogleCalendar.os"/>
|
||||
<module name="OPI_GoogleDrive" file="core/Modules/OPI_GoogleDrive.os"/>
|
||||
<module name="OPI_GoogleSheets" file="core/Modules/OPI_GoogleSheets.os"/>
|
||||
<module name="OPI_YandexDisk" file="core/Modules/OPI_YandexDisk.os"/>
|
||||
<module name="OPI_ПреобразованиеТипов" file="tools/Modules/OPI_ПреобразованиеТипов.os"/>
|
||||
<module name="OPI_GoogleWorkspace" file="core/Modules/OPI_GoogleWorkspace.os"/>
|
||||
<module name="OPI_Notion" file="core/Modules/OPI_Notion.os"/>
|
||||
<module name="OPI_Slack" file="core/Modules/OPI_Slack.os"/>
|
||||
<module name="OPI_Telegram" file="core/Modules/OPI_Telegram.os"/>
|
||||
<module name="OPI_Twitter" file="core/Modules/OPI_Twitter.os"/>
|
||||
<module name="OPI_Viber" file="core/Modules/OPI_Viber.os"/>
|
||||
<module name="OPI_VK" file="core/Modules/OPI_VK.os"/>
|
||||
<module name="OPI_YandexDisk" file="core/Modules/OPI_YandexDisk.os"/>
|
||||
<module name="OPI_YandexID" file="core/Modules/OPI_YandexID.os"/>
|
||||
<module name="OPI_Инструменты" file="tools/Modules/internal/Modules/OPI_Инструменты.os"/>
|
||||
<module name="OPI_Криптография" file="tools/Modules/internal/Modules/OPI_Криптография.os"/>
|
||||
<module name="OPI_ПолучениеДанныхТестов" file="tools/Modules/OPI_ПолучениеДанныхТестов.os"/>
|
||||
<module name="OPI_ПреобразованиеТипов" file="tools/Modules/OPI_ПреобразованиеТипов.os"/>
|
||||
</package-def>
|
||||
|
@@ -3114,6 +3114,14 @@
|
||||
Bitrix24_ИзменитьКартинкуЧата(ПараметрыТеста);
|
||||
Bitrix24_ОтключитьУведомленияЧата(ПараметрыТеста);
|
||||
Bitrix24_ВключитьУведомленияЧата(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСписокСообщенийЧата(ПараметрыТеста);
|
||||
Bitrix24_ОтметитьСообщениеКакПрочитанное(ПараметрыТеста);
|
||||
Bitrix24_ОтметитьСообщениеКакНепрочитанное(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьДиалог(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСписокПользователейДиалога(ПараметрыТеста);
|
||||
Bitrix24_ОтправитьУведомлениеОВводе(ПараметрыТеста);
|
||||
Bitrix24_ОтправитьСообщение(ПараметрыТеста);
|
||||
Bitrix24_ПрочитатьВсе(ПараметрыТеста);
|
||||
Bitrix24_СменитьВладельцаЧата(ПараметрыТеста);
|
||||
Bitrix24_ПокинутьЧат(ПараметрыТеста);
|
||||
|
||||
@@ -3208,6 +3216,12 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_Истина(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Булево").Равно(Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ТелеграмИстина(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
|
||||
@@ -3764,6 +3778,26 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксСообщения(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["messages"]).ИмеетТип("Массив");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксДиалог(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["dialogId"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксСообщение(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["id"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АтомарныеТесты
|
||||
@@ -8888,6 +8922,224 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСписокСообщенийЧата(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat4";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDЧата);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСообщенийЧата (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщения(Результат); // SKIP
|
||||
|
||||
IDСообщения = Результат["result"]["messages"][0]["id"]; // SKIP
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_ChatMessageID", IDСообщения); // SKIP
|
||||
ПараметрыФункции.Вставить("Bitrix24_ChatMessageID", IDСообщения); // SKIP
|
||||
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDПользователя, , 0,Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСообщенийЧата", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщения(Результат);
|
||||
|
||||
IDСообщения = Результат["result"]["messages"][0]["id"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_UserMessageID", IDСообщения);
|
||||
ПараметрыФункции.Вставить("Bitrix24_UserMessageID", IDСообщения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтметитьСообщениеКакПрочитанное(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_ChatMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDЧата, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакПрочитанное (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксДиалог(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_UserMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDПользователя, IDСообщения,Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакПрочитанное", "Bitrix24");
|
||||
|
||||
Проверка_БитриксДиалог(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтметитьСообщениеКакНепрочитанное(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_ChatMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакНепрочитанное(URL, IDЧата, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакНепрочитанное (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_UserMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакНепрочитанное(URL, IDПользователя, IDСообщения, Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакНепрочитанное", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьДиалог(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьДиалог(URL, IDЧата);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДиалог (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщение(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьДиалог(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДиалог", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСписокПользователейДиалога(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокПользователейДиалога(URL, IDЧата);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокПользователейДиалога (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксМассив(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокПользователейДиалога(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокПользователейДиалога", "Bitrix24");
|
||||
|
||||
Проверка_БитриксМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтправитьУведомлениеОВводе(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьУведомлениеОВводе(URL, IDЧата);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьУведомлениеОВводе (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьУведомлениеОВводе(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьУведомлениеОВводе", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПрочитатьВсе(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПрочитатьВсе(URL);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПрочитатьВсе (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПрочитатьВсе(URL, Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПрочитатьВсе", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтправитьСообщение(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
Текст = "Текст сообщения";
|
||||
Картинка = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
|
||||
Файл = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
|
||||
|
||||
Вложения = Новый Массив;
|
||||
Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокКартинки("Картинка1", Картинка));
|
||||
Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокФайла("Файл1.docx", Файл));
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьСообщение(URL, IDЧата, Текст, Вложения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксЧисло(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьСообщение(URL, IDПользователя, Текст, , Токен);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение", "Bitrix24");
|
||||
|
||||
Проверка_БитриксЧисло(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область YandexDisk
|
||||
|
@@ -2608,6 +2608,221 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список сообщений чата
|
||||
// Получает список из 20 сообщений чата или диалога, в зависимости от указания IDПервого и IDПоследнего
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.messages.get](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11479)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDПоследнего - Строка, Число - ID последнего загруженного сообщения - last
|
||||
// IDПервого - Строка, Число - ID первого загруженного сообщения - first
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСписокСообщенийЧата(Знач URL
|
||||
, Знач IDЧата
|
||||
, Знач IDПоследнего = ""
|
||||
, Знач IDПервого = ""
|
||||
, Знач Токен = "") Экспорт
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПоследнего);
|
||||
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDПервого);
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.messages.get");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("LAST_ID" , IDПоследнего, "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("FIRST_ID" , IDПервого , "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отметить сообщение как прочитанное
|
||||
// Отмечает выбранное сообщение и все сообщения до него как прочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.read](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12053)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDСообщения - Строка, Число - ID последнего прочитанного сообщения - message
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтметитьСообщениеКакПрочитанное(Знач URL, Знач IDЧата, Знач IDСообщения, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.read");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE_ID", IDСообщения, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отметить сообщение как непрочитанное
|
||||
// Отмечает выбранное сообщение и все сообщения после него как непрочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.unread](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12055)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// IDСообщения - Строка, Число - ID послднего непрочитанного сообщения - message
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтметитьСообщениеКакНепрочитанное(Знач URL, Знач IDЧата, Знач IDСообщения, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.unread");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE_ID", IDСообщения, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить диалог
|
||||
// Получает информацию о диалоге по ID
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.get](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12886)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьДиалог(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.get");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить список пользователей диалога
|
||||
// Получает список участников далога
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.users.list](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23800)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПолучитьСписокПользователейДиалога(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.users.list");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить уведомление о вводе
|
||||
// Отправляет в чат статус "Вам пишут..."
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.writing](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23802)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтправитьУведомлениеОВводе(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.writing");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата, "Строка", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Прочитать все
|
||||
// Отмечает все сообщения во всех доступных чатах как прочитанные
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.dialog.read.all](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=23804)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ПрочитатьВсе(Знач URL, Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.dialog.read.all");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить сообщение
|
||||
// Отправляет сообщение в диалог
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [im.message.add](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12115)
|
||||
//
|
||||
// Параметры:
|
||||
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
|
||||
// IDЧата - Строка, Число - ID чата (chatXXX) или пользователя (XXX) для диалога - chat
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// Вложения - Массив из Структура - Массив блоков вложений - blocks
|
||||
// Токен - Строка - Токен авторизации, если используется не вебхук - token
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
|
||||
Функция ОтправитьСообщение(Знач URL, Знач IDЧата, Знач Текст, Знач Вложения = "", Знач Токен = "") Экспорт
|
||||
|
||||
Параметры = НормализоватьАвторизацию(URL, Токен, "im.message.add");
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("DIALOG_ID", IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("MESSAGE" , Текст , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("ATTACH" , Вложения, "Массив", Параметры);
|
||||
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить структуру чата
|
||||
// Получает структуру полей чата
|
||||
//
|
||||
@@ -2641,6 +2856,52 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить блок картинки
|
||||
// Формирует картинку для отправки в функции ОтправитьСообщение
|
||||
//
|
||||
// Примечание:
|
||||
// Блоки в документации API: [Ссылка](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&CHAPTER_ID=07867)
|
||||
//
|
||||
// Параметры:
|
||||
// Наименование - Строка - Наименование картинки - title
|
||||
// URL - Строка - URL картинки для отправки - url
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Блок с картинкой
|
||||
Функция ПолучитьБлокКартинки(Знач Наименование, Знач URL) Экспорт
|
||||
|
||||
СтруктураКартинки = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("NAME", Наименование, "Строка", СтруктураКартинки);
|
||||
OPI_Инструменты.ДобавитьПоле("LINK", URL , "Строка", СтруктураКартинки);
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат Новый Структура("IMAGE", СтруктураКартинки);
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Получить блок файла
|
||||
// Формирует блок файла для отправки в функции ОтправитьСообщение
|
||||
//
|
||||
// Примечание:
|
||||
// Блоки в документации API: [Ссылка](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&CHAPTER_ID=07867)
|
||||
//
|
||||
// Параметры:
|
||||
// Наименование - Строка - Наименование картинки - title
|
||||
// URL - Строка - URL файла для отправки - url
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Блок с файлом
|
||||
Функция ПолучитьБлокФайла(Знач Наименование, Знач URL) Экспорт
|
||||
|
||||
СтруктураКартинки = Новый Структура;
|
||||
OPI_Инструменты.ДобавитьПоле("NAME", Наименование, "Строка", СтруктураКартинки);
|
||||
OPI_Инструменты.ДобавитьПоле("LINK", URL , "Строка", СтруктураКартинки);
|
||||
|
||||
//@skip-check constructor-function-return-section
|
||||
Возврат Новый Структура("FILE", СтруктураКартинки);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@@ -3114,6 +3114,14 @@
|
||||
Bitrix24_ИзменитьКартинкуЧата(ПараметрыТеста);
|
||||
Bitrix24_ОтключитьУведомленияЧата(ПараметрыТеста);
|
||||
Bitrix24_ВключитьУведомленияЧата(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСписокСообщенийЧата(ПараметрыТеста);
|
||||
Bitrix24_ОтметитьСообщениеКакПрочитанное(ПараметрыТеста);
|
||||
Bitrix24_ОтметитьСообщениеКакНепрочитанное(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьДиалог(ПараметрыТеста);
|
||||
Bitrix24_ПолучитьСписокПользователейДиалога(ПараметрыТеста);
|
||||
Bitrix24_ОтправитьУведомлениеОВводе(ПараметрыТеста);
|
||||
Bitrix24_ОтправитьСообщение(ПараметрыТеста);
|
||||
Bitrix24_ПрочитатьВсе(ПараметрыТеста);
|
||||
Bitrix24_СменитьВладельцаЧата(ПараметрыТеста);
|
||||
Bitrix24_ПокинутьЧат(ПараметрыТеста);
|
||||
|
||||
@@ -3208,6 +3216,12 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_Истина(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Булево").Равно(Истина);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ТелеграмИстина(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("Соответствие").Заполнено();
|
||||
@@ -3764,6 +3778,26 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксСообщения(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["messages"]).ИмеетТип("Массив");
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксДиалог(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["dialogId"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_БитриксСообщение(Знач Результат)
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]).ИмеетТип("Соответствие");
|
||||
OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат["result"]["id"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область АтомарныеТесты
|
||||
@@ -8888,6 +8922,224 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСписокСообщенийЧата(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat4";
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDЧата);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСообщенийЧата (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщения(Результат); // SKIP
|
||||
|
||||
IDСообщения = Результат["result"]["messages"][0]["id"]; // SKIP
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_ChatMessageID", IDСообщения); // SKIP
|
||||
ПараметрыФункции.Вставить("Bitrix24_ChatMessageID", IDСообщения); // SKIP
|
||||
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокСообщенийЧата(URL, IDПользователя, , 0,Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокСообщенийЧата", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщения(Результат);
|
||||
|
||||
IDСообщения = Результат["result"]["messages"][0]["id"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("Bitrix24_UserMessageID", IDСообщения);
|
||||
ПараметрыФункции.Вставить("Bitrix24_UserMessageID", IDСообщения);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтметитьСообщениеКакПрочитанное(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_ChatMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDЧата, IDСообщения);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакПрочитанное (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксДиалог(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_UserMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакПрочитанное(URL, IDПользователя, IDСообщения,Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакПрочитанное", "Bitrix24");
|
||||
|
||||
Проверка_БитриксДиалог(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтметитьСообщениеКакНепрочитанное(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_ChatMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакНепрочитанное(URL, IDЧата, IDСообщения);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакНепрочитанное (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
IDСообщения = ПараметрыФункции["Bitrix24_UserMessageID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтметитьСообщениеКакНепрочитанное(URL, IDПользователя, IDСообщения, Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтметитьСообщениеКакНепрочитанное", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьДиалог(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьДиалог(URL, IDЧата);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДиалог (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщение(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьДиалог(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьДиалог", "Bitrix24");
|
||||
|
||||
Проверка_БитриксСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПолучитьСписокПользователейДиалога(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокПользователейДиалога(URL, IDЧата);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокПользователейДиалога (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксМассив(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ПолучитьСписокПользователейДиалога(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСписокПользователейДиалога", "Bitrix24");
|
||||
|
||||
Проверка_БитриксМассив(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтправитьУведомлениеОВводе(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьУведомлениеОВводе(URL, IDЧата);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьУведомлениеОВводе (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьУведомлениеОВводе(URL, IDПользователя, Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьУведомлениеОВводе", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ПрочитатьВсе(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПрочитатьВсе(URL);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПрочитатьВсе (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
|
||||
Результат = OPI_Bitrix24.ПрочитатьВсе(URL, Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПрочитатьВсе", "Bitrix24");
|
||||
|
||||
Проверка_БитриксИстина(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Bitrix24_ОтправитьСообщение(ПараметрыФункции)
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_URL"];
|
||||
IDЧата = "chat" + ПараметрыФункции["Bitrix24_HookChatID"];
|
||||
Текст = "Текст сообщения";
|
||||
Картинка = "https://raw.githubusercontent.com/Bayselonarrend/OpenIntegrations/main/service/test_data/picture.jpg";
|
||||
Файл = "https://github.com/Bayselonarrend/OpenIntegrations/raw/main/service/test_data/document.docx";
|
||||
|
||||
Вложения = Новый Массив;
|
||||
Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокКартинки("Картинка1", Картинка));
|
||||
Вложения.Добавить(OPI_Bitrix24.ПолучитьБлокФайла("Файл1.docx", Файл));
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьСообщение(URL, IDЧата, Текст, Вложения);
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение (хук)", "Bitrix24");
|
||||
|
||||
Проверка_БитриксЧисло(Результат); // SKIP
|
||||
|
||||
URL = ПараметрыФункции["Bitrix24_Domain"];
|
||||
Токен = ПараметрыФункции["Bitrix24_Token"];
|
||||
IDПользователя = 10;
|
||||
|
||||
Результат = OPI_Bitrix24.ОтправитьСообщение(URL, IDПользователя, Текст, , Токен);
|
||||
|
||||
// END
|
||||
|
||||
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьСообщение", "Bitrix24");
|
||||
|
||||
Проверка_БитриксЧисло(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область YandexDisk
|
||||
|
Reference in New Issue
Block a user