1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-01-18 05:18:06 +02:00

Преобразование OPI -> OInt (workflow)

This commit is contained in:
Vitaly the Alpaca 2024-04-20 15:03:55 +00:00 committed by Vitaly the Alpaca (bot)
parent 80b44f96a3
commit 212e1fdb8b
2 changed files with 53 additions and 43 deletions

View File

@ -137,7 +137,7 @@
, Знач Разметка = "Markdown") Экспорт
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
OPI_Инструменты.ЗаменитьСпецСимволы(Текст);
OPI_Инструменты.ЗаменитьСпецСимволы(Текст, Разметка);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("parse_mode" , Разметка , "Строка" , Параметры);
@ -302,7 +302,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(СоответствиеФайлов);
OPI_Инструменты.ЗаменитьСпецсимволы(Текст);
OPI_Инструменты.ЗаменитьСпецсимволы(Текст, Разметка);
URL = "api.telegram.org/bot" + Токен + "/sendMediaGroup";
СтруктураФайлов = Новый Структура;
@ -958,7 +958,7 @@
ОпределитьМетодОтправки(Вид, Метод, Расширение);
ПреобразоватьДанныеФайла(Файл, Расширение, Вид);
OPI_Инструменты.ЗаменитьСпецсимволы(Текст);
OPI_Инструменты.ЗаменитьСпецсимволы(Текст, Разметка);
Параметры = Новый Структура;
OPI_Инструменты.ДобавитьПоле("parse_mode" , Разметка , "Строка" , Параметры);

View File

@ -146,7 +146,7 @@
Возврат;
КонецЕсли;
GZip = "gzip";
GZip = "gzip";
НужнаРаспаковка =
Ответ.Заголовки.Получить("Content-Encoding") = GZip
Или Ответ.Заголовки.Получить("content-encoding") = GZip;
@ -314,20 +314,20 @@
КонецФункции
Функция ИнформацияОПрогрессе(Знач Текущее, Знач Всего, Знач ЕдИзм, Знач Делитель = 1) Экспорт
Целое = 100;
Текущее = Окр(Текущее / Делитель, 2);
Всего = Окр(Всего / Делитель, 2);
Процент = Цел(Текущее / Всего * Целое);
СтрТекущее = ЧислоВСтроку(Текущее);
СтрВсего = ЧислоВСтроку(Всего);
СтрПроцент = ЧислоВСтроку(Процент);
Целое = 100;
Текущее = Окр(Текущее / Делитель, 2);
Всего = Окр(Всего / Делитель, 2);
Процент = Цел(Текущее / Всего * Целое);
СтрТекущее = ЧислоВСтроку(Текущее);
СтрВсего = ЧислоВСтроку(Всего);
СтрПроцент = ЧислоВСтроку(Процент);
Информация = СтрТекущее + "/" + СтрВсего + " " + ЕдИзм + " ( " + СтрПроцент + "% )";
Возврат Информация;
Информация = СтрТекущее + "/" + СтрВсего + " " + ЕдИзм + " ( " + СтрПроцент + "% )";
Возврат Информация;
КонецФункции
Процедура ЗначениеВМассив(Значение) Экспорт
@ -338,17 +338,27 @@
КонецПроцедуры
Процедура ЗаменитьСпецСимволы(Текст) Экспорт
Процедура ЗаменитьСпецСимволы(Текст, Разметка = "Markdown") Экспорт
СоответствиеСимволов = Новый Соответствие;
Если Разметка = "HTML" Тогда
СоответствиеСимволов.Вставить("&", "&");
ИначеЕсли Разметка = "MarkdownV2" Тогда
СоответствиеСимволов.Вставить("-", "\-");
СоответствиеСимволов.Вставить("+", "\+");
СоответствиеСимволов.Вставить("#", "\#");
СоответствиеСимволов.Вставить("=", "\=");
СоответствиеСимволов.Вставить("{", "\{");
СоответствиеСимволов.Вставить("}", "\}");
СоответствиеСимволов.Вставить(".", "\.");
КонецЕсли;
МассивСимволов = Новый Соответствие;
МассивСимволов.Вставить("<", "&lt;");
МассивСимволов.Вставить(">", "&gt;");
МассивСимволов.Вставить("&", "&amp;");
МассивСимволов.Вставить("_", " ");
МассивСимволов.Вставить("[", "(");
МассивСимволов.Вставить("]", ")");
Для Каждого СимволМассива Из МассивСимволов Цикл
Для Каждого СимволМассива Из СоответствиеСимволов Цикл
Текст = СтрЗаменить(Текст, СимволМассива.Ключ, СимволМассива.Значение);
КонецЦикла;
@ -819,24 +829,24 @@
ОбщийРазмер = ДвоичныеДанные.Размер();
Пока ПрочитанноБайт < ОбщийРазмер Цикл
ЧтениеДанных = Новый ЧтениеДанных(ДвоичныеДанные);
ПрочитанноБайт = ЧтениеДанных.Пропустить(ТекущаяПозиция);
Результат = ЧтениеДанных.Прочитать(РазмерЧасти);
ТекущиеДанные = Результат.ПолучитьДвоичныеДанные();
РазмерТекущих = ТекущиеДанные.Размер();
Если Не ЗначениеЗаполнено(ТекущиеДанные) Тогда
Прервать;
КонецЕсли;
ЧтениеДанных = Новый ЧтениеДанных(ДвоичныеДанные);
ПрочитанноБайт = ЧтениеДанных.Пропустить(ТекущаяПозиция);
Результат = ЧтениеДанных.Прочитать(РазмерЧасти);
ТекущиеДанные = Результат.ПолучитьДвоичныеДанные();
РазмерТекущих = ТекущиеДанные.Размер();
Если Не ЗначениеЗаполнено(ТекущиеДанные) Тогда
Прервать;
КонецЕсли;
ЗаписьДанных.Записать(ТекущиеДанные);
ОсвободитьОбъект(ТекущиеДанные);
ВыполнитьСборкуМусора();
ЗаписьДанных.Записать(ТекущиеДанные);
ОсвободитьОбъект(ТекущиеДанные);
ВыполнитьСборкуМусора();
ТекущаяПозиция = ТекущаяПозиция + РазмерТекущих;
ТекущаяПозиция = ТекущаяПозиция + РазмерТекущих;
КонецЦикла;
КонецПроцедуры