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

B24: Работа с чатами

This commit is contained in:
Anton 2024-07-13 12:56:11 +03:00
parent 9296f1edc3
commit 699a267371
5 changed files with 5202 additions and 4242 deletions

File diff suppressed because it is too large Load Diff

View File

@ -2324,7 +2324,7 @@
#КонецОбласти
#Область ЧатыИЛичныеСообщения
#Область ЧатыИСообщения
// Создать чат
// Создает новый чат на основе структуры полей
@ -2393,6 +2393,221 @@
КонецФункции
// Добавить пользователей в чат
// Добавляет пользователей в чат по массиву ID
//
// Примечание:
// Метод в документации API: [im.chat.user.add](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12097)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователей - Массив из Строка, Число - ID пользователей для добавления - users
// СкрытьИсторию - Булево - Скрыть старые сообщения от новых пользователей - hide
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьПользователейВЧат(Знач URL
, Знач IDЧата
, Знач IDПользователей
, Знач СкрытьИсторию = Ложь
, Знач Токен = "") Экспорт
ПривестиБулево(СкрытьИсторию);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.user.add");
OPI_Инструменты.ДобавитьПоле("CHAT_ID" , IDЧата , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("USERS" , IDПользователей, "Коллекция", Параметры);
OPI_Инструменты.ДобавитьПоле("HIDE_HISTORY", СкрытьИсторию , "Строка" , Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Исключить пользователя из чата
// Исключает выбранного пользователя из чата
//
// Примечание:
// Метод в документации API: [im.chat.user.delete](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12099)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователя - Строка, Число - ID пользователя - user
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИсключитьПользователяИзЧата(Знач URL, Знач IDЧата, Знач IDПользователя, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.user.delete");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить заголовок чата
// Изменяет текст заголовка чата
//
// Примечание:
// Метод в документации API: [im.chat.updateTitle](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12105)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Заголовок - Строка - Новый текст заголовка - title
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьЗаголовокЧата(Знач URL, Знач IDЧата, Знач Заголовок, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateTitle");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("TITLE" , Заголовок, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить цвет чата
// Изменяет цвет чата для мобильного приложения
//
// Примечание:
// Метод в документации API: [im.chat.updateTitle](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12105)
// Доступные цвета: RED, GREEN, MINT, LIGHT_BLUE, DARK_BLUE, PURPLE, AQUA, PINK, LIME, BROWN, AZURE, KHAKI, SAND,
// MARENGO, GRAY, GRAPHITE
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Цвет - Строка - Новый цвет чата - color
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьЦветЧата(Знач URL, Знач IDЧата, Знач Цвет, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateColor");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить картинку чата
// Устанавливает новую картинку чата
//
// Примечание:
// Метод в документации API: [im.chat.updateAvatar](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12109)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Картинка - Строка, ДвоичныеДанные - Данные файла картинки - picture
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьКартинкуЧата(Знач URL, Знач IDЧата, Знач Картинка, Знач Токен = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка);
Картинка = Base64Строка(Картинка);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateAvatar");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("AVATAR" , Картинка, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Сменить владельца чата
// Изменяет пользователя владельца чата
//
// Примечание:
// Метод в документации API: [im.chat.setOwner](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12111)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователя - Строка, Число - ID пользователя - user
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция СменитьВладельцаЧата(Знач URL, Знач IDЧата, Знач IDПользователя, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.setOwner");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Отключить уведомления чата
// Отключает уведомлений чата
//
// Примечание:
// Метод в документации API: [im.chat.mute](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11473)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОтключитьУведомленияЧата(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
Ответ = УправлениеЗвукомЧата(URL, IDЧата, Истина, Токен);
Возврат Ответ;
КонецФункции
// Включить уведомления чата
// Включает уведомления в чате
//
// Примечание:
// Метод в документации API: [im.chat.mute](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11473)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ВключитьУведомленияЧата(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
Ответ = УправлениеЗвукомЧата(URL, IDЧата, Ложь, Токен);
Возврат Ответ;
КонецФункции
// Получить структуру чата
// Получает структуру полей чата
//
@ -2554,4 +2769,19 @@
КонецФункции
Функция УправлениеЗвукомЧата(Знач URL, Знач IDЧата, Знач Выключить, Знач Токен = "")
ПривестиБулево(Выключить);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.mute");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("MUTE" , Выключить, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти

View File

@ -3103,9 +3103,18 @@
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture2" , ПараметрыТеста);
Bitrix24_СоздатьЧат(ПараметрыТеста);
Bitrix24_ПолучитьСписокПользователейЧата(ПараметрыТеста);
Bitrix24_ИсключитьПользователяИзЧата(ПараметрыТеста);
Bitrix24_ДобавитьПользователейВЧат(ПараметрыТеста);
Bitrix24_ИзменитьЗаголовокЧата(ПараметрыТеста);
Bitrix24_ИзменитьЦветЧата(ПараметрыТеста);
Bitrix24_ИзменитьКартинкуЧата(ПараметрыТеста);
Bitrix24_ОтключитьУведомленияЧата(ПараметрыТеста);
Bitrix24_ВключитьУведомленияЧата(ПараметрыТеста);
Bitrix24_СменитьВладельцаЧата(ПараметрыТеста);
Bitrix24_ПокинутьЧат(ПараметрыТеста);
КонецПроцедуры
@ -8563,8 +8572,8 @@
B64Картинка = ПолучитьBase64СтрокуИзДвоичныхДанных(Картинка);
МассивУчастников = Новый Массив;
МассивУчастников.Добавить(1);
МассивУчастников.Добавить(10);
МассивУчастников.Добавить(1);
СтруктураЧата = Новый Структура;
СтруктураЧата.Вставить("TYPE" , "OPEN");
@ -8574,7 +8583,7 @@
СтруктураЧата.Вставить("MESSAGE" , "Добро пожаловать в новый чат");
СтруктураЧата.Вставить("USERS" , МассивУчастников);
СтруктураЧата.Вставить("AVATAR" , B64Картинка);
СтруктураЧата.Вставить("OWNER_ID" , 10);
СтруктураЧата.Вставить("OWNER_ID" , 1);
URL = ПараметрыФункции["Bitrix24_URL"];
@ -8660,6 +8669,225 @@
КонецПроцедуры
Процедура Bitrix24_ИсключитьПользователяИзЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.ИсключитьПользователяИзЧата(URL, IDЧата, IDПользователя);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИсключитьПользователяИзЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ИсключитьПользователяИзЧата(URL, IDЧата, IDПользователя, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИсключитьПользователяИзЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ДобавитьПользователейВЧат(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователей = Новый Массив;
IDПользователей.Добавить(10);
IDПользователей.Добавить(12);
Результат = OPI_Bitrix24.ДобавитьПользователейВЧат(URL, IDЧата, IDПользователей);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьПользователейВЧат (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.ДобавитьПользователейВЧат(URL, IDЧата, IDПользователя, Истина, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьПользователейВЧат", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьЗаголовокЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Заголовок = "Новый заголовок чата";
Результат = OPI_Bitrix24.ИзменитьЗаголовокЧата(URL, IDЧата, Заголовок);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЗаголовокЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Заголовок = "Другой заголовок чата";
Результат = OPI_Bitrix24.ИзменитьЗаголовокЧата(URL, IDЧата, Заголовок, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЗаголовокЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьЦветЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Цвет = "AZURE";
Результат = OPI_Bitrix24.ИзменитьЦветЧата(URL, IDЧата, Цвет);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЦветЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Цвет = "PURPLE";
Результат = OPI_Bitrix24.ИзменитьЦветЧата(URL, IDЧата, Цвет, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЦветЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьКартинкуЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Картинка = ПараметрыФункции["Picture2"];
Результат = OPI_Bitrix24.ИзменитьКартинкуЧата(URL, IDЧата, Картинка);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьКартинкуЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ИзменитьКартинкуЧата(URL, IDЧата, Картинка, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьКартинкуЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ОтключитьУведомленияЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Результат = OPI_Bitrix24.ОтключитьУведомленияЧата(URL, IDЧата);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтключитьУведомленияЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ОтключитьУведомленияЧата(URL, IDЧата, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтключитьУведомленияЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ВключитьУведомленияЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Результат = OPI_Bitrix24.ВключитьУведомленияЧата(URL, IDЧата);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВключитьУведомленияЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ВключитьУведомленияЧата(URL, IDЧата, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВключитьУведомленияЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_СменитьВладельцаЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.СменитьВладельцаЧата(URL, IDЧата, IDПользователя);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СменитьВладельцаЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.СменитьВладельцаЧата(URL, IDЧата, IDПользователя, Токен);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СменитьВладельцаЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
#КонецОбласти
#Область YandexDisk

View File

@ -2324,7 +2324,7 @@
#КонецОбласти
#Область ЧатыИЛичныеСообщения
#Область ЧатыИСообщения
// Создать чат
// Создает новый чат на основе структуры полей
@ -2393,6 +2393,221 @@
КонецФункции
// Добавить пользователей в чат
// Добавляет пользователей в чат по массиву ID
//
// Примечание:
// Метод в документации API: [im.chat.user.add](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12097)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователей - Массив из Строка, Число - ID пользователей для добавления - users
// СкрытьИсторию - Булево - Скрыть старые сообщения от новых пользователей - hide
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ДобавитьПользователейВЧат(Знач URL
, Знач IDЧата
, Знач IDПользователей
, Знач СкрытьИсторию = Ложь
, Знач Токен = "") Экспорт
ПривестиБулево(СкрытьИсторию);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.user.add");
OPI_Инструменты.ДобавитьПоле("CHAT_ID" , IDЧата , "Строка" , Параметры);
OPI_Инструменты.ДобавитьПоле("USERS" , IDПользователей, "Коллекция", Параметры);
OPI_Инструменты.ДобавитьПоле("HIDE_HISTORY", СкрытьИсторию , "Строка" , Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Исключить пользователя из чата
// Исключает выбранного пользователя из чата
//
// Примечание:
// Метод в документации API: [im.chat.user.delete](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12099)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователя - Строка, Число - ID пользователя - user
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИсключитьПользователяИзЧата(Знач URL, Знач IDЧата, Знач IDПользователя, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.user.delete");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить заголовок чата
// Изменяет текст заголовка чата
//
// Примечание:
// Метод в документации API: [im.chat.updateTitle](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12105)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Заголовок - Строка - Новый текст заголовка - title
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьЗаголовокЧата(Знач URL, Знач IDЧата, Знач Заголовок, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateTitle");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("TITLE" , Заголовок, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить цвет чата
// Изменяет цвет чата для мобильного приложения
//
// Примечание:
// Метод в документации API: [im.chat.updateTitle](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12105)
// Доступные цвета: RED, GREEN, MINT, LIGHT_BLUE, DARK_BLUE, PURPLE, AQUA, PINK, LIME, BROWN, AZURE, KHAKI, SAND,
// MARENGO, GRAY, GRAPHITE
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Цвет - Строка - Новый цвет чата - color
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьЦветЧата(Знач URL, Знач IDЧата, Знач Цвет, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateColor");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата, "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("COLOR" , Цвет , "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Изменить картинку чата
// Устанавливает новую картинку чата
//
// Примечание:
// Метод в документации API: [im.chat.updateAvatar](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12109)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Картинка - Строка, ДвоичныеДанные - Данные файла картинки - picture
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ИзменитьКартинкуЧата(Знач URL, Знач IDЧата, Знач Картинка, Знач Токен = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка);
Картинка = Base64Строка(Картинка);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.updateAvatar");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("AVATAR" , Картинка, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Сменить владельца чата
// Изменяет пользователя владельца чата
//
// Примечание:
// Метод в документации API: [im.chat.setOwner](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=12111)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// IDПользователя - Строка, Число - ID пользователя - user
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция СменитьВладельцаЧата(Знач URL, Знач IDЧата, Знач IDПользователя, Знач Токен = "") Экспорт
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.setOwner");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("USER_ID", IDПользователя, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Отключить уведомления чата
// Отключает уведомлений чата
//
// Примечание:
// Метод в документации API: [im.chat.mute](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11473)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ОтключитьУведомленияЧата(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
Ответ = УправлениеЗвукомЧата(URL, IDЧата, Истина, Токен);
Возврат Ответ;
КонецФункции
// Включить уведомления чата
// Включает уведомления в чате
//
// Примечание:
// Метод в документации API: [im.chat.mute](@dev.1c-bitrix.ru/learning/course/?COURSE_ID=93&LESSON_ID=11473)
//
// Параметры:
// URL - Строка - URL внешнего вебхука или адрес Bitrix24 при использовании токена - url
// IDЧата - Строка, Число - ID чата - chat
// Токен - Строка - Токен авторизации, если используется не вебхук - token
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Bitrxi24
Функция ВключитьУведомленияЧата(Знач URL, Знач IDЧата, Знач Токен = "") Экспорт
Ответ = УправлениеЗвукомЧата(URL, IDЧата, Ложь, Токен);
Возврат Ответ;
КонецФункции
// Получить структуру чата
// Получает структуру полей чата
//
@ -2554,4 +2769,19 @@
КонецФункции
Функция УправлениеЗвукомЧата(Знач URL, Знач IDЧата, Знач Выключить, Знач Токен = "")
ПривестиБулево(Выключить);
Параметры = НормализоватьАвторизацию(URL, Токен, "im.chat.mute");
OPI_Инструменты.ДобавитьПоле("CHAT_ID", IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("MUTE" , Выключить, "Строка", Параметры);
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти

View File

@ -3103,9 +3103,18 @@
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Domain", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Bitrix24_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture2" , ПараметрыТеста);
Bitrix24_СоздатьЧат(ПараметрыТеста);
Bitrix24_ПолучитьСписокПользователейЧата(ПараметрыТеста);
Bitrix24_ИсключитьПользователяИзЧата(ПараметрыТеста);
Bitrix24_ДобавитьПользователейВЧат(ПараметрыТеста);
Bitrix24_ИзменитьЗаголовокЧата(ПараметрыТеста);
Bitrix24_ИзменитьЦветЧата(ПараметрыТеста);
Bitrix24_ИзменитьКартинкуЧата(ПараметрыТеста);
Bitrix24_ОтключитьУведомленияЧата(ПараметрыТеста);
Bitrix24_ВключитьУведомленияЧата(ПараметрыТеста);
Bitrix24_СменитьВладельцаЧата(ПараметрыТеста);
Bitrix24_ПокинутьЧат(ПараметрыТеста);
КонецПроцедуры
@ -8563,8 +8572,8 @@
B64Картинка = ПолучитьBase64СтрокуИзДвоичныхДанных(Картинка);
МассивУчастников = Новый Массив;
МассивУчастников.Добавить(1);
МассивУчастников.Добавить(10);
МассивУчастников.Добавить(1);
СтруктураЧата = Новый Структура;
СтруктураЧата.Вставить("TYPE" , "OPEN");
@ -8574,7 +8583,7 @@
СтруктураЧата.Вставить("MESSAGE" , "Добро пожаловать в новый чат");
СтруктураЧата.Вставить("USERS" , МассивУчастников);
СтруктураЧата.Вставить("AVATAR" , B64Картинка);
СтруктураЧата.Вставить("OWNER_ID" , 10);
СтруктураЧата.Вставить("OWNER_ID" , 1);
URL = ПараметрыФункции["Bitrix24_URL"];
@ -8660,6 +8669,225 @@
КонецПроцедуры
Процедура Bitrix24_ИсключитьПользователяИзЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.ИсключитьПользователяИзЧата(URL, IDЧата, IDПользователя);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИсключитьПользователяИзЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ИсключитьПользователяИзЧата(URL, IDЧата, IDПользователя, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИсключитьПользователяИзЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ДобавитьПользователейВЧат(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователей = Новый Массив;
IDПользователей.Добавить(10);
IDПользователей.Добавить(12);
Результат = OPI_Bitrix24.ДобавитьПользователейВЧат(URL, IDЧата, IDПользователей);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьПользователейВЧат (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.ДобавитьПользователейВЧат(URL, IDЧата, IDПользователя, Истина, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ДобавитьПользователейВЧат", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьЗаголовокЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Заголовок = "Новый заголовок чата";
Результат = OPI_Bitrix24.ИзменитьЗаголовокЧата(URL, IDЧата, Заголовок);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЗаголовокЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Заголовок = "Другой заголовок чата";
Результат = OPI_Bitrix24.ИзменитьЗаголовокЧата(URL, IDЧата, Заголовок, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЗаголовокЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьЦветЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Цвет = "AZURE";
Результат = OPI_Bitrix24.ИзменитьЦветЧата(URL, IDЧата, Цвет);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЦветЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Цвет = "PURPLE";
Результат = OPI_Bitrix24.ИзменитьЦветЧата(URL, IDЧата, Цвет, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьЦветЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ИзменитьКартинкуЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Картинка = ПараметрыФункции["Picture2"];
Результат = OPI_Bitrix24.ИзменитьКартинкуЧата(URL, IDЧата, Картинка);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьКартинкуЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ИзменитьКартинкуЧата(URL, IDЧата, Картинка, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ИзменитьКартинкуЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ОтключитьУведомленияЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Результат = OPI_Bitrix24.ОтключитьУведомленияЧата(URL, IDЧата);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтключитьУведомленияЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ОтключитьУведомленияЧата(URL, IDЧата, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтключитьУведомленияЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_ВключитьУведомленияЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
Результат = OPI_Bitrix24.ВключитьУведомленияЧата(URL, IDЧата);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВключитьУведомленияЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.ВключитьУведомленияЧата(URL, IDЧата, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ВключитьУведомленияЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
Процедура Bitrix24_СменитьВладельцаЧата(ПараметрыФункции)
URL = ПараметрыФункции["Bitrix24_URL"];
IDЧата = ПараметрыФункции["Bitrix24_HookChatID"];
IDПользователя = 10;
Результат = OPI_Bitrix24.СменитьВладельцаЧата(URL, IDЧата, IDПользователя);
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СменитьВладельцаЧата (хук)", "Bitrix24");
Проверка_БитриксИстина(Результат); // SKIP
URL = ПараметрыФункции["Bitrix24_Domain"];
Токен = ПараметрыФункции["Bitrix24_Token"];
IDЧата = ПараметрыФункции["Bitrix24_ChatID"];
Результат = OPI_Bitrix24.СменитьВладельцаЧата(URL, IDЧата, IDПользователя, Токен);
// END
// !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СменитьВладельцаЧата", "Bitrix24");
Проверка_БитриксИстина(Результат);
КонецПроцедуры
#КонецОбласти
#Область YandexDisk