ESME_RINVDSTADR v SMPP
Co je ESME_RINVDSTADR?
ESME_RINVDSTADR (Chybový kód: 0x0000000B) je chyba v SMPP, která indikuje, že cílová adresa poskytnutá v požadavku je neplatná nebo není povolena SMSC.
Možné příčiny
- Pole
destination_addr
je prázdné nebo nesprávně formátované. - Cílové číslo je delší nebo kratší než povolená délka.
- Cílové číslo obsahuje neplatné znaky (např. písmena nebo speciální symboly).
- Hodnoty
dest_addr_ton
adest_addr_npi
jsou nesprávné nebo nejsou podporovány. - Cílové číslo je blokované nebo není směrovatelné SMSC.
Kdy k tomu dochází?
Tato chyba nastává při odesílání SMPP PDU (např. submit_sm
) s neplatnou nebo nepodporovanou cílovou adresou.
Příklad transakce SMPP PDU
Nesprávné submit_sm
PDU (Neplatná cílová adresa)
0000002C (Délka) 00000004 (ID příkazu pro submit_sm) 00000000 (Stav příkazu) 00000002 (Pořadové číslo) 00000000 (Typ služby) 05 (TON zdrojové adresy - Alfanumerické) 00 (NPI zdrojové adresy - Neznámé) 74657374 000000 (Zdrojová adresa: "test") 01 (TON cílové adresy - Mezinárodní) 01 (NPI cílové adresy - ISDN) 00000000 (Prázdná cílová adresa) 00 (Prioritní příznak) 01 (Příznak registrovaného doručení) 00000000 (Délka zprávy) 48656C6C6F (Zpráva: "Hello")
Odpověď PDU (submit_sm_resp
) s ESME_RINVDSTADR
00000010 (Délka) 80000004 (ID příkazu pro submit_sm_resp) 0000000B (Stav příkazu - ESME_RINVDSTADR) 00000002 (Pořadové číslo)
Problém: Pole destination_addr
je prázdné, což způsobuje odmítnutí požadavku SMSC.
Jak to vyřešit?
- Ujistěte se, že pole
destination_addr
obsahuje platné telefonní číslo. - Použijte platné hodnoty
dest_addr_ton
adest_addr_npi
: - Pro mezinárodní čísla:
dest_addr_ton = 1
,dest_addr_npi = 1
- Pro národní čísla:
dest_addr_ton = 2
,dest_addr_npi = 1
- Ověřte, že cílové číslo je v podporované délce a formátu.
- Ujistěte se, že číslo není blokované nebo omezené SMSC.
- Povolte ladící logy pro kontrolu přesné hodnoty odesílané v PDU.
Pokud problém přetrvává, kontaktujte poskytovatele SMSC a ověřte pravidla směrování pro cílové číslo.