ESME_RINVTLVLEN v SMPP

Co je ESME_RINVTLVLEN?

ESME_RINVTLVLEN (Chybový kód: 0x000000C2) je chyba v SMPP, která indikuje, že parametr Tag-Length-Value (TLV) v požadavku má neplatnou délku, což znamená, že zadaná délka neodpovídá skutečné délce dat.

Možné příčiny

  • Pole délky TLV neodpovídá očekávané velikosti pro daný TLV tag.
  • Zadaná délka je kratší nebo delší, než vyžaduje specifikace SMPP.
  • Struktura TLV je poškozena nebo chybně formátována.
  • Chyby v kódování pole TLV.

Kdy k tomu dochází?

Tato chyba nastane, když ESME odešle SMPP požadavek obsahující TLV parametr, kde pole délky neodpovídá správně skutečné velikosti hodnoty.

Příklad transakce SMPP PDU

Požadavek PDU (submit_sm) odeslaný ESME s neplatnou délkou TLV

00000040 (Délka)
00000004 (ID příkazu pro submit_sm)
00000000 (Stav příkazu)
00000001 (Pořadové číslo)
00 (Typ služby)
01 (TON zdrojové adresy - Mezinárodní)
01 (NPI zdrojové adresy - ISDN)
31323334 00 (Zdrojová adresa: "1234")
01 (TON cílové adresy - Mezinárodní)
01 (NPI cílové adresy - ISDN)
39383736 00 (Cílová adresa: "9876")
00 (Třída ESM)
00 (ID protokolu)
00 (Prioritní příznak)
00000000 (Čas plánovaného doručení - Nenastaven)
00000000 (Období platnosti - Nenastaven)
00 (Příznak nahrazení, pokud je přítomen)
00 (Výchozí ID zprávy Sm)
0005 (Délka zprávy)
48656C6C 6F (Zpráva: "Hello")
0421 0004 01 (Neplatné TLV: Zadaná délka 4, skutečná data 1 bajt)

Odpověď PDU (submit_sm_resp) s ESME_RINVTLVLEN

00000010 (Délka)
80000004 (ID příkazu pro submit_sm_resp)
000000C2 (Stav příkazu - ESME_RINVTLVLEN)
00000001 (Pořadové číslo)

Problém: TLV (Tag 0x0421) specifikuje délku 4 bajtů, ale skutečná poskytnutá hodnota je pouze 1 bajt.

Jak to vyřešit?

  • Zkontrolujte specifikaci SMPP, abyste ověřili správné požadavky na délku TLV.
  • Ujistěte se, že pole délky přesně odráží skutečnou velikost dat.
  • Validujte strukturu TLV před odesláním požadavku.
  • Použijte simulátor SMPP nebo analyzátor paketů k prozkoumání struktury PDU.
  • Odstraňte nebo opravte problematické TLV a znovu otestujte.

Oprava pole délky TLV tak, aby odpovídalo skutečné velikosti hodnoty, tento problém vyřeší.

More information