---
title: "Події тікетів"
description: "Optional: placeholder-секція для tickets_created та огляд подій TFR/TTC."
level: optional
track: ticket-events
prerequisites:
  - ../advanced/use-case-10-tickets-categorizer.md
  - ../optional/use-case-sla-alias-entry.md
---

# Події тікетів

> **Optional track** — мінімальне знайомство з подіями `tickets_created`, TFR/TTC escalation. Конфігурація подій — **Settings**; сценарій — placeholder template.

## Необхідні права та доступ

| Модуль / налаштування | Навіщо |
|------------------------|--------|
| **Scenario Builder** | Placeholder-секція з alias |
| **Settings → Tickets / Events** | Події `tickets_created`, escalation |
| **Use Case 10** | Створення тікета для тригеру |
| **Runs** | Перевірка alias entry |

## Бізнес-контекст

Після створення тікета або при зміні SLA платформа може:

- надіслати **notification** (канал, email — за конфігурацією інстансу);
- запустити **секцію сценарію** за alias;
- ескалувати TFR/TTC.

Інтегратор готує **сценарійний шаблон**; правила подій налаштовують у **Settings → Tickets / Events** (за наявності прав доступу).

## Очікуваний результат

- Placeholder-секція з alias (напр. `training_ticket_created`)
- Розуміння ланцюга: create ticket → event → alias / notification
- Self-check: alias у Runs; посилання на Settings задокументовано
- Мінімум: **не** повна конфігурація webhook-ів у навчанні

## Типи подій (огляд)

| Подія | Коли спрацьовує | Типовий сценарійний відгук |
|-------|-----------------|----------------------------|
| **`tickets_created`** | Після створення тікета | Підтвердження клієнту / internal note |
| **TFR escalation** | Перша відповідь прострочена | Нагадування ([SLA alias](/uk/learn/implementer/training/optional/use-case-sla-alias-entry.md)) |
| **TTC escalation** | Час закриття прострочено | Ескалація, connect |

→ [Налаштувати тікети](/uk/settings/how-to/configure-tickets.md)

## Архітектура

```text
[Use Case 10 flow]
   action_tickets_create (success) → ticket_id у Runs

[Settings → Events]
   tickets_created → alias: training_ticket_created
                  → (опційно) notification channel

[Scenario]
   [Alias: training_ticket_created]
      → MessageKeyboard «Дякуємо! Тікет №{{ticket_id}} прийнято в роботу.»
      → End
```

## Покрокова реалізація

### Крок 1. Placeholder-секція в сценарії

1. Нова секція `sec_ticket_created`.
2. Alias entry: `training_ticket_created`.
3. MessageKeyboard:

| Параметр | Значення (приклад) |
|----------|-------------------|
| Текст | «Ваше звернення зареєстровано. Номер: {{ticket_id}}. Ми повідомимо про зміну статусу.» |

**Примітка:** змінна `ticket_id` доступна, якщо подія передає context тікета — на training instance перевірте фактичні constants у Runs після trigger. Якщо `ticket_id` порожній у цій секції — використайте статичний текст placeholder.

**Edges:** End.

---

### Крок 2. Self-check alias у Runs

| Крок | Дія |
|------|-----|
| 1 | Runs → запуск через alias `training_ticket_created` |
| 2 | Переконатися: секція виконується, немає дублікатів alias |
| 3 | Audit: unconnected edges = 0 |

---

### Крок 3. Ланцюг з Use Case 10

1. Пройдіть [Use Case 10](/uk/learn/implementer/training/advanced/use-case-10-tickets-categorizer.md) — створіть тікет.
2. У Runs зафіксуйте `ticket_id` після success.
3. Опишіть у [results-template.md](/uk/learn/implementer/training/results-template.md):

```text
Create success (Runs) → [Settings Event tickets_created] → alias training_ticket_created → MessageKeyboard
```

Якщо подія в Settings **не** налаштована — self-check обмежується кроками 1–2 (сценарій готовий; прив'язку події виконують у Settings за наявності прав).

---

### Крок 4. Settings → Events (огляд)

Якщо розділ доступний у меню:

1. **Settings → Tickets / Events** (назва може відрізнятися на інстансі).
2. Подія **tickets_created** → target: alias `training_ticket_created` і/або notification.
3. Для TFR/TTC — див. [SLA alias entry](/uk/learn/implementer/training/optional/use-case-sla-alias-entry.md).

**Не входить у scope навчання:** покрокове створення SLA-календарів, DNS email, Telegram channel webhook на рівні infrastructure.

---

### Крок 5. Notification vs scenario alias

| Механізм | Хто налаштовує | Self-check інтегратора |
|----------|----------------|------------------------|
| **Alias → секція** | Alias у сценарії + Events у Settings | Runs через alias |
| **Notification channel** | Settings / Instance | Перевірте права доступу до налаштувань |
| **Лише confirm у create flow** | Use Case 10 success edge | Вже покрито core track |

## Troubleshooting

| Симптом | Що перевірити |
|---------|----------------|
| Подія не викликає секцію | Event active; правильний bot; publish сценарію |
| `ticket_id` порожній у alias-секції | Context події; fallback текст без номера |
| Дубль повідомлень | Create success edge + event — не дублюйте той самий текст без потреби |
| tickets_created не працює | Alias spelling; Settings vs Runs |

→ [Коли не сценарій](/uk/learn/implementer/training/reference/when-not-scenario.md)

## Self-check

- [ ] Alias `training_ticket_created` існує; Runs через alias OK
- [ ] Описано ланцюг create → event → alias (навіть якщо Settings не налаштовано)
- [ ] Розумієте різницю TFR/TTC escalation (1 речення кожна)
- [ ] Use Case 10: `ticket_id` у Runs після create
- [ ] Result template: optional track «Події тікетів» відмічено

## Самостійне завдання

Об'єднайте placeholder `training_ticket_created` з коротким FAQ edge: кнопка «Статус звернення» → MessageKeyboard «Перевірте номер {{ticket_id}} у підтримці».

## Довідкові посилання

- [Use Case 10 — тікети](/uk/learn/implementer/training/advanced/use-case-10-tickets-categorizer.md)
- [SLA alias entry](/uk/learn/implementer/training/optional/use-case-sla-alias-entry.md)
- [Налаштувати тікети](/uk/settings/how-to/configure-tickets.md)
- [Довідник actions — tickets](/uk/actionjail/reference/actions-reference.md)
- [Тест сценарію](/uk/scenariobuilder/how-to/test-scenario.md)
