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

GAPI: Отправка текста и файлов

This commit is contained in:
Anton Titovets 2025-03-06 22:59:05 +03:00
parent 4b4394db7f
commit 2e2bc21b7d
9 changed files with 7362 additions and 6723 deletions

File diff suppressed because it is too large Load Diff

View File

@ -451,7 +451,7 @@
// Назначить права администратора
// Назначает пользователя администратором группы
//
//
// Примечание:
// Метод в документации API: [SetGroupAdmin](@green-api.com/docs/api/groups/SetGroupAdmin/)
//
@ -472,7 +472,7 @@
// Отозвать права администратора
// Отзывает права администратора у пользователя
//
//
// Примечание:
// Метод в документации API: [RemoveAdmin](@green-api.com/docs/api/groups/RemoveAdmin/)
//
@ -518,7 +518,7 @@
// Установить картинку группы
// Устанавливает картинку группового чата
//
//
// Примечание:
// Метод в документации API: [SetGroupPicture](@green-api.com/docs/api/groups/SetGroupPicture/)
//
@ -532,7 +532,7 @@
Функция УстановитьКартинкуГруппы(Знач ПараметрыДоступа, Знач IDГруппы, Знач Картинка) Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("groupId", IDГруппы, "Строка", Параметры);
@ -549,30 +549,117 @@
#КонецОбласти
#Область ОтправкаСообщений
// Отправить текстовое сообщение
// Отправляет текстовое сообщение в выбранный чат
//
// Примечание:
// Метод в документации API: [SendMessage](@green-api.com/docs/api/sending/SendMessage/)
//
// Параметры:
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
// IDЧата - Строка - Идентификатор чата - chat
// Текст - Строка - Текст сообщения - text
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
Функция ОтправитьТекстовоеСообщение(Знач ПараметрыДоступа, Знач IDЧата, Знач Текст, Знач IDЦитируемого = "") Экспорт
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("message" , Текст , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendMessage");
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Отправить файл
// Отправляет файл в выбранный чат
//
// Примечание:
// Метод в документации API: [SendFileByUpload](@green-api.com/docs/api/sending/SendFileByUpload/)
//
// Параметры:
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
// IDЧата - Строка - Идентификатор чата - chat
// Файл - Строка, ДвоичныеДанные - Данные или путь к файлу - file
// ИмяФайла - Строка - Имя загружаемого файла с раширением - filename
// Описание - Строка - Текст сообщения под файлом - caption
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
Функция ОтправитьФайл(Знач ПараметрыДоступа
, Знач IDЧата
, Знач Файл
, Знач ИмяФайла
, Знач Описание = ""
, Знач IDЦитируемого = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Файл);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("fileName" , ИмяФайла , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Описание , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
СоответствиеФайла = Новый Соответствие();
СоответствиеФайла.Вставить(СтрШаблон("file|%1", ИмяФайла), Файл);
URL = СформироватьМедиаURL(ПараметрыДоступа, "SendFileByUpload");
Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, СоответствиеФайла);
Возврат Ответ;
КонецФункции
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция СформироватьОсновнойURL(Знач ПараметрыДоступа, Знач Метод)
Возврат СформироватьURL(ПараметрыДоступа, Метод, "apiUrl");
КонецФункции
Функция СформироватьМедиаURL(Знач ПараметрыДоступа, Знач Метод)
Возврат СформироватьURL(ПараметрыДоступа, Метод, "mediaUrl");
КонецФункции
Функция СформироватьURL(ПараметрыДоступа, Метод, ПолеURL)
OPI_ПреобразованиеТипов.ПолучитьКоллекциюКлючИЗначение(ПараметрыДоступа);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Метод);
ОбязательныеПоля = СтрРазделить("apiUrl,idInstance,apiTokenInstance", ",");
ОбязательныеПоля = СтрРазделить(ПолеURL + ",idInstance,apiTokenInstance", ",");
ОтсутствующиеПоля = OPI_Инструменты.НайтиОтсутствующиеПоляКоллекции(ПараметрыДоступа, ОбязательныеПоля);
Если ОтсутствующиеПоля.Количество() > 0 Тогда
ВызватьИсключение "Отсутствуют обязательные поля в параметрах доступа!";
КонецЕсли;
ApiUrl = ПараметрыДоступа["apiUrl"];
Url = ПараметрыДоступа[ПолеURL];
IdInstance = ПараметрыДоступа["idInstance"];
ApiTokenInstance = ПараметрыДоступа["apiTokenInstance"];
URL = СтрШаблон("%1/waInstance%2/%3/%4", ApiUrl, IdInstance, Метод, ApiTokenInstance);
URL = СтрШаблон("%1/waInstance%2/%3/%4", Url, IdInstance, Метод, ApiTokenInstance);
Возврат URL;
КонецФункции
Функция ДействиеСУчастникомГруппы(Знач ПараметрыДоступа, Знач IDГруппы, Знач IDПользователя, Знач Метод)
@ -586,7 +673,7 @@
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти

View File

@ -2419,6 +2419,22 @@
КонецПроцедуры
Процедура GAPI_ОтправкаСообщений() Экспорт
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_ApiURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_MediaURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_IdInstance" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_TestGroupID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
GreenAPI_ОтправитьФайл(ПараметрыТеста);
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@ -18345,7 +18361,7 @@
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Картинка = ПараметрыФункции["Picture"];
Картинка = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.УстановитьКартинкуПрофиля(ПараметрыДоступа, Картинка);
@ -18556,7 +18572,7 @@
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Картинка = ПараметрыФункции["Picture"];
Картинка = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
@ -18569,6 +18585,68 @@
КонецПроцедуры
Процедура GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Текст = "Новое сообщение";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.ОтправитьТекстовоеСообщение(ПараметрыДоступа, IDЧата, Текст);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_MessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_MessageID", IDСообщения, "Строка", ПараметрыФункции);
Результат = OPI_GreenAPI.ОтправитьТекстовоеСообщение(ПараметрыДоступа, IDЧата, Текст, IDСообщения);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
КонецПроцедуры
Процедура GreenAPI_ОтправитьФайл(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Файл = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ИмяФайла = "photo.jpg";
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Описание = "Описание файла";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.ОтправитьФайл(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
Файл = ПараметрыФункции["Video"];
ИмяФайла = "vid.mp4";
Результат = OPI_GreenAPI.ОтправитьФайл(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание, IDСообщения);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -2385,6 +2385,22 @@
КонецПроцедуры
Процедура CLI_GAPI_ОтправкаСообщений() Экспорт
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_ApiURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_MediaURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_IdInstance" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_TestGroupID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
CLI_GreenAPI_ОтправитьФайл(ПараметрыТеста);
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@ -20344,7 +20360,7 @@
// END
Результат.Вставить("apiTokenInstance", "***");
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СформироватьПараметрыДоступа", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СформироватьПараметрыДоступа", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_Соответствие(Результат);
КонецПроцедуры
@ -20371,7 +20387,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринИнстанс(Результат);
КонецПроцедуры
@ -20417,7 +20433,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруНастроекИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСтруктуруНастроекИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_Соответствие(Результат);
Опции = Новый Структура;
@ -20425,7 +20441,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьСтруктуруНастроекИнстанса", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруНастроекИнстанса (пустая)", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСтруктуруНастроекИнстанса (пустая)", "GreenAPI");
Для Каждого Элемент Из Результат Цикл
@ -20467,7 +20483,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УстановитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УстановитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСохранениеНастроек(Результат);
КонецПроцедуры
@ -20492,7 +20508,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьСостояниеИнстанса", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСостояниеИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСостояниеИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринАвторизован(Результат);
КонецПроцедуры
@ -20517,7 +20533,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПерезапуститьИнстанс", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПерезапуститьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПерезапуститьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринПерезапуск(Результат);
КонецПроцедуры
@ -20542,7 +20558,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьQR", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьQR", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьQR", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринАвторизован(Результат);
КонецПроцедуры
@ -20567,7 +20583,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "РазлогинитьИнстанс", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "РазлогинитьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "РазлогинитьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринПерезапуск(Результат);
КонецПроцедуры
@ -20798,7 +20814,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20828,7 +20850,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20843,7 +20871,7 @@
Сообщить("Не удалось заменить секреты!");
КонецПопытки;
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НазначитьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "НазначитьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринНазначениеАдминистратора(Результат);
КонецПроцедуры
@ -20858,7 +20886,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20873,11 +20907,110 @@
Сообщить("Не удалось заменить секреты!");
КонецПопытки;
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтозватьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтозватьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринОтзывАдминистратора(Результат);
КонецПроцедуры
Процедура CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Текст = "Новое сообщение";
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("text" , Текст);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьТекстовоеСообщение", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_MessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_MessageID", IDСообщения, "Строка", ПараметрыФункции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("text" , Текст);
Опции.Вставить("quoted", IDСообщения);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьТекстовоеСообщение", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
КонецПроцедуры
Процедура CLI_GreenAPI_ОтправитьФайл(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Файл = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ИмяФайла = "photo.jpg";
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Описание = "Описание файла";
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access" , ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("file" , Файл);
Опции.Вставить("filename", ИмяФайла);
Опции.Вставить("caption" , Описание);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайл", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайл", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
Файл = ПараметрыФункции["Video"];
ИмяФайла = "vid.mp4";
Опции = Новый Структура;
Опции.Вставить("access" , ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("file" , Файл);
Опции.Вставить("filename", ИмяФайла);
Опции.Вставить("caption" , Описание);
Опции.Вставить("quoted" , IDСообщения);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайл", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайл (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -281,6 +281,7 @@
НовыйТест(ТаблицаТестов, "Postgres_ORM" , "ORM" , Postgres);
НовыйТест(ТаблицаТестов, "GAPI_УправлениеГруппами" , "Управление группами" , GreenAPI);
НовыйТест(ТаблицаТестов, "GAPI_Аккаунт" , "Аккаунт" , GreenAPI);
НовыйТест(ТаблицаТестов, "GAPI_ОтправкаСообщений" , "Отправка сообщений" , GreenAPI);
Возврат ТаблицаТестов;
@ -2238,6 +2239,19 @@
КонецПроцедуры
Процедура Проверка_ГринСообщение(Знач Результат) Экспорт
ОжидаетЧто(Результат["idMessage"]).Заполнено();
КонецПроцедуры
Процедура Проверка_ГринФайл(Знач Результат) Экспорт
ОжидаетЧто(Результат["idMessage"]).Заполнено();
ОжидаетЧто(Результат["urlFile"]).Заполнено();
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@ -2274,9 +2288,9 @@
КонецФункции
Функция ПолучитьОбщийМодуль(Знач Имя)
Модуль = Вычислить(Имя);
Возврат Модуль;
КонецФункции

View File

@ -451,7 +451,7 @@
// Назначить права администратора
// Назначает пользователя администратором группы
//
//
// Примечание:
// Метод в документации API: [SetGroupAdmin](@green-api.com/docs/api/groups/SetGroupAdmin/)
//
@ -472,7 +472,7 @@
// Отозвать права администратора
// Отзывает права администратора у пользователя
//
//
// Примечание:
// Метод в документации API: [RemoveAdmin](@green-api.com/docs/api/groups/RemoveAdmin/)
//
@ -518,7 +518,7 @@
// Установить картинку группы
// Устанавливает картинку группового чата
//
//
// Примечание:
// Метод в документации API: [SetGroupPicture](@green-api.com/docs/api/groups/SetGroupPicture/)
//
@ -532,7 +532,7 @@
Функция УстановитьКартинкуГруппы(Знач ПараметрыДоступа, Знач IDГруппы, Знач Картинка) Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("groupId", IDГруппы, "Строка", Параметры);
@ -549,30 +549,117 @@
#КонецОбласти
#Область ОтправкаСообщений
// Отправить текстовое сообщение
// Отправляет текстовое сообщение в выбранный чат
//
// Примечание:
// Метод в документации API: [SendMessage](@green-api.com/docs/api/sending/SendMessage/)
//
// Параметры:
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
// IDЧата - Строка - Идентификатор чата - chat
// Текст - Строка - Текст сообщения - text
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
Функция ОтправитьТекстовоеСообщение(Знач ПараметрыДоступа, Знач IDЧата, Знач Текст, Знач IDЦитируемого = "") Экспорт
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("message" , Текст , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendMessage");
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
// Отправить файл
// Отправляет файл в выбранный чат
//
// Примечание:
// Метод в документации API: [SendFileByUpload](@green-api.com/docs/api/sending/SendFileByUpload/)
//
// Параметры:
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
// IDЧата - Строка - Идентификатор чата - chat
// Файл - Строка, ДвоичныеДанные - Данные или путь к файлу - file
// ИмяФайла - Строка - Имя загружаемого файла с раширением - filename
// Описание - Строка - Текст сообщения под файлом - caption
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
Функция ОтправитьФайл(Знач ПараметрыДоступа
, Знач IDЧата
, Знач Файл
, Знач ИмяФайла
, Знач Описание = ""
, Знач IDЦитируемого = "") Экспорт
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Файл);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("fileName" , ИмяФайла , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("caption" , Описание , "Строка", Параметры);
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
СоответствиеФайла = Новый Соответствие();
СоответствиеФайла.Вставить(СтрШаблон("file|%1", ИмяФайла), Файл);
URL = СформироватьМедиаURL(ПараметрыДоступа, "SendFileByUpload");
Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, СоответствиеФайла);
Возврат Ответ;
КонецФункции
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция СформироватьОсновнойURL(Знач ПараметрыДоступа, Знач Метод)
Возврат СформироватьURL(ПараметрыДоступа, Метод, "apiUrl");
КонецФункции
Функция СформироватьМедиаURL(Знач ПараметрыДоступа, Знач Метод)
Возврат СформироватьURL(ПараметрыДоступа, Метод, "mediaUrl");
КонецФункции
Функция СформироватьURL(ПараметрыДоступа, Метод, ПолеURL)
OPI_ПреобразованиеТипов.ПолучитьКоллекциюКлючИЗначение(ПараметрыДоступа);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Метод);
ОбязательныеПоля = СтрРазделить("apiUrl,idInstance,apiTokenInstance", ",");
ОбязательныеПоля = СтрРазделить(ПолеURL + ",idInstance,apiTokenInstance", ",");
ОтсутствующиеПоля = OPI_Инструменты.НайтиОтсутствующиеПоляКоллекции(ПараметрыДоступа, ОбязательныеПоля);
Если ОтсутствующиеПоля.Количество() > 0 Тогда
ВызватьИсключение "Отсутствуют обязательные поля в параметрах доступа!";
КонецЕсли;
ApiUrl = ПараметрыДоступа["apiUrl"];
Url = ПараметрыДоступа[ПолеURL];
IdInstance = ПараметрыДоступа["idInstance"];
ApiTokenInstance = ПараметрыДоступа["apiTokenInstance"];
URL = СтрШаблон("%1/waInstance%2/%3/%4", ApiUrl, IdInstance, Метод, ApiTokenInstance);
URL = СтрШаблон("%1/waInstance%2/%3/%4", Url, IdInstance, Метод, ApiTokenInstance);
Возврат URL;
КонецФункции
Функция ДействиеСУчастникомГруппы(Знач ПараметрыДоступа, Знач IDГруппы, Знач IDПользователя, Знач Метод)
@ -586,7 +673,7 @@
Ответ = OPI_Инструменты.Post(URL, Параметры);
Возврат Ответ;
КонецФункции
#КонецОбласти

View File

@ -281,6 +281,7 @@
НовыйТест(ТаблицаТестов, "Postgres_ORM" , "ORM" , Postgres);
НовыйТест(ТаблицаТестов, "GAPI_УправлениеГруппами" , "Управление группами" , GreenAPI);
НовыйТест(ТаблицаТестов, "GAPI_Аккаунт" , "Аккаунт" , GreenAPI);
НовыйТест(ТаблицаТестов, "GAPI_ОтправкаСообщений" , "Отправка сообщений" , GreenAPI);
Возврат ТаблицаТестов;
@ -2238,6 +2239,19 @@
КонецПроцедуры
Процедура Проверка_ГринСообщение(Знач Результат) Экспорт
ОжидаетЧто(Результат["idMessage"]).Заполнено();
КонецПроцедуры
Процедура Проверка_ГринФайл(Знач Результат) Экспорт
ОжидаетЧто(Результат["idMessage"]).Заполнено();
ОжидаетЧто(Результат["urlFile"]).Заполнено();
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -2419,6 +2419,22 @@
КонецПроцедуры
Процедура GAPI_ОтправкаСообщений() Экспорт
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_ApiURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_MediaURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_IdInstance" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_TestGroupID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
GreenAPI_ОтправитьФайл(ПараметрыТеста);
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@ -18345,7 +18361,7 @@
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Картинка = ПараметрыФункции["Picture"];
Картинка = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.УстановитьКартинкуПрофиля(ПараметрыДоступа, Картинка);
@ -18556,7 +18572,7 @@
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Картинка = ПараметрыФункции["Picture"];
Картинка = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
@ -18569,6 +18585,68 @@
КонецПроцедуры
Процедура GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Текст = "Новое сообщение";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.ОтправитьТекстовоеСообщение(ПараметрыДоступа, IDЧата, Текст);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_MessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_MessageID", IDСообщения, "Строка", ПараметрыФункции);
Результат = OPI_GreenAPI.ОтправитьТекстовоеСообщение(ПараметрыДоступа, IDЧата, Текст, IDСообщения);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьТекстовоеСообщение (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
КонецПроцедуры
Процедура GreenAPI_ОтправитьФайл(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Файл = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ИмяФайла = "photo.jpg";
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Описание = "Описание файла";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Результат = OPI_GreenAPI.ОтправитьФайл(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
Файл = ПараметрыФункции["Video"];
ИмяФайла = "vid.mp4";
Результат = OPI_GreenAPI.ОтправитьФайл(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание, IDСообщения);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайл (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -2385,6 +2385,22 @@
КонецПроцедуры
Процедура CLI_GAPI_ОтправкаСообщений() Экспорт
ПараметрыТеста = Новый Структура;
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_ApiURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_MediaURL" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_IdInstance" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_Token" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("GreenAPI_TestGroupID", ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture" , ПараметрыТеста);
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Video" , ПараметрыТеста);
CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
CLI_GreenAPI_ОтправитьФайл(ПараметрыТеста);
КонецПроцедуры
#КонецОбласти
#КонецОбласти
@ -20344,7 +20360,7 @@
// END
Результат.Вставить("apiTokenInstance", "***");
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "СформироватьПараметрыДоступа", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "СформироватьПараметрыДоступа", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_Соответствие(Результат);
КонецПроцедуры
@ -20371,7 +20387,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринИнстанс(Результат);
КонецПроцедуры
@ -20417,7 +20433,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруНастроекИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСтруктуруНастроекИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_Соответствие(Результат);
Опции = Новый Структура;
@ -20425,7 +20441,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьСтруктуруНастроекИнстанса", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСтруктуруНастроекИнстанса (пустая)", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСтруктуруНастроекИнстанса (пустая)", "GreenAPI");
Для Каждого Элемент Из Результат Цикл
@ -20467,7 +20483,7 @@
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "УстановитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "УстановитьНастройкиИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСохранениеНастроек(Результат);
КонецПроцедуры
@ -20492,7 +20508,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьСостояниеИнстанса", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьСостояниеИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьСостояниеИнстанса", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринАвторизован(Результат);
КонецПроцедуры
@ -20517,7 +20533,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПерезапуститьИнстанс", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПерезапуститьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПерезапуститьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринПерезапуск(Результат);
КонецПроцедуры
@ -20542,7 +20558,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ПолучитьQR", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьQR", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ПолучитьQR", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринАвторизован(Результат);
КонецПроцедуры
@ -20567,7 +20583,7 @@
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "РазлогинитьИнстанс", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "РазлогинитьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "РазлогинитьИнстанс", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринПерезапуск(Результат);
КонецПроцедуры
@ -20798,7 +20814,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20828,7 +20850,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20843,7 +20871,7 @@
Сообщить("Не удалось заменить секреты!");
КонецПопытки;
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "НазначитьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "НазначитьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринНазначениеАдминистратора(Результат);
КонецПроцедуры
@ -20858,7 +20886,13 @@
IDГруппы = ПараметрыФункции["GreenAPI_GroupID"];
IDПользователя = "123123123@c.us";
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
@ -20873,11 +20907,110 @@
Сообщить("Не удалось заменить секреты!");
КонецПопытки;
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтозватьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтозватьПраваАдминистратора", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринОтзывАдминистратора(Результат);
КонецПроцедуры
Процедура CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Текст = "Новое сообщение";
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("text" , Текст);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьТекстовоеСообщение", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_MessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_MessageID", IDСообщения, "Строка", ПараметрыФункции);
Опции = Новый Структура;
Опции.Вставить("access", ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("text" , Текст);
Опции.Вставить("quoted", IDСообщения);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьТекстовоеСообщение", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьТекстовоеСообщение (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
КонецПроцедуры
Процедура CLI_GreenAPI_ОтправитьФайл(ПараметрыФункции)
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
Файл = ПараметрыФункции["Picture"]; // URL, Путь или Двоичные данные
ИмяФайла = "photo.jpg";
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
Описание = "Описание файла";
Опции = Новый Структура;
Опции.Вставить("api" , ApiUrl);
Опции.Вставить("media", MediaUrl);
Опции.Вставить("id" , IdInstance);
Опции.Вставить("token", ApiTokenInstance);
ПараметрыДоступа = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "СформироватьПараметрыДоступа", Опции);
Опции = Новый Структура;
Опции.Вставить("access" , ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("file" , Файл);
Опции.Вставить("filename", ИмяФайла);
Опции.Вставить("caption" , Описание);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайл", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайл", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
IDСообщения = Результат["idMessage"];
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
Файл = ПараметрыФункции["Video"];
ИмяФайла = "vid.mp4";
Опции = Новый Структура;
Опции.Вставить("access" , ПараметрыДоступа);
Опции.Вставить("chat" , IDЧата);
Опции.Вставить("file" , Файл);
Опции.Вставить("filename", ИмяФайла);
Опции.Вставить("caption" , Описание);
Опции.Вставить("quoted" , IDСообщения);
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайл", Опции);
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайл (цитата)", "GreenAPI");
OPI_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
КонецПроцедуры
#КонецОбласти
#КонецОбласти