Каскадные рассылки: 4 ключевых решения до запуска первой цепочки
Решение 1: что является условием перехода
Механика: определите, при каком именно условии система переходит к следующему каналу. Это не «после задержки в N секунд». Это конкретный статус: техническая недоставка, ошибка канала, отсутствие признака доступности (нет приложения, отключены уведомления), или истечение времени жизни события. Для каждого сценария условие может быть разным.
Что даёт: исключает переход к следующему каналу в тех случаях, когда первый ещё не успел сработать. Если условие перехода — «прошло 30 секунд», а статус первого канала ещё не получен, переход произойдёт раньше, чем нужно, и клиент получит дубль.
Решение 2: что останавливает каскад полностью
Механика: задайте событие, которое прекращает цепочку — независимо от того, на каком канале остановился каскад. Это должно быть бизнес-действие клиента: ввёл код, подтвердил запись, оплатил заказ. Плюс — условие устаревания: код истёк, запись отменена, событие стало неактуальным. Добавьте лимит попыток как дополнительный предохранитель.
Что даёт: клиент не получает сообщения о задаче, которая уже решена. Без этого условия каскад продолжит отправку даже после того, как клиент выполнил нужное действие через другой канал или другим способом.
Решение 3: как адаптировать контент для каждого канала
Механика: напишите текст отдельно для каждого канала в цепочке, исходя из его формата. SMS — краткость и однозначность, максимум 70 символов кириллицы на сегмент: «Ваш код: 4821. Действует 2 минуты.» PUSH — добавьте диплинк в нужный раздел, если это предусмотрено. Смысл должен быть единым: нельзя указывать разный срок действия или разное следующее действие для разных каналов.
Что даёт: клиент получает понятное сообщение вне зависимости от того, через какой канал оно пришло. Это важно ещё и потому, что часть получателей увидит только один канал — и именно этот текст будет единственным контактом по данному событию.
Решение 4: как вы поймёте что каскад работает правильно
Механика: определите метрику для каждого сценария до запуска, а не после. Для верификации — доля событий, завершившихся нужным действием клиента. Для сервисных уведомлений — доля событий, потребовавших резервного канала, и доля отменённых как неактуальных. Для маркетинга — доля событий, достигших целевого действия. Отдельно смотрите на повторные обращения в поддержку по теме конкретного сценария.
Что даёт: понимание того, где правило перехода слишком короткое (дубли), слишком длинное (пользователь без информации) или условие остановки срабатывает неверно. Без этой метрики изменения в каскаде делаются вслепую. Подробнее.