Всё, что стоит знать, и ничего лишнего.
Что на самом деле означает слово «доставлено»?
DELIVRD означает, что MSC получателя сообщил об успешной доставке радиосигнала на мобильный телефон — сеть удовлетворена. Это не означает, что пользователь прочитал сообщение, открыл приложение для обмена сообщениями или даже включил экран. Рассматривайте DLR как подтверждение на уровне сети, а не как подтверждение прочтения. (Для подтверждения прочтения используйте RCS или WhatsApp.)
Коды ошибок, которые вы видите на самом деле.
Коды причин GSM 1–127 — это причины на уровне протокола (отсутствие абонента, сбой оборудования и т. д.). Коды ошибок SMPP 0x0000–0x00FF — это причины на уровне SMPP (недопустимый адрес источника, перегрузка). Специфические для оператора TLV иногда содержат более полный контекст (радиосигнал вне зоны покрытия, память телефона заполнена). Хороший агрегатор преобразует некорректные коды операторов в понятную таксономию ошибок, на основе которой можно принимать меры. DLR-поток BroadNet нормализует данные по более чем 200 операторам, создавая словарь ошибок из 25 кодов.
Почему поезда DLR возвращаются с опозданием
Причин много. Роуминг абонента вне сети в течение нескольких часов. Повторные попытки передачи данных через SMSC в течение срока действия (по умолчанию 24 часа; до 72 часов для некоторых операторов). Маршрутизация A2P оператором, проходящая через три промежуточных SMSC, каждый из которых добавляет свою собственную задержку в очереди. Система мониторинга отслеживает задержку DLR p50/p95/p99 в зависимости от оператора назначения и оповещает о снижении качества маршрута — см. /products/dlr-monitoring patterns.
Что делать с DLR?
Три действия. Отметьте сообщение как доставленное/не доставленное в вашей системе учета. Запустите последующую бизнес-логику (процесс восстановления корзины продолжается, запускается повторная попытка ввода OTP). Передайте данные обратно в таблицу оценки качества маршрутов, чтобы ваш агрегатор мог перераспределить трафик. Третье — это то, что отличает CPaaS от проводной сети: BroadNet использует ваши DLR для управления выбором маршрута в режиме реального времени.