Розробка системи тикетів (Helpdesk/Service Desk)
Helpdesk-система управління звернення клієнтів або співробітників: приймає запити по кількох каналах, маршрутизує до потрібних спеціалістів, відслідковує SLA, накопичує історію взаємодій. Розробляється як альтернатива Zendesk, Freshdesk або Jira Service Management — коли потрібна глибока кастомізація, специфічні інтеграції або закрите розгортання.
Життєвий цикл тикету
new → open → in_progress → pending (чекає відповіді клієнта)
↓
resolved → closed
(авто-закриття через 48ч без відповіді)
Кожен переход статусу логується з timestamp та користувачем.
Канали приєму звернень
| Канал | Реалізація |
|---|---|
| Парсинг вхідних листів (IMAP/Mailgun Inbound) | |
| Віджет на сайті | JS-віджет з формою та чатом |
| API | REST endpoint для інтеграцій |
| Telegram | Бот, що створює тикети |
| Телефон | Інтеграція з АТС (Asterisk, Mango) |
Вхідний email → створення тикету через Mailgun Routes або Laravel mail parsing:
// Обробник вхідного листа
public function handle(InboundEmail $email): void
{
$ticket = Ticket::create([
'subject' => $email->subject(),
'body' => $email->text(),
'customer' => Customer::firstOrCreate(['email' => $email->from()]),
'channel' => 'email',
'status' => 'new',
]);
$ticket->attachFiles($email->attachments());
}
SLA та еscalations
SLA (Service Level Agreement) — зобов'язання відповісти/розв'язати за певний час. Конфіг по пріоритету:
| Пріоритет | Перший ответ | Розв'язання |
|---|---|---|
| Critical | 1 година | 4 години |
| High | 4 години | 24 години |
| Normal | 8 годин | 72 години |
| Low | 24 години | 5 днів |
SLA-таймер враховує робочі години та свята. При порушенні — автоматична еscalation.
Маршрутизація тикетів
Автоматична маршрутизація по правилах:
- По темі листа або ключевим словам → нужна група
- По email-домену клієнта → account manager
- Round-robin всередину групи
- По навантаженню агента (least-loaded)
Макроси та автоответи
Часто повторювані дії → в макроси: одним кліком агент застосовує шаблонний ответ + змінює статус + додає тег. Автоответ при створенні тикету — підтвердження з номером.
Аналітика
- Середній час першої ответи (FRT)
- Середній час розв'язання (MTTR)
- Дотримання SLA в %
- Кількість тикетів по агенту/групі/періоду
- CSAT — опитування задоволеності після закриття
База знаний (self-service)
Привязана база знаний знижує потік тикетів: при створенні тикету користувачу показуються релевантні статті. Автоматичне пропонування закрити тикет, якщо статтия розв'язала проблему.
Сроки
MVP (email + віджет, статусы, кабінет клієнта, базовий SLA): 6–8 тижнів. Повнофункціональний Helpdesk з кількома каналами, SLA-еscalations, аналітикою та базою знаний: 3–4 місяці.







