Kako konfigurirati polja za telefonske brojeve u SMPP-u
SMPP (Short Message Peer-to-Peer) je protokol koji telekomunikacijski sustavi koriste za razmjenu SMS poruka između SMSC (Short Message Service Centers) i ESME (External Short Messaging Entities). Ključna komponenta protokola je način na koji kodira telefonske brojeve (izvorne i odredišne adrese) u SMPP PDU (Protocol Data Unit).
Parametri adrese u SMPP-u
Ključna polja koja se koriste za definiranje telefonskog broja u SMPP-u su:
- addr_ton (Type of Number)
- addr_npi (Numbering Plan Indicator)
- address_range ili source_addr/destination_addr
Type of Number (TON)
Ovo polje definira format broja. Uobičajene vrijednosti uključuju:
Vrijednost | TON | Opis |
---|---|---|
0 | Nepoznato | Nepoznat format |
1 | Međunarodni | Broj uključuje pozivni broj države |
2 | Nacionalni | Lokalni format broja |
5 | Alfanumerički | Koristi se za imena pošiljatelja poput "MyCompany" |
Numbering Plan Indicator (NPI)
Ovo polje označava format numeriranja. Uobičajene vrijednosti:
Vrijednost | NPI | Opis |
---|---|---|
0 | Nepoznato | Nepoznat format |
1 | ISDN (E.164) | Standardni međunarodni format telefonskog broja |
3 | Data | Podatkovna mreža (X.121) |
Kodiranje adrese
Prilikom kodiranja telefonskog broja u SMPP-u, sustav šalje broj kao ASCII niz završen null znakom, zajedno s odgovarajućim vrijednostima TON i NPI.
Primjer:
Telefonski broj: +14155552671 TON: 1 (Međunarodni) NPI: 1 (ISDN/E.164) Kodirano kao: 31 34 31 35 35 35 35 32 36 37 31 00 (ASCII "14155552671" + NULL)
Primjer SMPP PDU-a
Ispod je primjer submit_sm PDU-a koji uključuje odredišni broj:
0000003F // Duljina naredbe (63 bajta) 00000004 // ID naredbe (submit_sm) 00000000 // Status naredbe 00000001 // Redni broj 74657374 // service_type: "test" 01 // source_addr_ton: Međunarodni 01 // source_addr_npi: ISDN 31323334 // source_addr: "1234" (ASCII) 00 // NULL terminator 01 // dest_addr_ton: Međunarodni 01 // dest_addr_npi: ISDN 2B393138 // destination_addr: "+918123456789" (ASCII, bez +) 31323334 35363738 3900 // NULL terminator 00 // esm_class 00 // protocol_id 00 // priority_flag 00 // schedule_delivery_time (null) 00 // validity_period (null) 00 // registered_delivery 00 // replace_if_present_flag 00 // data_coding (default GSM) 00 // sm_default_msg_id 0D // sm_length (13) 48656C6C // Kratka poruka ("Hello, World!") 6F2C2057 6F726C64 2100
Primjer alfanumeričkog pošiljatelja
Prilikom korištenja alfanumeričkog imena pošiljatelja (uobičajeno za jednosmjerni masovni SMS):
Pošiljatelj: "MyBrand" TON: 5 (Alfanumerički) NPI: 0 (Nepoznato ili nevažno) Kodirano: ASCII niz "MyBrand" + NULL terminator
Važne napomene
- Alfanumerički ID-ovi pošiljatelja moraju imati 11 znakova ili manje.
- Alfanumeričke adrese nisu podržane u svim zemljama.
- Uvijek pravilno uskladite TON i NPI s formatom adrese kako biste izbjegli probleme s usmjeravanjem.
Zaključak
Kodiranje brojeva u SMPP-u ključno je za osiguravanje isporuke poruka. Postavljanjem ispravnih vrijednosti TON
, NPI
i pravilnim kodiranjem adrese u ASCII (završeno null znakom), programeri mogu osigurati kompatibilnost s SMSC-ovima i mobilnim mrežama.
More information
- Kako konfigurirati polje SMPP vrsta usluge
- Kako konfigurirati polja SMPP telefonskih brojeva
- Kako konfigurirati polje SMPP ESM klasa
- Kako konfigurirati polje SMPP PID
- Kako konfigurirati polje SMPP prioritet
- Kako konfigurirati polje SMPP planirano vrijeme
- Kako konfigurirati polje SMPP rok valjanosti
- Kako konfigurirati polje SMPP registrirana isporuka
- Kako konfigurirati polje SMPP zamijeni ako postoji
- Kako konfigurirati polje sm_default_msg_id
- Kako konfigurirati polje SMPP DCS
- Kako izračunati polje SMPP SM duljina
- Kako staviti podatke u SMPP SM polje