Pole DCS v SMPP (a kódovanie znakov v SMPP)
Táto stránka poskytuje informácie o tom, ako zakódovať pole DCS v SMPP.
Ako Ozeki SMS Gateway kóduje pole DCS v SMPP
Vo väčšine prípadov nemusíte pole DCS v SMPP PDU konfigurovať manuálne. Ozeki SMS Gateway to robí za vás. Ak chcete ovládať, ako Ozeki SMS Gateway vykonáva kódovanie, môžete nastaviť predvolenú abecedu v konfiguračnom formulári SMPP klienta (Obrázok 1).
V tomto formulári môžete nastaviť preferovanú znakovú sadu alebo môžete požiadať Ozeki SMS Gateway, aby použil pevnú hodnotu pre parameter DCS v SMS PDU.
Čo je pole DCS v SMPP?
Schéma kódovania údajov (DCS) v SMPP (Short Message Peer-to-Peer Protocol) je 1-bajtové pole v rámci SMPP PDU (Protocol Data Units). Definuje, ako je zakódovaný obsah správy, čo umožňuje správnu interpretáciu prijímajúcou stranou. DCS špecifikuje:
- Kódovanie znakov (napr. GSM-7, UCS2, 8-bitové binárne)
- Triedu správy (napr. Flash SMS)
- Príznaky kompresie
Štruktúra DCS a bitová maska
DCS je bitová maska, kde každá skupina bitov slúži na špecifický účel:
Bity | Popis |
---|---|
7-6 | Skupina kódovania: Určuje všeobecný typ kódovania. |
5-4 | Abeceda: Špecifikuje znakovú sadu (ak Skupina kódovania = 00). |
3-0 | Trieda správy/Príznaky: Indikuje typ správy (napr. Flash) alebo kompresiu. |
Hodnoty skupiny kódovania
Skupina kódovania (Bity 7-6) | Popis |
---|---|
00 | Všeobecné kódovanie údajov (abeceda špecifikovaná v bitoch 5-4) |
01 | Rezervované |
10 | UCS2 kódovanie (16-bitové) |
11 | Kódovanie údajov/Trieda správy (napr. Flash SMS) |
Príklady hodnôt DCS
DCS (Hex) | Popis | Binárne |
---|---|---|
0x00 | Predvolená abeceda GSM-7 | 00000000 |
0x04 | 8-bitové binárne údaje | 00000100 |
0x08 | UCS2 (Unicode) | 00001000 |
0x10 | Flash SMS (GSM-7) | 00010000 |
0xF0 | Flash SMS (UCS2) | 11110000 |
Príklady SMPP PDU s DCS
Príklad 1: SubmitSM s kódovaním GSM-7 (DCS=0x00)
0000001D // Dĺžka príkazu (29 bajtov) 00000004 // ID príkazu (SubmitSM) 00000001 // Poradové číslo 00 // Zdrojový TON 00 // Zdrojový NPI 736F7572636500 // Zdrojová adresa ("source") 00 // Cieľový TON 00 // Cieľový NPI 36353433323100 // Cieľová adresa ("654321") 00 // Trieda ESM 00 // ID protokolu 00 // Priorita 00 // Čas doručenia 00 // Platnosť 00 // Registrované doručenie 00 // Nahradiť, ak je prítomné 00 // Kódovanie údajov (DCS=0x00) 00 // Predvolené ID správy 07 // Dĺžka správy (7 septetov) C8329BFD06DDDF72 // Krátka správa ("Hello!")
Príklad 2: SubmitSM s kódovaním UCS2 (DCS=0x08)
00000024 // Dĺžka príkazu (36 bajtov) 00000004 // ID príkazu (SubmitSM) 00000002 // Poradové číslo 00 // Zdrojový TON 00 // Zdrojový NPI 736F7572636500 // Zdrojová adresa ("source") 00 // Cieľový TON 00 // Cieľový NPI 36353433323100 // Cieľová adresa ("654321") 00 // Trieda ESM 00 // ID protokolu 00 // Priorita 00 // Čas doručenia 00 // Platnosť 00 // Registrované doručenie 00 // Nahradiť, ak je prítomné 08 // Kódovanie údajov (DCS=0x08) 00 // Predvolené ID správy 0C // Dĺžka správy (12 bajtov) 00480065006C006C006F0021 // "Hello!" v UCS2
Príklad 3: Flash SMS (DCS=0x10)
0000001D // Dĺžka príkazu (29 bajtov) 00000004 // ID príkazu (SubmitSM) 00000003 // Poradové číslo 00 // Zdrojový TON 00 // Zdrojový NPI 736F7572636500 // Zdrojová adresa ("source") 00 // Cieľový TON 00 // Cieľový NPI 36353433323100 // Cieľová adresa ("654321") 00 // Trieda ESM 00 // ID protokolu 00 // Priorita 00 // Čas doručenia 00 // Platnosť 00 // Registrované doručenie 00 // Nahradiť, ak je prítomné 10 // Kódovanie údajov (DCS=0x10: Flash SMS) 00 // Predvolené ID správy 07 // Dĺžka správy (7 septetov) C8329BFD06DDDF72 // Krátka správa ("Hello!")
Záver
Pole DCS je kritické pre zabezpečenie správneho kódovania a zobrazenia SMS správ. Implementácie sa môžu líšiť, preto pre presné detaily bitovej masky konzultujte špecifikáciu SMPP (v3.4 alebo v5.0). Správne použitie DCS zabraňuje chybám v kódovaní a zaisťuje kompatibilitu medzi SMSC.
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