Триггеры (Triggers)
В данном разделе описаны настройки блоков сценария из раздела Triggers:

Триггеры — специальные блоки для управления временем выполнения действий и генерации событий.
Date trigger — Отложенное событие по дате
🔷 Основная информация
Тип: Блок без состояния
Назначение: Генерация события в конкретную дату и время
Группа: Triggers
📸 Внешний вид

⚙️ Как работает
- Система устанавливает таймер на указанное время
- В указанный момент генерируется событие
Логика:
- Дата + время указаны: событие сработает точно в этот момент
- Только время указано:
- Если время не прошло сегодня → сработает сегодня
- Если время прошло → сработает завтра
Важно:
- ⚠️ Допустимая погрешность: 1-2 минуты
- ⚠️ Блок не задерживает участника
Publish trigger — Генерация пользовательского события
🔷 Основная информация
Тип: Блок без состояния
Назначение: Немедленная генерация события с произвольными параметрами
📸 Внешний вид

⚙️ Как работает
- Мгновенно генерируется событие с указанными параметрами
- Участник продолжает движение
- Событие обрабатывается асинхронно во всех сценариях, которые ожидают данное событие
Важно:
- ✓ Работает мгновенно
- ✓ Можно передавать произвольные параметры
- ✓ Используется для связи между сценариями
- ⚠️ Обработка события асинхронная
🛠️ Настройка

Trigger name
Название события, которое создается
Client ID (optional / if different)
Идентификатор участника для генерации события
Формат: {{ context_field }} или статическое значение
По умолчанию: текущий участник
Context parameters
Добавление параметров в событие
Управление:
- Add parameter — добавить параметр
- Delete parameter — удалить последний параметр
Структура:
- Parameter — имя параметра
- Value — значение (поддерживается
{{ }})
Timeout — Таймер обратного отсчета
🔷 Основная информация
Тип: Блок без состояния
Назначение: Генерация события через указанное время
Группа: Triggers
📸 Внешний вид

📸 Окно настройки
Заголовок: Timeout trigger
Поля настройки:
- Publish (поле для имени события)
- Текстовое поле
- Placeholder: название события
- Пример на скриншоте:
timeout1
- In (время до срабатывания)
- Числовое поле + выпадающий список
- Единицы измерения: Days / Hours / Minutes
- Пример на скриншоте:
5 Days
⚙️ Как работает
- Участник проходит через блок мгновенно
- Устанавливается таймер обратного отсчета на указанное время
- Через N времени генерируется событие с указанным именем, которое обрабатывается только в сценарии, из которого запускался таймер
- Событие обрабатывается в следующем блоке State
- Если участник покинет сценарий (End) — таймер отменяется
Важно:
- ✓ Блок не держит участника — он проходит мгновенно
- ✓ Можно установить несколько таймеров для одного участника
- ✓ Таймер работает в фоновом режиме
- ⚠️ Допустимая погрешность срабатывания: 1-2 минуты
⚠️ Типичные ошибки
❌ Ожидание, что Timeout задержит участника
✅ Timeout НЕ держит участника — он проходит мгновенно. Для задержки используйте Timer action
❌ Не добавили обработчик события в State
✅ После Timeout обязательно должен быть State с триггером на событие из поля Publish
❌ Участник вышел из сценария (End) до истечения таймера
✅ При выходе из сценария все таймеры отменяются автоматически
❌ Установка слишком короткого времени
✅ Учитывайте погрешность 1-2 минуты при выборе времени