Kako konfigurirati polje ESM Class v SMPP
Nastavitve ESM class v Ozeki SMS Gateway
Ozeki SMS Gateway vam omogoča ročno konfiguriranje polja ESM class (Slika 1)
Kaj je polje ESM Class?
Extended Service Message (ESM) Class v SMPP je 1-bajtno polje v SMPP PDU-jih, ki nadzoruje napredne funkcije obdelave sporočil.
Uporablja se v operacijah submit_sm
, deliver_sm
in data_sm
za določanje:
- Vrste sporočil (npr. SMS, potrdilo o dostavi)
- Obnašanja potrdila o dostavi
- Prisotnosti UDH (User Data Header)
- Prioritete sporočila in zastavic za usmerjanje
Struktura in bitna maska ESM Class
ESM class je bitna maska, kjer vsak bit ali skupina bitov aktivira posebne funkcije:
Bit | Opis |
---|---|
7 | Način pošiljanja: 0 = Privzeto, 1 = Datagram |
6 | Vrsta sporočila: 0 = Običajno, 1 = Potrdilo o dostavi |
5 | UDHI indikator: 1 = UDH je prisoten v nosilcu |
4 | Pot odgovora: 1 = Zahtevana pot odgovora |
3-2 | Prioriteta sporočila (00 = Običajno, 01 = Interaktivno, 10 = Nujno, 11 = Izredno) |
1-0 | Rezervirano |
Pogoste vrednosti ESM Class
ESM (Hex) | Binarno | Opis |
---|---|---|
0x00 | 00000000 | Privzeto (brez posebne obdelave) |
0x04 | 00000100 | Nastavljena zastavica UDHI (UDH prisoten) |
0x08 | 00001000 | Zahtevana pot odgovora |
0x20 | 00100000 | Potrdilo o dostavi (bit 6 = 1) |
0x30 | 00110000 | Nujna prioriteta + potrdilo o dostavi |
0x60 | 01100000 | Datagram način + potrdilo o dostavi |
Ključni primeri uporabe
1. Združeni SMS (UDHI zastavica)
Pri pošiljanju večdelnega sporočila nastavite bit 5 (UDHI=1) in vključite User Data Header (UDH) v nosilec. Primer za 3-delno sporočilo:
ESM Class: 0x40 (binarno 01000000: UDHI omogočen) Nosilec: 05 00 03 02 01 // UDH (5 bajtov: IEI=00, IEDL=03, del 1 od 2) C8329BFD06 // GSM-7 nosilec ("Hello")
2. Zahteva za potrdilo o dostavi
Nastavite bit 6 (0x20) za zahtevo po potrdilu o dostavi. Pogosto kombinirano s poljem registered_delivery
:
ESM Class: 0x20 (binarno 00100000) registered_delivery: 0x01 (zahteva po potrdilu)
3. Prednostno pošiljanje
Uporabite bite 3-2 za določanje prioritete sporočila. Primer za nujno prioriteto:
ESM Class: 0x10 (binarno 00010000: Nujna prioriteta)
Primeri SMPP PDU-jev
Primer 1: Osnovni SMS (ESM=0x00)
0000001D // Dolžina ukaza (29 bajtov) 00000004 // ID ukaza (SubmitSM) 00000001 // Zaporedna številka 00 // Vir TON 00 // Vir NPI 736F7572636500 // Naslov pošiljatelja ("source") 00 // Cilj TON 00 // Cilj NPI 36353433323100 // Naslov prejemnika ("654321") 00 // ESM Class (0x00: Privzeto) 00 // Protokol ID (PID) 00 // Prioriteta 00 // Čas načrtovane dostave 00 // Veljavnost 00 // Registrirana dostava 00 // Zamenjaj, če je prisoten 00 // Kodiranje podatkov (DCS=0x00) 00 // Privzeti ID sporočila 07 // Dolžina sporočila (7 septetov) C8329BFD06DDDF72 // Nosilec ("Hello!")
Primer 2: Združeni SMS (ESM=0x40)
00000025 // Dolžina ukaza (37 bajtov) 00000004 // ID ukaza (SubmitSM) 00000002 // Zaporedna številka 00 // Vir TON 00 // Vir NPI 736F7572636500 // Naslov pošiljatelja ("source") 00 // Cilj TON 00 // Cilj NPI 36353433323100 // Naslov prejemnika ("654321") 40 // ESM Class (0x40: UDHI omogočen) 00 // Protokol ID (PID) 00 // Prioriteta 00 // Čas načrtovane dostave 00 // Veljavnost 00 // Registrirana dostava 00 // Zamenjaj, če je prisoten 00 // Kodiranje podatkov (DCS=0x00) 00 // Privzeti ID sporočila 0C // Dolžina sporočila (12 bajtov) 0500030201C8329BFD06DDDF72 // UDH + "Hello" (Del 1/2)
Primer 3: Potrdilo o dostavi (ESM=0x20)
0000001D // Dolžina ukaza (29 bajtov) 00000004 // ID ukaza (SubmitSM) 00000003 // Zaporedna številka 00 // Vir TON 00 // Vir NPI 736F7572636500 // Naslov pošiljatelja ("source") 00 // Cilj TON 00 // Cilj NPI 36353433323100 // Naslov prejemnika ("654321") 20 // ESM Class (0x20: Potrdilo o dostavi) 00 // Protokol ID (PID) 00 // Prioriteta 00 // Čas načrtovane dostave 00 // Veljavnost 01 // Registrirana dostava (zahtevano potrdilo) 00 // Zamenjaj, če je prisoten 00 // Kodiranje podatkov (DCS=0x00) 00 // Privzeti ID sporočila 07 // Dolžina sporočila (7 septetov) C8329BFD06DDDF72 // Nosilec ("Hello!")
Interakcije z drugimi polji
- UDHI (ESM) + DCS: Če je UDHI nastavljen, zagotovite, da DCS podpira UDH (npr. GSM-7 ali 8-bit).
- ESM Class + registered_delivery: Uporabite oba za eksplicitno zahtevo po potrdilu o dostavi.
- Prioritetni biti + Prioritetna zastavica: Nekateri SMSC dajejo prednost sporočilom na podlagi bitov ESM namesto ločenega polja prioritete.
Pogoste napake
- Nastavitev UDHI brez vključitve veljavnega User Data Headerja.
- Uporaba zastavic za potrdilo o dostavi (ESM=0x20) brez nastavitve
registered_delivery
. - Neujemanje prioritetnih bitov ESM s samostojnim poljem
priority_flag
.
Zaključek
Razred ESM je zmogljivo orodje za nadzor obnašanja sporočil v SMPP. Njegova zasnova z bitno masko omogoča funkcije, kot so združevanje, potrditve in prioritizacija. Vedno preverite podporo SMSC za napredne zastavice in temeljito preizkusite konfiguracije. Za avtoritativne podrobnosti glejte specifikacijo SMPP v3.4 ali v5.0.
More information
- Kako konfigurirati polje Vrsta storitve SMPP
- Kako konfigurirati polja Telefonske številke SMPP
- Kako konfigurirati polje SMPP ESM Class
- Kako konfigurirati polje SMPP PID
- Kako konfigurirati polje SMPP Prioritetnost
- Kako konfigurirati polje SMPP Načrtovani čas
- Kako konfigurirati polje SMPP Veljavnost
- Kako konfigurirati polje SMPP Registrirana dostava
- Kako konfigurirati polje SMPP Zamenjaj, če je prisoten
- Kako konfigurirati polje sm_default_msg_id
- Kako konfigurirati polje SMPP DCS
- Kako izračunati polje SMPP Dolžina SM
- Kako vnesti podatke v polje SMPP SM