Overview
Сообщение, остающееся в «очереди» — никогда не достигающее DELIVRD или UNDELIV — обычно означает, что оно было принято шлюзом, но еще не доставлено оператором назначения: как правило, потому что оно запланировано на более позднее время, ограничено лимитом TPS, ожидает истечения срока действия с выключенным или находящимся вне зоны покрытия мобильным устройством или находится на перегруженном маршруте. Проверьте schtime, ваш лимит пропускной способности и DLR — сообщение покидает очередь только тогда, когда оператор возвращает окончательное подтверждение получения.
Это запланировано на более позднее время.
Если вы укажете время отправки (с указанием GMT), шлюз намеренно задержит сообщение до этого момента, так что оно будет находиться в очереди до наступления запланированного времени. Проверьте предоставленные вами данные о времени отправки/GMT — неверная погрешность GMT или указание будущей даты являются самой простой причиной, по которой пакет сообщений «не отправляется». Чтобы отправить сообщение немедленно, опустите параметр schtime; REST API возвращает ScheduleId, когда отправка запланирована.
- schtime (yyyyMMddhhmm) + gmt удерживает сообщение до указанного времени.
- Неправильное смещение GMT может привести к смещению времени отправки.
- Опустите schtime, чтобы отправить сейчас.
- При выполнении запланированной пакетной обработки возвращается ScheduleId, а не информация о немедленной доставке.
Скорость ограничена вашим пределом TPS.
При отправке большого количества сообщений в секунду (TPS) пропускная способность вашей учетной записи достигает допустимого уровня, поэтому более поздние сообщения остаются в очереди, в то время как более ранние отправляются — это нормальное истощение ресурсов, а не сбой. Если важен постоянный объем сообщений, запросите более высокий показатель TPS. Очень большие рассылки лучше загружать файлом получателей на конечную точку массовой отправки /sms/sendbulk, чем одним огромным запросом.
- При больших объемах слив осуществляется через крышку датчика положения дроссельной заслонки (TPS) — последующие детали откладываются.
- Это ожидаемый темп, а не ошибка.
- Для обеспечения стабильной работы системы необходимо запросить более высокую пропускную способность.
- Для очень больших списков используйте /sms/sendbulk.
В течение срока действия услуги телефон недоступен.
Если телефон получателя выключен или находится вне зоны действия сети, SMSC оператора сохраняет сообщение и повторяет попытку до тех пор, пока телефон не появится снова или не истечет срок действия. В течение этого периода сообщение законно находится в очереди. Когда срок действия истекает, а сообщение не доставлено, DLR переходит в состояние UNDELIV/expired — поэтому сообщение, находящееся в длинной очереди, часто разрешается само собой, как только телефон снова подключается к сети.
- Функция SMSC store-and-forward повторяет попытку подключения недоступного устройства.
- Сообщение остается в очереди до момента доставки или истечения срока действия.
- По истечении срока действия DLR становится UNDELIV/expired.
- Проблема часто решается, когда телефон снова оказывается в зоне покрытия.
Проверьте кредиты, маршрут и реальный статус.
Если ничего не меняется, подтвердите баланс — отправка может завершиться ошибкой HTTP18 (недостаточно средств) — и убедитесь, что идентификатор отправителя и маршрут одобрены для получателя. Не определяйте состояние по отсутствию веб-хука: получите статус каждого сообщения напрямую (через устаревший HTTP API: /websmpp/websmsstatus с идентификатором ответа).
- Нет движения средств? Проверьте баланс — HTTP18 недостаточен.
- Убедитесь, что идентификатор отправителя и маршрут разрешены для данной страны.
- Узнайте реальный статус, запросив его напрямую (устаревший HTTP API: /websmpp/websmsstatus).
- Не стоит делать предположения, исходя из отсутствия веб-хука — следует получать информацию о его статусе.