Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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

Если работа правила переадресации закончена, но вызов так и не был принят, существует возможность перенаправить вызов на голосовую почту. Ресурс голосовой почты позволяет:

  • получить список сообщений голосовой почты клиента, внутреннего номера или группы внутренних номеров за определенный период,

  • получить непосредственно файлы сообщений,

  • удалить сообщения голосовой почты.

Table of Contents

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

Expand
titleРазвернуть

Поля ресурса "Голосовая почта" совпадают с полями ресурса “Информация о составных частях вызова (/cdr/)”, но, в отличие от CDR, поля record_uuid и record_file_size никогда не принимают значения “null”.

Имя

Тип

Описание

ani_number 

string

Номер из списка входящих номеров клиента

application 

string

Приложение, характеризующее тип вызова. Может иметь значение callcentercallbackintercept или null

call_uuid 

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

Направление вызова. Может принимать значение 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

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

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

Исходное имя пользователя назначения

storage_url

string

Ссылка на файл с записью voicemail

Получение списка голосовых сообщений

Интервал получения и удаления списка сообщений голосовой почты указывается параметрами запроса start_datetime и end_datetime. Интервал времени должен находится в пределах двух месяцев. Для получения данных за больший период следует делать несколько запросов. При получении списка возможно указать параметр запроса order, который задает направление, в котором результирующий список будет отсортирован по полю init_time_gmt.

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

Имя

Тип

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

Значение по умолчанию

start_datetime

YYYY-MM-DD HH:MM:SS

да

end_datetime

YYYY-MM-DD HH:MM:SS

да

order

asc or desc

нет

desc

Пример

Получим список голосовых сообщений клиента за период:

Tabs
[{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"В разделе "},{"type":"text","text":"authentication","marks":[{"type":"strong"}]},{"type":"text","text":" в поля "},{"type":"text","text":"client_id","marks":[{"type":"strong"}]},{"type":"text","text":" и "},{"type":"text","text":"client_secret","marks":[{"type":"strong"}]},{"type":"text","text":"  требуется ввести полученные при регистрации приложения значения "},{"type":"text","text":"Application_ID","marks":[{"type":"strong"}]},{"type":"text","text":" и "},{"type":"text","text":"Application_Secret","marks":[{"type":"strong"}]},{"type":"text","text":", затем нажать на кнопку \""},{"type":"text","text":"Try it out!","marks":[{"type":"strong"}]},{"type":"text","text":"\". Если данные приложения верны, в ответ вернётся токен доступа ("},{"type":"text","text":"access_token","marks":[{"type":"strong"}]},{"type":"text","text":"). Полученный токен доступа следует ввести в поле \""},{"type":"text","text":"Access Token Field","marks":[{"type":"strong"}]},{"type":"text","text":"\" вверху страницы и сохранить его нажатием кнопки \""},{"type":"text","text":"Set Token","marks":[{"type":"strong"}]},{"type":"text","text":"\"."}]},{"type":"table","attrs":{"isNumberColumnEnabled":false,"layout":"default"},"content":[{"type":"tableRow","content":[{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"метод","marks":[{"type":"strong"}]}]}]},{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"ресурс","marks":[{"type":"strong"}]}]}]},{"type":"tableHeader","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"данные","marks":[{"type":"strong"}]}]}]}]},{"type":"tableRow","content":[{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"GET"}]}]},{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":"/client/@me/voicemail/?start_datetime=2020-03-01%2000%3A00%3A00&end_datetime=2020-04-30%2000%3A00%3A00&order=desc"}]}]},{"type":"tableCell","attrs":{},"content":[{"type":"paragraph","content":[{"type":"text","text":" "}]}]}]}]},{"type":"paragraph","content":[]}]},"id":"e24e18e6-9f49-4f4d-bf88-f6f1bb241e29","label":"Интерактивный обозреватель API    ","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"Для отправки запросов с помощью программы cURL установим значения переменных "},{"type":"text","text":"url ","marks":[{"type":"strong"}]},{"type":"text","text":"и "},{"type":"text","text":"access_token","marks":[{"type":"strong"}]},{"type":"text","text":":"}]},{"type":"paragraph","content":[{"type":"text","text":"export url=\"https://<hostname>/api/ver1.0\"","marks":[{"type":"code"}]},{"type":"text","text":" "},{"type":"hardBreak"},{"type":"text","text":"(где hostname — hostname API-сервера провайдера IP-телефонии),"}]},{"type":"paragraph","content":[{"type":"text","text":"export access_token=\"8SNsrS0jV35vfmKqKeKtRrHfpbg4UX\"","marks":[{"type":"code"}]},{"type":"text","text":" "},{"type":"hardBreak"},{"type":"text","text":"(полученный токен доступа)."}]},{"type":"paragraph","content":[{"type":"text","text":"Отправим запрос:"}]},{"type":"codeBlock","attrs":{"language":"shell"},"content":[{"type":"text","text":"curl \\\r\n-H \"Authorization: Bearer ${access_token}\" \\\r\n-X GET \"${url}/client/@me/voicemail/?start_datetime=2020-03-01%2000:00:00&end_datetime=2020-04-30%2000:00:00&order=desc\""}]}]},"id":"6ab1bba0-929c-438d-ad6a-5ccf1f2bb94b","label":"Программа cURL    ","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[{"type":"text","text":"Для отправки запросов на языке Python установим значения переменных URL и ACCESS_TOKEN:"}]},{"type":"paragraph","content":[{"type":"text","text":"URL = \"https://<hostname>/api/ver1.0\"","marks":[{"type":"code"}]},{"type":"hardBreak"},{"type":"text","text":"(где hostname — hostname API-сервера провайдера IP-телефонии),"}]},{"type":"paragraph","content":[{"type":"text","text":"ACCESS_TOKEN = \"8SNsrS0jV35vfmKqKeKtRrHfpbg4UX\"","marks":[{"type":"code"}]},{"type":"hardBreak"},{"type":"text","text":"(полученный токен доступа)."}]},{"type":"codeBlock","attrs":{"language":"python"},"content":[{"type":"text","text":"#!/usr/bin/python\n\nimport requests\n\nurl = f'{URL}/client/@me/voicemail/?start_datetime=2020-03-01%2000%3A00%3A00&end_datetime=2020-04-30%2000%3A00%3A00&order=desc'\nheaders = {\n    'Authorization': f'Bearer {ACCESS_TOKEN}'\n}\nresponse = requests.get(url, headers=headers)\nprint(response.text)"}]}]},"id":"22bb430d-1126-49b7-8ac1-45cd909ad5a8","label":"На языке Python3    ","type":"tab"}]

Ответ системы:

[]

Ресурсы раздела "Клиент"

Expand
titleGET /client/{client_id}/voicemail/

GET /client/{client_id}/voicemail/

Получить список голосовых сообщений за период

Параметры URL

Имя

Тип

client_id

string

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

Имя

Тип

start_datetime

string

end_datetime

string

extension_group_id

integer

order

string

extension_id

integer

Поля ответа

Имя

Тип

ani_number 

string

application 

string

call_uuid 

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

storage_url

string

Expand
titleGET /client/{client_id}/voicemail/{record_uuid}

GET /client/{client_id}/voicemail/{record_uuid}

Получить файл голосового сообщения

Параметры URL

Имя

Тип

record_uuid

string

client_id

string

Expand
titleDELETE /client/{client_id}/voicemail/{record_uuid}

DELETE /client/{client_id}/voicemail/{record_uuid}

Удалить голосовое сообщение

Параметры URL

Имя

Тип

record_uuid

string

client_id

string

Ресурсы раздела "Группа внутренних номеров”

Expand
titleGET /extension_group/{ext_group_id}/voicemail/

GET /extension_group/{ext_group_id}/voicemail/

Получить список голосовых сообщений за период

Параметры URL

Имя

Тип

ext_group_id

string

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

Имя

Тип

end_datetime

string

start_datetime

string

order

string

extension_id

integer

Поля ответа

Имя

Тип

ani_number 

string

application 

string

call_uuid 

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

storage_url

string

Expand
titleGET /extension_group/{ext_group_id}/voicemail/{record_uuid}

GET /extension_group/{ext_group_id}/voicemail/{record_uuid}

Получить файл голосового сообщения

Параметры URL

Имя

Тип

record_uuid

string

ext_group_id

string

Expand
titleDELETE /extension_group/{ext_group_id}/voicemail/{record_uuid}

DELETE /extension_group/{ext_group_id}/voicemail/{record_uuid}

Удалить голосовое сообщение

Параметры URL

Имя

Тип

record_uuid

string

ext_group_id

string

Ресурсы раздела "Внутренний номер”

Expand
titleGET /extension/{extension_id}/voicemail/

GET /extension/{extension_id}/voicemail/

Получить список голосовых сообщений за период

Параметры URL

Имя

Тип

extension_id

string

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

Имя

Тип

start_datetime

string

order

string

end_datetime

string

Поля ответа

Имя

Тип

ani_number 

string

application 

string

call_uuid 

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

Expand
titleGET /extension/{extension_id}/voicemail/{record_uuid}

GET /extension/{extension_id}/voicemail/{record_uuid}

Получить файл голосового сообщения

Параметры URL

Имя

Тип

record_uuid

string

extension_id

string