From 0e652b69c62649f23144e60caddde38be3a00873 Mon Sep 17 00:00:00 2001 From: Anton Date: Wed, 17 Jul 2024 21:09:34 +0300 Subject: [PATCH] =?UTF-8?q?TG:=20=D0=9F=D0=B0=D1=80=D0=B0=D0=BC=D0=B5?= =?UTF-8?q?=D1=82=D1=80=20=D0=B8=D0=BC=D0=B5=D0=BD=D0=B8=20=D1=84=D0=B0?= =?UTF-8?q?=D0=B9=D0=BB=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D0=BE=D1=82=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BA=D0=B8=20=D0=B4=D0=BE=D0=BA=D1=83=D0=BC?= =?UTF-8?q?=D0=B5=D0=BD=D1=82=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/CommonModules/OPI_Telegram/Module.bsl | 25 +++++++++++++------ .../src/CommonModules/OPI_Тесты/Module.bsl | 8 +++++- 2 files changed, 25 insertions(+), 8 deletions(-) diff --git a/src/ru/OPI/src/CommonModules/OPI_Telegram/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Telegram/Module.bsl index b516bfd2b2..b051ca629b 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Telegram/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_Telegram/Module.bsl @@ -356,7 +356,8 @@ // Текст - Строка - Текст сообщения - text // Документ - ДвоичныеДанные,Строка - Файл документа - doc // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json -// Разметка - Строка - Вид обработки текста (HTML, Markdown, MarkdownV2) - parsemode +// Разметка - Строка - Вид обработки текста (HTML, Markdown, MarkdownV2) - parsemode +// ИмяФайла - Строка - Отображаемое имя файла c расширением, если необходимо - filename // // Возвращаемое значение: // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram @@ -365,9 +366,10 @@ , Знач Текст , Знач Документ , Знач Клавиатура = "" - , Знач Разметка = "Markdown") Экспорт + , Знач Разметка = "Markdown" + , Знач ИмяФайла = "") Экспорт - Возврат ОтправитьФайл(Токен, IDЧата, Текст, Документ, "document", Клавиатура, Разметка); + Возврат ОтправитьФайл(Токен, IDЧата, Текст, Документ, "document", Клавиатура, Разметка, ИмяФайла); КонецФункции @@ -1041,7 +1043,14 @@ #Область СлужебныеПроцедурыИФункции -Функция ОтправитьФайл(Знач Токен, Знач IDЧата, Знач Текст, Знач Файл, Знач Вид, Знач Клавиатура, Знач Разметка) +Функция ОтправитьФайл(Знач Токен + , Знач IDЧата + , Знач Текст + , Знач Файл + , Знач Вид + , Знач Клавиатура + , Знач Разметка + , Знач ИмяФайла = "") OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен); OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата); @@ -1054,6 +1063,8 @@ ПреобразоватьДанныеФайла(Файл, Расширение, Вид); OPI_Инструменты.ЗаменитьСпецсимволы(Текст, Разметка); + ИмяФайла = ?(ЗначениеЗаполнено(ИмяФайла), Вид + "|" + ИмяФайла, Вид + Расширение); + Параметры = Новый Структура; OPI_Инструменты.ДобавитьПоле("parse_mode" , Разметка , "Строка" , Параметры); OPI_Инструменты.ДобавитьПоле("caption" , Текст , "Строка" , Параметры); @@ -1061,11 +1072,11 @@ ДобавитьИдентификаторЧата(IDЧата, Параметры); - СтруктураФайлов = Новый Структура; - СтруктураФайлов.Вставить(Вид + Расширение, Файл); + СоответствиеФайлов = Новый Соответствие; + СоответствиеФайлов.Вставить(ИмяФайла, Файл); URL = "api.telegram.org/bot" + Токен + Метод; - Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, СтруктураФайлов, "mixed"); + Ответ = OPI_Инструменты.PostMultipart(URL, Параметры, СоответствиеФайлов, "mixed"); Возврат Ответ; diff --git a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl index 74023ea5a8..0600c39563 100644 --- a/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl +++ b/src/ru/OPI/src/CommonModules/OPI_Тесты/Module.bsl @@ -4050,6 +4050,12 @@ // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьДокумент", "Telegram"); + Проверка_ТелеграмДокумент(Результат, Текст); // SKIP + + Результат = OPI_Telegram.ОтправитьДокумент(Токен, IDЧата, Текст, Документ, , , "customname.docx"); + + // !OInt OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ОтправитьДокумент (с именем)", "Telegram"); + Проверка_ТелеграмДокумент(Результат, Текст); // SKIP Результат = OPI_Telegram.ОтправитьДокумент(Токен, IDКанала, Текст, ДокументПуть); @@ -4058,7 +4064,7 @@ Проверка_ТелеграмДокумент(Результат, Текст); // SKIP - Результат = OPI_Telegram.ОтправитьДокумент(Токен, IDКанала, Текст, ДокументДД); + Результат = OPI_Telegram.ОтправитьДокумент(Токен, IDКанала, Текст, ДокументДД, , , "customname.docx"); // END