MakeCallBack

Метод MakeCallBack

Примените этот метод для совершения обратного звонка: платформа позвонит абонентам (например, оператору и клиенту), затем объединит их для разговора. Обоим абонентам можно перед соединением проиграть аудиосообщение — предварительно записанное или синтезированное в режиме онлайн в рамках этого же звонка.

Точка подключения: Выполните POST-запрос с входными параметрами к точке подключения:

POST: https://api.exolve.ru/call/v1/MakeCallback

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

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

Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.

Параметр Тип Описание
request_description string идентификатор запроса со стороны клиента
number_code uint64 номер для создания обратного звонка
callback_resource_id uint64 уникальный идентификатор ресурса обратного звонка. Чтобы получить идентификатор, создайте ресурс обратного звонка в приложении
duration uint32 максимальная длительность соединенного вызова двух абонентов в секундах: от 300 до 3600 (по умолчанию: 1800)
line_1 Line_x настройки первого плеча
line_2 Line_x настройки второго плеча

Line_x

Параметр Тип Описание
destinations Destination Список абонентов плеча Х (до 10 на каждом)
ring_logic enum Принцип обзвона. Значение 1 для последовательного обзвона, значение 2 для параллельного. Значение 1 по умолчанию
display_number string отображаемый номер звонящего/принимающего вызов абонента
audio Audio аудиосообщение для абонента плеча Х

Destination

Параметр Тип Описание
number string номер или SIP-URI абонента
timeout uint32 максимальное время дозвона до абонента от инициации вызова в секундах: от 10 до 600 (по умолчанию: 30)

Audio


ВАЖНО! Для одного плеча можно указать только один из параметров:

  • media_resource_id — проиграть принимающим абонентам предзаписанное аудио
  • tts — (Text-to-Speech) — синтезировать речь по заданным параметрам в режиме онлайн

Параметр Тип Описание
media_resource_id uint64 уникальный идентификатор медиаресурса для аудиосообщения абоненту плеча Х
tts TTS параметры синтеза речи для аудиосообщения абоненту плеча Х

TTS

Параметр Тип Описание
text string текст синтезируемой речи (от 1 до 1000 символов, кодировка не учитывается)
voice Voice голос для озвучивания текста
lang Lang язык синтезируемой речи
volume int32 нормализация громкости (от -145 до 0, где -145 — наименьшее усиление, 0 — наибольшее усиление громкости; по умолчанию -19)
speed float скорость синтезируемой речи (от 0.1 до 3.0, где 0.1 — самая медленная, 3.0 — самая быстрая; по умолчанию 1.0)
emotion Emotion эмоция для озвучивания текста
SynthesisSettings

ВАЖНО! Каждый голос поддерживает определённые параметры языка и эмоции. При формировании API-запроса важно, чтобы выбранный голос был доступен с указанным языком и эмоцией


Параметр Тип Голос (Voice) Пол Эмоция (Emotion) Язык (Lang)
1 enum Алёна (по умолчанию) Ж 1 — нейтральная (по умолчанию), 2 — добрая 1 — русский
2 enum Ермил М 1 — нейтральная (по умолчанию), 2 — радостная 1 — русский
3 enum Джейн Ж 1 — нейтральная (по умолчанию), 2 — радостная, 3 — раздраженная 1 — русский
4 enum Омаж Ж 1 — нейтральная (по умолчанию), 3 — раздраженная 1 — русский
5 enum Захар М 1 — нейтральная (по умолчанию), 2 — радостная 1 — русский
8 enum Даша Ж 1 — нейтральная (по умолчанию), 2 — радостная, 4 — дружелюбная 1 — русский
9 enum Юлия Ж 1 — нейтральная (по умолчанию), 5 — строгая 1 — русский
10 enum Лера Ж 1 — нейтральная (по умолчанию), 4 — дружелюбная 1 — русский
11 enum Марина Ж 1 — нейтральная (по умолчанию), 4 — дружелюбная, 6 — шёпот 1 — русский
12 enum Александр М 1 — нейтральная (по умолчанию), 2 — радостная 1 — русский
13 enum Кирилл М 1 — нейтральная (по умолчанию), 2 — радостная, 5 — строгая 1 — русский
14 enum Антон М 1 — нейтральная (по умолчанию), 2 — радостная 1 — русский
15 enum Маша Ж 2 — радостная (по умолчанию), 4 — дружелюбная, 5 — строгая 1 — русский

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

Параметр Тип Описание
call_id string уникальный идентификатор совершенного обратного звонка
request_id string идентификатор запроса со стороны клиента

Возможные ошибки

Код Статус Пример сообщения Описание
401 Unauthorized malformed token не указан / не правильно указан API-ключ приложения
403 Forbidden customer not active нет доступа к услуге обратного звонка из-за статуса аккаунта пользователя (не активирован/заблокирован)
400 Bad Request invalid MakeCallbackRequest.Line_1: embedded message failed validation невалидный запрос
504 Gateway Timeout нет ответа от внутренних систем Exolve

Примеры

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

{
    "request_description": "internal_id_148",
    "number_code": 74999999999,
    "callback_resource_id": 1221,
    "line_1": {
        "destinations": [
            {
                "number": "78129999999"
            },
            {
                "number": "74959999999"
            }
        ],
        "ring_logic": 1,
        "audio": {
            "tts": {
                "text": "МТС Exolve — конструктор омниканальных диалогов для бизнеса",
                "voice": 1,
                "lang": 1,
                "volume": -19,
                "speed": 1.1,
                "emotion": 2
            }
        }
    },
    "line_2": {
        "destinations": [
            {
                "number": "79599999999"
            },
            {
                "number": "79999999999"
            }
        ],
        "ring_logic": 1,
        "audio": {
            "media_resource_id": 685
        }
    }
}

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

{
    "call_id": "1890033117915127808",
    "request_description": "Идентификатор"
}