Skip to main content

getcalllist

POST v1/reporting/getcalllist#

Bu API aracılığı ile iki tarih aralığında Diyalog üzerinden yapılan aramaların (görüntülü / sesli) listesine erişilebilir. API'ye çalışan sicili ve/veya müşteri numarası bilgileri de parametre olarak eklenebilir.

Her istekte maximum 20 adet bilgi tarihe göre yeniden eskiye doğru döner.

API'ye verilen iki tarih aralığında 20 adetten daha fazla öğe olabilir. Bu durumda en son yapılan 20 canlı yardım döner. İki tarih aralığında yapılan diğer öğeleride alabilmek için API cevabında dönen en eski tarihli (son öğe) öğenin tarihi alınmalı ve bu tarih kullanılarak API tekrar tekrar çağırılmalıdır.

API istekleri

  • HMAC Authentication ile doğrulanmalıdır. HMAC Authentication için Authentication dokümanına bakınız.
  • API URI : https://DIYALOG-SERVER-API-ENDPOINT/v1/reporting/getcalllist
  • HTTP İstek Türü POST
  • HTTP Content-Type application/json

Request Body#

Schema
json object
startDate (long)
Unix epoch timestamps (miliseconds). Aramaların sorgulanacağı başlangıç tarihidir.
endDate (long)
Unix epoch timestamps (miliseconds). Aramaların sorgulanacağı bitiş tarihidir.
callType (string)
Arama türüne göre sorgu yapabilenizi sağlar.
      Alabileceği değerler aşağıdaki gibidir :
          "all" : Görüntülü ve sesli görüşmelerin hepsini döner.
          "video" : Görüntülü görüşmeleri döner.
          "voice" : Sesli görüşmeleri döner.
staffId (string)
Opsiyoneldir.
Çalışan sicil numarası. Eğer bir çalışanın verilen iki tarih aralığındaki aramaları görüntülenmek isteniyorsa bu bilgi API'ye verilmelidir.
customerId (string)
Opsiyoneldir.
Müşteri numarası. Eğer bir müşterinin verilen iki tarih aralığındaki aramaları görüntülenmek isteniyorsa bu bilgi API'ye verilmelidir.
Not : Eğer iki tarih aralığında çalışan ve müşteri arasındaki aramalaar görüntülenmek isteniyorsa staffId ve customerId alanları API'ye verilmelidir.

Örnek Json Request Body :#

{
"startDate" : 1617278400000,
"endDate" : 1617969609000,
"callType" : "voice",
"staffId" : "45186",
"customerId" : "2337368"
}

Responses#

HTTP 200 Response
json object array
API cevap olarak json array döner. Bu array içerisinde aşağıdaki alanlardan oluşan json objeleri döner. Her objenin içerisinde yapılan aramanın detayları bulunur. API cevap olarak maksimum 20 adet bilgi (json objesi) tarih sıralamasına göre yeniden eskiye doğru sıralı şekilde döner. Eğer herhangi bir arama bulunamaz ise array boş olarak döner.
     json object
     callId (long)
      Diyalog sisteminde arama için oluşturulan tekil id.
     initiatorId (string)
      Arayan kişinin sicil veya müşteri numarasıdır.
     nameOfInitiator (string)
      Arayan kişinin ad ve soyad bilgisidir.
     receiverId (string)
      Aranan kişinin sicil veya müşteri numarasıdır.
     nameOfInitiator (string)
      Aranan kişinin ad ve soyad bilgisidir.
     callStartedAt (long)
      Unix epoch timestamps (miliseconds). Aramanın başladığı tarih ve zaman bilgisidir.
     callEndedAt (long)
      Unix epoch timestamps (miliseconds). Aramanın sona erdiği tarih ve zaman bilgisidir.
     callTime (int)
      Arama süresini saniye cinsinden verir. Eğer arama başlamamış ise yani karşı taraf kabul etmemiş veya bağlantı kurulamamış ise bu değer 0 olarak döner.
     callType (string)
      Aramanın video veya sesli görüşme olup olmadığı bilgisini verir.
          "video" : Video görüşme
          "voice" : Sesli görüşme
          "" : Diyalog 1.6.2 versiyonu öncesinde sesli ve video görüşme ayrımı yapılmamaktaydı. Bu versiyon öncesindeki aramaları türü bilinememektedir. Bu nedenle boşluk olarak dönebilir.
     callState (string)
      Aramanın en son aldığı durum bilgisini döner.
      Durum değerleri aşağıdaki gibidir :
          "START" : Bir kişi tarafından arama başlatıldığında durum "START" olur. Bu durumun dönmesi beklenmemektedir.
          "ENDED" : Arama başlamış, görüşme başlamış ve sonlandırılmıştır.
          "MISSED" : Arama karşı tarafın kabul etmemesi veya açmaması nedeniyle sonlandırılmıştır.
     callViewUrl (string)
      Arama kaydının izlenebileceği dinamik link bu alanda döner. Eğer arama kaydı oluşmamış veya arama başlamamış ise bu boşluk olarak dönecektir. Arama bu link bir browserda açılarak izlenebilir. Bu link bir browser aracılığı ile açıldığında Diyalog platformuna bağlanılır ve arama kaydı Diyalog platformu üzerinden gösterilir.

Örnek Response Body :#

[
{
"callEndedAt": 1617111451686,
"callId": -1527120504243668640,
"callStartedAt": 1617111449440,
"callState": "MISSED",
"callTime": 0,
"callType": "video",
"callViewUrl": "",
"initiatorId": "45188",
"nameOfInitiator": "Agent 45153",
"nameOfReceiver": "android 5667067",
"receiverId": "5667067"
},
{
"callEndedAt": 1617111385505,
"callId": 3387307531615898478,
"callStartedAt": 1617111363995,
"callState": "ENDED",
"callTime": 11,
"callType": "video",
"callViewUrl": "http://web.diyalog.im/v1/playrecords/3387307531615898478...",
"initiatorId": "45188",
"nameOfInitiator": "Agent 45153",
"nameOfReceiver": "android 5667067",
"receiverId": "5667067"
}
]
HTTP 500 Response
string
API hata aldığında HTTP 500 status kodu ile cevap dönecektir. API'nin hata mesajı metin olarak döner.

API isteği doğrulama sırasında hata alırsa aşağıdaki hata kodlarını döner.#

Http Status CodeMesajAçıklama
400Required headers not foundDate, X-Requester-UserId veya X-Authorization header alanlarından biri veya birkaçı eksik.
400Authorization failed due to data format not validX-Authorization header alanındaki bilgiler doğru formatta değil. Alanın "DLGA " ile başlayıp accesKeyId ve imza değerleri arasına : olduğunu kontrol edin.
400Authorization failed due to date not validX-DLG-DATE tarih formatı "EEE, dd MMM yyyy HH:mm:ss Z" formatında değil. Kontrol edin..
401Authorization failedİstek doğrulanamadı. İmza değeri doğru değil.
403Request time may not be correct.İstek header'ında gelen x-dlg-date ve sunucu zamanı arasında +/- 15 dakikadan fazla fark var.