Skip to main content
Flextell, sohbet kanalında şu an üç event yayınlar. Hepsi private-chat-log.{tenantId} kanalında tetiklenir.
Event adları tam nitelikli biçimde yayınlanır: App\Events\ChatLogCreated. Bazı Pusher istemcilerinde bu adlarla dinlemek için isim başına nokta (.) koymak gerekir: .listen(".App\\Events\\ChatLogCreated", ...). Doğrudan Pusher client kullanıyorsanız nokta olmadan bind("App\\Events\\ChatLogCreated", ...) yazın.

ChatLogCreated

Bir tenant içinde yeni bir chat_log satırı oluştuğunda tetiklenir. Bu event:
  • Panel kullanıcısı bir mesaj gönderdiğinde,
  • Hasta tarafından bir mesaj geldiğinde (WhatsApp/Telegram),
  • AI asistanı bir yanıt ürettiğinde
yayınlanır.

Payload

Payload, ChatLog API modeli’nin serileştirilmiş halidir. İstisnai olarak, modelin tüm ilişkileri otomatik yüklenmez — yalnızca varsayılan alanlar gelir.
Alan listesi zaman içinde genişleyebilir — istemci tarafında bilinmeyen alanları göz ardı edin ve yalnızca güvendiğiniz alanlara güvenin. Gerekirse detay için GET /v1/conversations/{id}/messages/{messageId} çağrısı atabilirsiniz.

Tipik kullanım

ChatLogDeleted

Bir mesaj soft-delete edildiğinde tetiklenir.

Payload

integer
Silinen mesajın ID’si.
integer
Silinen mesajın ait olduğu görüşmenin ID’si.
string | null
Silme işlemini yapan kullanıcının adı. Sistem tarafından silinmişse null gelebilir.

Tipik kullanım

ConversationRead

Bir kullanıcı görüşmeyi “okundu” olarak işaretlediğinde tetiklenir. Aynı kullanıcının farklı cihazlarda açık olan sekmelerini veya farklı panel kullanıcılarının paylaşılan görüşme ekranını senkronlamak için kullanışlıdır.

Payload

integer
Okundu olarak işaretlenen görüşmenin ID’si.

Tipik kullanım

Event özet tablosu

Sık sorulanlar

WebSocket teslim edilmemiş event’leri kuyrukta tutmaz. Yeniden bağlandığınızda eksikleri REST üzerinden doldurun — örneğin GET /v1/conversations/{id}/messages?after=<lastMessageId>.
Kanal adı tenant’a göre değişir; ortama göre değişmez. Ortam farkı endpoint (dev.flextell.ai vs app.flextell.ai) ve Pusher key üzerinde olur. Bkz. Ortamlar.
ChatLogCreated payload’ında sender_type ve sender_id gelir. Gönderenin detaylı bilgisine ihtiyacınız varsa (isim, avatar vs.), REST tarafında GET /v1/users/{id} veya GET /v1/customers/{id} ile çekebilirsiniz. Sık tekrar eden bu çağrıları istemci tarafında cache’leyin.
Flextell bilinçli olarak tam nitelikli event adı (ör. App\Events\ChatLogCreated) yayınlar. Bu sayede ileride bir event adını değiştirmeye kalkarsak istemciler kırılmayı fark eder ve sessizce yanlış event’i dinlemez. İstemci kodunuzda event adlarını bir sabit olarak tutmak iyi bir pratiktir.