Функционал управления входящими вызовами позволяет клиенту, в момент поступления звонка от пользователя:
- получать от платформы МТТ запрос к API клиента по арендованному номеру, для получения номера переадресации;
- осуществить онлайн перенаправление входящего вызова на полученный от API клиента номер телефона;
- проиграть информационное сообщение звонящему пользователю так и принимающему вызов клиенту;
- отбить входящий вызов, при необходимости проиграть информационное сообщение перед отбоем;
- получать онлайн уведомления (Events) в ходе вызова;
- менять URL API клиента при необходимости;
- резервировать настройки переадресации при недоступности клиентского URL.
В момент входящего вызова на номер клиента платформа МТТ производит POST запрос (c ip - 80.75.132.186) к API клиента методом getControlCallFollowMe по полученному номеру.
Пример POST запроса к API клиента
{ "id": "1", "jsonrpc": "2.0", "method": "getControlCallFollowMe", "params": { "sip_id": " 79586488002", "numberA": "79154368886", "h323_conf_id": "BC5F236C 5AD211E9 81BA5CB9 01FED6FC" } }
Входные параметры
Response
Name | Type | Description |
---|---|---|
sip_id | string | номер клиента по которому запрашивается алгоритм переадресации вызова. Формат номера 7+10 цифр (E.164), всегда |
numberA | string | оригинальный А-номер РФ, номер с которого поступил вызов на "sip_id". Формат номера, тот который пришел на сеть МТТ, может быть и +7/8/7 + 10 цифр |
h323_conf_id | string | Уникальный id звонка на платформе МТТ |
Пример ответа от API клиента
{ "jsonrpc": "2.0", "id": "1", "result": { "redirect_type": 1, "event_URL": "http://домен/stub.php", "client_id": "1235", "file_to_A": "47f51cac1b50fd136334697b11aa406a", "file_to_B": "3806efe36d0f1bfccb45ffae8e152c7c", "followme_struct": [1, [ { "I_FOLLOW_ORDER": "1", "ACTIVE": "Y", "NAME": "79684881033", "REDIRECT_NUMBER": "79684881033", "PERIOD": "always", "PERIOD_DESCRIPTION": "always", "TIMEOUT": "15" } ]] } }
Выходные параметры
Response
Name | Type | Description |
---|---|---|
sip_id | string | sip_id аккаунта, номер МТТ |
redirect_type* | int | Тип переадресации 1 - одиночная, 2- последовательная, 3- параллельная |
followme_struct | структура | Структура с параметрами и номерами переадресации |
event_URL | string | URL для отправки онлайн уведомлений о ходе звонка* |
event_extended | string | Параметр со значениями Y/N для получения расширенных логов по звонку |
client_id | string | Сквозной идентификатор вызова от API клиента |
file_to_A | string | Аудио сообщение в сторону звонящего пользователя, при отсутствии параметра аудио сообщение проигрываться не будет. file_id, получаемый методом getCustomerPrompts, ранее загруженного промта через API метод createCustomerPrompt, см. пункт "Premedia API" |
file_to_B | string | Аудио сообщение в сторону принимающего вызов клиента, при отсутствии параметра аудио сообщение проигрываться не будет. file_id, получаемый методом getCustomerPrompts, ранее загруженного промта через API метод createCustomerPrompt, см. пункт "Premedia API" |
masking | string | (Y/N) Y – Скрытие А- номера. N – Транслирование оригинального А-номера (numberA) если параметр не указан в ответе клиента |
answer | string | (Y/N) Y – проиграть промт в ответном состоянии. N – проиграть промт в предответном состоянии. По умолчанию (если параметр не указан в ответе клиента), проигрывание промта осуществляется в предответном состоянии |
followme_struct
Name | Type | Description |
---|---|---|
i_follow_order | string | Порядок следования номера при перенаправлении вызова |
active | string | Активность (Y/N), Y - вызов пройдет на redirect_number, N - вызов отобьется. |
name | string | Символьное имя номера для перенаправления вызова |
redirect_number | string | Номер для перенаправления вызова |
period | string | Always |
period_description | string | Описание периода перенаправления вызова |
timeout | string | Таймаут (в секундах), время ожидания ответа. (смотри примечание)* |
dtmf | string | Ввод добавочного номера. Список возможных символов: 0-9,*#,w,W. w - пауза на пол секунды, W - пауза на одну секунду. Пример: "WWW1W3151#" - после ответа IVR клиента, через 3 секунды будет отправлена цифра "1", далее через 1 секунду отправлена последовательность из 4-х цифр "3151", # - символ окончания ввода. |
* Минимальное оптимальное время timeout при redirect_type 3 = 55-60 секунд.
Также необходимо учитывать, что длительность промтов file_to_А и file_to_B не входит во время таймаута.
Таким образом, при наличии промтов, минимальным оптимальным временем будет:
timeout = длительность промта file_to_А + 55-60 секунд + длительность промта file_to_В.
Запрос к API клиента отправляется на URL, структура: <схема>://<логин>:<пароль>@<хост>:<порт>/<URL-путь>
В данном случае:
- в качестве схемы могут быть использованы протоколы http/https;
- в качестве логина/пароля будут переданы реквизиты аутентификации;
- хост - доменное имя или IP-адрес сервера API клиента;
- порт 80/443.
Получив ответ от API клиента, МТТ переводит вызовы согласно полученным параметрам переадресации.