Реакции в SamBot — основа автоматизации бота
Реакция — центральная единица SamBot. Это правило в стиле «если случилось X, то сделать Y»: «если клиент написал „цена" — отправить ему прайс», «если в группу зашёл новый участник — поприветствовать его», «если поступила оплата — выдать доступ и уведомить менеджера». Из реакций собирается весь бот: его поведение в любом сценарии — это сумма реакций, которые срабатывают по правилам.
Каждая реакция определяется четырьмя вопросами: на что срабатывает (триггер), в каких чатах работает, при каких условиях срабатывает и что делает. На странице создания реакции эти четыре блока расположены сверху вниз. Чтобы освоиться — проще всего пройтись по двум практическим примерам.
Пример 1: FAQ-реакция
Самая базовая реакция: клиент написал ключевое слово — бот ответил готовым текстом. Идеально для типовых вопросов про цену, адрес, часы работы.
- На что срабатывает: текстовое сообщение содержит ключевое слово «цена».
- В каких чатах: только в приватном чате с ботом.
- Что делает: отправляет одно сообщение — «Базовая услуга — 1500 ₽, выезд мастера — 500 ₽».
Что происходит в диалоге:
Клиент: «Какая цена услуги?»
Бот: «Базовая услуга — 1500 ₽, выезд мастера — 500 ₽».
Несколько таких реакций — и у вас FAQ-бот, разгружающий менеджеров от однотипных вопросов. На ключевые слова можно настроить разные ответы: «адрес» — карту, «доставка» — условия, «расписание» — часы работы.
Важная деталь: одна реакция может реагировать не на одно слово, а на несколько вариантов — «цена», «стоимость», «сколько стоит». В настройках срабатывания есть режимы «содержит», «содержит как отдельное слово», «начинается с», «заканчивается на» и «равно».
Пример 2: Запрос обратного звонка
Более продвинутый сценарий: клиент пишет «перезвоните» — бот спрашивает у него номер телефона, сохраняет ответ в карточку клиента и отправляет уведомление менеджеру в служебный чат.
Главная техническая особенность: одно из сообщений реакции — «вопрос», бот ждёт на него ответ. Это означает, что реакция приостанавливается ровно в тот момент, когда отправлен этот вопрос. Все следующие действия (второе сообщение, уведомление менеджеру) выполнятся только после того, как клиент пришлёт ответ.
Настраиваем одну реакцию с двумя сообщениями и уведомлением менеджеру:
- На что срабатывает: текст содержит «перезвоните» (можно добавить «позвоните», «обратный звонок» и т. п.).
- В каких чатах: только в приватном чате с ботом.
- Что делает:
- Сообщение 1 — «Напишите номер телефона, на который вам перезвонить». Включена галочка «Ожидаемый ответ — Текст», и ответ клиента сохраняется в параметр
callback_phone. - Сообщение 2 — «Спасибо! Мы вам перезвоним».
- Раздел «Куда отправлять» (4.13) — чат менеджеров. Включены галочки «От кого» (имя клиента) и «Реакция бота» (ссылка на реакцию).
- Сообщение 1 — «Напишите номер телефона, на который вам перезвонить». Включена галочка «Ожидаемый ответ — Текст», и ответ клиента сохраняется в параметр
В диалоге это выглядит так:
Клиент: «Перезвоните пожалуйста».
Бот: «Напишите номер телефона, на который вам перезвонить».
[Бот ждёт ответ. Ничего больше не делает.]
Клиент: «8-900-123-45-67».
Бот: «Спасибо! Мы вам перезвоним».
[В чат менеджеров уходит уведомление: «FirstName1 LastName1 → Запрос обратного звонка». Менеджер открывает карточку клиента и видит сохранённый
callback_phone.]
Что показал этот пример:
- «Ожидаемый ответ» — это барьер. Реакция приостанавливается на сообщении-вопросе, и все следующие действия (второе сообщение, уведомление менеджеру) ждут ответа клиента. Это позволяет собирать анкетные сценарии в одной реакции: задать вопрос — подождать ответ — задать следующий вопрос — подождать — и так далее.
- Сохранение в параметр — механика «состояния» клиента в SamBot. Параметр клиента (
callback_phone,cart_total,last_order_idи т. п.) виден в карточке клиента, доступен в других реакциях через подстановку{user:NAME}, и может стать триггером ещё одной реакции. - Уведомление в служебный чат — стандартный паттерн «передать менеджеру». Реакция отправляет в управляемый чат имя клиента и ссылку на реакцию.
Из этих кубиков собирается всё
За этими двумя примерами скрыта вся палитра возможностей платформы:
- Триггеры — не только текст с ключевыми словами, но и медиа-сообщения, системные события (новый участник в группе, оплата прошла), команды (
/start), нажатия кнопок, опросы, время — периодически, по расписанию. - Условия — реакция может срабатывать только при определённой метке у клиента, при определённом значении параметра, в рабочие часы, на каждое N-е сообщение и т. д. Это позволяет точно регулировать «когда» реакция запускается.
- Действия — отправить сообщение, сохранить параметр, поставить/снять метку, передать менеджеру, выставить счёт на оплату, запустить другую реакцию (цепочка), вызвать ваш API через web-request, обратиться к ИИ. В одной реакции можно использовать несколько действий — они выполнятся по очереди сверху вниз.
Сложные сценарии (запись на услугу, многошаговый опросник, продажа курса с автоматической выдачей материалов) собираются из нескольких связанных реакций — одна реакция запускает другую, передавая контекст через параметры клиента.
Где это в UI
Реакции бота находятся в разделе «Реакции» в его меню. Кнопка «Создать реакцию» открывает редактор, где те самые четыре блока: «Срабатывает на», «В чатах», «Условия», «Действия» — расположены сверху вниз.