You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2026-05-06 21:04:14 +02:00
GAPI: Отправка опросов и файлов по URL
This commit is contained in:
Vendored
+6700
-6688
File diff suppressed because it is too large
Load Diff
+83
@@ -622,6 +622,89 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить файл по URL
|
||||
// Отправляет файл по URL в выбранный чат
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [SendFileByUrl](@green-api.com/docs/api/sending/SendFileByUrl/)
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
|
||||
// IDЧата - Строка - Идентификатор чата - chat
|
||||
// URLФайла - Строка, - URL файла для отправки - url
|
||||
// ИмяФайла - Строка - Имя загружаемого файла с раширением - filename
|
||||
// Описание - Строка - Текст сообщения под файлом - caption
|
||||
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
|
||||
Функция ОтправитьФайлПоURL(Знач ПараметрыДоступа
|
||||
, Знач IDЧата
|
||||
, Знач URLФайла
|
||||
, Знач ИмяФайла
|
||||
, Знач Описание = ""
|
||||
, Знач IDЦитируемого = "") Экспорт
|
||||
|
||||
Параметры = Новый Структура;
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("urlFile" , URLФайла , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("fileName" , ИмяФайла , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("caption" , Описание , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
|
||||
|
||||
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendFileByUrl");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить опрос
|
||||
// Отправляет опрос с вариантами ответов в выбранный чат
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [SendPoll](@green-api.com/docs/api/sending/SendPoll/)
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
|
||||
// IDЧата - Строка - Идентификатор чата - chat
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// Варианты - Массив Из Строка - Варианты ответов - options
|
||||
// МножественныйВыбор - Булево - Позволяет выбирать несколько вариантов ответа - multi
|
||||
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
|
||||
Функция ОтправитьОпрос(Знач ПараметрыДоступа
|
||||
, Знач IDЧата
|
||||
, Знач Текст
|
||||
, Знач Варианты
|
||||
, Знач МножественныйВыбор = Ложь
|
||||
, Знач IDЦитируемого = "") Экспорт
|
||||
|
||||
Параметры = Новый Структура;
|
||||
МассивВариантов = Новый Массив;
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьМассив(Варианты);
|
||||
|
||||
Для Каждого Вариант Из Варианты Цикл
|
||||
МассивВариантов.Добавить(Новый Структура("optionName", Вариант));
|
||||
КонецЦикла;
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("message" , Текст , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("options" , МассивВариантов , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("multipleAnswers", МножественныйВыбор, "Булево" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого , "Строка" , Параметры);
|
||||
|
||||
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendPoll");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
+80
-2
@@ -1921,6 +1921,10 @@
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Picture2" , ПараметрыТеста);
|
||||
|
||||
Ozon_ПолучитьСтруктуруТовара(ПараметрыТеста);
|
||||
|
||||
// TODO: Вернуть позже
|
||||
Возврат;
|
||||
|
||||
Ozon_СоздатьОбновитьТовары(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтатусДобавленияТовара(ПараметрыТеста);
|
||||
Ozon_ДобавитьВидеоТовара(ПараметрыТеста);
|
||||
@@ -1956,6 +1960,9 @@
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ApiKey" , ПараметрыТеста);
|
||||
OPI_ПолучениеДанныхТестов.ПараметрВКоллекцию("Ozon_ProductID", ПараметрыТеста);
|
||||
|
||||
// TODO: Вернуть позже
|
||||
Возврат;
|
||||
|
||||
Ozon_ПривязатьШтрихкоды(ПараметрыТеста);
|
||||
Ozon_СоздатьШтрихкоды(ПараметрыТеста);
|
||||
|
||||
@@ -1973,7 +1980,7 @@
|
||||
Ozon_ОбновитьКоличествоТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьЦеныТоваров(ПараметрыТеста);
|
||||
Ozon_ПолучитьИнформациюОбУценке(ПараметрыТеста);
|
||||
Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыТеста);
|
||||
// Ozon_УстановитьСкидкуНаУцененныйТовар(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруОстатковТовара(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруЦеныТовара(ПараметрыТеста);
|
||||
|
||||
@@ -2009,6 +2016,10 @@
|
||||
|
||||
Ozon_ПолучитьСписокКластеров(ПараметрыТеста);
|
||||
Ozon_ПолучитьСписокСкладовОтгрузки(ПараметрыТеста);
|
||||
|
||||
// TODO: Вернуть позже
|
||||
Возврат;
|
||||
|
||||
Ozon_СоздатьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьЧерновикЗаявкиFBO(ПараметрыТеста);
|
||||
Ozon_ПолучитьСтруктуруДопПолейОтправления(ПараметрыТеста);
|
||||
@@ -2432,7 +2443,9 @@
|
||||
|
||||
GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
|
||||
GreenAPI_ОтправитьФайл(ПараметрыТеста);
|
||||
|
||||
GreenAPI_ОтправитьФайлПоURL(ПараметрыТеста);
|
||||
GreenAPI_ОтправитьОпрос(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -18647,6 +18660,71 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура GreenAPI_ОтправитьФайлПоURL(ПараметрыФункции)
|
||||
|
||||
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
|
||||
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
|
||||
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
|
||||
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
|
||||
|
||||
Файл = ПараметрыФункции["Picture"];
|
||||
ИмяФайла = "photo.jpg";
|
||||
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
|
||||
Описание = "Описание файла";
|
||||
|
||||
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
|
||||
Результат = OPI_GreenAPI.ОтправитьФайлПоURL(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайлПоURL", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Файл = ПараметрыФункции["Video"];
|
||||
ИмяФайла = "vid.mp4";
|
||||
Результат = OPI_GreenAPI.ОтправитьФайлПоURL(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайлПоURL (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура 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Чата, Текст, Варианты);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_PollMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_PollMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Результат = OPI_GreenAPI.ОтправитьОпрос(ПараметрыДоступа, IDЧата, Текст, Варианты, Истина, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
+109
@@ -2398,6 +2398,8 @@
|
||||
|
||||
CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьФайл(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьФайлПоURL(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьОпрос(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -21011,6 +21013,113 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_GreenAPI_ОтправитьФайлПоURL(ПараметрыФункции)
|
||||
|
||||
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Чата);
|
||||
Опции.Вставить("url" , Файл);
|
||||
Опции.Вставить("filename", ИмяФайла);
|
||||
Опции.Вставить("caption" , Описание);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайлПоURL", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайлПоURL", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Файл = ПараметрыФункции["Video"];
|
||||
ИмяФайла = "vid.mp4";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("access" , ПараметрыДоступа);
|
||||
Опции.Вставить("chat" , IDЧата);
|
||||
Опции.Вставить("url" , Файл);
|
||||
Опции.Вставить("filename", ИмяФайла);
|
||||
Опции.Вставить("caption" , Описание);
|
||||
Опции.Вставить("quoted" , IDСообщения);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайлПоURL", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайлПоURL (цитата)", "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" , Текст);
|
||||
Опции.Вставить("options", Варианты);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьОпрос", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_PollMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_PollMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("access" , ПараметрыДоступа);
|
||||
Опции.Вставить("chat" , IDЧата);
|
||||
Опции.Вставить("text" , Текст);
|
||||
Опции.Вставить("options", Варианты);
|
||||
Опции.Вставить("multi" , Истина);
|
||||
Опции.Вставить("quoted" , IDСообщения);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьОпрос", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
+7
-4
@@ -2245,10 +2245,13 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура Проверка_ГринФайл(Знач Результат) Экспорт
|
||||
Процедура Проверка_ГринФайл(Знач Результат, Знач ЕстьURL = Истина) Экспорт
|
||||
|
||||
ОжидаетЧто(Результат["idMessage"]).Заполнено();
|
||||
ОжидаетЧто(Результат["urlFile"]).Заполнено();
|
||||
|
||||
Если ЕстьURL Тогда
|
||||
ОжидаетЧто(Результат["urlFile"]).Заполнено();
|
||||
КонецЕсли;
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -2288,9 +2291,9 @@
|
||||
КонецФункции
|
||||
|
||||
Функция ПолучитьОбщийМодуль(Знач Имя)
|
||||
|
||||
|
||||
Модуль = Вычислить(Имя);
|
||||
|
||||
|
||||
Возврат Модуль;
|
||||
КонецФункции
|
||||
|
||||
|
||||
@@ -622,6 +622,89 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить файл по URL
|
||||
// Отправляет файл по URL в выбранный чат
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [SendFileByUrl](@green-api.com/docs/api/sending/SendFileByUrl/)
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
|
||||
// IDЧата - Строка - Идентификатор чата - chat
|
||||
// URLФайла - Строка, - URL файла для отправки - url
|
||||
// ИмяФайла - Строка - Имя загружаемого файла с раширением - filename
|
||||
// Описание - Строка - Текст сообщения под файлом - caption
|
||||
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
|
||||
Функция ОтправитьФайлПоURL(Знач ПараметрыДоступа
|
||||
, Знач IDЧата
|
||||
, Знач URLФайла
|
||||
, Знач ИмяФайла
|
||||
, Знач Описание = ""
|
||||
, Знач IDЦитируемого = "") Экспорт
|
||||
|
||||
Параметры = Новый Структура;
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("urlFile" , URLФайла , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("fileName" , ИмяФайла , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("caption" , Описание , "Строка", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого, "Строка", Параметры);
|
||||
|
||||
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendFileByUrl");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Отправить опрос
|
||||
// Отправляет опрос с вариантами ответов в выбранный чат
|
||||
//
|
||||
// Примечание:
|
||||
// Метод в документации API: [SendPoll](@green-api.com/docs/api/sending/SendPoll/)
|
||||
//
|
||||
// Параметры:
|
||||
// ПараметрыДоступа - Структура Из КлючИЗначение - Параметры доступа. См. СформироватьПараметрыДоступа - access
|
||||
// IDЧата - Строка - Идентификатор чата - chat
|
||||
// Текст - Строка - Текст сообщения - text
|
||||
// Варианты - Массив Из Строка - Варианты ответов - options
|
||||
// МножественныйВыбор - Булево - Позволяет выбирать несколько вариантов ответа - multi
|
||||
// IDЦитируемого - Строка - ID цитируемого сообщения, если необходимо - quoted
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Green API
|
||||
Функция ОтправитьОпрос(Знач ПараметрыДоступа
|
||||
, Знач IDЧата
|
||||
, Знач Текст
|
||||
, Знач Варианты
|
||||
, Знач МножественныйВыбор = Ложь
|
||||
, Знач IDЦитируемого = "") Экспорт
|
||||
|
||||
Параметры = Новый Структура;
|
||||
МассивВариантов = Новый Массив;
|
||||
|
||||
OPI_ПреобразованиеТипов.ПолучитьМассив(Варианты);
|
||||
|
||||
Для Каждого Вариант Из Варианты Цикл
|
||||
МассивВариантов.Добавить(Новый Структура("optionName", Вариант));
|
||||
КонецЦикла;
|
||||
|
||||
OPI_Инструменты.ДобавитьПоле("chatId" , IDЧата , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("message" , Текст , "Строка" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("options" , МассивВариантов , "Коллекция", Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("multipleAnswers", МножественныйВыбор, "Булево" , Параметры);
|
||||
OPI_Инструменты.ДобавитьПоле("quotedMessageId", IDЦитируемого , "Строка" , Параметры);
|
||||
|
||||
URL = СформироватьОсновнойURL(ПараметрыДоступа, "sendPoll");
|
||||
Ответ = OPI_Инструменты.Post(URL, Параметры);
|
||||
|
||||
Возврат Ответ;
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
+68
-1
@@ -2443,7 +2443,9 @@
|
||||
|
||||
GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
|
||||
GreenAPI_ОтправитьФайл(ПараметрыТеста);
|
||||
|
||||
GreenAPI_ОтправитьФайлПоURL(ПараметрыТеста);
|
||||
GreenAPI_ОтправитьОпрос(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
@@ -18658,6 +18660,71 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура GreenAPI_ОтправитьФайлПоURL(ПараметрыФункции)
|
||||
|
||||
ApiUrl = ПараметрыФункции["GreenAPI_ApiURL"];
|
||||
MediaUrl = ПараметрыФункции["GreenAPI_MediaURL"];
|
||||
IdInstance = ПараметрыФункции["GreenAPI_IdInstance"];
|
||||
ApiTokenInstance = ПараметрыФункции["GreenAPI_Token"];
|
||||
|
||||
Файл = ПараметрыФункции["Picture"];
|
||||
ИмяФайла = "photo.jpg";
|
||||
IDЧата = ПараметрыФункции["GreenAPI_TestGroupID"];
|
||||
Описание = "Описание файла";
|
||||
|
||||
ПараметрыДоступа = OPI_GreenAPI.СформироватьПараметрыДоступа(ApiUrl, MediaUrl, IdInstance, ApiTokenInstance);
|
||||
Результат = OPI_GreenAPI.ОтправитьФайлПоURL(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание);
|
||||
|
||||
// END
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайлПоURL", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Файл = ПараметрыФункции["Video"];
|
||||
ИмяФайла = "vid.mp4";
|
||||
Результат = OPI_GreenAPI.ОтправитьФайлПоURL(ПараметрыДоступа, IDЧата, Файл, ИмяФайла, Описание, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьФайлПоURL (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура 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Чата, Текст, Варианты);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_PollMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_PollMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Результат = OPI_GreenAPI.ОтправитьОпрос(ПараметрыДоступа, IDЧата, Текст, Варианты, Истина, IDСообщения);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
@@ -2398,6 +2398,8 @@
|
||||
|
||||
CLI_GreenAPI_ОтправитьТекстовоеСообщение(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьФайл(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьФайлПоURL(ПараметрыТеста);
|
||||
CLI_GreenAPI_ОтправитьОпрос(ПараметрыТеста);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
@@ -21011,6 +21013,113 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
Процедура CLI_GreenAPI_ОтправитьФайлПоURL(ПараметрыФункции)
|
||||
|
||||
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Чата);
|
||||
Опции.Вставить("url" , Файл);
|
||||
Опции.Вставить("filename", ИмяФайла);
|
||||
Опции.Вставить("caption" , Описание);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайлПоURL", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайлПоURL", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_FileMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_FileMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Файл = ПараметрыФункции["Video"];
|
||||
ИмяФайла = "vid.mp4";
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("access" , ПараметрыДоступа);
|
||||
Опции.Вставить("chat" , IDЧата);
|
||||
Опции.Вставить("url" , Файл);
|
||||
Опции.Вставить("filename", ИмяФайла);
|
||||
Опции.Вставить("caption" , Описание);
|
||||
Опции.Вставить("quoted" , IDСообщения);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьФайлПоURL", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛогCLI(Результат, "ОтправитьФайлПоURL (цитата)", "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" , Текст);
|
||||
Опции.Вставить("options", Варианты);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьОпрос", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
IDСообщения = Результат["idMessage"];
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьПараметр("GreenAPI_PollMessageID", IDСообщения);
|
||||
OPI_Инструменты.ДобавитьПоле("GreenAPI_PollMessageID", IDСообщения, "Строка", ПараметрыФункции);
|
||||
|
||||
Опции = Новый Структура;
|
||||
Опции.Вставить("access" , ПараметрыДоступа);
|
||||
Опции.Вставить("chat" , IDЧата);
|
||||
Опции.Вставить("text" , Текст);
|
||||
Опции.Вставить("options", Варианты);
|
||||
Опции.Вставить("multi" , Истина);
|
||||
Опции.Вставить("quoted" , IDСообщения);
|
||||
|
||||
Результат = OPI_ПолучениеДанныхТестов.ВыполнитьТестCLI("greenapi", "ОтправитьОпрос", Опции);
|
||||
|
||||
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьОпрос (цитата)", "GreenAPI");
|
||||
OPI_ПолучениеДанныхТестов.Проверка_ГринСообщение(Результат);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
Reference in New Issue
Block a user