Клиент выбирает кнопкой, а не печатает
Меню из кнопок вместо переписки: нажатие возвращается в тот же сценарий и уводит в нужную ветку.
Как выглядит сценарий
- Исполнение + данные
Половина вопросов в боте это три-четыре одинаковых темы. Заставлять человека формулировать их словами, а модель — угадывать, незачем и дорого: кнопка отвечает мгновенно и стоит дешевле, потому что модель в этой ветке не участвует вовсе.
Что внутри
- Сообщение или нажатие — вход. Одна точка входа на оба случая.
- Что нажали — развилка по
data.telegram.command. У обычного сообщения это поле пустое, поэтому оно уходит в ветку по умолчанию. - Меню кнопками отправляет сообщение с двумя кнопками-командами и одной ссылкой.
- Две ветки отвечают готовым текстом на конкретную тему.
Кнопка никуда не «переходит»: нажатие заново запускает этот же сценарий и кладёт свою
команду в data.telegram.command. Поэтому развилка одна и та же для нажатия и для
набранной команды, а веток ровно столько, сколько тем.
Что настроить под себя
- Кнопки и тексты ответов. Список кнопок задаётся в редакторе ноды и одинаков для всех. Меню, которое меняется от клиента к клиенту, собирают текстом ответа, а кнопки оставляют под постоянные разделы.
- Длина команды. Подпись плюс команда должны укладываться в 64 байта — это ограничение Telegram, а не платформы.
- Ветка по умолчанию. Сейчас на любой текст показывается меню. Естественное развитие: поставить туда агента с базой знаний, чтобы кнопки закрывали частое, а модель — всё остальное.
Что подключить
Бот Telegram и цель «Telegram» на вкладке «Публикация». Ничего дополнительно включать не нужно: нажатия кнопок приходят боту в личке по умолчанию.