Автоматизация — это цепочка Telegram-сообщений, которая отправляется клиенту автоматически, когда он попадает под условие фактора-триггера. Эта страница — справочник по каждому фактору: что он значит, при каком точном условии срабатывает, как именно вычисляется и на что смотреть оператору при выборе.
См. также Температуру лида — она лежит в основе группы факторов температуры лида.
Как вычисляются факторы
Все факторы делятся на три класса по механизму проверки. Класс определяет задержку срабатывания и надёжность.
| Класс | Задержка | Механизм |
|---|---|---|
| EVENT | мгновенно | срабатывает в момент действия клиента (создал платёж, активировал триал, истекла подписка) |
| CRON-SQL | до 4 часов | каждые 4 часа система выполняет SQL-запрос по таблице клиентов и набирает когорту подходящих |
| CRON-LIVE | до 4 часов + лаг API | каждые 4 часа, но онлайн-статус берётся живым запросом в Remnawave (не из базы) |
Расписание cron-проверки — 0 */4 * * * (каждые 4 часа). Пересчёт температуры лида — отдельный cron 30 * * * * (раз в час).
Сквозные правила
Эти правила действуют для всех факторов — не повторяются в каждой карточке:
- Cooldown — минимальный интервал между повторными записями одного клиента в одну и ту же автоматизацию. Считается от момента записи (enrollment) или завершения/отмены цепочки — берётся более поздняя дата. Задаётся на каждую автоматизацию. Защищает от спама.
- Активная цепочка блокирует повтор. Пока клиент проходит цепочку, повторная запись не произойдёт независимо от cooldown.
- EVENT срабатывает один раз на событие. CRON — пока условие истинно. Cron-фактор будет пытаться записать клиента в каждом 4-часовом цикле, пока тот остаётся в когорте; от повтора защищает только cooldown.
- Стоп при покупке. Если на шаге включён «Стоп при покупке», перед отправкой система проверяет, оплатил ли клиент после записи. Если да — цепочка отменяется. Сам фактор при этом не «выключается» — гасит цепочку именно это условие.
- Привязка к боту. Клиент записывается только в автоматизации своего бота: операторские правила не применяются к клиентам партнёрских ботов и наоборот.
Сводная таблица выбора
| Фактор | Класс | Что ловит |
|---|---|---|
| Брошенная корзина | EVENT | Начал платёж, но не оплатил / платёж отклонён / счёт истёк |
| Активный триал | EVENT | Активировал пробный период |
| Подписка истекла | EVENT + CRON | Подписка истекла (см. пересечение) |
| Горячий лид | EVENT | Перешёл в категорию «горячий лид» |
| Тёплый лид | EVENT | Перешёл в «тёплый лид» |
| Прохладный лид | EVENT | Перешёл в «прохладный лид» |
| Холодный лид | EVENT | Перешёл в «холодный лид» |
| Стабильный клиент | EVENT | Стал стабильным платящим клиентом |
| Ошибка автооплаты | EVENT | Не прошло автопродление |
| Скоро истекает | CRON-SQL | Подписка истекает в ближайшие 3 дня (ни разу не платил) |
| Недавно истёк | CRON-SQL | Подписка истекла за последние 7 дней |
| Активен сегодня | CRON-SQL | Был активен за последние 24 ч (без активной подписки) |
| Активен на этой неделе | CRON-SQL | Был активен 1–7 дней назад (без активной подписки) |
| Неактивен 30+ дней | CRON-SQL | Не заходил 30–90 дней |
| Неактивен 90+ дней | CRON-SQL | Не заходил более 90 дней |
| Возвратный клиент | CRON-SQL | Есть хотя бы одна оплата |
| Без подписки | CRON-SQL | Ни разу не оформлял подписку (аккаунт старше суток) |
| Не в сети (VPN) | CRON-LIVE | Есть активная подписка, но не подключался к VPN N дней |
EVENT-факторы
Срабатывают мгновенно при действии клиента — без ожидания cron-цикла.
Брошенная корзина
- Что значит: клиент начал оформление, но не оплатил.
- Условие срабатывания: одно из событий — счёт истёк без оплаты (~1 час после создания), платёж отклонён или клиент начал оформление платежа.
- Cooldown / повтор: рекомендуется 72 ч — событие частое.
- На что смотреть: включайте «Стоп при покупке» на шагах со скидкой — если клиент вернётся и оплатит, фактор сам не отменит цепочку.
Активный триал
- Что значит: клиент активировал пробный период.
- Условие срабатывания: клиент активировал пробный период.
- Cooldown / повтор: длинный (≈720 ч) — триал активируется редко.
Подписка истекла (event)
- Что значит: подписка клиента только что истекла.
- Условие срабатывания: подписка истекла (в момент истечения).
- На что смотреть: пересечение. Существует и event-, и cron-вариант «Подписка истекла» (см. cron-версию). Не включайте обе автоматизации на одного клиента — получит две цепочки. Если хотите оставить обе, разведите их по времени: задайте на одной из них большую задержку запуска шагов, чтобы сообщения не наложились.
Смена температуры лида
- Что значит: клиент перешёл в новую категорию температуры.
- Условие срабатывания: переход между категориями (например «горячий» → «тёплый»). Температура пересчитывается раз в час; при смене категории система фиксирует событие и запускает цепочку.
- На что смотреть: только переходы. Триггер срабатывает только на смене категории, а не на нахождении в ней. Первичное назначение категории новому клиенту цепочку не запускает. Если клиент стабильно «горячий» и не меняется — фактор молчит.
- Категории: горячий — срочный сигнал покупки; тёплый — активный интерес; прохладный — слабый интерес; холодный — минимальный интерес; стабильный — постоянный платящий клиент (2+ оплаты подряд). Подробнее — Температура лида.
Ошибка автооплаты
- Что значит: автоматическое продление не прошло (нет средств или проблема с картой).
- Условие срабатывания: не прошло автоматическое продление подписки.
CRON-SQL факторы
Проверяются каждые 4 часа SQL-запросом по таблице клиентов. Задержка реакции — до 4 часов.
«Последняя активность» — время последнего действия клиента в боте или мини-приложении.
Скоро истекает
- Что значит: подписка вот-вот закончится, а клиент ещё ни разу не платил.
- Условие срабатывания: есть подписка, дата окончания которой попадает в интервал «сейчас … +3 дня», И нет ни одной оплаченной покупки.
- На что смотреть: ловит именно неплатящих (триал/тест). Платящих с автопродлением не трогает.
Недавно истёк (cron)
- Что значит: подписка закончилась в последнюю неделю и не возобновлена.
- Условие срабатывания: была подписка, истёкшая за последние 7 дней, И сейчас нет ни одной активной.
- На что смотреть: пересечение с event-версией «Подписка истекла». Выберите что-то одно: event — мгновенно в момент истечения, cron — ровным потоком в течение недели после.
Активен сегодня
- Что значит: заходил в сервис за сутки, но подписки нет.
- Условие срабатывания: последняя активность ≥ сейчас − 1 день И нет активной подписки.
Активен на этой неделе
- Что значит: была активность 1–7 дней назад, подписки нет.
- Условие срабатывания: последняя активность в интервале «сейчас − 7 дней … сейчас − 1 день» И нет активной подписки.
Неактивен 30+ дней
- Что значит: клиент забыл о сервисе.
- Условие срабатывания: последняя активность в интервале «30 … 90 дней назад» И нет активной подписки.
- На что смотреть: повтор внутри когорты — клиент остаётся в когорте все циклы, пока не выйдет за границу 30–90 дней. Без адекватного cooldown будет получать повторно. Рекомендуется длинный cooldown (≈720 ч).
Неактивен 90+ дней
- Что значит: сильно остывший клиент.
- Условие срабатывания: последняя активность < сейчас − 90 дней И нет активной подписки.
- На что смотреть: повтор внутри когорты (см. выше). Нужно агрессивное предложение или прощальное сообщение.
Возвратный клиент
- Что значит: клиент когда-либо платил.
- Условие срабатывания: есть хотя бы одна оплаченная покупка.
- На что смотреть: очень широкая когорта (все, кто хоть раз платил). Не учитывает наличие активной подписки — в когорту попадают и текущие подписчики. Используйте увесистый cooldown и
Стоп при покупке, иначе платящие получат спам.
Без подписки
- Что значит: зарегистрировался, но ни разу не оформлял подписку.
- Условие срабатывания: нет ни одной подписки И аккаунт создан более суток назад.
- На что смотреть: повтор внутри когорты — пока клиент не оформит подписку, он остаётся в когорте. Онбординг-цепочка с длинным cooldown.
CRON-LIVE факторы
Отдельная группа: проверяется каждые 4 часа, но онлайн-статус берётся живым запросом в Remnawave при каждом запуске и нигде не кэшируется.
- Что значит: у клиента есть активная подписка, но он давно не подключался к VPN.
- Условие срабатывания: есть активная подписка И не был онлайн на VPN ≥ порога (или вообще ни разу не подключался).
Доступные пороги: 1, 3, 7, 14 и 30 дней без подключения к VPN.
- На что смотреть:
- Составная задержка. Реальное окно срабатывания ≈ порог + до 4 ч цикла + лаг онлайн-статуса в Remnawave. Не воспринимайте «1 день» как точную секунду — это приблизительный порог.
- Зависит от внешнего API. Если Remnawave недоступен — статус неизвестен, факторы в этом цикле не сработают (Telegram-сообщения не отправятся, ошибок клиенту нет).
- Не настраивайте несколько пересекающихся порогов на одну цель без cooldown — клиент попадёт под «Не в сети 1+ день», потом под «3+ дня» и т.д.
Межфакторные опасности
- «Недавно истёк» — двойная отправка. Существует и как EVENT, и как CRON-SQL. Один клиент может попасть в обе автоматизации сразу. Выберите один вариант на сценарий.
- Температура лида — только переходы. Срабатывает на смене категории, не на пребывании в ней. Статичный «горячий» клиент триггер не запустит.
- Повторы внутри когорты. «Неактивен 30+/90+ дней», «Без подписки», «Возвратный клиент» держат клиента в когорте между циклами — без cooldown фактор повторится каждые 4 часа.
- Воронка жизненного цикла. Логичная цепочка: «Скоро истекает» → «Недавно истёк» → «Неактивен 30+ дней» → «Неактивен 90+ дней». Не запускайте параллельно конкурирующие автоматизации на соседних стадиях.
- Несколько автоматизаций на один фактор. Если на один фактор подписаны две активные автоматизации — клиент войдёт в обе. Это ещё один вектор двойной отправки помимо «Недавно истёк».