Çağrı Merkezi

crm

4 uç · /api/callcenter/v1/crm

İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 4 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.

POST/api/callcenter/v1/crm/click-to-call

BLE2-4542 — **tıkla-ara köprüsü.** CRM'in santrala açılan tek kapısı.

Oturum

## Neden bu uç var CRM tarafında santralın izi YOKTU: müşteri kartındaki numarayı gören temsilci onu elle telefona yazıyordu. Bu hem yavaş hem hatalı (yanlış numara çevirmek) ve çağrının hangi kişiye ait olduğu kaydedilmiyordu. ## Sözleşme (CRM tarafının bilmesi gereken tek şey) ```text POST https://<slug>.call.blesyum.app/api/callcenter/v1/crm/click-to-call Authorization: Bearer <ÇEKİRDEK oturum token'ı> ← CRM'deki kullanıcı = çekirdek kullanıcı { "phone": "+905551112233" } → { "calling": true, "extension": "1001" } ``` Ayrı bir API anahtarı/entegrasyon kimliği YOKTUR ve olmamalı: modüller arası çağrı, kullanıcının KENDİ oturumuyla yapılır (modül adresleri kuralı: her modüle çekirdek hesapla girilir). Ek bir makine kimliği, iptal edilmesi unutulacak ikinci bir yetki yüzeyi olurdu. Çağrı kaydı CDR'a düşer; kişiyle bağı `POST /crm/links` ile kurulur (mevcut uç). ## Yetki: İZİN değil TEMSİLCİLİK ⚠ Burada `callcenter.contacts.view` gibi bir **yönetim izni İSTENMEZ** — istenirse tıkla-ara'yı asıl kullanacak kişi dışarıda kalır: temsilcide rehber yönetim izni çoğu kurulumda YOKTUR (test bunu yakaladı: uç 403 dönüyordu). Yetkinin dayanağı, kişinin bu kiracıda bir **temsilci kaydı ve aktif dahilisi** olmasıdır — yani çalacak bir telefonu olması. Kendi telefonunu kendi isteğiyle çaldırmak ayrı bir izin gerektirmez. **Başkası adına** arama farklıdır ve `callcenter.supervisor` ister: aksi hâlde bir temsilci, başka bir temsilcinin telefonunu istediği numaraya çaldırabilirdi.

İstek
curl -X POST "https://{slug}.call.blesyum.app/api/callcenter/v1/crm/click-to-call" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/callcenter/v1/crm/links

Çağrı/kişi → CRM varlık (contact/conversation/ticket) bağı oluştur (çağrı→conversation zaman-çizelgesi

Oturum

+ çağrıdan-ticket). Gerçek CRM-yazması SF10-live; mock: bağ-kaydı.

İstek
curl -X POST "https://{slug}.call.blesyum.app/api/callcenter/v1/crm/links" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/callcenter/v1/crm/screen-pop

Screen-pop: arayan numarasını CRM müşterisine çöz (seam) + müşteri-kartı URL'i. `base` yoksa mock.

Oturum

Gerçek CrmProvider (tenant-config CRM) SF10-live; mock StubCrm deterministik çözer.

İstek
curl -X GET "https://{slug}.call.blesyum.app/api/callcenter/v1/crm/screen-pop" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
Bu sayfa işine yaradı mı?