ESME_RINVMSGLEN u SMPP-u

Što je ESME_RINVMSGLEN?

ESME_RINVMSGLEN (Šifra greške: 0x00000004) je SMPP greška koja označava nevažeću duljinu poruke u SMPP zahtjevu.

Mogući uzroci

  • Duljina poruke premašuje dopušteni limit (obično 254 ili 160 znakova za određene kodiranja).
  • Duljina poruke je nula (prazna poruka).
  • Netočno kodiranje koje uzrokuje neočekivanu kalkulaciju duljine.
  • Oštećeni ili neispravno oblikovani PDU (Protocol Data Unit) koji se šalje.
  • Netočno spajanje dugih poruka (problemi s podjelom).

Kada se događa?

Ova greška se javlja prilikom slanja SMPP PDU-a (npr. submit_sm, data_sm) gdje parametar duljine poruke ne odgovara očekivanim ograničenjima duljine postavljenim od strane SMSC-a.

Primjer SMPP PDU transakcije

Sljedeći primjer prikazuje netočan submit_sm PDU koji može izazvati grešku ESME_RINVMSGLEN:

0000003C 00000004 00000000 00000001 
74657374 000101 35363137 38363530 
30303000 0000 0000 0000 00000000 
00000000 00

Problem: Polje duljine poruke postavljeno je na nulu, što rezultira greškom nevažeće duljine poruke.

Još jedan netočan PDU gdje poruka premašuje dopuštenu duljinu:

00000100 00000004 00000000 00000002 
74657374 000101 35363137 38363530 
30303000 0000 0000 0000 00000000 
00000100 (Predugo)

Kako to riješiti?

  • Osigurajte da je duljina poruke unutar dopuštenih granica (provjerite ograničenja SMSC-a).
  • Provjerite kodiranje (npr. UCS2 poruke koriste 2 bajta po znaku).
  • Osigurajte pravilno spajanje dugih poruka koristeći sar_msg_ref_num, sar_total_segments, itd.
  • Provjerite postoje li prazne poruke prije slanja.
  • Provjerite format PDU-a kako biste osigurali da je ispravno strukturiran.

Ako problem i dalje postoji, omogućite SMPP debugiranje na vašem klijentu ili SMS pristupniku kako biste pregledali sirove PDU-e koji se šalju.

More information