mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-03-29 21:57:16 +02:00
GAPI: Отправка текста и файлов
This commit is contained in:
parent
4b4394db7f
commit
2e2bc21b7d
13357
service/dictionaries/en.json
vendored
13357
service/dictionaries/en.json
vendored
File diff suppressed because it is too large
Load Diff
105
src/ru/OInt/core/Modules/OPI_GreenAPI.os
vendored
105
src/ru/OInt/core/Modules/OPI_GreenAPI.os
vendored
@ -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, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
82
src/ru/OInt/tests/Modules/internal/OPI_Тесты.os
vendored
82
src/ru/OInt/tests/Modules/internal/OPI_Тесты.os
vendored
@ -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_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
161
src/ru/OInt/tests/Modules/internal/OPI_ТестыCLI.os
vendored
161
src/ru/OInt/tests/Modules/internal/OPI_ТестыCLI.os
vendored
@ -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_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -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 @@
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьОбщийМодуль(Знач Имя)
|
||||
|
||||
|
||||
Модуль = Вычислить(Имя);
|
||||
|
||||
|
||||
Возврат Модуль;
|
||||
КонецФункции
|
||||
|
||||
|
@ -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, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -281,6 +281,7 @@
|
||||
НовыйТест(ТаблицаТестов, "Postgres_ORM" , "ORM" , Postgres);
|
||||
НовыйТест(ТаблицаТестов, "GAPI_УправлениеГруппами" , "Управление группами" , GreenAPI);
|
||||
НовыйТест(ТаблицаТестов, "GAPI_Аккаунт" , "Аккаунт" , GreenAPI);
|
||||
НовыйТест(ТаблицаТестов, "GAPI_ОтправкаСообщений" , "Отправка сообщений" , GreenAPI);
|
||||
|
||||
Возврат ТаблицаТестов;
|
||||
|
||||
@ -2238,6 +2239,19 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ГринСообщение(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["idMessage"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ГринФайл(Знач Результат) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["idMessage"]).Заполнено();
|
||||
ОжидаетЧто(Результат["urlFile"]).Заполнено();
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
@ -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_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
161
src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
vendored
161
src/ru/OPI/src/CommonModules/OPI_ТестыCLI/Module.bsl
vendored
@ -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_ПолучениеДанныхТестов.Проверка_ГринФайл(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
Loading…
x
Reference in New Issue
Block a user