1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2024-12-29 02:57:35 +02:00

Доработки по дополнениям CLI Parse

This commit is contained in:
Anton Titovets 2024-04-08 09:27:02 +03:00
parent 82be9cd9fa
commit 0ef711ae1b
2 changed files with 109 additions and 26 deletions

View File

@ -74,7 +74,6 @@
Для Каждого Модуль Из ФайлыМодулей Цикл
ТекущийМодуль = Модуль.ИмяБезРасширения;
ИмяКоманды = СоответствиеМодулейКоманд[ТекущийМодуль];
Если Не СоответствиеМодулейКоманд[ТекущийМодуль] = Неопределено Тогда
РазобратьМодуль(Модуль);
@ -182,7 +181,8 @@
КонецЕсли;
Если ЗаписыватьОписание = Истина И Счетчик > 1 Тогда
ОписаниеМетода = ?(ЗначениеЗаполнено(ОписаниеМетода), ОписаниеМетода + " | ", ОписаниеМетода) + СтрокаКомментария;
ОписаниеМетода = ?(ЗначениеЗаполнено(ОписаниеМетода), ОписаниеМетода + " | ", ОписаниеМетода)
+ СтрокаКомментария;
КонецЕсли;
Если СтрНайти(СтрокаКомментария, "Параметры:") > 0 Тогда
@ -268,6 +268,7 @@
НачалоПараметров = Ложь;
ЕстьМассив = Ложь;
ЕстьДата = Ложь;
ТекстДополнения = "";
ИмяМодуля = Модуль.ИмяБезРасширения;
@ -280,6 +281,10 @@
ЕстьМассив = Истина;
КонецЕсли;
Если СтрНайти(Типы, "Дата") > 0 Тогда
ЕстьДата = Истина;
КонецЕсли;
ОпределитьДопОписаниеПоПараметру(ТекстДополнения, ИмяМодуля, Имя)
КонецЦикла;
@ -287,13 +292,22 @@
Если ЕстьМассив Тогда
ТекстДополнения =
"
|
| Пример указания параметра типа массив:
| --param ""['Val1','Val2','Val3']""
|" + ТекстДополнения;
КонецЕсли;
Если ЕстьДата Тогда
ТекстДополнения =
"
| Дата указывается в формате ISO 8601:
| ""2024-04-07""
| ""2024-04-07T13:34:42+00:00""
| ""2024-04-07T13:34:42Z""
|" + ТекстДополнения;
КонецЕсли;
ТекстДополнения = СтрЗаменить(ТекстДополнения, Символы.ПС, Символы.ПС + " |");
ДопОписание = ДопОписание + СтрЗаменить(ТекстДополнения, """", """""");
@ -307,12 +321,10 @@
|
| Структура JSON данных авторизации (параметр --auth):
| {
| ""access_token"": """",
| ""from_group"" : ""1"",
| ""owner_id"" : """",
| ""v"" : ""5.131"",
| ""app_id"" : """",
| ""group_id"" : """"
| ""access_token"": """", // Можно получить в браузере по URL из функции СоздатьСсылкуПолученияТокена()
| ""owner_id"" : """", // id группы с ""-"" в начале. Можно найти в настройках группы ВК или в ее URL
| ""app_id"" : """", // id приложения, которое необходимо создать в профиле на странице для разработчиков
| ""group_id"" : """" // owner_id, но без ""-""
| }
|
|";
@ -363,27 +375,98 @@
|
| Структура JSON данных авторизации (параметр --auth):
| {
| ""redirect_uri"" : """",
| ""client_id"" : """",
| ""client_secret"" : """",
| ""access_token"" : """",
| ""refresh_token"" : """",
| ""oauth_token"" : """",
| ""oauth_token_secret"" : """",
| ""oauth_consumer_key"" : """",
| ""oauth_consumer_secret"" : """"
| ""redirect_uri"" : """", // URL вашего http-сервиса (или другого обработчика запросов) для авторизации
| ""client_id"" : """", // Из OAuth 2.0 Client ID and Client Secret страницы настроек Twitter Developer
| ""client_secret"" : """", // Из OAuth 2.0 Client ID and Client Secret страницы настроек Twitter Developer
| ""access_token"" : """", // ПолучитьСсылкуАвторизации() -> Браузер -> code придет на redirect_uri -> ПолучитьТокен(code)
| ""refresh_token"" : """", // Приходит вместе с access_token и используется для его обновления (время жизни access_token - 2 ч)
| ""oauth_token"" : """", // Из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
| ""oauth_token_secret"" : """", // Из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
| ""oauth_consumer_key"" : """", // Из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
| ""oauth_consumer_secret"" : """" // Из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
| }
|";
КонецЕсли;
КонецЕсли;
Если ИмяМодуля = "OPI_Notion" Тогда
Если ИмяПараметра = "--data" Тогда
ТекстДополнения = ТекстДополнения + "
|
| Структура JSON данных страницы (параметр --data):
| {
| ""Имя поля БД 1"" : ""Значение1"",
| ""Имя поля БД 2"" : ""Значение2"",
| ...
| }
|";
ИначеЕсли ИмяПараметра = "--props" Тогда
ТекстДополнения = ТекстДополнения + "
|
| Структура JSON полей базы (параметр --props):
| {
| ""Имя поля БД c обычным типом"" : ""Тип данных 1"",
| ""Имя поля БД с выбором значения"" :
| {
| ""Вариант1"" : ""green"",
| ""Вариант2"" : ""red"",
| ...
| },
| ...
| }
|
| Доуступные типы: title(ключевой), rich_text, number, status,
| date, files, checkbox, url, email, phone_number, people
|";
КонецЕсли;
КонецЕсли;
Если ИмяМодуля = "OPI_GoogleCalendar" Тогда
Если ИмяПараметра = "--props" Тогда
ТекстДополнения = ТекстДополнения + "
|
| Структура JSON данных события (параметр --props):
| {
| ""Описание"" : """", // Описание события
| ""Заголовок"" : """", // Заголовок события
| ""МестоПроведения"" : """", // Строка описание места проведения
| ""ДатаНачала"" : """", // Дата начала события
| ""ДатаОкончания"" : """", // Дата окончания события
| ""МассивURLФайловВложений"" : // Ключ - название, Значение - URL к файлу
| {
| ""НазваниеФайла1"" : ""URLФайла1"",
| ""НазваниеФайла2"" : ""URLФайла2"",
| ...
| },
| ""ОтправлятьУведомления"" : true // Признак отправки уведомлений участникам
| }
|";
КонецЕсли;
КонецЕсли;
Если ИмяМодуля = "OPI_GoogleDrive" Тогда
Если ИмяПараметра = "--props" Тогда
ТекстДополнения = ТекстДополнения + "
|
| Структура JSON данных объекта (параметр --props):
| {
| ""MIME"" , ""image/jpeg""); // MIME-тип загружаемого файла
| ""Имя"" , ""Новый файл.jpg""); // Имя файла с расширением
| ""Описание"" , ""Это новый файл""); // Описание файла
| ""Родитель"" , ""root""); // ID каталога загрузки или ""root"" для загрузки в корень
| }
|";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Процедура ЗаписатьСозданиеПараметраСостава(СтрокаПараметра, ИмяМетода, ОписаниеМетода = "")
Имя = СтрокаПараметра["Имя"];
Описание = СтрокаПараметра["Описание"];
Значение = СтрокаПараметра["ЗначениеПоУмолчанию"];
Имя = СтрокаПараметра["Имя"];
Описание = СтрокаПараметра["Описание"];
Значение = СтрокаПараметра["ЗначениеПоУмолчанию"];
Библиотека = СоответствиеМодулейКоманд.Получить(ТекущийМодуль);
Если ЗначениеЗаполнено(Значение) Тогда
Описание = Описание + " (необяз. по ум. - " + Значение + ")";
@ -392,7 +475,7 @@
МодульСоставаОПИ.ДобавитьСтроку(Символы.ПС);
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока = ТаблицаСостава.Добавить();");
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока.Библиотека = """ + СоответствиеМодулейКоманд.Получить(ТекущийМодуль) + """;");
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока.Библиотека = """ + Библиотека + """;");
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока.Модуль = """ + ТекущийМодуль + """;");
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока.Метод = """ + ИмяМетода + """;");
МодульСоставаОПИ.ДобавитьСтроку(" НоваяСтрока.МетодПоиска = """ + вРег(ИмяМетода) + """;");

View File

@ -494,10 +494,10 @@
// Данные для API v1.1
// oauth_token - из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
// oauth_token_secret - из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
// oauth_consumer_key - из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
// oauth_consumer_secret - из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
// oauth_token - Из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
// oauth_token_secret - Из Authentication Tokens -> Access Token and Secret страницы настроек Twitter Developer
// oauth_consumer_key - Из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
// oauth_consumer_secret - Из Consumer Keys -> Access Token and Secret страницы настроек Twitter Developer
// Эти токены обновлять не надо