ESME_RINVTLVVAL dans SMPP

Qu'est-ce que ESME_RINVTLVVAL ?

ESME_RINVTLVVAL (Code d'erreur : 0x000000C4) est une erreur SMPP indiquant qu'un paramètre Tag-Length-Value (TLV) contient une valeur invalide ou inattendue.

Causes possibles

  • La valeur TLV ne respecte pas le format ou la plage attendus.
  • Un type de données incorrect est utilisé pour la valeur TLV.
  • Une valeur réservée ou non prise en charge est spécifiée dans le champ TLV.
  • Erreurs d'encodage ou corruption des données TLV.

Quand cela se produit-il ?

Cette erreur se produit lorsqu'un ESME envoie une requête SMPP contenant un paramètre TLV dont la valeur est invalide ou ne correspond pas au format défini dans la spécification SMPP.

Exemple de transaction PDU SMPP

Requête PDU (submit_sm) envoyée par l'ESME avec une valeur TLV invalide

00000040 (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)
00 (Drapeau de remplacement si présent)
00 (ID de message par défaut)
0005 (Longueur du message)
48656C6C 6F (Message : "Hello")
0421 0002 FFFF (TLV invalide : La valeur 0xFFFF n'est pas autorisée)

Réponse PDU (submit_sm_resp) avec ESME_RINVTLVVAL

00000010 (Longueur)
80000004 (ID de commande pour submit_sm_resp)
000000C4 (Statut de commande - ESME_RINVTLVVAL)
00000001 (Numéro de séquence)

Problème : Le TLV (Tag 0x0421) contient une valeur invalide (0xFFFF), qui n'est pas dans la plage acceptable.

Comment le résoudre ?

  • Consultez la spécification SMPP pour les valeurs valides du paramètre TLV.
  • Assurez-vous que la valeur est dans la plage acceptable et correctement formatée.
  • Utilisez le bon type de données et encodage pour le champ TLV.
  • Validez les données TLV avant d'envoyer la requête.
  • Utilisez un simulateur SMPP ou un analyseur de protocole pour inspecter la structure PDU.

Corriger la valeur TLV pour qu'elle corresponde à la plage autorisée résoudra ce problème.

More information