Page tree

Versions Compared

Key

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

...

Info
iconfalse
titleОглавление:
Table of Contents

Сценарий - клиент отправляет API запрос на платформу МТТ, МТТ осуществляет вызов на полученный номер пользователя, при ответе пользователя ему проигрывается информационное сообщение с последующим отбоем.

Функционал позволяет:

  • осуществлять исходящий вызов на номер пользователя по API;
  • воспроизводить синтезированный текст по средствам TTS;
  • выбирать голос, язык, эмоцию и скорость диктора при синтезе текста;
  • получать онлайн уведомления о ходе информирования по каждому исходящему вызову;
  • получать причины недозвона до номера пользователя;
  • получать всю необходимую информация: дата и время исходящего вызова, длительность прослушивания синтезированного текста, причины недозвона до номера пользователя и др.;
  • использовать подстановку собственных А-номеров по заранее согласованному списку.

Точка входа : https://sb-api.mtt.ru/v1/sb

Авторизация: Basic Auth

API реализован в виде POST-запросов в соответствии со спецификацией JSON-RPC (http://www.jsonrpc.org/specification).

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

Name

Type

Description

method

string

metod

data


Набор данных

Data

Параметр

Описание

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

b_number*

Номер пользователя, на который инициируем вызов: Б-номер телефона, строго 11 цифр, E.164

none

sip_id*

Номер МТТ, учетная запись

none

messId*

Идентификатор запроса со стороны клиента МТТ

none

messText*

Текст для воспроизведения пользователю

none

a_number

Номер для отображения пользователю при входящем звонке: А-номер телефона, строго 11 цифр, E.164

Равен sip_id

langCode

Язык.
Допустимые значения:

  • ru-
RU 
  • RU (по умолчанию)
 — русский
  •  – русский язык,
  • en-
US — английский
  • US – английский язык.

ru

voice_name

Голос синтезированной речи.
Можно выбрать один из следующих голосов:

  • женские голоса: alyss, jane, oksana и omazh;
  • мужские голоса: zahar, ermil, erkanyavas.

erkanyavas

emotion

Эмоциональная окраска голоса.
Допустимые значения:

good — радостный
  • good – радостный, доброжелательный;
evil — раздраженный
  • evil – раздраженный;
neutral — нейтральный
  • neutral – нейтральный.

neutral 

speed_speech

Скорость (темп) синтезированной речи.
Скорость речи задается дробным числом в диапазоне от 0.1 до 3.0. Где:

  • 3.
0 — самый
  • 0 – самый быстрый темп;
  • 1.
0 — средняя
  • 0 – средняя скорость человеческой речи;
  • 0.
1 — самый
  • 1 – самый медленный темп.

1.0

* - обязательные параметры

Авторизационные данные для Basic Auth, method, sip_id выделяются на стороне МТТ при активации коммерческой среды.

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

Параметр

Описание

id

Идентификатор запроса со стороны клиента МТТ = messId

CallID

уникальный ID на стороне сервиса (МТТ) для идентификации вызова

success

Флаг успешного

-

1,

неуспешного - 0

неуспешного – 0  отработки запроса.

error

Ошибка и её описание

Пример

Code Block
languagejava
themeMidnight
titleJSON
linenumberstrue
{
	"method": "metod",
	"data":{
	      "messId": "1255490",
	      "sip_id": "79580000000",
	      "a_number": "79581000000",
	      "b_number": "79100000000",
	      "messText": "Информационное сообщение для Вас"
	}
}

...

Code Block
languagejava
themeMidnight
titleJSON
linenumberstrue
//Невалиден формат b_number
{
    "result": {
        "success": 0,
        "error": "\"b_number\" should be in e164 format"
    },
    "id": "1255490",
    "CallID": "00035c7d92260ed6"
}

//Невалиден формат a_number
{
    "result": {
        "success": 0,
        "error": "\"a_number\" should be in e164 format"
    },
    "id": "1255490",
    "CallID": "00035c7d92260edc"

}

//Нет messId
{
    "result": {
        "success": 0,
        "error": "\"messId\" not found in request body"
    },
    "id": "00035c7d92bb099a"
}

//Неверно указан method
{
    "message": "access forbidden"
}

//Неверно указан sip id
{
    {
    "result": {
        "success": 0,
        "error": "Forbidden"
    },
    "id": "1255490",
    "CallID": "00035c7d9226611f"
}
}

Онлайн уведомления отправляются на предоставленный клиентом URL.


Формат онлайн уведомлений:

  • "date_time=дата и время&id=messId&CallID=CallID&event=o_b_number"
  • - инициация
  •  – инициирование вызова на b_number
  • "date_time=дата и время&id=messId&CallID=CallID&event=h_b_number_cause_duration"
  • - факт
  •  – факт разъединения или недозвона

где:

Параметр

Описание

event=o
cсобытие инициации
событие инициирования вызова на b_number
event=hсобытие разъединения/окончание вызова
date_timeдата и время события
CallIDуникальный ID на стороне сервиса (МТТ) для идентификации вызова
cause*причина разъединения
durationдлительность прослушивания синтезированного текста

*

...

 – все существующие cause приведены в п. Получение статистики.

Примеры:

Абонент снял трубку, прослушал текст:

[{"date_time=2019-03-29-11-37-13&id=1255490&CallID=00035c7d92bb0971&event=o_79100000000"},

{"date_time=2019-03-29-11-37-27&id=1255490&CallID=00035c7d92bb0971&event=h_79100000000_16_4"}]


Абонент занят:

[{"date_time=2019-03-29-09-33-46&id=1255490&CallID=00035c7d92bb0935&event=o_79100000000"},

{"date_time=2019-03-29-09-33-53&id=1255490&CallID=00035c7d92bb0935&event=h_79100000000_17_0"}]


Абонент недоступен:

[{"data":"date_time=2019-03-29-09-41-18&id=1255490&CallID=00035c7d92bb093b&event=o_79100000000"},

{"date_time=2019-03-29-09-41-38&id=1255490&CallID=00035c7d92bb093b&event=h_79100000000_20_0"}]