ESME_RMISSINGTLV az SMPP-ben

Mi az az ESME_RMISSINGTLV?

ESME_RMISSINGTLV (Hibakód: 0x000000C3) egy SMPP hiba, amely azt jelzi, hogy egy kötelező Tag-Length-Value (TLV) paraméter hiányzik a kérésből.

Lehetséges okok

  • Egy kötelező TLV paraméter hiányzik az SMPP PDU-ból.
  • A kérés szerkezete nem felel meg az SMPP specifikációnak.
  • A kérést küldő alkalmazás nem tartalmazza a szükséges TLV-t.

Mikor fordul elő?

Ez a hiba akkor lép fel, amikor egy ESME olyan SMPP kérést küld, amelyhez egy specifikus TLV szükséges, de a TLV nincs benne a PDU-ban.

Példa SMPP PDU tranzakcióra

Kérés PDU (submit_sm) az ESME-től kötelező TLV nélkül

0000003C (Hossz)
00000004 (Parancs ID 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 ID)
00 (Prioritás jelző)
00000000 (Kézbesítési idő ütemezése - Nincs beállítva)
00000000 (Érvényességi idő - Nincs beállítva)
00 (Cserélje ki, ha jelen van jelző)
00 (Sm alapértelmezett üzenet ID)
0005 (Üzenet hossza)
48656C6C 6F (Üzenet: "Hello")

Válasz PDU (submit_sm_resp) ESME_RMISSINGTLV-val

00000010 (Hossz)
80000004 (Parancs ID a submit_sm_resp-hez)
000000C3 (Parancs állapot - ESME_RMISSINGTLV)
00000001 (Sorszám)

Probléma: Egy kötelező TLV (pl. message_payload vagy source_subaddress) szükséges, de hiányzik a kérésből.

Hogyan oldható meg?

  • Ellenőrizze az SMPP specifikációt a parancshoz szükséges kötelező TLV-kről.
  • Győződjön meg róla, hogy az alkalmazás tartalmazza az összes szükséges TLV paramétert.
  • Használjon SMPP szimulátort vagy csomaganalizátort a PDU szerkezet ellenőrzéséhez.
  • Módosítsa a kérést, hogy tartalmazza a hiányzó TLV-t, és próbálja újra.

A hiányzó TLV paraméter hozzáadása megoldja ezt a problémát.

More information