ESME_RINVBNDSTS u SMPP-u
Što je ESME_RINVBNDSTS?
ESME_RINVBNDSTS (Šifra greške: 0x00000005) je SMPP greška koja označava nevažeći status vezivanja. Ovo se događa kada se SMPP naredba pošalje u neispravnom stanju vezivanja.
Mogući uzroci
- Pokušaj slanja poruke
submit_sm
ili slične bez pravilnog vezivanja. - Pokušaj slanja naredbe
bind_transmitter
ilibind_receiver
dok je veza već uspostavljena. - Slanje naredbe
unbind
kada niste u stanju vezivanja. - Problemi s mrežom koji uzrokuju gubitak sesije, ali klijent to ne prepoznaje pravilno.
Kada se događa?
Ova greška se javlja kada SMPP klijent pošalje naredbu koja nije dopuštena u trenutnom stanju vezivanja.
Primjer SMPP PDU transakcije
Sljedeći primjer prikazuje neispravan submit_sm
PDU poslan prije vezivanja:
0000002C (Duljina) 00000004 (ID naredbe za submit_sm) 00000000 (Status naredbe) 00000002 (Redni broj) 00000000 (Vrsta usluge) 35363137 38363530 30303000 (Odredišna adresa) 00000000 (Duljina poruke) 48656C6C6F (Poruka: "Hello")
Problem: Klijent je poslao zahtjev submit_sm
prije uspostave valjane SMPP sesije.
Ispravan slijed:
- Prvo pošaljite valjani
bind_transmitter
PDU: - Nakon uspješnog vezivanja, pošaljite
submit_sm
PDU.
0000001C (Duljina) 00000002 (ID naredbe za bind_transmitter) 00000000 (Status naredbe) 00000001 (Redni broj) 74657374 000000 (ID sustava: "test") 000000 (Lozinka)
Kako riješiti problem?
- Osigurajte da je klijent uspješno vezan prije slanja naredbi vezanih uz poruke.
- Koristite ispravan način vezivanja (transmitter, receiver ili transceiver) prije slanja poruka.
- Provjerite postoji li prekid sesije ili prekoračenje vremena koje može uzrokovati gubitak stanja vezivanja.
- Omogućite zapisivanje pogrešaka kako biste pratili slijed SMPP naredbi.
Ako problem i dalje postoji, provjerite stanje vezivanja pregledavanjem odgovora poslužitelja i potvrdite da sesija ostaje aktivna.