Телеграм-бот для создания процесса
Бот предназначен для создания процессов с использованием возможностей Telegram API |
Боты, создающие конкретный процесс, наследуются от сущности ProcessableBot. В рамках этой сущности определен базовый набор функциональных возможностей, таких как:
-
Заполнение текстового параметров путём вводы значения в чате;
-
Заполнение спискового параметра выбором варианта ответа по кнопке в чате;
-
Заполнение файлового параметра, путём загрузки и отправки файлов в чат.
Для запуска бота необходимо, как минимум, указать его токен и имя в основной конфигурации
Пример:
<bot_type>.bot.token=<bot_token>
<bot_type>.bot.username=<bot_name>
Где:
-
<bot_type> - тип бота, необходимый для отличения его конфигурации от конфигураций других ботов (задаётся разработчиком бота);
-
<bot_token> - токен бота;
-
<bot_name> - имя бота.
ProcessableBot использует вспомогательные, поясняющие параметры, которые также указываются в основной конфигурации
Для работы бота необходимо как минимум добавить в него две команды: /new и /my.
Если не указать команду /new - будет невозможно создать и заполнить новый процесс. Если не указать команду /my - будет невозможно посмотреть полный список процессов, созданных в рамках взаимодействия с данным ботом. |
При добавлении команды учтите, что названием команды /new является "new", а не "/new". |
Для того, чтобы создать своего бота можно воспользоваться https://t.me/BotFather. Вам понадобится всего пара команд: /newbot - создание бота, /setcommands - для добавления минимально необходимых для работы бота команд, описанных выше |
В результате работы бота заполняются параметры, предопределённые в конфигурации типа процесса. То, какие параметры нужно заполнять и очередность заполнения указывается в конфигурации типа процесса.
bot.wizard.parameters=<paramIds>
bot.wizard.activeStatuses=<activeStatusIds>
bot.wizard.submitStatus=<submitStatusId>
bot.wizard.cancelStatus=<cancelStatusId>
bot.wizard.finishStatus=<finishStatusId>
Где:
-
<paramIds> - список id параметров заполняемых параметров через запятую, порядок в этом списке - порядок заполнения;
-
<activeStatusIds> - список id активных статусов через запятую;
-
<submitStatus> - id статуса отправки;
-
<cancelStatus> - id статуса отмены;
-
<finishStatus> - id статуса завершения.
Аналогичным образом на базе этого бота возможно добавление и других ботов, создающих процессы определённого типа и заполняющих их параметры.