Az SMPP telefonszám-mezők konfigurálása
Az SMPP (Short Message Peer-to-Peer) egy olyan protokoll, amelyet a távközlési rendszerek használnak SMS-üzenetek cseréjére az SMSC-k (Short Message Service Centers) és az ESME-k (External Short Messaging Entities) között. A protokoll kulcsfontosságú összetevője, hogyan kódolja a telefonszámokat (forrás- és célcímeket) az SMPP PDU-ban (Protocol Data Unit).
Címparaméterek az SMPP-ben
Az SMPP-ben a telefonszám meghatározásához használt fő mezők:
- addr_ton (Type of Number)
- addr_npi (Numbering Plan Indicator)
- address_range vagy source_addr/destination_addr
Type of Number (TON)
Ez a mező határozza meg a szám formátumát. Gyakori értékek:
Érték | TON | Leírás |
---|---|---|
0 | Ismeretlen | Ismeretlen formátum |
1 | Nemzetközi | A szám tartalmaz országkódot |
2 | Nemzeti | Helyi számformátum |
5 | Alfanumerikus | Feladónévhez használatos, pl. "MyCompany" |
Numbering Plan Indicator (NPI)
Ez a mező a számozási formátumot jelzi. Gyakori értékek:
Érték | NPI | Leírás |
---|---|---|
0 | Ismeretlen | Ismeretlen formátum |
1 | ISDN (E.164) | Szabványos nemzetközi telefonszám-formátum |
3 | Adat | Adathálózat (X.121) |
Cím kódolása
Amikor egy telefonszámot kódolunk az SMPP-ben, a rendszer a számot nullával lezárt ASCII-karakterláncként küldi el, a megfelelő TON és NPI értékekkel együtt.
Példa:
Telefonszám: +14155552671 TON: 1 (Nemzetközi) NPI: 1 (ISDN/E.164) Kódolva: 31 34 31 35 35 35 35 32 36 37 31 00 (ASCII "14155552671" + NULL)
Példa SMPP PDU
Az alábbi példa egy submit_sm PDU-t mutat be, amely tartalmaz egy célcím számot:
0000003F // Parancs hossza (63 bájt) 00000004 // Parancs azonosító (submit_sm) 00000000 // Parancs állapot 00000001 // Sorszám 74657374 // service_type: "test" 01 // source_addr_ton: Nemzetközi 01 // source_addr_npi: ISDN 31323334 // source_addr: "1234" (ASCII) 00 // NULL lezáró 01 // dest_addr_ton: Nemzetközi 01 // dest_addr_npi: ISDN 2B393138 // destination_addr: "+918123456789" (ASCII, + nélkül) 31323334 35363738 3900 // NULL lezáró 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 (alapértelmezett GSM) 00 // sm_default_msg_id 0D // sm_length (13) 48656C6C // Rövid üzenet ("Hello, World!") 6F2C2057 6F726C64 2100
Alfanumerikus feladó példa
Alfanumerikus feladónév használata esetén (gyakori egyirányú tömeges SMS-eknél):
Feladó: "MyBrand" TON: 5 (Alfanumerikus) NPI: 0 (Ismeretlen vagy irreleváns) Kódolva: ASCII karakterlánc "MyBrand" + NULL lezáró
Fontos megjegyzések
- Az alfanumerikus feladói azonosítók legfeljebb 11 karakter hosszúak lehetnek.
- Az alfanumerikus címek nem támogatottak minden országban.
- Mindig párosítsa helyesen a TON és NPI értékeket a címformátummal, hogy elkerülje az útválasztási problémákat.
Összegzés
Az SMPP számkódolás kritikus fontosságú a megfelelő üzenetkézbesítés biztosításához. A helyes TON
, NPI
beállításával és a cím helyes ASCII-ben (nullával lezárt) történő kódolásával a fejlesztők biztosíthatják az SMSC-kkel és mobilhálózatokkal való kompatibilitást.
More information
- How to configure the SMPP Service Type field
- How to configure the SMPP Phone Number fields
- How to configure the SMPP ESM Class field
- How to configure the SMPP PID field
- How to configure the SMPP Prioirity field
- How to configure the SMPP Scheduled Time field
- How to configure the SMPP Validity Period field
- How to configure the SMPP Registered Delivery field
- How to configure the SMPP Replace if Present field
- How to configure the sm_default_msg_id field
- How to configure the SMPP DCS field
- How to calculate the SMPP SM Length field
- How to put data into the SMPP SM field