Webhook

Необходимо сообщить менеджеру адрес вашего сервера, который будет принимать статусы сообщений
Спецификации для отправки JSON и XML
XML
JSON
Метод отправки XML-документа: POST
К примеру, в phpXML-документ будет доступен через переменную $GLOBALS['HTTP_RAW_POST_DATA']
Система отправляет XML-документ серверу клиента следующего содержания:
<?xml version="1.0" encoding="utf-8" ?>
<response>
<state id_sms="IDSMS в системе для проверки статуса" time="2011-01-01 12:57:46" sms="Статус">Статус</state>
<state id_sms="IDSMS в системе для проверки статуса" time="2011-01-01 12:57:46" sms="Статус" viber="Статус">Статус</state>
<state id_sms="IDSMS в системе для проверки статуса" time="2011-01-01 12:57:46" viber="Статус">Статус</state>
</response>

Расшифровка параметров

Параметр
Тип
Описание
response
.state
[id_sms]
Int
Номер сообщения, полученный в ответном XML-документа в процессе отправки сообщения
response
.state
[time]
Date
Время изменения статуса
response
.state
String
Последний статус сообщения:
  • «send» - статус сообщения не получен. В этом случае передается пустой time (time="")
  • «not_deliver» - сообщение не было доставлено. Конечный статус (не меняется со временем)
  • «expired» - абонент находился не в сети в те моменты, когда делалась попытка доставки. Конечный статус (не меняется со временем)
  • «deliver» - сообщение доставлено.
  • «read» - сообщение прочитано. Конечный статус (не меняется со временем) для viber сообщения
  • «partly_deliver» - сообщение было отправлено, но статус так и не был получен
response
.state
[sms]
String
Статус SMS сообщения.
response
.state
[viber]
String
Статус Viber сообщения.

Возвращаемый ответ сервера клиента в XML-документе

Если сервер клиента не передаст id_sms, то статус будет считаться не полученным клиентом. При этом будет сделано 5 попыток доставить статус.
<?xml version="1.0" encoding="utf-8" ?>
<response>
<id_sms>3234</id_sms>
<id_sms>3235</id_sms>
</response>
Метод отправки JSON-документа: POST
К примеру, в php JSON-документ будет доступен через функцию file_get_contents("php://input") или переменную $GLOBALS['HTTP_RAW_POST_DATA']
Система отправляет JSON-документ серверу клиента следующего содержания:
[
{
"id_sms": "ID SMS в системе для проверки статуса",
"time": "2011-01-01 12:57:46",
"state": "Статус"
},
{
"id_sms": "ID SMS в системе для проверки статуса",
"time": "2011-01-01 12:57:46",
"state": "Статус"
}
]

Расшифровка параметров

Параметр
Тип
Описание
id_sms
Int
Номер сообщения, полученный в ответном JSON-документа в процессе отправки сообщения
time
Date
Время изменения статуса
state
String
Последний статус сообщения:
  • «send» - статус сообщения не получен. В этом случае передается пустой time (time="")
  • «not_deliver» - сообщение не было доставлено. Конечный статус (не меняется со временем)
  • «expired» - абонент находился не в сети в те моменты, когда делалась попытка доставки. Конечный статус (не меняется со временем)
  • «deliver» - сообщение доставлено.
  • «read» - сообщение прочитано. Конечный статус (не меняется со временем) для viber сообщения
  • «partly_deliver» - сообщение было отправлено, но статус так и не был получен

Возвращаемый ответ сервера клиента в JSON-документе

Если сервер клиента не передаст id_sms, то статус будет считаться не полученным клиентом. При этом будет сделано 5 попыток доставить статус.
[
{
"id_sms":3234
},
{
"id_sms":3235
}
]
Last modified 5mo ago