1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-05-13 22:16:54 +02:00

Дополнения описаний CLI parse

This commit is contained in:
Anton 2024-04-07 01:00:32 +03:00
parent f1e190cc57
commit f241aa778f
4 changed files with 80 additions and 66 deletions

View File

@ -92,6 +92,7 @@
ЗаписыватьОписание = Истина; ЗаписыватьОписание = Истина;
МассивПараметров = Новый Массив; МассивПараметров = Новый Массив;
ОписаниеМетода = ""; ОписаниеМетода = "";
ДопОписание = "";
Пока СтрНайти(ТекущаяСтрока, "//") > 0 Цикл Пока СтрНайти(ТекущаяСтрока, "//") > 0 Цикл
@ -114,8 +115,6 @@
МассивКомментария.Удалить(0); МассивКомментария.Удалить(0);
КонецЕсли; КонецЕсли;
ДопОписание = ОпределитьДопОписаниеПоТипамПараметров(МассивКомментария, Модуль);
Счетчик = 0; Счетчик = 0;
Для Каждого СтрокаКомментария Из МассивКомментария Цикл Для Каждого СтрокаКомментария Из МассивКомментария Цикл
@ -148,6 +147,9 @@
КонецЦикла; КонецЦикла;
ОпределитьДопОписаниеПоПараметрам(ДопОписание, Модуль, МассивПараметров);
ОпределитьДопОписаниеПоТипамПараметров(ДопОписание, Модуль, МассивКомментария);
ОписаниеМетода = СокрЛП(ОписаниеМетода) + ДопОписание; ОписаниеМетода = СокрЛП(ОписаниеМетода) + ДопОписание;
Для Каждого ПараметрМетода Из МассивПараметров Цикл Для Каждого ПараметрМетода Из МассивПараметров Цикл
@ -194,11 +196,11 @@
КонецПроцедуры КонецПроцедуры
Функция ОпределитьДопОписаниеПоТипамПараметров(Знач МассивКомментария, Модуль) Процедура ОпределитьДопОписаниеПоТипамПараметров(ДопОписание, Модуль, МассивКомментария)
НачалоПараметров = Ложь; НачалоПараметров = Ложь;
ЕстьМассив = Ложь; ЕстьМассив = Ложь;
ДопОписание = ""; ТекстДополнения = "";
ДЛя Каждого СтрокаКомментария Из МассивКомментария Цикл ДЛя Каждого СтрокаКомментария Из МассивКомментария Цикл
@ -223,45 +225,79 @@
КонецЦикла; КонецЦикла;
ДопОписание = СформироватьДополненеОписания(Модуль);
Если ЕстьМассив Тогда Если ЕстьМассив Тогда
ДопОписание = ДопОписание + Символы.ПС + Символы.ПС; ТекстДополнения = ТекстДополнения
ДопОписание = ДопОписание + "
+ " |
| Пример указания параметра типа массив: | Пример указания параметра типа массив:
| --param """"['Val1','Val2','Val3']""""" | --param ""['Val1','Val2','Val3']""
+ Символы.ПС; |";
КонецЕсли; КонецЕсли;
Возврат СтрЗаменить(ДопОписание, Символы.ПС, Символы.ПС + "|"); ДопОписание = СтрЗаменить(ТекстДополнения, Символы.ПС, Символы.ПС + "|");
ДопОписание = ДопОписание + СтрЗаменить(ТекстДополнения, """", """""");
КонецФункции КонецПроцедуры
Функция СформироватьДополненеОписания(Модуль) Процедура ОпределитьДопОписаниеПоПараметрам(ДопОписание, Модуль, Параметры)
Если Модуль.ИмяБезРасширения = "OPI_VK" Тогда Разделитель = "-";
ТекстДополнения = "
|
| Структура JSON данных авторизации (параметр --auth):
| {
| ""access_token"": """",
| ""from_group"" : ""1"",
| ""owner_id"" : """",
| ""v"" : ""5.131"",
| ""app_id"" : """",
| ""group_id"" : """"
| }
|
|";
Иначе Для Каждого Параметр Из Параметры Цикл
ТекстДополнения = "";
КонецЕсли;
Возврат СтрЗаменить(ТекстДополнения, """", """"""); МассивЭлементовПараметра = СтрРазделить(Параметр, Разделитель, Ложь);
КоличествоЭлементов = МассивЭлементовПараметра.Количество();
Для Н = 0 По МассивЭлементовПараметра.ВГраница() Цикл
МассивЭлементовПараметра[Н] = СокрЛП(МассивЭлементовПараметра[Н]);
КонецЦикла;
Если КоличествоЭлементов < 4 Тогда
Продолжить;
КонецЕсли;
Имя = МассивЭлементовПараметра[3];
ТекстДополнения = "";
КонецФункции Если Модуль.ИмяБезРасширения = "OPI_VK" Тогда
Если Имя = "auth" Тогда
ТекстДополнения = "
|
| Структура JSON данных авторизации (параметр --auth):
| {
| ""access_token"": """",
| ""from_group"" : ""1"",
| ""owner_id"" : """",
| ""v"" : ""5.131"",
| ""app_id"" : """",
| ""group_id"" : """"
| }
|
|";
КонецЕсли;
КонецЕсли;
Если Модуль.ИмяБезРасширения = "OPI_Telegram" Тогда
Если Имя = "media" Тогда
ТекстДополнения = "
|
| Структура JSON данных медиагруппы (параметр --media):
| {
| ""ПутьКФайлу"": ""ТипМедиа"",
| ""ПутьКФайлу"": ""ТипМедиа"",
| ...
| }
|
|";
КонецЕсли;
КонецЕсли;
ДопОписание = СтрЗаменить(ТекстДополнения, Символы.ПС, Символы.ПС + "|");
ДопОписание = ДопОписание + СтрЗаменить(ТекстДополнения, """", """""");
КонецЦикла;
КонецПроцедуры
ПриСозданииОбъекта(); ПриСозданииОбъекта();

View File

@ -71,7 +71,7 @@
КонецФункции КонецФункции
// Установить Webhook // Установить Webhook
// Устанавливает адрес обработчика событий бота для работы в режиме webhook. // Устанавливает URL обработчика событий бота для работы в режиме Webhook
// //
// Параметры: // Параметры:
// Токен - Строка - Токен бота - token // Токен - Строка - Токен бота - token
@ -95,7 +95,7 @@
КонецФункции КонецФункции
// Удалить Webhook // Удалить Webhook
// Удаляет адрес обработчика событий бота для работы в режиме webhook. // Удаляет URL обработчика событий бота для работы в режиме Webhook
// //
// Параметры: // Параметры:
// Токен - Строка - Токен бота - token // Токен - Строка - Токен бота - token
@ -155,11 +155,11 @@
// Отправляет картинку в чат или канал // Отправляет картинку в чат или канал
// //
// Параметры: // Параметры:
// Токен - Строка - Токен бота - token // Токен - Строка - Токен бота - token
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text // Текст - Строка - Текст сообщения - text
// Картинка - ДвоичныеДанные,Строка - Файл картинки - picture // Картинка - ДвоичныеДанные,Строка - Файл картинки - picture
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -177,7 +177,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text // Текст - Строка - Текст сообщения - text
// Видео - ДвоичныеДанные,Строка - Файл видео - video // Видео - ДвоичныеДанные,Строка - Файл видео - video
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -195,7 +195,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text // Текст - Строка - Текст сообщения - text
// Аудио - ДвоичныеДанные,Строка - Файл аудио - audio // Аудио - ДвоичныеДанные,Строка - Файл аудио - audio
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -213,7 +213,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text // Текст - Строка - Текст сообщения - text
// Документ - ДвоичныеДанные,Строка - Файл документа - doc // Документ - ДвоичныеДанные,Строка - Файл документа - doc
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -231,7 +231,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Текст - Строка - Текст сообщения - text // Текст - Строка - Текст сообщения - text
// Гифка - ДвоичныеДанные,Строка - Файл гифки - gif // Гифка - ДвоичныеДанные,Строка - Файл гифки - gif
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -243,12 +243,6 @@
// Отправить группу медиафайлов // Отправить группу медиафайлов
// Отправляет набор файлов в чат или канал. Варианты типов медиа: audio, document, photo, video // Отправляет набор файлов в чат или канал. Варианты типов медиа: audio, document, photo, video
// Структура данных медиагруппы
// {
// ""ПутьКФайлу"": ""ТипМедиа"",
// ""ПутьКФайлу"": ""ТипМедиа"",
// ...
// }
// //
// Параметры: // Параметры:
// Токен - Строка - Токен бота - token // Токен - Строка - Токен бота - token
@ -257,7 +251,7 @@
// СоответствиеФайлов - Соответствие из Строка - Коллекция файлов - media - JSON - JSON файлов или путь к .json: // СоответствиеФайлов - Соответствие из Строка - Коллекция файлов - media - JSON - JSON файлов или путь к .json:
// * Ключ - ДвоичныеДанные,Строка - Файл // * Ключ - ДвоичныеДанные,Строка - Файл
// * Значение - Строка - Тип файла: audio, document, photo, video // * Значение - Строка - Тип файла: audio, document, photo, video
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -304,7 +298,7 @@
// IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat // IDЧата - Строка,Число - ID целевого чата или IDЧата*IDТемы - chat
// Широта - Строка,Число - Географическая широта - lat // Широта - Строка,Число - Географическая широта - lat
// Долгота - Строка,Число - Географическая долгота - long // Долгота - Строка,Число - Географическая долгота - long
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram
@ -341,7 +335,7 @@
// Имя - Строка - Имя контакта - name // Имя - Строка - Имя контакта - name
// Фамилия - Строка - Фамилия контакта - surname // Фамилия - Строка - Фамилия контакта - surname
// Телефон - Строка - Телефон контакта - phone // Телефон - Строка - Телефон контакта - phone
// Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard // Клавиатура - Строка - См. СформироватьКлавиатуруПоМассивуКнопок - keyboard - JSON клавиатуры или путь к .json
// //
// Возвращаемое значение: // Возвращаемое значение:
// Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram // Соответствие Из КлючИЗначение - сериализованный JSON ответа от Telegram

View File

@ -65,9 +65,6 @@
// Создать пост // Создать пост
// Создает пост с картинками // Создает пост с картинками
//
// Пример строки массива картинок:
// --pictures ""['C:\Картинка1.png', 'https:\\exemple.com\Картинка2.png']""
// //
// Параметры: // Параметры:
// Текст - Строка - Текст поста - text // Текст - Строка - Текст поста - text
@ -670,8 +667,6 @@
// Получить статистику по постам // Получить статистику по постам
// Получает статистику в разрезе постов // Получает статистику в разрезе постов
// //
// Пример строки массива постов:
// --posts ""['1111111','2222222']""
// Параметры: // Параметры:
// МассивИДПостов - Массив из Строка,Число - Массив ID постов - posts // МассивИДПостов - Массив из Строка,Число - Массив ID постов - posts
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json // Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
@ -983,8 +978,6 @@
// Получить товары по ID // Получить товары по ID
// Получает информацию о товарах по массиву ID // Получает информацию о товарах по массиву ID
// //
// Пример строки массива товаров:
// --items ""['1111111','2222222']""
// Параметры: // Параметры:
// Товары - Строка, Массив Из Строка - Массив ID товаров - items // Товары - Строка, Массив Из Строка - Массив ID товаров - items
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json // Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
@ -1106,8 +1099,6 @@
// Сгруппировать товары // Сгруппировать товары
// //
// Пример строки массива товаров:
// --items ""['1111111','2222222']""
// Параметры: // Параметры:
// МассивТоваров - Массив Из Строка - Массив ID товаров - items // МассивТоваров - Массив Из Строка - Массив ID товаров - items
// СуществующаяГруппа - Строка - ID существующей группы, если необходимо - sellgroup // СуществующаяГруппа - Строка - ID существующей группы, если необходимо - sellgroup
@ -1212,8 +1203,6 @@
// Получить подборки по ID // Получить подборки по ID
// Получить список подборок по массиву ID // Получить список подборок по массиву ID
// //
// Пример строки массива подборок:
// --items ""['1111111','2222222']""
// Параметры: // Параметры:
// Подборки - Строка, Массив Из Строка - ID подборок - sels // Подборки - Строка, Массив Из Строка - ID подборок - sels
// Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json // Параметры - Структура из Строка - См.ПолучитьСтандартныеПараметры - auth - JSON авторизации или путь к .json
@ -1291,8 +1280,6 @@
// Добавить товар в подборку // Добавить товар в подборку
// Добавляет товар в подборку // Добавляет товар в подборку
// //
// Пример строки массива подборок:
// --items ""['1111111','2222222']""
// Параметры: // Параметры:
// МассивТоваров - Массив из Строка, Число - Массив товаров или товар - items // МассивТоваров - Массив из Строка, Число - Массив товаров или товар - items
// Подборка - Строка - ID подборки - sel // Подборка - Строка - ID подборки - sel

View File

@ -107,9 +107,6 @@
// Получить онлайн пользователей // Получить онлайн пользователей
// Получает статус пользователя или нескольких пользователей по ID // Получает статус пользователя или нескольких пользователей по ID
// //
// Пример строки массива картинок:
// --users ""['1111111', '2222222']""
//
// Параметры: // Параметры:
// Токен - Строка - Токен Viber - token // Токен - Строка - Токен Viber - token
// IDПользователей - Строка,Число,Массив из Строка,Число - ID пользователей(я) Viber - users // IDПользователей - Строка,Число,Массив из Строка,Число - ID пользователей(я) Viber - users