You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-06-25 00:46:45 +02:00
Правки структуры модулей CLI
This commit is contained in:
274
cli/app.os
274
cli/app.os
@ -1,101 +1,9 @@
|
|||||||
#Использовать cmdline
|
#Использовать cmdline
|
||||||
#Использовать oint
|
#Использовать oint
|
||||||
|
#Использовать "internal"
|
||||||
|
|
||||||
#Область СлужебныйПрограммныйИнтерфейс
|
#Область СлужебныйПрограммныйИнтерфейс
|
||||||
|
|
||||||
#Область СвязьОПИ
|
|
||||||
|
|
||||||
Функция ПолучитьИмяМодуля(Знач ИмяКоманды = "") Экспорт
|
|
||||||
|
|
||||||
СоответствиеКомандМодулей = Новый Соответствие();
|
|
||||||
СоответствиеКомандМодулей.Вставить("telegram", "OPI_Telegram");
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ИмяКоманды) Тогда
|
|
||||||
Результат = СоответствиеКомандМодулей.Получить(ИмяКоманды);
|
|
||||||
Иначе
|
|
||||||
Результат = СоответствиеКомандМодулей;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(Результат) Тогда
|
|
||||||
ВызватьИсключение "Неизвестная команда: " + ИмяКоманды;
|
|
||||||
Иначе
|
|
||||||
Возврат Результат;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Функция ПолучитьТаблицуПараметров(Знач ИмяКоманды) Экспорт
|
|
||||||
|
|
||||||
ТПМ = Новый ТаблицаЗначений();
|
|
||||||
|
|
||||||
ТПМ.Колонки.Добавить("Метод");
|
|
||||||
ТПМ.Колонки.Добавить("МетодПоиска");
|
|
||||||
ТПМ.Колонки.Добавить("Параметр");
|
|
||||||
ТПМ.Колонки.Добавить("Имя");
|
|
||||||
ТПМ.Колонки.Добавить("Описание");
|
|
||||||
ТПМ.Колонки.Добавить("ВариантОбработки");
|
|
||||||
|
|
||||||
Попытка
|
|
||||||
Выполнить("ЗаполнитьТаблицуПараметров" + ИмяКоманды + "(ТПМ);");
|
|
||||||
Исключение
|
|
||||||
ВызватьИсключение "Неизвестная команда: " + ИмяКоманды;
|
|
||||||
КонецПопытки;
|
|
||||||
|
|
||||||
Возврат ТПМ;
|
|
||||||
|
|
||||||
КонецФункции
|
|
||||||
|
|
||||||
Процедура ЗаполнитьТаблицуПараметровTelegram(ТПМ) Экспорт
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ПолучитьИнформациюБота" , "--token" , "Токен" , "Токен бота");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ПолучитьОбновления" , "--token" , "Токен" , "Токен бота");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "УстановитьWebhook" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "УстановитьWebhook" , "--url" , "URL" , "Адрес обработки запросов (с https://)");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "УдалитьWebHook" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "УдалитьWebHook" , "--url" , "URL" , "Адрес обработки запросов (с https://)");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--path" , "Картинка" , "Путь к файлу");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--path" , "Картинка" , "Путь к файлу");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--path" , "Гифка" , "Путь к файлу");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--path" , "Аудио" , "Путь к файлу");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--token" , "Токен" , "Токен бота");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--text" , "Текст" , "Текст сообщения");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--path" , "Документ" , "Путь к файлу");
|
|
||||||
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецОбласти
|
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
@ -141,14 +49,7 @@
|
|||||||
Попытка
|
Попытка
|
||||||
|
|
||||||
Вывод = ПолучитьРезультатОбработки(ТекущаяКоманда, Данные);
|
Вывод = ПолучитьРезультатОбработки(ТекущаяКоманда, Данные);
|
||||||
|
ОбработатьВыводJSON(Вывод);
|
||||||
Если ТипЗнч(Вывод) = Тип("Структура")
|
|
||||||
Или ТипЗнч(Вывод) = Тип("Соответствие")
|
|
||||||
Или ТипЗнч(Вывод) = Тип("Массив") Тогда
|
|
||||||
|
|
||||||
Вывод = OPI_Инструменты.JSONСтрокой(Вывод);
|
|
||||||
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(Вывод) Тогда
|
Если ЗначениеЗаполнено(Вывод) Тогда
|
||||||
Сообщить(Символы.ПС + Вывод + Символы.ПС, СтатусСообщения.Внимание);
|
Сообщить(Символы.ПС + Вывод + Символы.ПС, СтатусСообщения.Внимание);
|
||||||
@ -177,8 +78,7 @@
|
|||||||
ТаблицаПараметров = ПолучитьТаблицуПараметров(Команда);
|
ТаблицаПараметров = ПолучитьТаблицуПараметров(Команда);
|
||||||
|
|
||||||
Если Не ЗначениеЗаполнено(Метод) Тогда
|
Если Не ЗначениеЗаполнено(Метод) Тогда
|
||||||
Сообщить(Символы.ПС + " ## Команда - " + Команда, СтатусСообщения.Информация);
|
ВывестиСправкуПоМетодам(Команда, ТаблицаПараметров);
|
||||||
ВывестиСправкуПоМетодам(ТаблицаПараметров);
|
|
||||||
Возврат "";
|
Возврат "";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@ -191,34 +91,7 @@
|
|||||||
Возврат "";
|
Возврат "";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
СтрокаВызова = Модуль + "." + Метод + "(";
|
СтрокаВызова = СформироватьСтрокуВызоваМетода(Параметры, ПараметрыМетода);
|
||||||
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
|
|
||||||
|
|
||||||
ЗначениеПараметра = Параметры.Получить(НеобходимыйПараметр.Параметр);
|
|
||||||
|
|
||||||
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
|
|
||||||
|
|
||||||
ТекстВыполнения = ТекстВыполнения
|
|
||||||
+ Символы.ПС
|
|
||||||
+ НеобходимыйПараметр.Имя
|
|
||||||
+ " = ОбработатьВходящийПараметр("""
|
|
||||||
+ ЗначениеПараметра
|
|
||||||
+ """, """
|
|
||||||
+ НеобходимыйПараметр.ВариантОбработки
|
|
||||||
+ """);";
|
|
||||||
|
|
||||||
СтрокаВызова = СтрокаВызова + НеобходимыйПараметр.Имя + ", ";
|
|
||||||
|
|
||||||
Иначе
|
|
||||||
СтрокаВызова = СтрокаВызова + " , ";
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - 2);
|
|
||||||
СтрокаВызова = СтрокаВызова + ");";
|
|
||||||
СтрокаВызова = "Ответ = " + СтрокаВызова;
|
|
||||||
|
|
||||||
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
|
ТекстВыполнения = ТекстВыполнения + Символы.ПС + СтрокаВызова;
|
||||||
|
|
||||||
Выполнить(ТекстВыполнения);
|
Выполнить(ТекстВыполнения);
|
||||||
@ -243,23 +116,55 @@
|
|||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
Процедура ДобавитьПараметрМетода(Таблица
|
Процедура ОбработатьВыводJSON()
|
||||||
, Знач Метод
|
|
||||||
, Знач Параметр
|
|
||||||
, Знач Имя
|
|
||||||
, Знач Описание
|
|
||||||
, Знач ВариантОбработки = "Строка")
|
|
||||||
|
|
||||||
НовыйПараметр = Таблица.Добавить();
|
Если ТипЗнч(Вывод) = Тип("Структура")
|
||||||
НовыйПараметр.МетодПоиска = вРег(Метод);
|
Или ТипЗнч(Вывод) = Тип("Соответствие")
|
||||||
НовыйПараметр.Метод = Метод;
|
Или ТипЗнч(Вывод) = Тип("Массив") Тогда
|
||||||
НовыйПараметр.Параметр = Параметр;
|
|
||||||
НовыйПараметр.Имя = Имя;
|
|
||||||
НовыйПараметр.Описание = Описание;
|
|
||||||
НовыйПараметр.ВариантОбработки = ВариантОбработки;
|
|
||||||
|
|
||||||
|
Вывод = OPI_Инструменты.JSONСтрокой(Вывод);
|
||||||
|
|
||||||
|
КонецЕсли;
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Функция СформироватьСтрокуВызоваМетода(Знач ПереданныеПараметры, Знач ПараметрыМетода)
|
||||||
|
|
||||||
|
СтрокаВызова = Модуль + "." + Метод + "(";
|
||||||
|
Для Каждого НеобходимыйПараметр Из ПараметрыМетода Цикл
|
||||||
|
|
||||||
|
ЗначениеПараметра = ПереданныеПараметры.Получить(НеобходимыйПараметр.Параметр);
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ЗначениеПараметра) Тогда
|
||||||
|
|
||||||
|
ТекстВыполнения = ТекстВыполнения
|
||||||
|
+ Символы.ПС
|
||||||
|
+ НеобходимыйПараметр.Имя
|
||||||
|
+ " = ОбработатьВходящийПараметр("""
|
||||||
|
+ ЗначениеПараметра
|
||||||
|
+ """, """
|
||||||
|
+ НеобходимыйПараметр.ВариантОбработки
|
||||||
|
+ """);";
|
||||||
|
|
||||||
|
СтрокаВызова = СтрокаВызова + НеобходимыйПараметр.Имя + ", ";
|
||||||
|
|
||||||
|
Иначе
|
||||||
|
СтрокаВызова = СтрокаВызова + " , ";
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
СтрокаВызова = Лев(СтрокаВызова, СтрДлина(СтрокаВызова) - 2);
|
||||||
|
СтрокаВызова = СтрокаВызова + ");";
|
||||||
|
СтрокаВызова = "Ответ = " + СтрокаВызова;
|
||||||
|
|
||||||
|
Возврат СтрокаВызова;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область ОбработкаПараметров
|
||||||
|
|
||||||
Функция ОбработатьВходящийПараметр(Знач Значение, Знач ВидОбработки)
|
Функция ОбработатьВходящийПараметр(Знач Значение, Знач ВидОбработки)
|
||||||
|
|
||||||
Если ВидОбработки = "СоответствиеJSON" Тогда
|
Если ВидОбработки = "СоответствиеJSON" Тогда
|
||||||
@ -309,87 +214,6 @@
|
|||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область Справки
|
|
||||||
|
|
||||||
Процедура ВывестиНачальнуюСтраницу()
|
|
||||||
|
|
||||||
СписокКоманд = "";
|
|
||||||
|
|
||||||
Для Каждого Команда Из ПолучитьИмяМодуля() Цикл
|
|
||||||
СписокКоманд = СписокКоманд + Команда.Ключ + ", ";
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
СписокКоманд = Лев(СписокКоманд, СтрДлина(СписокКоманд) - 2);
|
|
||||||
|
|
||||||
Сообщить("-----------------------------------------------------", СтатусСообщения.Информация);
|
|
||||||
Сообщить("
|
|
||||||
|
|
|
||||||
| _______ _____________ ___ _______
|
|
||||||
| __ __ ___/__ _/_ / | / /___ __/
|
|
||||||
| _ / / / __ / __ / __ /
|
|
||||||
| / /_/ / __/ / _ /| / _ /
|
|
||||||
| \____/ /___/ /_/ |_/ /_/
|
|
||||||
|
|
|
||||||
|
|
|
||||||
| Добро пожаловать в OInt!
|
|
||||||
|
|
|
||||||
| Структура команд:
|
|
||||||
| OInt БИБЛИОТЕКА ""МЕТОД"" [Параметры]
|
|
||||||
|
|
|
||||||
| Вызов библиотеки без метода или метода без параметров возвращает справку
|
|
||||||
| Список доступных библиотек: "
|
|
||||||
+ СписокКоманд
|
|
||||||
+ "
|
|
||||||
|", СтатусСообщения.Внимание);
|
|
||||||
|
|
||||||
Сообщить("Полную документацию можно найти по адресу: https://opi.neocities.org" + Символы.ПС, СтатусСообщения.Информация);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВывестиСправкуПоМетодам(Знач ТаблицаПараметров)
|
|
||||||
|
|
||||||
ТаблицаПараметров.Свернуть("Метод");
|
|
||||||
МассивМетодов = ТаблицаПараметров.ВыгрузитьКолонку("Метод");
|
|
||||||
|
|
||||||
Сообщить(" ## Доступные методы: " + Символы.ПС, СтатусСообщения.Информация);
|
|
||||||
|
|
||||||
Для каждого Метод Из МассивМетодов Цикл
|
|
||||||
Сообщить(" - " + Метод, СтатусСообщения.Внимание);
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
Сообщить(Символы.ПС);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
Процедура ВывестиСправкуПоПараметрам(Знач ТаблицаПараметров)
|
|
||||||
|
|
||||||
Если ТаблицаПараметров.Количество() = 0 Тогда
|
|
||||||
Возврат;
|
|
||||||
КонецЕсли;
|
|
||||||
|
|
||||||
ИмяМетода = ТаблицаПараметров[0].Метод;
|
|
||||||
ТекстСправки = "";
|
|
||||||
|
|
||||||
Сообщить("
|
|
||||||
| ## Метод " + ИмяМетода , СтатусСообщения.Информация);
|
|
||||||
|
|
||||||
Для Каждого ПараметрМетода Из ТаблицаПараметров Цикл
|
|
||||||
|
|
||||||
ТекстСправки = ТекстСправки
|
|
||||||
+ Символы.ПС
|
|
||||||
+ " "
|
|
||||||
+ ПараметрМетода["Параметр"]
|
|
||||||
+ " - "
|
|
||||||
+ ПараметрМетода["Описание"];
|
|
||||||
|
|
||||||
КонецЦикла;
|
|
||||||
|
|
||||||
Сообщить(ТекстСправки + Символы.ПС, СтатусСообщения.Внимание);
|
|
||||||
|
|
||||||
КонецПроцедуры
|
|
||||||
|
|
||||||
#КонецОбласти
|
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
Попытка
|
Попытка
|
||||||
|
86
cli/internal/help.os
Normal file
86
cli/internal/help.os
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
#Использовать "internal"
|
||||||
|
|
||||||
|
#Область Справки
|
||||||
|
|
||||||
|
Процедура ВывестиНачальнуюСтраницу() Экспорт
|
||||||
|
|
||||||
|
СписокКоманд = "";
|
||||||
|
Модули = ПолучитьИмяМодуля();
|
||||||
|
|
||||||
|
Для Каждого Команда Из Модули Цикл
|
||||||
|
СписокКоманд = СписокКоманд + Команда.Ключ + ", ";
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
СписокКоманд = Лев(СписокКоманд, СтрДлина(СписокКоманд) - 2);
|
||||||
|
|
||||||
|
Сообщить("-----------------------------------------------------", СтатусСообщения.Информация);
|
||||||
|
Сообщить("
|
||||||
|
|
|
||||||
|
| _______ _____________ ___ _______
|
||||||
|
| __ __ ___/__ _/_ / | / /___ __/
|
||||||
|
| _ / / / __ / __ / __ /
|
||||||
|
| / /_/ / __/ / _ /| / _ /
|
||||||
|
| \____/ /___/ /_/ |_/ /_/
|
||||||
|
|
|
||||||
|
|
|
||||||
|
| Добро пожаловать в OInt!
|
||||||
|
|
|
||||||
|
| Структура команд:
|
||||||
|
| OInt БИБЛИОТЕКА ""МЕТОД"" [Параметры]
|
||||||
|
|
|
||||||
|
| Вызов библиотеки без метода или метода без параметров возвращает справку
|
||||||
|
| Список доступных библиотек: "
|
||||||
|
+ СписокКоманд
|
||||||
|
+ "
|
||||||
|
|", СтатусСообщения.Внимание);
|
||||||
|
|
||||||
|
Сообщить("Полную документацию можно найти по адресу: https://opi.neocities.org" + Символы.ПС
|
||||||
|
, СтатусСообщения.Информация);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ВывестиСправкуПоМетодам(Знач Команда, Знач ТаблицаПараметров) Экспорт
|
||||||
|
|
||||||
|
Сообщить(Символы.ПС + " ## Команда - " + Команда, СтатусСообщения.Информация);
|
||||||
|
|
||||||
|
ТаблицаПараметров.Свернуть("Метод");
|
||||||
|
МассивМетодов = ТаблицаПараметров.ВыгрузитьКолонку("Метод");
|
||||||
|
|
||||||
|
Сообщить(" ## Доступные методы: " + Символы.ПС, СтатусСообщения.Информация);
|
||||||
|
|
||||||
|
Для каждого Метод Из МассивМетодов Цикл
|
||||||
|
Сообщить(" - " + Метод, СтатусСообщения.Внимание);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Сообщить(Символы.ПС);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
Процедура ВывестиСправкуПоПараметрам(Знач ТаблицаПараметров) Экспорт
|
||||||
|
|
||||||
|
Если ТаблицаПараметров.Количество() = 0 Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИмяМетода = ТаблицаПараметров[0].Метод;
|
||||||
|
ТекстСправки = "";
|
||||||
|
|
||||||
|
Сообщить("
|
||||||
|
| ## Метод " + ИмяМетода , СтатусСообщения.Информация);
|
||||||
|
|
||||||
|
Для Каждого ПараметрМетода Из ТаблицаПараметров Цикл
|
||||||
|
|
||||||
|
ТекстСправки = ТекстСправки
|
||||||
|
+ Символы.ПС
|
||||||
|
+ " "
|
||||||
|
+ ПараметрМетода["Параметр"]
|
||||||
|
+ " - "
|
||||||
|
+ ПараметрМетода["Описание"];
|
||||||
|
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Сообщить(ТекстСправки + Символы.ПС, СтатусСообщения.Внимание);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
113
cli/internal/internal/opi_connection.os
Normal file
113
cli/internal/internal/opi_connection.os
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
#Область СлужебныйПрограммныйИнтерфейс
|
||||||
|
|
||||||
|
Функция ПолучитьИмяМодуля(Знач ИмяКоманды = "") Экспорт
|
||||||
|
|
||||||
|
СоответствиеКомандМодулей = Новый Соответствие();
|
||||||
|
СоответствиеКомандМодулей.Вставить("telegram", "OPI_Telegram");
|
||||||
|
|
||||||
|
Если ЗначениеЗаполнено(ИмяКоманды) Тогда
|
||||||
|
Результат = СоответствиеКомандМодулей.Получить(ИмяКоманды);
|
||||||
|
Иначе
|
||||||
|
Результат = СоответствиеКомандМодулей;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если Не ЗначениеЗаполнено(Результат) Тогда
|
||||||
|
ВызватьИсключение "Неизвестная команда: " + ИмяКоманды;
|
||||||
|
Иначе
|
||||||
|
Возврат Результат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Функция ПолучитьТаблицуПараметров(Знач ИмяКоманды) Экспорт
|
||||||
|
|
||||||
|
ТПМ = Новый ТаблицаЗначений();
|
||||||
|
|
||||||
|
ТПМ.Колонки.Добавить("Метод");
|
||||||
|
ТПМ.Колонки.Добавить("МетодПоиска");
|
||||||
|
ТПМ.Колонки.Добавить("Параметр");
|
||||||
|
ТПМ.Колонки.Добавить("Имя");
|
||||||
|
ТПМ.Колонки.Добавить("Описание");
|
||||||
|
ТПМ.Колонки.Добавить("ВариантОбработки");
|
||||||
|
|
||||||
|
Попытка
|
||||||
|
Выполнить("ЗаполнитьТаблицуПараметров" + ИмяКоманды + "(ТПМ);");
|
||||||
|
Исключение
|
||||||
|
ВызватьИсключение "Неизвестная команда: " + ИмяКоманды;
|
||||||
|
КонецПопытки;
|
||||||
|
|
||||||
|
Возврат ТПМ;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
Процедура ЗаполнитьТаблицуПараметровTelegram(ТПМ) Экспорт
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ПолучитьИнформациюБота" , "--token" , "Токен" , "Токен бота");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ПолучитьОбновления" , "--token" , "Токен" , "Токен бота");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "УстановитьWebhook" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "УстановитьWebhook" , "--url" , "URL" , "Адрес обработки запросов (с https://)");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "УдалитьWebHook" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "УдалитьWebHook" , "--url" , "URL" , "Адрес обработки запросов (с https://)");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьТекстовоеСообщение", "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--path" , "Картинка" , "Путь к файлу");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьКартинку" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--path" , "Картинка" , "Путь к файлу");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьВидео" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--path" , "Гифка" , "Путь к файлу");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьГифку" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--path" , "Аудио" , "Путь к файлу");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьАудио" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--token" , "Токен" , "Токен бота");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--id" , "IDЧата" , "ID чата / ID чата*ID темы");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--text" , "Текст" , "Текст сообщения");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--path" , "Документ" , "Путь к файлу");
|
||||||
|
ДобавитьПараметрМетода(ТПМ, "ОтправитьДокумент" , "--keyboard", "Клавиатура", "JSON клавиатуры / файл .json клавиатуры (необяз.)" , "ОбработатьПараметрТекст");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
|
Процедура ДобавитьПараметрМетода(Таблица
|
||||||
|
, Знач Метод
|
||||||
|
, Знач Параметр
|
||||||
|
, Знач Имя
|
||||||
|
, Знач Описание
|
||||||
|
, Знач ВариантОбработки = "Строка")
|
||||||
|
|
||||||
|
НовыйПараметр = Таблица.Добавить();
|
||||||
|
НовыйПараметр.МетодПоиска = вРег(Метод);
|
||||||
|
НовыйПараметр.Метод = Метод;
|
||||||
|
НовыйПараметр.Параметр = Параметр;
|
||||||
|
НовыйПараметр.Имя = Имя;
|
||||||
|
НовыйПараметр.Описание = Описание;
|
||||||
|
НовыйПараметр.ВариантОбработки = ВариантОбработки;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
Reference in New Issue
Block a user