История вызовов (/call_history/)

Протестировать методы API можно на странице интерактивного обозревателя API и без написания кода
Некоторые ресурсы, описанные на странице, по умолчанию могут быть не доступны из-за типа приложения (см. Создание и авторизация приложений)

Данный ресурс позволяет получить данные о вызовах клиента за определенный период времени либо по уникальному идентификатору вызова. Представляет собой объединение ресурсов “Вызовы (/calls/)“ и “Информация о составных частях вызова (/cdr/)”:

Описание структур данных

Ресурс call_history

Имя

Тип

Обяза-тельный

Описание

Имя

Тип

Обяза-тельный

Описание

bridged_domain

string

нет

Домен пользователя абонента, с которым произошло соединение

bridged_duration

int

нет

Длительность соединения двух абонентов. Может иметь значение null, если соединение со вторым абонентов не произошло

bridged_time_gmt

string

нет

Время по UTC, когда было установлено соединение двух абонентов. Может иметь значение null, если соединение со вторым абонентом не произошло

bridged_username

string

нет

Номер абонента, с которым произошло соединение

call_uuid

string

нет

Уникальный идентификатор вызова

cdr

Array[cdr_response]

нет

Описание составных частей вызова. Поля ресурса cdr_response описаны ниже

client_owner_id

int

нет

Идентификатор клиента, к которому относится вызов

did_domain

string

нет

Домен внешнего номера (DID – Direct Inward Dialing), на который поступил вызов

did_number

string

нет

Внешний номер (DID – Direct Inward Dialing), на который поступил вызов

duration

int

нет

Длительность вызова

ext_number_reg

string

нет

Внешний номер внутреннего номера, к которому относится вызов, если у внутреннего номера есть регистрация внешнего номера. В противном случае поле имеет значение null

extension_group_owner_id

int

нет

Идентификатор группы внутреннего номера, к которому относится вызов. Может иметь значение null, если внутренний номер на момент вызова не состоял ни в одной из групп

extension_id

int

нет

Идентификатор внутреннего номера, к которому относится вызов

extension_name

string

нет

Имя внутреннего номера, к которому относится вызов

extension_type

string

нет

Тип внутреннего номера, к которому относится вызов

flow

string

нет

Направление вызова. Может принимать значение in или out

from_domain

string

нет

Домен вызывающего абонента

from_screen_name

string

нет

Имя вызывающего абонента

from_username

string

нет

Номер вызывающего абонента

hangup_cause

string

нет

Причина окончания вызова (поле можно игнорировать, присутствует для обратной совместимости)

hangup_disposition 

string

нет

Используется для определения инициатора разрыва соединения:

  • callee_bye – трубку положила принимающая сторона;

  • caller_bye – трубку положила вызывающая сторона;

  • caller_cancel – вызывающая сторона отказалась ждать ответа;

  • callee_refuse – принимающая сторона отказалась отвечать (была занята, отсутствовала регистрация и т.п.);

  • internal_cancel – вызов завершен сервером (обычно по тайм-ауту вызова или если данный вызовов был принят другим внутренним номером);

  • '' (пустой вариант) – не удалось определить

hangup_time_gmt

string

нет

Время окончания вызова по UTC

init_time_gmt

string

нет

Время начала вызова по UTC

result

string

нет

Результат вызова. Т.к. ресурс call_history состоит из /calls/ и /cdr/, то нужно различать соответствующие result данных ресурсов (см. изображение в самом начале статьи).
Например, /calls/ (весь вызов) не может иметь result: answered elsewhere, а /cdr/ (составные части звонка) не имеет result: bridged

start_time_gmt

string

нет

Время по UTC, когда вызов был отвечен. Может иметь значение null, если вызов не был отвечен

to_domain

string

нет

Домен получателя вызова

to_username

string

нет

Номер получателя вызова

call_month

string

нет

Указание месяца звонка. В формате “yyyy-mm” (пример: “2022-05”) . Если указать, то ответ на запрос придет быстрее.

callback

object

нет

Содержит информацию, если был сделан обратный вызов.
dst_num - Номер назначения вызова

src_num - Номер вызывающего абонента

src_id - id добавочного src_num

Пример

Получим историю вызовов за март и апрель 2020 года:

{ "page": 1, "per_page": 100000, "order": "desc", "call_history": [ { "flow": "in", "init_time_gmt": "2020-03-17 14:46:43", "start_time_gmt": "2020-03-17 14:46:43", "bridged_time_gmt": null, "hangup_time_gmt": "2020-03-17 14:46:48", "duration": 5, "bridged_duration": 0, "extension_id": 372802, "extension_name": "0005*101@sip.ringme.ru", "extension_type": "phone", "extension_group_owner_id": null, "client_owner_id": 32362, "result": "answered", "from_username": "00010037", "from_domain": "sip.ringme.ru", "bridged_username": null, "bridged_domain": null, "did_number": null, "did_domain": null, "to_username": "0005*101", "to_domain": "sip.ringme.ru", "from_screen_name": "Иванов И.И.", "hangup_cause": "NORMAL_CLEARING", "ext_number_reg": null, "call_uuid": "CAE26E8A4A7041D684F7CF5C480D1047", "hangup_disposition": "callee_refuse", "cdr": [ { "flow": "in", "init_time_gmt": "2020-03-17 14:46:43.31", "start_time_gmt": "2020-03-17 14:46:48", "hangup_time_gmt": "2020-03-17 14:46:48", "duration": 0, "extension_id": 372802, "extension_name": "0005*101@sip.ringme.ru", "extension_type": "phone", "extension_group_owner_id": null, "client_owner_id": 32362, "result": "answered", "from_username": "0005*101", "from_domain": "sip.ringme.ru", "source_number": "0005*101", "source_domain": "sip.ringme.ru", "to_username": "0005*101", "to_domain": "sip.ringme.ru", "dest_number": null, "dest_domain": null, "did_number": null, "did_domain": null, "from_screen_name": "Иванов И.И.", "hangup_cause": "NORMAL_CLEARING", "ext_number_reg": null, "application": null, "hangup_disposition": "callee_bye", "ani_number": null, "record_uuid": null, "record_file_size": null, "bundle_info": null, "transfer_reason": null, }, ... ] } ] }

_id}/call_history/

Получить историю вызовов клиента

Параметры URL

Имя

Тип

Имя

Тип

client_id

string

Параметры запроса

Имя

Тип

Имя

Тип

start_datetime

string

from_username

array [string]

start_bridged_duration

integer

flow

array [string]

bridged_username

array [string]

end_bridged_duration

integer

order

string

end_datetime

string

did_number

array [string]

per_page

integer

end_duration

integer

extension_id

array [integer]

to_username

array [string]

start_duration

integer

page

integer

Поля ответа

Имя

Тип

Имя

Тип

call_history

Array[call_history]

order

string

page

long

per_page

long

Ресурс call_history

Имя

Тип

Имя

Тип

bridged_domain

string

bridged_duration

long

bridged_time_gmt

string

bridged_username

string

call_uuid

string

cdr

Array[cdr_response]

client_owner_id

long

did_domain

string

did_number

string

duration

long

ext_number_reg

string

extension_group_owner_id

long

extension_id

long

extension_name

string

extension_type

string

flow

string

from_domain

string

from_screen_name

string

from_username

string

hangup_cause

string

hangup_disposition 

string

hangup_time_gmt

string

init_time_gmt

string

result

string

start_time_gmt

string

to_domain

string

to_username

string

Ресурс cdr_response

Имя

Тип

Имя

Тип

ani_number

string

application

string

call_uuid

string

calls_hangup_disposition 

string

calls_result

string

client_owner_id

long

dest_domain

string

dest_number

string

did_domain

string

did_number

string

duration

long

ext_number_reg

string

extension_group_owner_id

long

extension_id

long

extension_name

string

extension_type

string

flow

string

from_domain

string

from_screen_name

string

from_username

string

hangup_cause

string

hangup_disposition

string

hangup_time_gmt

string

init_time_gmt

string

record_file_size

long

record_uuid

string

result

string

source_domain

string

source_number

string

start_time_gmt

string

to_domain

string

to_username

string

transfer_reason

string

GET /client/{client_id}/call_history/{call_uuid}

Получить информацию о вызове по его уникальному идентификатору

Параметры URL

Имя

Тип

Имя

Тип

client_id

string

call_uuid

string

call_month

string

Поля ответа

Имя

Тип

Имя

Тип

bridged_domain

string

bridged_duration

long

bridged_time_gmt

string

bridged_username

string

call_uuid

string

cdr

Array[cdr_response]

client_owner_id

long

did_domain

string

did_number

string

duration

long

ext_number_reg

string

extension_group_owner_id

long

extension_id

long

extension_name

string

extension_type

string

flow

string

from_domain

string

from_screen_name

string

from_username

string

hangup_cause

string

hangup_disposition 

string

hangup_time_gmt

string

init_time_gmt

string

result

string

start_time_gmt

string

to_domain

string

to_username

string

Ресурс cdr_response

Имя

Тип

Имя

Тип

ani_number

string

application

string

call_uuid

string

calls_hangup_disposition 

string

calls_result 

string

client_owner_id

long

dest_domain

string

dest_number

string

did_domain

string

did_number

string

duration

long

ext_number_reg

string

extension_group_owner_id

long

extension_id

long

extension_name

string

extension_type

string

flow

string

from_domain

string

from_screen_name

string

from_username

string

hangup_cause

string

hangup_disposition

string

hangup_time_gmt

string

init_time_gmt

string

record_file_size

long

record_uuid

string

result

string

source_domain

string

source_number

string

start_time_gmt

string

to_domain

string

to_username

string

bundle_info

string

transfer_reason

string