Talep Yaşam Döngüsü Kancaları
Talep açma, kapatma, devretme ve kilitlemenin sekiz kancası.
Genel Bakış
Bir talebin yolu burada: açılır, durumu değişir, devredilir, kilitlenir ve sonunda silinir ya da kendiliğinden çözülür.
İki durum kancası birbirine benzer ama ayrıdır: biri personelin değiştirdiği durumu, öteki kimsenin dokunmadığı otomatik çözülmeyi bildirir.
Referans
Yönetici tarafından talep açmayı durdurma
Personel bir müşteri adına talep açtığında, kayıt yazılmadan önce çalışır.
Hook::add('gate:ticket.admin_create', 10, function ($set_request, $message, $udata) {
if (Acme::blacklisted((int) ($udata['id'] ?? 0))) return 'Bu hesap icin talep acilamaz.';
return null;
});Talebin oluşmasını izleme
Bir talep oluşturulduktan sonra çalışır.
Hook::add('action:ticket.created', 10, function ($ticket) {
// Ilk mesaj ayri parametre degil, talebin icinde.
Acme::classify((int) ($ticket['id'] ?? 0), $ticket['message'] ?? '');
});Durum değişimini izleme
Bir talebin durumu değiştikten sonra çalışır.
Hook::add('action:ticket.status_changed', 10,
function ($ticket, $old_status, $new_status, $new_cstatus) {
// Ozel durumlar temel durumun yaninda ayri bir eksendir.
if ($new_status === 'solved') Acme::stopSlaClock((int) ($ticket['id'] ?? 0));
});Otomatik çözülmeyi izleme
Uzun süre yanıt gelmeyen bir talep kendiliğinden çözüldüğünde çalışır. Kimse kapatmamıştır: sessizlik kapatmıştır.
Hook::add('action:ticket.auto_resolved', 10, function ($ticket_id, $ticket, $delayed_day) {
// Kimse kapatmadi: sessizlik kapatti.
Acme::surveyLater($ticket_id, $delayed_day);
});Personelin talebi açmasını izleme
Personel bir talebi açtığında çalışır.
Hook::add('action:ticket.viewed', 10, function ($ticket, $id) {
// Okunmadi isareti coktan kaldirildi.
Acme::trackHandling($id);
});Talebin devrini izleme
Bir talep başka bir müşteriye devredildikten sonra çalışır.
Hook::add('action:ticket.transferred', 10, function ($ticketId, $fromUserId, $toUserId) {
// Gecmis de birlikte tasindi.
Acme::reindexOwner($ticketId, $toUserId);
});Kilit değişimini izleme
Bir talep kilitlendiğinde ya da açıldığında çalışır. Kilitli talebe müşteri yanıt yazamaz.
Hook::add('action:ticket.lock_changed', 10, function ($ticket, $locked) {
// Kilitli talebe musteri yanit yazamaz.
if ($locked === 1) Acme::notifyLocked((int) ($ticket['user_id'] ?? 0));
});Talebin silinmesini izleme
Bir talep silindikten sonra çalışır.
Hook::add('action:ticket.deleted', 10, function ($ticket_id) {
// Kayit gecilmez: icerik gerekiyorsa once saklamis olmalisiniz.
Acme::dropFromIndex('ticket', $ticket_id);
});Tuzaklar
Personel bir talebi açtığında kanca çalışır, ama okunmadı bayrağı kancadan önce temizlenir. "Bu talep yeni miydi" sorusunu buradan cevaplayamazsınız; ilk açılışı ayrıca izlemeniz gerekir.
Diğer silme kancalarının aksine burada talep kaydı geçilmez. Başlığa, sahibine ya da içeriğine ihtiyacınız varsa silmeden önce saklamış olmanız gerekir; kanca çalıştığında okuyacak bir yer kalmamıştır.
İlgili Makaleler
- Destek Talebi Kancaları
- Müşteri Hesabı Kancaları
- Kancalar Nasıl Çalışır
Geri bildiriminiz için teşekkürler!
Yukarıda bulamadığınız her şey için destek ekibimiz her zaman yanınızda.