Понятно и бизнесу, и разработке.
Короткая обзорная документация продукта: из каких сущностей состоит Chatron и как проходит путь от сценария до опубликованного Telegram-бота.
Flask · Jinja · SQLAlchemy · REST API · Telegram Webhook · HTML/CSS/JavaScript.
Бот = сценарий + состояние пользователя
Редактор хранит сценарий как граф блоков и переходов. Flow-engine понимает текущий блок пользователя, обрабатывает входящее сообщение, сохраняет переменные и переводит сессию дальше.
Базовые элементы сценария
- Старт — входная точка.
- Сообщение — отправка текста пользователю.
- Вопрос — ожидание ответа и сохранение значения.
- Условие — выбор ветки.
- Переменная — запись значения.
- HTTP — вызов внешнего API.
- Пауза — отложенный переход.
- Завершение — конец ветки.
Персонализация сценария
Ответы пользователя сохраняются в сессии и могут использоваться в последующих сообщениях.
Черновик и опубликованная версия
Редактирование не обязано сразу затрагивать живого бота. Сначала сценарий меняется и тестируется, после чего публикуется новая версия.
Точки расширения
Конкретный набор endpoint можно расширять под бизнес-логику проекта.