«Условие»: как работают контекстные фильтры в сценариях

В сценариях можно уточнить, по каким данным нужно сработать, с помощью фильтров в блоке 'Условие'.

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

Контексты во всех сценариях

Данные сущности доступны во всех сценариях.

По клиенту

Определяет, должен ли сценарий сработать по клиенту, который в него попал.

Снимок экрана 2024-08-05 в 10.43.57.png
Используем контекст 'Клиенты'. Проверяем, что у клиентов валидный email, есть подписка и не было рассылок за последние сутки.

По доступности промокода и По наличию продуктов в сегменте

Задают условие срабатывания сценария вне зависимости от данных по клиенту.

Сегмент по продукту может быть любым (реалтаймовым, пересчитываемым, статическим).

Снимок экрана 2022-08-28 в 18.30.21.png
Сценарий отработает, если в сегменте 'Новинки' есть от пяти продуктов.

Пул может быть из любой кампании. Важно, чтобы он был запущен в работу.

Снимок экрана 2022-08-28 в 18.29.59.png
Сценарий отработает, если в пуле 'Для акции 10%' есть хотя бы один доступный промокод.

Контексты по событиям

События, которые запускают сценарии, имеют свои данные.
Например, если это заказ, — стоимость, статус позиций и так далее.

Выбор каждого события дает возможность фильтровать его по определенным сущностям. Чтобы указать условия, которым должно соответствовать событие, используйте специальные контексты.

Рассмотрим, как с ними работать, на примере заказа и сессии.

По заказу

Доступен в сценариях по событиям 'Заказ добавлен или изменен' и 'Статус заказа изменен'.

Допустим, сценарий должен запускаться при доставке заказа стоимостью от 30 000.

Создаем сценарий по событию 'Статус заказа изменен' и ставим проверку:

Снимок экрана 2022-08-28 в 18.51.29.png
Используем контекст 'Заказы'. Таким образом проверяем именно заказ, запустивший сценарий.

Отличие от проверки по клиенту

При использовании контекста 'Клиенты' проверяется, что у клиента есть нужные данные. При этом связи с событием нет:

Снимок экрана 2022-08-28 в 18.53.01.png
Проверяется, что у клиента есть заказ от 30 000. Это может быть как заказ, который запустил сценарий, так и любой другой из истории. Для текущей задачи данный блок не подходит.

По сессии

Доступен в сценариях по событию 'Окончание сессии'.

Для создания брошенной корзины нужно проверить, что клиент добавлял во время сессии продукты в корзину.

Снимок экрана 2022-08-28 в 18.56.25.png
Используем контекст 'Сессия'. Таким образом проверяем именно сессию, запустившую сценарий.

Отличие от проверки по клиенту

Снимок экрана 2022-08-28 в 19.03.52.png
Проверяется, что у клиента есть в 'Корзине' продукты. При этом не обязательно, чтобы они были добавлены в данной сессии. Для текущей задачи данный блок не подходит.

Другие сущности

По тому же принципу работают и остальные контексты.

Полный список возможных фильтров и события, в которых они доступны:

  • по сессии (Окончена сессия)
  • по заказу (Заказ добавлен или изменен, Статус заказа изменен)
  • по позиции заказа (Клиент приобрел продукт)
  • по действию (Заказ добавлен или изменен, Статус заказа изменен, Выдано действие связанное с продуктом, Изменение email, Изменение мобильного телефона, Баланс клиента стал отрицательным, Бонусные баллы стали доступны, Статус карты изменен, Замена дисконтной карты)
  • по продукту в списке (Продукт в списке продуктов изменился, Список продуктов изменился)
  • по продукту (Клиент приобрел продукт, Продукт в списке продуктов изменился, Список продуктов изменился, Выдано действие связанное с продуктом)
  • по промокоду (Выдан промокод, Гашение промокода, Использован реферальный промокод клиента)
  • по изменению баланса (Баланс клиента стал отрицательным, Бонусные баллы стали доступны)
  • по информации о дисконтной карте (Статус карты изменен)

Как собирать фильтры по разным контекстам

Сценарий с несколькими контекстами

Часто в сценариях нужно указать условия по разным сущностям.

Например, при ранней регистрации на онлайн-курс по истории до начала учебного года клиенты получают бонус.
Создаем сценарий по событию 'Выдано действие связанное с продуктом' с шаблоном регистрации и проверяем действие:

Снимок экрана 2022-08-28 в 19.44.45.png

И следующим блоком продукт:

Снимок экрана 2022-08-28 в 19.45.36.png

В каком порядке ставить блоки

В большинстве случаев это не имеет значение. Но если сценарий обрабатывает большие объемы событий (несколько миллионов в течение часа) и есть задача снизить нагрузку на проекте, то лучше ставить первыми блоки, которые откинут максимум ненужных событий.

Как можно и нельзя проверять клиента

Проверку клиента нужно осуществлять только с использованием контекста по 'Клиенту'.

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

Вместо такого варианта:

Снимок экрана 2022-08-28 в 19.59.16.png

Разделите условия на отдельные блоки по изменению баланса:

Снимок экрана 2022-08-28 в 20.02.37.png

И клиенту:

Снимок экрана 2022-08-28 в 20.03.12.png

Контрольная группа: как измерять эффективность маркетинга