ESME_RINVSCHED dans SMPP

Qu'est-ce que ESME_RINVSCHED ?

ESME_RINVSCHED (Code d'erreur : 0x00000061) est une erreur SMPP indiquant que le champ schedule_delivery_time dans une requête submit_sm contient un format ou une valeur invalide.

Causes possibles

  • Le champ schedule_delivery_time n'est pas dans le format correct.
  • La date et l'heure fournies sont dans un format non pris en charge.
  • Le SMSC ne prend pas en charge la livraison programmée des messages.
  • L'heure programmée est dans le passé.

Quand cela se produit-il ?

Cette erreur se produit lorsqu'un ESME soumet un SMS avec un champ schedule_delivery_time mal formaté.

Exemple de transaction SMPP PDU

PDU submit_sm incorrecte (Heure de livraison programmée invalide)

0000003F (Longueur)
00000004 (ID de commande pour submit_sm)
00000000 (Statut de commande)
00000001 (Numéro de séquence)
00 (Type de service)
01 (TON de l'adresse source - International)
01 (NPI de l'adresse source - ISDN)
31323334 00 (Adresse source : "1234")
01 (TON de l'adresse de destination - International)
01 (NPI de l'adresse de destination - ISDN)
39383736 00 (Adresse de destination : "9876")
00 (Classe ESM)
00 (ID de protocole)
00 (Drapeau de priorité)
31323039 3031303030303030 00 (Heure de livraison programmée invalide)
00000000 (Période de validité - Non définie)
00 (Drapeau de remplacement si présent)
00 (ID de message par défaut Sm)
0005 (Longueur du message)
48656C6C 6F (Message : "Hello")

PDU de réponse (submit_sm_resp) avec ESME_RINVSCHED

00000010 (Longueur)
80000004 (ID de commande pour submit_sm_resp)
00000061 (Statut de commande - ESME_RINVSCHED)
00000001 (Numéro de séquence)

Problème : Le champ schedule_delivery_time est mal formaté, ce qui entraîne son rejet par le SMSC.

Comment le résoudre ?

  • Assurez-vous que le champ schedule_delivery_time suit le format de temps absolu ou relatif SMPP correct :
    • Format de temps absolu : YYMMDDhhmmss000R (par exemple, 240211153000000R pour le 11 févr. 2024 à 15:30:00 UTC)
    • Format de temps relatif : 000001000000000R (livraison dans 1 heure à partir de maintenant)
  • Assurez-vous que l'heure programmée est dans le futur.
  • Vérifiez auprès du fournisseur SMSC si la livraison programmée est prise en charge.
  • Utilisez les caractères de terminaison corrects (par exemple, 00 pour les chaînes terminées par NULL).

Si le problème persiste, examinez les logs SMPP et assurez-vous que le format de programmation correct est utilisé.

More information