From e94be963fc49abfe92246b3398c9c61b88e7cf1f Mon Sep 17 00:00:00 2001 From: Vitaly the Alpaca Date: Sun, 5 May 2024 08:17:07 +0000 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=B5=D0=BE=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD=D0=B8=D0=B5=20OPI=20->=20OInt=20?= =?UTF-8?q?(workflow)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- OInt/core/Modules/OPI_GoogleSheets.os | 4 +-- OInt/core/Modules/OPI_Telegram.os | 32 ++++++++++++++++++++++++ OInt/tests/Modules/internal/OPI_Тесты.os | 5 ++++ 3 files changed, 39 insertions(+), 2 deletions(-) diff --git a/OInt/core/Modules/OPI_GoogleSheets.os b/OInt/core/Modules/OPI_GoogleSheets.os index 638db7be2f..b490be5d75 100644 --- a/OInt/core/Modules/OPI_GoogleSheets.os +++ b/OInt/core/Modules/OPI_GoogleSheets.os @@ -1,5 +1,5 @@ -// Библиотека: Google Calendar -// Команда CLI: gcalendar +// Библиотека: Google Sheets +// Команда CLI: gsheets // MIT License diff --git a/OInt/core/Modules/OPI_Telegram.os b/OInt/core/Modules/OPI_Telegram.os index 17cdb6a1bd..be867f0794 100644 --- a/OInt/core/Modules/OPI_Telegram.os +++ b/OInt/core/Modules/OPI_Telegram.os @@ -960,6 +960,38 @@ КонецФункции +// Скачать файл +// Скачивает файл с серверов Telegram +// +// Параметры: +// Токен - Строка - Токен - token +// IDФайла - Строка - ID файла для скачивания - fileid +// +// Возвращаемое значение: +// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram +Функция СкачатьФайл(Знач Токен, Знач IDФайла) Экспорт + + OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен); + OPI_ПреобразованиеТипов.ПолучитьСтроку(IDФайла); + + Параметры = Новый Структура("file_id", IDФайла); + + URL = "api.telegram.org/bot" + Токен + "/getFile"; + Ответ = OPI_Инструменты.Get(URL, Параметры); + + Путь = Ответ["result"]["file_path"]; + + Если Не ЗначениеЗаполнено(Путь) Тогда + Возврат Ответ; + КонецЕсли; + + URL = "api.telegram.org/file/bot" + Токен + "/" + Путь; + Ответ = OPI_Инструменты.Get(URL, Параметры); + + Возврат Ответ; + +КонецФункции + #КонецОбласти #КонецОбласти diff --git a/OInt/tests/Modules/internal/OPI_Тесты.os b/OInt/tests/Modules/internal/OPI_Тесты.os index ad3272ba83..35771af430 100644 --- a/OInt/tests/Modules/internal/OPI_Тесты.os +++ b/OInt/tests/Modules/internal/OPI_Тесты.os @@ -171,6 +171,11 @@ УдалитьФайлы(ИВФ); + Результат = OPI_Telegram.СкачатьФайл(Токен, Результат["result"]["photo"][0]["file_id"]); + + OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьКартинку"); + + OPI_ПолучениеДанныхТестов.ОжидаетЧто(Результат).ИмеетТип("ДвоичныеДанные"); OPI_Инструменты.Пауза(5); КонецПроцедуры