ESME_RINVTLVSTREAM u SMPP-u
Što je ESME_RINVTLVSTREAM?
ESME_RINVTLVSTREAM (Šifra greške: 0x00000069) je SMPP greška koja označava da su Tag-Length-Value (TLV) polja u zahtjevu pogrešno formatirana, oštećena ili ne odgovaraju očekivanoj strukturi.
Mogući uzroci
- TLV parametri nisu ispravno formatirani (npr. netočne vrijednosti duljine).
- Više TLV polja se preklapa ili nisu poravnata.
- Zahtjev sadrži neočekivanu TLV strukturu.
- Nevažeći ili oštećeni podaci u TLV dijelu PDU-a.
Kada se događa?
Ova greška se javlja kada ESME pošalje SMPP zahtjev s neispravno strukturiranim TLV parametrima, što uzrokuje da SMSC odbije zahtjev.
Primjer SMPP PDU transakcije
Zahtjev PDU (submit_sm
) poslan od ESME s nevažećim TLV tokom
00000040 (Duljina) 00000004 (ID naredbe za submit_sm) 00000000 (Status naredbe) 00000001 (Redni broj) 00 (Vrsta usluge) 01 (TON izvorne adrese - Međunarodna) 01 (NPI izvorne adrese - ISDN) 31323334 00 (Izvorna adresa: "1234") 01 (TON odredišne adrese - Međunarodna) 01 (NPI odredišne adrese - ISDN) 39383736 00 (Odredišna adresa: "9876") 00 (ESM klasa) 00 (ID protokola) 00 (Zastavica prioriteta) 00000000 (Vrijeme isporuke - Nije postavljeno) 00000000 (Valjanost razdoblja - Nije postavljeno) 00 (Zastavica zamjene ako postoji) 00 (Zadani ID poruke) 0005 (Duljina poruke) 48656C6C 6F (Poruka: "Hello") 0421 0003 0102 (Nevažeći TLV: Netočna duljina)
Odgovor PDU (submit_sm_resp
) s ESME_RINVTLVSTREAM
00000010 (Duljina) 80000004 (ID naredbe za submit_sm_resp) 00000069 (Status naredbe - ESME_RINVTLVSTREAM) 00000001 (Redni broj)
Problem: TLV (Oznaka 0x0421) ima netočnu duljinu (3 bajta umjesto očekivanih 1 ili 2).
Kako to riješiti?
- Provjerite TLV strukturu prema SMPP specifikaciji.
- Osigurajte da polja duljine TLV-a točno predstavljaju stvarnu duljinu podataka.
- Provjerite ima li preklapanja TLV-ova ili nepravilno poravnatih podataka.
- Koristite analizator paketa ili SMPP simulator za otklanjanje pogrešaka i pregled zahtjeva.
- Uklonite sumnjive TLV-ove i testirajte bez njih kako biste potvrdili uzrok problema.
Ispravljanje formatiranja TLV-a i osiguravanje ispravnog kodiranja duljine riješit će ovaj problem.