Условия — это «развилки» сценария: бот смотрит, что сделал клиент, и идёт по нужной ветке. От качества условий зависит, попадёт ли клиент туда, куда нужно.
Какие бывают кнопки
В блоке «Сообщение» можно добавить кнопки — они появляются под сообщением (inline-кнопки). Под каждой кнопкой задаётся одно из двух действий:
- «Перейти к шагу» — продолжить сценарий по конкретной ветке.
- «Открыть URL» — повести клиента на сайт.
Цвета у кнопок в сценарии нет — мессенджеры рисуют все кнопки одинаково. Цветные акценты есть в «Рассылках» (по-другому устроенный модуль).
Совет
2–3 кнопки в сообщении — оптимально. 5+ выглядят громоздко и «съедают» внимание. Если вариантов много — разбейте на два экрана.
Кнопки в Instagram*
В Instagram* кнопки работают только пока 24-часовое окно открыто. После закрытия окна кнопки просто не приходят клиенту — это ограничение Meta, а не нашего сервиса.
Блок «Условие»
Это отдельный блок на холсте. У него один вход и несколько выходов — каждый со своим правилом. Бот проверяет правила сверху вниз: первое подходящее срабатывает. Если ни одно не сработало — идёт в ветку «По умолчанию».
По чему можно проверить
В нашем сервисе доступны такие проверки:
- Сообщение точно равно значению — например,
менеджер. - Сообщение содержит значение —
ценпоймает «А какая цена?», «по ценам». - Сообщение начинается с значения — удобно для команд.
- Сообщение — это команда — то есть начинается с
/. - Регулярное выражение — для продвинутых. Например, поймать телефонный номер.
- У клиента есть тег — конкретный тег из ваших.
- Передан оператору — диалог уже взял живой оператор.
- Клиент подписан — у клиента стоит флаг подписки на канал/рассылку (
is_subscribed). - Баллов больше / меньше N — простая балльная система (
points_gte/points_lt). - «Ждать ответ клиента N времени» — особое условие: ставит сценарий на паузу и продолжает по нужной ветке, если ответ пришёл в течение таймаута, либо по «таймаут» — если нет (см. ниже).
Регулярные выражения
Это «инженерная» функция. Большинству задач хватает «содержит» и «начинается с» — не лезьте в регулярки без необходимости.
Как ловить «не нажал, а написал»
Самая частая ошибка новичков: показали кнопки «Цены / Записаться», а клиент написал «А сколько стоит?» — и сценарий не понял.
Лечится так:
- После сообщения с кнопками идёт блок «Условие».
- В правилах:
- сообщение содержит
цен,стоимост,прайс→ ветка «Прайс»; - сообщение содержит
запис,брон→ ветка «Запись»; - по умолчанию → передача оператору или ИИ-агент.
Совет
Всегда оставляйте «По умолчанию» с понятным выходом: ИИ-агент или передача оператору. Это страховка от «не понял, что сказал клиент».
Проверка тегов
«Если у клиента есть тег оплатил» — удобно для:
- VIP-сценариев и допродаж;
- разных сообщений «новичкам» и «постоянным»;
- ветвления по способу прихода (
из_рекламы,из_рассылки).
В условии — название тега и режим: «есть» / «нет».
Тупики и циклы
Главная проблема логики — «куда-то надо пойти, а некуда».
- Тупик. Ветка заканчивается на «Условие», после которого нет ни одного выхода. Клиент написал — а сценарий не знает, что делать.
- Цикл. Из ветки А переход в Б, а из Б — обратно в А, и условие не меняется. Бот гоняет клиента по кругу.
Проверьте перед запуском
Редактор подсветит «висящие» блоки (без выхода). Если такие есть — кликните на блок и достройте сценарий. Тестировать сценарий с тупиком на «реальном» клиенте — лучший способ потерять заявку.
Ожидание ответа клиента с таймаутом
Условие «Ждать ответ клиента N времени» (await_reply) — самое полезное на «холодных» сценариях. Логика такая:
- Бот доходит до условия и ставит сценарий на паузу для конкретного клиента.
- Если клиент написал что-нибудь в течение указанного таймаута (от 1 минуты до 30 дней) — сценарий идёт по ветке «ответил».
- Если время истекло, а ответа нет — сценарий идёт по ветке «таймаут».
Так удобно делать «брошенные корзины», «напомнить через 3 часа», «если не ответил за сутки — передать менеджеру».
Чего в сценариях нет
Чтобы вы не искали зря:
- Условия «время суток» / «выходной» — нет.
- Подстановка переменных в текст обычных сообщений — нет (см. оговорки в «Что бот знает о клиенте»).
Частые вопросы
Почему кнопки в Instagram* не приходят клиенту после 24 часов? Это ограничение Meta: кнопки в Instagram* работают только в течение 24-часового окна с момента последнего взаимодействия клиента с ботом.
Как избежать тупиков в сценарии? Проверьте, чтобы после каждого блока «Условие» был хотя бы один выход. Редактор подсветит «висящие» блоки без выхода, чтобы вы могли достроить сценарий.
Можно ли использовать регулярные выражения для проверки сообщений? Да, регулярные выражения доступны для продвинутых проверок, например, чтобы поймать телефонный номер. Однако для большинства задач хватает условий «содержит» и «начинается с».