ESME_RINVREPFLAG dans SMPP
Qu'est-ce que ESME_RINVREPFLAG ?
ESME_RINVREPFLAG (Code d'erreur : 0x00000054) est une erreur SMPP indiquant que le champ replace_if_present_flag
dans le PDU submit_sm
contient une valeur invalide ou non prise en charge.
Causes possibles
- Le champ
replace_if_present_flag
contient une valeur incorrecte ou non définie. - Le SMSC ne prend pas en charge le remplacement de message.
- L'ESME tente d'utiliser un paramètre de drapeau invalide.
Quand cela se produit-il ?
Cette erreur se produit lorsqu'un ESME envoie une requête submit_sm
avec une valeur replace_if_present_flag
invalide qui n'est pas reconnue par le SMSC.
Exemple de transaction PDU SMPP
PDU submit_sm
incorrect (Drapeau Replace If Present invalide)
0000002F (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é) 00000000 (Heure de livraison planifiée - Non définie) 00000000 (Période de validité - Non définie) FF (Drapeau Replace If Present invalide) 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_RINVREPFLAG
00000010 (Longueur) 80000004 (ID de commande pour submit_sm_resp) 00000054 (Statut de commande - ESME_RINVREPFLAG) 00000001 (Numéro de séquence)
Problème : Le champ replace_if_present_flag
est défini sur une valeur invalide (0xFF
), qui n'est pas reconnue par le SMSC.
Comment le résoudre ?
- Utilisez une valeur valide pour
replace_if_present_flag
: 0x00
- Ne pas remplacer si présent0x01
- Remplacer si présent- Assurez-vous que le SMSC prend en charge le remplacement de message avant d'utiliser le drapeau.
- Vérifiez la structure du PDU et assurez-vous que toutes les valeurs des champs sont correctement définies.
- Consultez le fournisseur du SMSC pour les valeurs prises en charge si le problème persiste.
Si le problème continue, activez la journalisation de débogage et examinez les transactions SMPP brutes pour un diagnostic plus approfondi.