Каскадная отправка сообщений#
Каскадной отправкой называется технология переотправки сообщения по различным каналам.
Последовательность каналов настраивается по согласованию с клиентом. При поступлении сообщение будет направлено в канал с наивысшим приоритетом; в случае недоставки оно будет переотправлено в следующий канал. Переотправка продолжится до тех пор, пока не будет получен статус “Доставлено” или пока не будут использованы все возможные каналы. Например, если push-сообщение по той или иной причине не поступает на мобильное устройство пользователя, его содержание может быть переотправлено в виде SMS.
{% hint style=»info» %} По умолчанию функция каскадной отправки не активирована для клиентов. Для активации обратитесь к персональному менеджеру. {% endhint %}
Каскадная отправка сообщений#
POST https://external-api.i-dgtl.ru/message
При каскадной отправке возможно комбинировать любой из доступных способов отправки, описанных выше, указывая необходимое содержимое для каждого типа канала.
Headers#
Name |
Type |
Description |
|---|---|---|
Content-Type |
string |
application/json |
Authorization |
string |
„nodeID:password“ | base64 |
Request Body#
Name |
Type |
Description |
|---|---|---|
@type |
string |
Тип сообщения, имеет постоянное значение оutbound (исходящее). |
addresses |
object |
Объект, содержащий адреса отправителя и получателя. |
source |
string |
Имя или номер отправителя. |
destination |
string |
Номер телефона получателя. Указывается в международном формате MSISDN, состоящем из кода страны, DEF-кода оператора и номера абонента. Например, российский номер выглядит так: 79001234567, где 7 - код страны (Россия). |
body |
object |
Объект, в котором передаётся содержимое сообщения. |
bodyType |
string |
Тип сообщения |
content |
string |
Объект, содержащий параметры сообщения. |
bodyType |
string |
Канал отправки сообщений: |
content |
string |
Текст сообщения. |
nodeId |
integer |
Номер ноды |
requestDelivery |
boolean |
Указывает, cледует ли предоставлять отчёт о доставке после отправки сообщения (true|false). |
expirationDate |
integer |
Время, до которого будет ожидаться получение статуса от оператора. |
{
"timestamp": 1632214355104,
"code": 200,
"responses": [
{
"id": "41937aa1-6322-1435-5090-aa0003442762",
"timestamp": 1632214355110,
"code": 200
}
]
}
{
"timestamp": 1632214510174,
"code": 400,
"description": "incorrect request body"
}
Пример запроса#
POST https://external-api.i-dgtl.ru/message
Authorization: Basic Mzk5OTk6MTIzNjU0
Content-Type: application/json
[
{
"@type": "outbound",
"addresses": {
"source": "Testing",
"destination": "79500197493"
},
"body": {
"bodyType": "generic",
"content": [
{
"bodyType": "viber",
"content": "Have a nice day!"
},
{
"bodyType": "text",
"content": "Have a great day."
}
]
},
"nodeId": 31937,
"requestDelivery": true
}
]