Довідник параметрів внутрішніх подій
Цей довідник містить опис усіх типів внутрішніх подій та параметрів eventConfig для тригера Внутрішні події стартової ноди.
Тикети
Тикет створено (ticket_created)
Опис: Секція запускається при створенні нового тикета в системі.
Параметри eventConfig:
| Параметр | Тип | Опис |
|---|---|---|
| channelFilter | string | Фільтр по каналу: '' (усі), telegram, facebook, whatsapp |
| clientType | string | Тип клієнта: '' (усі), new, existing |
Дані події в контексті: chat_room_id, channel, bot_id, дані тикета.
Тикет оновлено (ticket_updated)
Опис: Секція запускається при зміні параметрів тикета (статус, пріоритет, теги тощо).
Параметри eventConfig: аналогічно ticket_created (channelFilter, clientType), якщо підтримуються в UI.
Зміна назви статусу тикета (ticket_status_name_changed)
Опис: Секція запускається при зміні назви статусу тикета.
Параметри eventConfig: загальні фільтри (channelFilter, clientType).
Тикет переназначено (ticket_reassign)
Опис: Секція запускається при переназначенні тикета іншому оператору.
Параметри eventConfig:
| Параметр | Тип | Опис |
|---|---|---|
| channelFilter | string | Фільтр по каналу |
| clientType | string | Тип клієнта |
| operatorRole | string | Роль оператора: '', operator, supervisor, admin |
| team | string | Команда: '', support, sales, tech |
Тикет відкрито повторно (ticket_reopened)
Опис: Секція запускається, коли закритий тикет відкривають знову.
Параметри eventConfig: загальні фільтри.
Повідомлення в тикеті (ticket_message)
Опис: Секція запускається, коли оператор або клієнт (Client Portal, віджет, email, месенджери) додає публічне нове повідомлення в тикет.
Не спрацьовує для: внутрішніх нотаток оператора, системних повідомлень і службових подій з system_alias (переназначення, зміна статусу тощо). Для внутрішніх нотаток використовуйте подію ticket_internal_note.
Параметри eventConfig: у MVP додаткових фільтрів немає (порожній eventConfig допустимий).
Дані події в контексті: ticket, ticket_id, chat_room, chat_room_id, bot_id, channel, message_id, message_text, message_type, message_from (operator | client), user_id, client_id, participant_id.
Внутрішня нотатка в тікеті (ticket_internal_note)
Опис: Секція запускається, коли оператор додає внутрішню нотатку в тікет (текст видно лише команді в Operator Line, клієнт його не отримує).
Коли спрацьовує: лише при створенні нової нотатки (не при редагуванні). Не спрацьовує для публічних відповідей оператора, повідомлень клієнта та службових системних подій (переназначення, зміна статусу тощо).
Параметри eventConfig: у MVP додаткових фільтрів немає (порожній eventConfig допустимий).
Дані події в контексті: ticket, ticket_id, chat_room, chat_room_id, bot_id, channel, message_id, message_text (попередній перегляд тексту нотатки, до 150 символів), message_type, message_from (завжди operator), user_id, participant_id. Поле client_id завжди порожнє.
Важливо:
- Подія не надсилає сповіщення в Центр сповіщень (дзвіночок) і не доставляє текст нотатки клієнту.
- У сценарії доступний
message_text— якщо наступні кроки надсилають його у зовнішній канал (email, месенджер, webhook), ви самостійно відповідаєте за конфіденційність внутрішньої інформації. - Нагадування по чатах (Chat Reminder) не сприймають внутрішню нотатку як публічну відповідь оператора: таймер нагадування не зупиняється через службову нотатку. Зупинка — лише на публічну відповідь клієнту (як і раніше).
Відмінність від ticket_message:
| Подія | Що запускає секцію |
|---|---|
ticket_message |
Публічне повідомлення оператора або клієнта |
ticket_internal_note |
Лише внутрішня нотатка оператора |
SLA та ескалації
TFR ескальовано (TFR_escalated)
Опис: Секція запускається при ескалації TFR (Time to First Response).
Параметри eventConfig: загальні фільтри, можливо deadlineMinutes, slaType (якщо підтримуються).
TTC ескальовано (TTC_escalated)
Опис: Секція запускається при ескалації TTC (Time to Close).
Параметри eventConfig: аналогічно TFR.
Час у статусі перевищено (time_in_status_exceeded)
Опис: Секція запускається, коли тикет перебуває в обраному статусі довше за вказаний час.
Параметри eventConfig:
| Параметр | Тип | Опис |
|---|---|---|
| statusId | number | ID статусу зі списку статусів інстансу |
| statusName | string | Назва статусу (наприклад, «Відкрито») |
| timeInSeconds | number | Час у секундах (наприклад, 7200 = 2 години) |
| timeConfig | object | Деталізація: hours, minutes, seconds |
| triggerChannels | string[] | Масив каналів: ['telegram', 'viber'] або порожній — усі |
Приклад:
{
"statusName": "Відкрито",
"timeInSeconds": 7200,
"triggerChannels": ["telegram", "viber"]
}
Закриття
Чат закрито (chat_closed)
Опис: Секція запускається при закритті чату.
Параметри eventConfig: загальні фільтри.
Тикет закрито (ticket_closed)
Опис: Секція запускається при закритті тикета.
Параметри eventConfig: загальні фільтри.
Повідомлення
Помилка доставки повідомлення (message_delivery_error)
Опис: Секція запускається при помилці доставки повідомлення через e-chat (Telegram, Viber, WhatsApp).
Параметри eventConfig:
| Параметр | Тип | Опис |
|---|---|---|
| channelFilter | string | Фільтр по каналу: '', telegram, viber, whatsapp |
| errorCodes | string[] | Масив кодів помилок e-chat. Порожнє — усі помилки |
Коди помилок e-chat:
| Канал | Код | Опис |
|---|---|---|
| Viber | 2 | Номер не використовується |
| Viber | 3 | Тимчасова помилка |
| Viber | 4 | Заблоковано |
| Viber | 5 | В очікуванні |
| Viber | 6 | Не можна чатитися |
| Viber | 7 | Новий номер |
| Telegram | 4 | Заблоковано |
| — | Різні рядки помилок |
Дані події в контексті: chat_room_id, message_id, channel, error_code, error_description, bot_id.
Приклад:
{
"channelFilter": "viber",
"errorCodes": ["2", "4"]
}
Клієнти
Клієнта оновлено (client_updated)
Опис: секція запускається після збереження картки клієнта в Панелі оператора — коли змінилося поле картки або кастомне поле. Працює для звичайних діалогів і тикетів, а також коли картку редагують зі списку клієнтів без відкритого діалогу.
Не спрацьовує: на збереження без змін, а також на зміни клієнта ботом чи імпортом поза карткою Панелі оператора.
Параметри eventConfig: у цій версії відсутні (порожній eventConfig — валідний). Фільтруйте всередині секції за даними події нижче.
Дані події в контексті:
| Поле | Опис |
|---|---|
| client_id | Ідентифікатор клієнта |
| client | Картка клієнта після збереження (email, phone, username, bot_name, extra_data, …) |
| bot_id | Процес, до якого належить клієнт |
| user_id | Оператор, який зберіг картку |
| chat_room_id | Діалог, з якого редагували картку, або порожньо |
| changed_fields | Перелік змінених полів, напр. ["email", "extra_data.crm_id"] |
| changes | Старе і нове значення для кожного зміненого поля: {"email": {"old": "…", "new": "…"}} |
| extra_data | Кастомні поля після збереження |
| source_module | Джерело збереження, якщо його передав виклик (наприклад, operator_panel), інакше порожньо — список клієнтів його не надсилає |
Приклад — реакція на одне кастомне поле:
{{ trigger_data.changed_fields }} містить "extra_data.crm_id"
{{ trigger_data.changes["extra_data.crm_id"].new }}
Якщо секція, запущена цією подією, редагує ту саму картку клієнта назад через API Панелі оператора, вона запустить себе знову. Розривайте цикл фільтром за
source_moduleабо заchanged_fields.
Доставка — best-effort. Подія публікується вже після збереження картки, і публікація ніколи не затримує збереження й не завалює його. Якщо черга подій у цей момент недоступна, картка все одно збережеться, а подія загубиться — повторних спроб немає. Для даних, які не можна пропустити, доповніть подію періодичною звіркою, а не покладайтеся лише на неї.
Загальні параметри (channelFilter, clientType, operatorRole, team, slaType)
Ці параметри можуть бути доступні для різних подій у UI:
| Параметр | Можливі значення |
|---|---|
| channelFilter | '', telegram, facebook, whatsapp |
| clientType | '', new, existing |
| operatorRole | '', operator, supervisor, admin |
| team | '', support, sales, tech |
| slaType | '', first-response, resolution, escalation |