События внутреннего номера (/extension/.../event/)
Протестировать методы API можно на странице интерактивного обозревателя API и без написания кода
Некоторые ресурсы, описанные на странице, по умолчанию могут быть не доступны из-за типа приложения (см. Создание и авторизация приложений)
С помощью данного ресурса можно оповещать сторонние приложения о событиях на внутреннем номере. Количество отслеживаемых событий лимитировано, лимит может быть получен через ресурс “Лимиты (/limit/)”.
Кроме того, есть события о сменах статусов добавочных "extension-call-status", но они доступны только в "Событиях всех телефонных терминалов (События всех телефонных терминалов АТС
Описание структур данных
Событие (Event)
Данные события (EventData)
Особенности генерации
Голосовое меню (IVR): при поступлении вызова генерируется событие dial-in, при отбое – hangup (таким образом, события dial-out и answer отсутствуют).
Очередь работает с двумя потоками:
Поток | Описание |
---|---|
in | При поступлении звонка в очередь – dial-in, при завершении соединения – hangup (событие answer отсутствует) |
out | При обзвоне каждого из агентов очереди – dial-out, если вызов был отвечен – answer, при завершении соединения – hangup |
Если вызов уходит на переадресацию по правилам входящего вызова на номер вне АТС (не важно, с какого типа внутреннего номера), то с этого внутреннего номера генерируется событие dial-out на соответствующий номер с параметром Transfered: "yes".
Допустим, используется следующая инициация вызова (callback):
POST /extension/@200/callback/
{
"dst_num": "+79817654321",
"src_num": [
"200"
]
} |
Если при этом внутренний номер “200” является владельцем звонка и осуществляет вызов на самого себя, то для оптимизации не будет событий вызова самого внутреннего номера. Например, соединение внутреннего номера "200" с номером "+79817654321" от имени внутреннего номера "200" инициирует "dial-out" с "200" на "+79817654321" (не будет "dial-in" с "200" на "200" и "dial-out" с "200" на "200").
События message-in и message-out доступны только для внутренних номеров типа “phone”
Пример
Для внутреннего номера 000*099 с идентификатором 175 и включенной записью разговоров добавим события dial-out', 'answer', 'hangup'. Во все URL добавлены параметры "?myid=175", чтобы на стороне https://somehost.com/ было понятно, кому принадлежит событие в случае событий с разных внутренних номеров.
Ответ системы:
{
"url": "https://somehost.com/fordel/show.php?myid=175",
"method": "GET",
"event_type": "dial-out",
"id": 72
}
Ответ системы:
{
"url": "https://somehost.com/fordel/show.php?myid=175",
"method": "GET",
"event_type": "answer",
"id": 73
}
Ответ системы:
Если на стороне somehost.com скрипт show.php имеет вид:
то после звонка с внутреннего номера 000*099 на номер 00010005 в файле логов web-сервера можно будет увидеть записи вида:
Ресурсы раздела “Внутренний номер”