ESME_RINVTLVLEN az SMPP-ben

Mi az az ESME_RINVTLVLEN?

ESME_RINVTLVLEN (Hibakód: 0x000000C2) egy SMPP hiba, amely azt jelzi, hogy a kérésben található egy Tag-Length-Value (TLV) paraméter érvénytelen hosszúságú, vagyis a megadott hossz nem egyezik a tényleges adathosszal.

Lehetséges okok

  • A TLV hossz mező nem egyezik az adott TLV címke várt méretével.
  • A megadott hossz rövidebb vagy hosszabb, mint amennyit az SMPP specifikáció előír.
  • A TLV szerkezet sérült vagy hibás.
  • Kódolási hibák a TLV mezőben.

Mikor fordul elő?

Ez a hiba akkor jelentkezik, amikor egy ESME olyan SMPP kérést küld, amelyben egy TLV paraméter hossz mezője nem felel meg a tényleges érték méretének.

Példa SMPP PDU tranzakcióra

Kérés PDU (submit_sm) az ESME-től érvénytelen TLV hosszal

00000040 (Hossz)
00000004 (Parancs azonosító a submit_sm-hez)
00000000 (Parancs állapot)
00000001 (Sorszám)
00 (Szolgáltatás típus)
01 (Forrás cím TON - Nemzetközi)
01 (Forrás cím NPI - ISDN)
31323334 00 (Forrás cím: "1234")
01 (Cél cím TON - Nemzetközi)
01 (Cél cím NPI - ISDN)
39383736 00 (Cél cím: "9876")
00 (ESM osztály)
00 (Protokoll azonosító)
00 (Prioritás jelző)
00000000 (Kézbesítési időpont - Nincs beállítva)
00000000 (Érvényességi idő - Nincs beállítva)
00 (Csere, ha jelen van jelző)
00 (Alapértelmezett üzenet azonosító)
0005 (Üzenet hossza)
48656C6C 6F (Üzenet: "Hello")
0421 0004 01 (Érvénytelen TLV: Megadott hossz 4, tényleges adat 1 bájt)

Válasz PDU (submit_sm_resp) ESME_RINVTLVLEN hibával

00000010 (Hossz)
80000004 (Parancs azonosító a submit_sm_resp-hez)
000000C2 (Parancs állapot - ESME_RINVTLVLEN)
00000001 (Sorszám)

Probléma: A TLV (0x0421 címke) 4 bájtos hosszt határoz meg, de a megadott érték csak 1 bájt hosszú.

Hogyan oldható meg?

  • Ellenőrizze az SMPP specifikációt a TLV hossz követelményeinek megerősítéséhez.
  • Győződjön meg arról, hogy a hossz mező pontosan tükrözi a tényleges adatméretet.
  • Érvényesítse a TLV szerkezetet a kérés elküldése előtt.
  • Használjon SMPP szimulátort vagy csomagellenőrző eszközt a PDU szerkezet vizsgálatához.
  • Távolítsa el vagy javítsa ki a problémás TLV-t, majd tesztelje újra.

A TLV hossz mezőjének javítása a tényleges érték méretére megoldja ezt a problémát.

More information