ESME_RINVREPFLAG v SMPP
Co je ESME_RINVREPFLAG?
ESME_RINVREPFLAG (Chybový kód: 0x00000054) je chyba v SMPP, která indikuje, že pole replace_if_present_flag
v PDU submit_sm
obsahuje neplatnou nebo nepodporovanou hodnotu.
Možné příčiny
- Pole
replace_if_present_flag
obsahuje nesprávnou nebo nedefinovanou hodnotu. - SMSC nepodporuje nahrazování zpráv.
- ESME se pokouší použít neplatné nastavení příznaku.
Kdy k tomu dochází?
Tato chyba nastane, když ESME odešle požadavek submit_sm
s neplatnou hodnotou replace_if_present_flag
, kterou SMSC nerozpozná.
Příklad transakce SMPP PDU
Nesprávné PDU submit_sm
(Neplatný Replace If Present Flag)
0000002F (Délka) 00000004 (ID příkazu pro submit_sm) 00000000 (Stav příkazu) 00000001 (Pořadové číslo) 00 (Typ služby) 01 (TON zdrojové adresy - Mezinárodní) 01 (NPI zdrojové adresy - ISDN) 31323334 00 (Zdrojová adresa: "1234") 01 (TON cílové adresy - Mezinárodní) 01 (NPI cílové adresy - ISDN) 39383736 00 (Cílová adresa: "9876") 00 (Třída ESM) 00 (ID protokolu) 00 (Prioritní příznak) 00000000 (Čas plánovaného doručení - Nenastaveno) 00000000 (Období platnosti - Nenastaveno) FF (Neplatný Replace If Present Flag) 00 (Výchozí ID zprávy Sm) 0005 (Délka zprávy) 48656C6C 6F (Zpráva: "Hello")
Odpověď PDU (submit_sm_resp
) s ESME_RINVREPFLAG
00000010 (Délka) 80000004 (ID příkazu pro submit_sm_resp) 00000054 (Stav příkazu - ESME_RINVREPFLAG) 00000001 (Pořadové číslo)
Problém: Pole replace_if_present_flag
je nastaveno na neplatnou hodnotu (0xFF
), kterou SMSC nerozpozná.
Jak to vyřešit?
- Použijte platnou hodnotu
replace_if_present_flag
: 0x00
- Nenahrazovat, pokud je přítomna0x01
- Nahradit, pokud je přítomna- Ujistěte se, že SMSC podporuje nahrazování zpráv před použitím příznaku.
- Ověřte strukturu PDU a ujistěte se, že všechny hodnoty polí jsou správně nastaveny.
- Pokud problém přetrvává, konzultujte s poskytovatelem SMSC podporované hodnoty.
Pokud problém přetrvává, povolte ladící logování a prohlédněte si nezpracované transakce SMPP pro další diagnostiku.