ESME_RINVSRCADR w SMPP
Co to jest ESME_RINVSRCADR?
ESME_RINVSRCADR (Kod błędu: 0x0000000A) to błąd SMPP wskazujący, że podany adres źródłowy (identyfikator nadawcy) w żądaniu jest nieprawidłowy lub niedozwolony przez SMSC.
Możliwe przyczyny
- Pole
source_addr
jest puste lub nieprawidłowo sformatowane. - Identyfikator nadawcy jest dłuższy niż maksymalna dozwolona długość (zwykle 11 znaków dla alfanumerycznych identyfikatorów nadawcy).
- Identyfikator nadawcy zawiera nieobsługiwane znaki.
- Identyfikator nadawcy nie jest zarejestrowany ani umieszczony na białej liście SMSC.
- Typ identyfikatora nadawcy (
source_addr_ton
isource_addr_npi
) jest nieprawidłowy lub nieobsługiwany.
Kiedy występuje?
Ten błąd występuje podczas przesyłania PDU SMPP (np. submit_sm
) z nieprawidłowym lub nieobsługiwanym identyfikatorem nadawcy.
Przykładowa transakcja PDU SMPP
Nieprawidłowe PDU submit_sm
(Nieprawidłowy adres źródłowy)
0000002C (Długość) 00000004 (ID polecenia dla submit_sm) 00000000 (Status polecenia) 00000002 (Numer sekwencji) 00000000 (Typ usługi) 00 (Nieprawidłowy source_addr_ton) 00 (Nieprawidłowy source_addr_npi) 00000000 (Pusty adres źródłowy) 35363137 38363530 30303000 (Adres docelowy) 00 (Flaga priorytetu) 01 (Flaga zarejestrowanej dostawy) 00000000 (Długość wiadomości) 48656C6C6F (Wiadomość: "Hello")
PDU odpowiedzi (submit_sm_resp
) z ESME_RINVSRCADR
00000010 (Długość) 80000004 (ID polecenia dla submit_sm_resp) 0000000A (Status polecenia - ESME_RINVSRCADR) 00000002 (Numer sekwencji)
Problem: Pole source_addr
jest puste, co powoduje odrzucenie żądania przez SMSC.
Jak to rozwiązać?
- Upewnij się, że
source_addr
(identyfikator nadawcy) jest prawidłowo sformatowany i mieści się w dozwolonej długości. - Użyj prawidłowych wartości
source_addr_ton
isource_addr_npi
: - Dla alfanumerycznego identyfikatora nadawcy:
source_addr_ton = 5
,source_addr_npi = 0
- Dla numerycznego identyfikatora nadawcy:
source_addr_ton = 1
,source_addr_npi = 1
- Sprawdź u dostawcy SMSC, czy identyfikator nadawcy wymaga wcześniejszej akceptacji.
- Sprawdź, czy SMSC nakłada jakieś ograniczenia dotyczące znaków.
- Włącz logi debugowania, aby sprawdzić dokładną wartość wysyłaną w PDU.
Jeśli problem nadal występuje, skontaktuj się z dostawcą SMSC, aby potwierdzić wymagania dotyczące identyfikatora nadawcy.