Работа с динамической переадресацией на URL-адрес

Эта статья описывает принцип работы переадресации входящих вызовов на URL-адрес. Если вы настроили переадресацию такого типа в Личном кабинете или через API, в момент входящего вызова платформа МТС Exolve будет отправлять POST-запрос на указанный URL методом getControlCallFollowMe с данными о вызове. Ваш сервер должен ответить на запрос данными для переадресации входящего вызова. Ниже вы найдете список входных параметром, которые МТС Exolve отправляет на ваш URL, и выходные параметры, который должен передать ваш сервер в ответе для успешной переадресации входящего звонка.

Входные параметры

Параметр Тип Описание
sip_id string купленный в приложении номер, на который поступил вызов
numberA string номер телефона, с которого поступил вызов
call_sid string уникальный идентификатор вызова

Выходные параметры

Параметр Тип Описание
sip_id string купленный в приложении номер, на который поступил вызов
result Result настройка переадресации

Result

Параметр Тип Описание
redirect_type int тип переадресации: 1 - одиночная, 2 - последовательная, 3 - параллельная
followme_struct FollowMeStruct параметры для переадресации входящего вызова
event_URL string URL для отправки уведомлений о ходе звонка
event_extended boolean trueдля получения расширенных логов по звонку, false для получения стандартных логов (применимо только для redirect_type = 1). Если параметр не указан в ответе API клиента, по умолчанию передаются стандартные логи
client_id string сквозной идентификатор вызова от API клиента
file_to_A string ID аудио сообщения, которое будет проигрываться звонящему абоненту. При отсутствии параметра аудио сообщение проигрываться не будет
file_to_B string ID аудио сообщения, которое будет проигрываться вызываемому абоненту. При отсутствии параметра аудио сообщение проигрываться не будет
masking boolean true для скрытия номена звонящего абонента, false для транслирование оригинального номера звонящего абонента. Если параметр не указан в ответе API клиента, по умолчанию номер звонящего абонента не скрыт
answer boolean true для проигрывания промта в ответном состоянии, false для проигрывания промта в предответном состоянии. Если параметр не указан в ответе API клиента, проигрывание промта осуществляется в предответном состоянии

FollowMeStruct

Параметр Тип Описание
i_follow_order string порядок следования номера при переадресации вызова
active boolean true для переадресации вызова на redirect_number, false для сброса вызова
name string символьное имя номера для переадресации вызова
redirect_number string номер для переадресации вызова
period string always
period_description string описание периода переадресации вызова
timeout string таймаут (в секундах), время ожидания ответа (смотри примечание)

Ответ должен соответствовать нотации JsonRPC.

Примеры

Входные параметры:

{
    "id": "1",
    "jsonrpc": "2.0",
    "method": "getControlCallFollowMe",
    "params":
    {
       "sip_id": "74994445566",
       "numberA": "79990009988",
       "call_sid": "cald4c209ea-0e84-4a10-856a-6e7eab48e4f5"              
    }
}

Выходные параметры:

{
    "id": 1,
    "jsonrpc": "2.0",
    "sip_id": "74994445566",
    "result": {
        "redirect_type": 1,
        "event_URL": "http://domain/redirect.php",
        "client_id": "777",
        "event_extended": false,
        "file_to_A": "12345",
        "file_to_B": "54321",
        "masking": true,
        "display_number": "74994445566",
        "followme_struct": [ 1, [
            {
                "I_FOLLOW_ORDER": 1,
                "ACTIVE": true,
                "NAME": "Test",
                "REDIRECT_NUMBER": "79991112233",
                "PERIOD": "always",
                "PERIOD_DESCRIPTION": "always",
                "TIMEOUT":30
            }
        ]]
    }
}

Содержание статьи