Триггеры


Триггеры - это действия, выполняемые чат-ботом при наступлении определённого события (Например, при поступлении сообщения в чат или другом).

Триггеры не работают, если в чате есть оператор.

В контексте чат-бота, событие - это набор условий, которое проверяется при каждом сообщении пользователя. Если набор условий, указанный в триггере, выполнился - чат-бот завершает текущий сценарий и выполняет действие, указанное в триггере. Триггеры имеют приоритет перед стартовым узлом, т.е. при старте нового диалога стартовый узел сработает только при условии, что не сработал один из триггеров.

Если чат-бот ожидает ответ пользователя из типа ответа "Задать варианты ответов вручную", то заданные варианты ответа имеют приоритет перед триггерами (при условии, что у выбранного варианта ответа установлена связь с другим узлом). Например, при наличии триггера на слово "Справка" и наличии варианта ответа "Справка" триггер не сработает, чат-бот запустит узел с которым установлена связь у ответа. Но триггер имеет приоритет при ответе не по списку. Например, если пользователь напишет что-то, что не соответствует заданным вариантам ответа, но соответствует условию триггера - сработает триггер, даже если в настройках ответа в этом случае указано игнорировать, запустить другой узел и т.д.

Обратите внимание, что может возникнуть ситуация, когда условия выполняются сразу в нескольких триггерах. В данном случае, выполнится только тот триггер, который стоит выше, остальные будут проигнорированы.

Действия, доступные в триггерах:
  • Перейти в узел
  • Игнорировать сообщение

Условия, доступные в триггерах:
  • Текст сообщения содержит
  • Сообщение в нерабочее время
  • Дополнительные данные содержат


Например, есть задача: при старте диалога определять по контексту сообщения, что нужно клиенту и перенаправлять сразу на нужный узел, иначе - на стартовый.

Чтобы создать триггер, перейдите в "Настройки чат-бота" (иконка с шестерёнкой).



Выберите вкладку "Триггеры" и нажмите кнопку "Добавить триггер".



Появится форма редактирования триггера.

Для начала нужно установить набор условий. Для этого нажмите иконку с плюсом под надписью "Условия выполнения триггера".



Предположим, что наш чат-бот - это справка по функционалу Zabotix, а в этой справке есть два узла "Как создать триггеры" и "Как перевести диалог на конкретного оператора". И мы хотим перенаправить на соответствующие узлы клиента.

Нам подходит условие "Текст сообщения содержит" и действие "Перейти в узел".

В данном примере, если в тексте сообщения клиента будут слова "триггер" и "создать" - чат-бот перейдёт в узел "Как создать триггеры".



Узел к которому перейдёт чат-бот.



Если же в сообщении будут слова "перевести", "оператор" и "конкретн" - чат-бот перейдёт в узел "Как перевести диалог на конкретного оператора".
Обратите внимание, что чат-бот не учитывает разные формы слов. Например, клиент может написать "конкретный оператор", "конкретных операторов", "конкретного оператора". Поэтому стоит выделить только неизменяемый корень и искать по нему.



Узел к которому перейдёт чат-бот.



Если ни один из триггеров не сработает - запустится либо стартовый узел (если это начало диалога), либо чат-бот продолжит логику сценария, либо сработает неизвестная команда.


Предположим, наш клиент начал диалог со стандартного сообщения "Добрый день". Это сообщение не подходит ни под одно из условий триггера, тогда сработает стартовый узел в главном сценарии.



А если бы клиент сразу написал, что ему нужно - сработал бы триггер и чат-бот перенаправил бы клиента сразу в нужный узел.