Указать условие срабатывания триггера можно двумя способами:
- через визуальный конструктор, при помощи существующих блоков;
- через редактор, при помощи кода в соответствующем синтаксисе (PipeLanguage);
Рассмотрим каждый подробнее:
Режим конструктора
Примечание
Конструктор недоступен, если:
Переключились на редактор и внесли любое изменение. Если изменение было случайным, то выйдете из триггера без сохранения изменений.
Условие триггера изначально написано в редакторе.
При удалении всех условий в редакторе триггера, конструктор становится доступен вновь.
Важно!
Режим конструктора доступен для всех событий, за исключением тех, которые используются в связке с Collector’ом («Клиент зашел на сайт», «Клиент уходит с сайта» или «Клиент не заходил на сайт»). При выборе этих событий, режим конструктора будет отключен автоматически, используйте редактор.
Конструктор используется для создания триггера при помощи предустановленных блоков с условиями, список которых формируется на основе выбранного события.
Новое условие добавляется из имеющегося списка условий. Добавить условие можно как существующей группе, так и добавить условие в новую группу на том же уровне. Условия как внутри группы, так и между разных групп, объединены логическими операторами И / ИЛИ. Переключение операторов доступно как в рамках одной группы, так и между ними.
Работа с условием (выбор, замена и настройка условия) ведется в шторке, которая отображается в правой части браузера. По каждому условию и опциям присутствуют подсказки, которые отображаются при наведении.
Для удобства доступно поле поиска, которое позволит найти нужное условие. Поиск осуществляется с фильтрацией тех условий, в названии которых присутствует введенная в поисковую строку последовательность символов. Чтобы увидеть полный набор условий без фильтра, можно сбросить введенное значение по крестику справа, в поле поиска.
В зависимости от типа условия доступны следующие опции его настройки:
- Выбор значения из списка с возможностью мультивыбора.
- Проверка по вхождению для символьного кода. Обратите внимание, что наличие введенных символов проверяется именно в символьном коде, а не в названии объекта.
- Проверка признака (его наличие/отсутствие)
- Сравнение начального и конечного значения при изменении поля, в том числе опция «Любой».
Важно!
Нельзя сохранить условие в триггер, если оно заполнено не полностью.
Удаление добавленного условия осуществляется при помощи крестика, который располагается в правой его части. Удаление доступно только в цепочке условий, из списка удаление недоступно.
При необходимости можно дублировать условия - в шторке, в нижнем правом углу, кликните на кнопку «Дублировать», и Вас сразу перекинет на редактирование дубля.
Условие «Другое поле»
«Другое поле» - условие, которое может обращаться к системным и пользовательским полям карточек заказа/клиента.
После выбора раздела (страница заказа или клиента) необходимо выбрать поле, которое вас интересует.
Важные моменты при работе с условием «Другое поле»:
- Условие работает только с полями из карточек клиента/заказа и пользовательскими полями (пользовательское поле должно быть для заказа или клиента).
- Условие работает только с полями вида строка\текст, число, справочник, флаг (Да/Нет).
- Некоторые поля могут быть недоступны для выбора, так как не поддерживаются конструктором (напр. поля даты или интервал доставки). С ненайденными полями необходимо работать в редакторе условий.
- Для триггеров заказа можно проверить значение полей заказа и клиента (который связан с заказом) и изменение полей заказа. Для триггеров клиента можно проверить значение полей клиента и заказа (первого или последнего не отмененного заказа этого клиента) и изменение полей клиента. Проверка изменения полей возможна только в том случае, если раздел соответствует выбранному событию.
- Для триггеров звонка можно проверить значение полей клиента и заказа, если эти сущности привязались к звонку.
- Доступен поиск по полям при их выборе.
- В отложенном триггере невозможна проверка изменения полей.
При заполнении условия используется пошаговый конструктор, у которого меняются данные для заполнения в зависимости от выбранного поля на предыдущем шаге.
Примеры условий для триггеров:
Пример 1
Например, действует акция, в случае выполнения 3х заказов с доставкой DPD - доставка этой же службой будет бесплатна в четвертом заказе (например, можно отправить коммуникацию с промокодом на бесплатную доставку).
В условии триггера укажем, что статус заказа изменился с любого на «Выполнен», при этом в заказе тип доставки «DPD» и у клиента ровно 3 выполненных заказов (которые мы считаем в пользовательском поле клиента «Количество выполненных заказов»).
Пример 2
Нам необходимо отслеживать, что в адрес доставки заказа были внесены любые изменения. Для этого добавляем поля адреса с отслеживанием изменения поля с любого на любое. Для проверки, что было изменено любое из полей адреса, используйте оператор «ИЛИ».
Примечание
Используйте кнопку «Дублировать» в шторке изменения условия, чтобы каждый раз не выбирать условие и раздел системы.
Пример 3
Допустим, нам необходимо уведомить склад отгрузки о том, что заказ перешел в статус комплектации и складу необходимо подготовить необходимые товары для выдачи.
В условии триггера достаточно указать, что «Статус заказа» изменился с любого на «Комплектуется». В качестве действия выбираем нужную коммуникацию.
Режим редактора
Редактор используется для указания условий, которые нельзя задать при помощи визуального конструктора в виду их отсутствия или, например, при использовании сложной цепочки объектов и вложенности условий.
Редактор также используется для указания условий для событий «Клиент зашел на сайт», «Клиент уходит с сайта» или «Клиент не заходил на сайт». Обратите внимание, что для данных событий должен быть подключен Collector.
При помощи редактора можно вносить изменения в условие, созданное при помощи конструктора.