Project

General

Profile

API - CDR

API CDR se foloseste citi lista de apeluri din centrala

API URL

https://[YOUR-PBX-URL]/api/cdr.php

Datele se trasmit prin POST sau GET si trebuie sa fie de forma:

Array
(
    [page] => 1
    [filters] => Array
        (
            [date_between] => 
            [project_id] => 
            [direction] => 
            [call_status] => 
            [telephone] => 
            [source] => 
            [destination] => 
            [hour_between] => 
            [from_id] => 
        )

    [api_hash] => 07112231a9c89f5b108af08608a97b07
)

Parametrul action trebuie sa aiba valoarea read. Parametrul page este implicit 1, va trebui incrementat pentru a extrage datele de pe toate paginile.

Headere HTTP:

Content-Type: text/xml
Authorization: Bearer <token>

Filtre:

  • date_between: intervalul pentru care se face filtrare
  • project_id: ID proiect in centrala
  • direction: tipul de apel: inbound sau outbound (IN, OUT)
  • call_status: staturs apel (NO ANSWER, CONGESTION, FAILED, BUSY, ANSWERED)
  • telephone: filtru dupa un numar de telefon indiferent
  • source: numarul de telefon de la care s-a initiat apelul
  • destination: numarul de telefon catre care s-a initiat apelul
  • hour_between: intervalul orar pentru care se face filtrare
  • from_id: ID start pentru extragere informatii (cand se retine ultimul ID sincronizat)

Exemplu generare parametri:

$params = array(
    'page' => 1,
    'filters' => array(
        'date_between' => null, // array(from, to)
        'project_id' => null,
        'direction' => null, // IN, OUT
        'call_status' => null, // NO ANSWER, CONGESTION, FAILED, BUSY, ANSWERED
        'telephone' => null, // Wildcard search for source OR destination
        'source' => null, // Wildcard search for source
        'destination' => null, // Wildcard search for destination
        'hour_between' => null, // array(from, to)
        'from_id' => null, // >= id
    )
);

Exemplu generare hash:

$params['api_hash'] = md5(http_build_query($params) . 'your_api_key'); // make hash

Exemplu trimitere date:

$url = 'https://[YOUR-PBX-URL]/api/cdr.php';
$token = 'your_api_token';
echo curlPost($url, http_build_query($params), array("Authorization: Bearer {$token}"));

Raspuns

In caz de succes:

{

    "has_error": false,
    "messages": [ ],
    "pagination": {
        "row_count": 0,
        "page_size": 100,
        "current_page": 0,
        "max_page": 0
    },
    "results": [ ]

}

Sau in caz de eroare:

{

    "has_error": true,
    "messages": [
        "Invalid filter: from_idxx" 
    ],
    "pagination": [ ],
    "results": [ ]

}

Go to top