Сообщения и кнопки
Действие «Отправить сообщение» собирает ответ бота из блоков и снабжает его inline-кнопками, главным меню и шагами диалога. Это самое богатое действие конструктора — здесь же подключаются подстановки и реферальные параметры кнопок.
Блоки сообщения
Сообщение — это последовательность блоков (кнопка Добавить блок):
- Текст — форматированный текст (до 4096 символов) с подстановками и кнопками.
- Фото — изображение с подписью.
- Файл — документ с подписью.
- Задержка — пауза в секундах перед следующим блоком.
- ИИ — ответ, сгенерированный моделью по промпту.
- Реакция — вызов другой реакции (опционально дождавшись её обработки).
Блоки перетаскиваются. Режим показа блоков — «По порядку» или «Случайно» (для вариативных ответов). Главное меню бота можно оставить без изменений, задать новое или спрятать.
Опции блока
У текстовых и медиа-блоков есть флаги: закрепить, без звука, защита от пересылки, спойлер, без превью ссылок, автоудаление через N секунд.
Inline-кнопки
В блоке настраиваются кнопки (Текст кнопки + Тип):
- Текст (callback) — кнопка с обработкой нажатия на стороне бота.
- Ссылка — открывает URL.
- Веб-приложение — открывает Telegram Mini App. См. Mini App.
- Вызов реакции — нажатие запускает другую реакцию.
- Приём платежа и Уведомление — размечены как «скоро».
Стиль кнопки — обычный, синий (Primary), зелёный (Success) или красный (Danger). Флаг «Одноразовая» сжигает кнопку после нажатия.
Поведение при нажатии
Для callback-кнопок настраивается, что происходит при нажатии: заменить текст кнопки, заменить сообщение (текстом или содержимым привязанной реакции), удалить сообщение, пропустить answerCallbackQuery. Нажатие также может ставить метки и задавать параметры.
Параметры в кнопке (Carry)
Блок «Carry — снимок данных в нажатие кнопки» прикрепляет к кнопке набор значений, зафиксированных в момент отправки. При нажатии эти значения попадают в контекст — так каждая кнопка несёт свои параметры (per-invocation), даже если кнопок много. Задаётся время жизни payload в секундах. Это основа сценариев «выбери товар → оформи именно его».
Динамические кнопки
Блок «Динамические кнопки из списка» разворачивает массив из ctx в кнопки — по одной на элемент. Настраиваются: ключ списка в ctx, псевдоним элемента, число кнопок в ряд и шаблон кнопки (поддерживает {{alias.поле}}). Так строятся каталоги, списки записей и меню из данных коллекции. Подробнее — Динамические кнопки и параметры.
Ожидаемый ответ (шаги диалога)
Текстовый блок может ждать ответ пользователя — это превращает сообщение в шаг диалога и ставит сценарий на паузу до ответа. Несколько шагов подряд образуют анкету или мастер прямо в чате.
Тип ожидаемого контента
Бот может ждать конкретный вид ответа: текст, выбор из вариантов (кнопки-варианты), фото, видео, видео-заметку, аудио, документ, голосовое, местоположение, контакт, календарь или кубик. Если пользователь пришлёт не тот тип, шаг считает ответ неподходящим.
Проверка текста
Для текстового ответа можно включить проверку формата: телефон, e-mail, ссылка, дата, время или соответствие формуле (регулярное выражение). Не прошедший проверку ответ отклоняется, и бот показывает сообщение об ошибке.
Сохранение ответа
Ответ пользователя можно сохранить в параметр — после чего он доступен в подстановках как {{param.ключ}} и в условиях. Так шаги диалога наполняют мини-профиль клиента.
Ошибки, напоминание и таймаут
- Сообщение при ошибке проверки — что показать, если ответ не прошёл валидацию.
- Напоминание — что отправить, если пользователь молчит.
- Снятие ожидания по таймауту — через сколько перестать ждать; при таймауте можно запустить реакцию (например, мягко завершить анкету). Эта реакция видна в связях как «Таймаут ожидания», а реакция на сам ответ — как «Ожидаемый ответ».
Подстановки
Кнопка «Подстановки» вставляет переменные: данные отправителя ({{first_name}}, {{username}}, {{user_id}}), события ({{text}}, {{chat_id}}, {{datetime}}) и параметры ({{param.ключ}}). Полный список и формулы — Подстановки и формулы.
Что дальше
- Подстановки и формулы — переменные в текстах и кнопках.
- Действия — другие действия реакции.
- Mini App — кнопка веб-приложения.