Сервис получения статусов доставки#
Описание сервиса#
Сервис-провайдер отправляет Партнёру отчёт о доставке сообщений, передавая его на настроенный URL для передачи статусов доставки.
URL для передачи статусов задается в настройках интеграции при подключении сервиса.
Статус доставки сообщения передаётся в параметре status.
Важно
Для SMS-сообщений, отправленных абонентам оператора Мегафон, с 01.03.2023 прекращена передача статусов 2 – доставлено и 5 – не доставлено.
Расширенные статусы отправленных сообщений доступны опционально. Для получения расширенных статусов необходимо обратиться в Службу технической поддержки Сервис-провайдера.
Метод передачи данных: GET.
Протокол взаимодействия: HTTP 1.1.
Взаимодействие синхронное.
Схема взаимодействия:
- Партнёр направляет Сервис-провайдеру запрос на отправку сообщения. 
- Сервис-провайдер обрабатывает запрос, возвращает Партнёру идентификатор сообщения. 
- Сервис-провайдер обрабатывает сообщение – передает сообщение Оператору для отправки абоненту. 
- Оператор отправляет абоненту сообщение и возвращает Сервис-провайдеру статус доставки. 
- Сервис-провайдер направляет Партнёру запрос, содержащий информацию о статусе доставки сообщения. 
GET-запрос#
Пример запроса от Сервис-провайдера Партнёру для получения статусов сообщений.
http://partner.url?msgType=SMS&transactionId=7986985&ptag=test&status=2
В таблице обязательные параметры выделены полужирным шрифтом.
| Параметр | Тип | Описание | 
|---|---|---|
| msgType | string | Тип сообщения. Возможные значения: 
 | 
| transactionId | long | Идентификатор сообщения в базе Сервис-провайдера, который был передан Партнёру в теле ответа на запрос на отправку сообщения. 64-битное целое положительное число. | 
| ptag | string | Идентификатор сообщения в системе Партнёра, который был передан Сервис-провайдеру в запросе на отправку сообщения в параметре ptag. Максимальная длина: от 1 до 50 символов. Допустимые символы: 0…9a…zA…Z- | 
| status | integer | Статус доставки сообщения. Возможные значения: 
 | 
| partnerMsgId | string | Уникальный идентификатор сообщения в системе Партнёра, который был передан Сервис-провайдеру в запросе на отправку сообщения в параметре partnerMsgId. Длина параметра: не более 50 символов. | 
| unifiedExtStatus | string | Унифицированный расширенный статус доставки сообщения. Описание кодов ошибок приведено ниже. | 
Ответ на запрос#
| Статус | Описание | Порядок действий Сервис-провайдера | 
|---|---|---|
| 200 | ОК. Успешная обработка запроса Партнёром. | Финальный статус. Штатная работа. | 
| 400 | Неверные значения параметров: несуществующие в базе Партнёра идентификаторы transactionId или ptag. | Сервис-провайдер повторно отправляет запрос Партнёру согласно конфигурации сервиса. | 
| 500 | Внутренняя ошибка сервиса Партнёра. Технические проблемы на стороне Партнёра. | 
Описание кодов ошибок (параметр unifiedExtStatus)#
В разделе приведено описание причин недоставки сообщений разных типов.
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 1 | В процессе доставки сообщения произошла неизвестная платформе ошибка, либо оператор не предоставил ошибку в отчете о доставке. | 
| 2 | Аппарат абонента был выключен или находился вне зоны действия сети на протяжении всего времени попыток доставки сообщения. | 
| 4 | В процессе доставки сообщения произошла ошибка на транспортном уровне сигнальной сети. | 
| 6 | У абонента не подключена услуга приема сообщений. | 
| 16 | Номер абонента занят. | 
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 1 | В процессе доставки сообщения произошла неизвестная платформе ошибка, либо оператор не предоставил ошибку в отчете о доставке. | 
| 2 | Аппарат абонента был выключен или находился вне зоны действия сети на протяжении всего времени попыток доставки сообщения. | 
| 3 | Аппарат абонента заблокирован, либо у абонента включен запрет на прием сообщений, либо абонент находится в роуминге с включенным запретом на прием сообщений в роуминге. | 
| 4 | В процессе доставки сообщения произошла ошибка на транспортном уровне сигнальной сети. | 
| 5 | Память телефона абонента переполнена. | 
| 6 | У абонента не подключена услуга приема сообщений. | 
| 7 | Коммутационное оборудование, на котором зарегистрирован абонент, не отвечает. | 
| 8 | Некорректный номер абонента, либо телефон абонента был выключен на протяжении очень долгого периода времени. | 
| 9 | Сообщение было отброшено платформой, так как сработал механизм отсечения дубликатов сообщений. | 
| 10 | Сообщение было отброшено платформой, так как сработал один из фильтров сообщений, например, спам-фильтр. | 
| 11 | Ошибка маршрутизации в конфигурации платформы. | 
| 12 | Номер абонента находится в чёрном списке оператора. | 
| 13 | Отправка сообщения с незарегистрированного у оператора имени отправителя. | 
| 14 | На стороне оператора сработал СПАМ-фильтр по тексту сообщения. | 
| 16 | В момент доставки SMS-сообщения телефон был занят приёмом или передачей другого короткого сообщения. | 
| 18 | Во время отправки сообщения один или несколько параметров SMS-сообщения были указаны неверно или не указаны обязательные параметры. | 
| 20 | Телефон абонента не принимает SMS-сообщение. | 
| 28 | Отправка SMS-сообщения идет на номер другого оператора сотовой связи. | 
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 1 | В процессе доставки сообщения произошла неизвестная платформе ошибка, либо оператор не предоставил ошибку в отчете о доставке. | 
| 2 | Аппарат абонента был выключен или находился вне зоны действия сети на протяжении всего времени попыток доставки сообщения. | 
| 3 | Аппарат абонента заблокирован, либо у абонента включен запрет на прием сообщений, либо абонент находится в роуминге с включенным запретом на прием сообщений в роуминге. | 
| 5 | Память телефона абонента переполнена. | 
| 6 | У абонента не подключена услуга приема сообщений. | 
| 7 | Коммутационное оборудование, на котором зарегистрирован абонент, не отвечает. | 
| 9 | Сообщение было отброшено платформой, так как сработал механизм отсечения дубликатов сообщений. | 
| 11 | Ошибка маршрутизации в конфигурации платформы. | 
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 1 | В процессе доставки сообщения произошла неизвестная платформе ошибка, либо оператор не предоставил ошибку в отчете о доставке. | 
| 3 | Аппарат абонента заблокирован, либо у абонента включен запрет на прием сообщений, либо абонент находится в роуминге с включенным запретом на прием сообщений в роуминге. | 
| 6 | У абонента не подключена услуга приема сообщений. | 
| 10 | Сообщение было отброшено платформой, так как сработал один из фильтров сообщений, например, спам-фильтр. | 
| 11 | Ошибка маршрутизации в конфигурации платформы. | 
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 3 | Аппарат абонента заблокирован, либо у абонента включен запрет на прием сообщений, либо абонент находится в роуминге с включенным запретом на прием сообщений в роуминге. | 
| 6 | У абонента не подключена услуга приема сообщений. | 
| 7 | Коммутационное оборудование, на котором зарегистрирован абонент, не отвечает. | 
| 10 | Сообщение было отброшено платформой, так как сработал один из фильтров сообщений, например, спам-фильтр. | 
| Значение unifiedExtStatus | Описание статусов | 
|---|---|
| 1 | В процессе доставки сообщения произошла неизвестная платформе ошибка, либо оператор не предоставил ошибку в отчете о доставке. | 
| 7 | Коммутационное оборудование, на котором зарегистрирован абонент, не отвечает. | 
| 8 | Некорректный номер абонента, либо телефон абонента был выключен на протяжении очень долгого периода времени. | 
| 9 | Сообщение было отброшено платформой, так как сработал механизм отсечения дубликатов сообщений. | 
| 11 | Ошибка маршрутизации в конфигурации платформы. | 
| 13 | Отправка сообщения с незарегистрированного у оператора имени отправителя. | 
| 18 | Указаны неверные параметры запроса или не указаны обязательные параметры. | 
| 19 | Не найдена карточка с передаваемым идентификатором абонента. | 
| 20 | Не найдена карточка с передаваемым номером телефона абонента. | 
| 21 | Устройство не является основным. В случае, если была выполнена отправка на основное утройство (primaryOn=true). | 
| 22 | Не найдено активных установок мобильного приложения на устройстве пользователя. | 
| 23 | У пользователя мобильного приложения установлен запрет на получение push-уведомлений на уровне приложения. | 
| 24 | У пользователя мобильного приложения установлен запрет на получение push-уведомлений на уровне операционной системы. | 
| 25 | При отправке сообщения были указаны подписки, которые не настроены на установке мобильного приложения пользователя. | 
| 26 | Не найдена установка мобильного приложения на устройстве пользователя. | 
| 27 | Версия приложения меньше минимально допустимой версии. В текущей реализации актуально только для IOS. | 
| 28 | Облачный провайдер (APNS, FCM, HMS, RuStore или Web Push API), через которого выполняется отправка уведомления, вернул ошибку. | 
| 31 | Не найдена установка с переданной платформой (провайдера). |