1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-06-21 00:29:52 +02:00

Рефакторинг VK и TG, доработка приведения к типам

This commit is contained in:
Anton
2024-03-31 17:12:59 +03:00
parent 9b1a8e88bb
commit 2aa98d6e79
8 changed files with 176 additions and 154 deletions

View File

@ -88,6 +88,7 @@
СоответствиеПЗ.Вставить("item" , "1");
СоответствиеПЗ.Вставить("sellgroup" , "1");
СоответствиеПЗ.Вставить("sels" , "['1111111','2222222']");
СоответствиеПЗ.Вставить("posts" , "['1111111','2222222']");
СоответствиеПЗ.Вставить("main" , "false");
СоответствиеПЗ.Вставить("hidden" , "false");
СоответствиеПЗ.Вставить("prop" , "1");

View File

@ -123,7 +123,7 @@
// Токен - Строка - Токен бота - token
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -132,7 +132,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура, Истина);
OPI_Инструменты.ЗаменитьСпецСимволы(Текст);
@ -158,7 +158,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Картинка - ДвоичныеДанные,Строка - Файл картинки - picture
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -176,7 +176,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Видео - ДвоичныеДанные,Строка - Файл видео - video
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -194,7 +194,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Аудио - ДвоичныеДанные,Строка - Файл аудио - audio
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -212,7 +212,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Документ - ДвоичныеДанные,Строка - Файл документа - doc
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -230,7 +230,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text
// Гифка - ДвоичныеДанные,Строка - Файл гифки - gif
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -270,7 +270,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Токен);
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура, Истина);
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(СоответствиеФайлов);
OPI_Инструменты.ЗаменитьСпецсимволы(Текст);
@ -313,7 +313,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Широта);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Долгота);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура, Истина);
IDЧата = OPI_Инструменты.ЧислоВСтроку(IDЧата);
URL = "api.telegram.org/bot" + Токен + "/sendLocation";
@ -341,7 +341,7 @@
// Имя - Строка - Имя контакта - name
// Фамилия - Строка - Фамилия контакта - surname
// Телефон - Строка - Телефон контакта - phone
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - Текст
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard
//
// Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -352,7 +352,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Имя);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Фамилия);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Телефон);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура, Истина);
URL = "api.telegram.org/bot" + Токен + "/sendContact";
@ -399,10 +399,7 @@
Параметры_.Вставить("parse_mode" , "Markdown");
Параметры_.Вставить("question" , Вопрос);
Параметры_.Вставить("options" , МассивОтветов);
Если Не Анонимный Тогда
Параметры_.Вставить("is_anonymous", Ложь);
КонецЕсли;
Параметры_.Вставить("is_anonymous", Анонимный);
ДобавитьИдентификаторЧата(IDЧата, Параметры_);
@ -431,6 +428,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(КудаID);
URL = "api.telegram.org/bot" + Токен + "/forwardMessage";
Параметры_ = Новый Структура;
Параметры_.Вставить("from_chat_id", ОткудаID);
Параметры_.Вставить("message_id" , IDОригинала);
@ -531,6 +529,7 @@
OPI_ПреобразованиеТипов.ПолучитьДату(ДатаИстечения);
URL = "api.telegram.org/bot" + Токен + "/createChatInviteLink";
Параметры_ = Новый Структура;
Параметры_.Вставить("parse_mode", "Markdown");
Параметры_.Вставить("chat_id" , IDЧата);
@ -566,6 +565,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDСообщения);
URL = "api.telegram.org/bot" + Токен + "/pinChatMessage";
Параметры_ = Новый Структура;
Параметры_.Вставить("parse_mode" , "Markdown");
Параметры_.Вставить("chat_id" , IDЧата);
@ -595,6 +595,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDСообщения);
URL = "api.telegram.org/bot" + Токен + "/unpinChatMessage";
Параметры_ = Новый Структура;
Параметры_.Вставить("parse_mode", "Markdown");
Параметры_.Вставить("chat_id" , IDЧата);
@ -621,6 +622,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
URL = "api.telegram.org/bot" + Токен + "/getChatMemberCount";
Параметры_ = Новый Структура;
Параметры_.Вставить("parse_mode", "Markdown");
Параметры_.Вставить("chat_id" , IDЧата);
@ -720,6 +722,7 @@
Result = "result";
URL = "api.telegram.org/bot" + Токен + "/getForumTopicIconStickers";
Ответ = OPI_Инструменты.Get(URL);
Иконки = Ответ[Result];
Коллекция = Новый Соответствие;
@ -851,11 +854,12 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Заголовок);
URL = "api.telegram.org/bot" + Токен + "/editGeneralForumTopic";
Параметры_ = Новый Структура;
Параметры_.Вставить("chat_id", IDЧата);
Параметры_.Вставить("name" , Заголовок);
URL = "api.telegram.org/bot" + Токен + "/editGeneralForumTopic";
Ответ = OPI_Инструменты.Get(URL, Параметры_);
Возврат Ответ;
@ -931,13 +935,9 @@
СтруктураПараметра = Новый Структура("keyboard,resize_keyboard", Строки, Истина);
КонецЕсли;
ЗаписьJSON = Новый ЗаписьJSON;
ПЗJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет, , , ЭкранированиеСимволовJSON.СимволыВнеASCII);
ЗаписьJSON.УстановитьСтроку(ПЗJSON);
Клавиатура = OPI_Инструменты.JSONСтрокой(СтруктураПараметра);
ЗаписатьJSON(ЗаписьJSON, СтруктураПараметра);
Возврат ЗаписьJSON.Закрыть();
Возврат Клавиатура;
КонецФункции
@ -953,7 +953,7 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(IDЧата);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Текст);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Вид);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура);
OPI_ПреобразованиеТипов.ПолучитьСтроку(Клавиатура, Истина);
Расширение = "";
Метод = "";

View File

@ -92,14 +92,6 @@
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
СтрокаВложений = "";
Если Не ТипЗнч(МассивКартинок) = Тип("Массив") Тогда
ОднаКартинка = МассивКартинок;
МассивКартинок = Новый Массив;
МассивКартинок.Добавить(ОднаКартинка);
КонецЕсли;
Для Каждого КартинкаПоста Из МассивКартинок Цикл
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
@ -168,33 +160,11 @@
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(МассивОтветов);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Ответ = OPI_Инструменты.Get("api.vk.com/method/polls.getPhotoUploadServer", Параметры_);
Response = "response";
Hash = "hash";
Photo = "photo";
URL = Ответ[Response]["upload_url"];
IDФото = "";
Параметры_.Вставить("upload_url", URL);
Если ЗначениеЗаполнено(Картинка) Тогда
Если ТипЗнч(Картинка) = Тип("Строка") Тогда
Путь = Картинка;
OPI_ПреобразованиеТипов.ПолучитьДвоичныеДанные(Картинка);
Иначе
Путь = ("image.jpeg");
КонецЕсли;
Файлы = Новый Соответствие;
Файлы.Вставить(Путь, Картинка);
Ответ = OPI_Инструменты.PostMultipart(URL, Параметры_, Файлы);
Параметры_.Вставить(Hash , Ответ[Hash]);
Параметры_.Вставить(Photo, Ответ[Photo]);
Ответ = OPI_Инструменты.Get("api.vk.com/method/polls.savePhoto", Параметры_);
Ответ = ЗагрузитьФотоНаСервер(Картинка, Параметры, "Опрос");
IDФото = Ответ.Получить(Response)["id"];
КонецЕсли;
@ -202,22 +172,8 @@
Параметры_.Вставить("is_anonymous", 1);
Параметры_.Вставить("is_multiple" , 0);
Ответы = "[";
Первый = Истина;
Для Каждого Ответ Из МассивОтветов Цикл
Если Первый Тогда
Первый = Ложь;
Иначе
Ответы = Ответы + ", ";
КонецЕсли;
Ответы = Ответы + """" + Ответ + """";
КонецЦикла;
Ответы = Ответы + "]";
Ответы = СтрСоединить(МассивОтветов, """,""");
Ответы = "[""" + Ответы + """]";
Параметры_.Вставить("add_answers", Ответы);
Параметры_.Вставить("photo_id" , OPI_Инструменты.ЧислоВСтроку(IDФото));
@ -657,8 +613,8 @@
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
ДатаНачала = Формат(ДатаНачала - Дата(1970, 1, 1, 1, 0, 0), "ЧГ=0");
ДатаОкончания = Формат(ДатаОкончания - дата(1970, 1, 1, 1, 0, 0), "ЧГ=0");
ДатаНачала = OPI_Инструменты.UNIXTime(ДатаНачала);
ДатаОкончания = OPI_Инструменты.UNIXTime(ДатаОкончания);;
Параметры_.Вставить("timestamp_from", ДатаНачала);
Параметры_.Вставить("timestamp_to" , ДатаОкончания);
@ -747,12 +703,14 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Наименование);
ТекущаяДата = OPI_Инструменты.ПолучитьТекущуюДату();
КонечнаяДата = ДобавитьМесяц(ТекущаяДата, 24);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Параметры_.Вставить("account_id", IDКабинета);
МассивСтруктур = Новый Массив;
ДатаСтарт = Формат(ТекущаяДата - Дата(1970, 1, 1, 1, 0, 0), "ЧГ=0");
ДатаСтоп = Формат(ДобавитьМесяц(ТекущаяДата, 24) - Дата(1970, 1, 1, 1, 0, 0), "ЧГ=0");
ДатаСтарт = OPI_Инструменты.UNIXTime(ТекущаяДата);
ДатаСтоп = OPI_Инструменты.UNIXTime(КонечнаяДата);
СтруктураКампании = Новый Структура;
СтруктураКампании.Вставить("type" , "promoted_posts");
@ -796,7 +754,6 @@
, Знач Параметры = "") Экспорт
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
GroupId = Параметры_["group_id"];
OPI_ПреобразованиеТипов.ПолучитьСтроку(GroupId);
@ -975,12 +932,6 @@
СтрокаТоваров = "";
Owner = "owner_id";
Если ТипЗнч(Товары) <> Тип("Массив") Тогда
Товар = Товары;
Товары = Новый Массив;
Товары.Добавить(Товар);
КонецЕсли;
Для Каждого Товар Из Товары Цикл
ТекущийТовар = Параметры_[Owner] + "_" + Товар;
ТекущийТовар = OPI_Инструменты.ЧислоВСтроку(ТекущийТовар);
@ -1207,24 +1158,15 @@
OPI_ПреобразованиеТипов.ПолучитьКоллекцию(Подборки);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Подборки_ = Новый Массив;
СтрокаПодборок = "";
Если ТипЗнч(Подборки) <> Тип("Массив") Тогда
Подборка = Подборки;
Подборки = Новый Массив;
Подборки.Добавить(Подборка);
КонецЕсли;
Для Каждого Подборка Из Подборки Цикл
ТекущаяПодборка = OPI_Инструменты.ЧислоВСтроку(Подборка);
СтрокаПодборок = СтрокаПодборок + ТекущаяПодборка + ",";
Подборки_.Добавить(OPI_Инструменты.ЧислоВСтроку(Подборка));
КонецЦикла;
СтрокаПодборок = Лев(СтрокаПодборок, СтрДлина(СтрокаПодборок) - 1);
СтрокаПодборок = СтрСоединить(Подборки_, ",");
Параметры_.Вставить("album_ids", СтрокаПодборок);
Ответ = OPI_Инструменты.Get("api.vk.com/method/market.getAlbumById", Параметры_);
@ -1330,7 +1272,6 @@
OPI_ПреобразованиеТипов.ПолучитьСтроку(Подборка);
Параметры_ = ПолучитьСтандартныеПараметры(Параметры);
Подборка = OPI_Инструменты.ЧислоВСтроку(Подборка);
Параметры_.Вставить("item_id" , Товар);
Параметры_.Вставить("album_ids", Подборка);
@ -1640,9 +1581,11 @@
Функция ЗагрузитьФотоНаСервер(Знач Картинка, Знач Параметры, Знач Вид = "Пост")
Попытка
Response = "response";
Файлы = Новый Соответствие;
Метод = ОпределитьМетодЗагрузкиИзображений(Вид);
Файлы = Новый Соответствие;
Response = "response";
URL = "api.vk.com/method/";
Загрузка = URL + Метод["Загрузка"];
Сохранение = URL + Метод["Сохранение"];
@ -1668,7 +1611,11 @@
Возврат Ответ;
Исключение
ВызватьИсключение ?(ЗначениеЗаполнено(Ответ), OPI_Инструменты.JSONСтрокой(Ответ), ОписаниеОшибки());
Если ЗначениеЗаполнено(Ответ) Тогда
Возврат Ответ;
Иначе
ВызватьИсключение ОписаниеОшибки();
КонецЕсли;
КонецПопытки;
КонецФункции
@ -1700,6 +1647,12 @@
СоответствиеМетодов.Вставить(Сохранение, "stories.save");
СоответствиеМетодов.Вставить(Способ , 3);
ИначеЕсли Вид = "Опрос" Тогда
СоответствиеМетодов.Вставить(Загрузка , "polls.getPhotoUploadServer");
СоответствиеМетодов.Вставить(Сохранение, "polls.savePhoto");
СоответствиеМетодов.Вставить(Способ , 1);
Иначе
СоответствиеМетодов.Вставить(Загрузка , "photos.getUploadServer");
@ -1841,16 +1794,20 @@
Aid = "aid";
Фото = Метод["Фото"];
СерверФото = OPI_Инструменты.ЧислоВСтроку(Ответ[Serv]);
Параметры.Вставить(Hash, Ответ[Hash]);
Параметры.Вставить(Фото, Ответ[Фото]);
СерверФото = Ответ.Получить(Serv);
Если ЗначениеЗаполнено(СерверФото) Тогда
СерверФото = OPI_Инструменты.ЧислоВСтроку(СерверФото);
Параметры.Вставить(Serv, СерверФото);
КонецЕсли;
Идентификатор = Ответ.Получить(Aid);
Идентификатор = OPI_Инструменты.ЧислоВСтроку(Идентификатор);
Если ЗначениеЗаполнено(Идентификатор) Тогда
Идентификатор = OPI_Инструменты.ЧислоВСтроку(Идентификатор);
Параметры.Вставить(Aid , Идентификатор);
КонецЕсли;

View File

@ -245,8 +245,14 @@
Функция JSONСтрокой(Знач Данные) Экспорт
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Windows, " ", Истина, ЭкранированиеСимволовJSON.Нет,
Ложь, Ложь, Ложь, Ложь);
ПараметрыJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Windows
, " "
, Истина
, ЭкранированиеСимволовJSON.СимволыВнеASCII
, Ложь
, Ложь
, Ложь
, Ложь);
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку(ПараметрыJSON);

View File

@ -1,3 +1,33 @@
// MIT License
// Copyright (c) 2023 Anton Tsitavets
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and associated documentation files (the "Software"), to deal
// in the Software without restriction, including without limitation the rights
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
// copies of the Software, and to permit persons to whom the Software is
// furnished to do so, subject to the following conditions:
// The above copyright notice and this permission notice shall be included in all
// copies or substantial portions of the Software.
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
// SOFTWARE.
// https://github.com/Bayselonarrend/OpenIntegrations
// BSLLS:LatinAndCyrillicSymbolInWord-off
// BSLLS:IncorrectLineBreak-off
// BSLLS:UnusedLocalVariable-off
// #Использовать "./internal"
#Область СлужебныйПрограммныйИнтерфейс
Процедура ПолучитьДвоичныеДанные(Значение) Экспорт
@ -46,6 +76,12 @@
Возврат;
Иначе
Если ТипЗнч(Значение) = Тип("ДвоичныеДанные") Тогда
Значение = ПолучитьСтрокуИзДвоичныхДанных(Значение);
Иначе
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
КонецЕсли;
Файл = Новый Файл(Значение);
ЧтениеJSON = Новый ЧтениеJSON;
@ -54,7 +90,7 @@
ЧтениеJSON.ОткрытьФайл(Значение);
ЧтениеJSON.Прочитать();
ИначеЕсли СтрНайти(Значение, "://") Тогда
ИначеЕсли СтрНачинаетсяС(нРег(Значение), "http") Тогда
ИВФ = ПолучитьИмяВременногоФайла();
КопироватьФайл(Значение, ИВФ);
@ -76,7 +112,9 @@
Исключение
Если ТипЗнч(Значение) = Тип("Строка") И СтрНайти(Значение, "[") > 0 Тогда
Если ТипЗнч(Значение) = Тип("Строка")
И СтрНачинаетсяС(Значение, "[")
И СтрЗаканчиваетсяНа(Значение, "]") Тогда
Значение = СтрЗаменить(Значение, "['" , "");
Значение = СтрЗаменить(Значение, "']" , "");
@ -118,17 +156,17 @@
Процедура ПолучитьСтроку(Значение, Знач ИзИсточника = Ложь) Экспорт
Если Не ИзИсточника Тогда
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
Возврат;
КонецЕсли;
Попытка
Если ТипЗнч(Значение) = Тип("Строка")
Или ТипЗнч(Значение) = Тип("Число")
Или ТипЗнч(Значение) = Тип("Дата") Тогда
Если Не ИзИсточника Тогда
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
Возврат;
КонецЕсли;
Значение = OPI_Инструменты.ЧислоВСтроку(Значение);
Файл = Новый Файл(Значение);
@ -138,7 +176,7 @@
Значение = ЧтениеТекста.Прочитать();
ЧтениеТекста.Закрыть();
ИначеЕсли СтрНайти(Значение, "://") Тогда
ИначеЕсли СтрНачинаетсяС(нРег(Значение), "http") Тогда
ИВФ = ПолучитьИмяВременногоФайла();
КопироватьФайл(Значение, ИВФ);

View File

@ -13,7 +13,7 @@
Процедура ОсновнойОбработчик()
Отладка = Истина;
Отладка = Ложь;
Парсер = Новый ПарсерАргументовКоманднойСтроки();
ОбъектОПИ = Новый СвязьОПИ();
Команды = ОбъектОПИ.СоответствиеКомандМодулей;
@ -40,6 +40,7 @@
Парсер.ДобавитьПараметр("-h");
Парсер.ДобавитьПараметр("-help");
Парсер.ДобавитьПараметр("--help");
Парсер.ДобавитьПараметр("--debug");
КонецПроцедуры
@ -71,6 +72,20 @@
Параметры = Данные["ЗначенияПараметров"];
Вывод = "";
Если Параметры["--debug"] Тогда
Отладка = Истина;
Иначе
Отладка = Ложь;
КонецЕсли;
Если Отладка Тогда
Для каждого ВводныйПараметр Из Параметры Цикл
Сообщить(ВводныйПараметр.Ключ + " : " + ВводныйПараметр.Значение);
КонецЦикла;
КонецЕсли;
Попытка
Вывод = ПолучитьРезультатОбработки(ТекущаяКоманда, Параметры);

4
super_secret_data.json Normal file
View File

@ -0,0 +1,4 @@
{
"secret1":"11111111",
"secret2":"22222222"
}

View File

@ -0,0 +1 @@