Az SMPP ESM Class mező konfigurálása
Ozeki SMS Gateway ESM class beállítások
Az Ozeki SMS Gateway lehetővé teszi az ESM class mező manuális konfigurálását (1. ábra)
Mi az az ESM Class mező?
Az Extended Service Message (ESM) Class az SMPP-ben egy 1 bájtos mező az SMPP PDU-kban, amely speciális üzenetkezelési funkciókat vezérel.
A submit_sm
, deliver_sm
és data_sm
műveletekben használják a következők meghatározására:
- Üzenettípusok (pl. SMS, kézbesítési visszaigazolás)
- Kézbesítési visszaigazolás viselkedése
- UDH (User Data Header) jelenléte
- Üzenet prioritás és útválasztási jelzők
ESM Class szerkezet és bitmaszk
Az ESM class egy bitmaszk, ahol minden bit vagy bitcsoport specifikus funkciókat aktivál:
Bitek | Leírás |
---|---|
7 | Üzenetküldési mód: 0 = Alapértelmezett, 1 = Datagram |
6 | Üzenettípus: 0 = Normál, 1 = Kézbesítési visszaigazolás |
5 | UDHI jelző: 1 = UDH jelen van a hasznos adatban |
4 | Válaszút: 1 = Válaszút kérése |
3-2 | Üzenet prioritás (00 = Normál, 01 = Interaktív, 10 = Sürgős, 11 = Vészhelyzet) |
1-0 | Fenntartott |
Gyakori ESM Class értékek
ESM (Hex) | Bináris | Leírás |
---|---|---|
0x00 | 00000000 | Alapértelmezett (nincs speciális kezelés) |
0x04 | 00000100 | UDHI jelző beállítva (UDH jelen van) |
0x08 | 00001000 | Válaszút kérése |
0x20 | 00100000 | Kézbesítési visszaigazolás (6. bit = 1) |
0x30 | 00110000 | Sürgős prioritás + kézbesítési visszaigazolás |
0x60 | 01100000 | Datagram mód + kézbesítési visszaigazolás |
Kulcsfontosságú használati esetek
1. Összefűzött SMS (UDHI jelző)
Több részből álló üzenetek küldésekor állítsa be az 5. bitet (UDHI=1) és helyezzen el egy User Data Header (UDH)-t a hasznos adatban. Példa egy 3 részes üzenethez:
ESM Class: 0x40 (bináris 01000000: UDHI engedélyezve) Hasznos adat: 05 00 03 02 01 // UDH (5 bájt: IEI=00, IEDL=03, 1. rész a 2-ből) C8329BFD06 // GSM-7 hasznos adat ("Hello")
2. Kézbesítési visszaigazolás kérése
Állítsa be a 6. bitet (0x20) a kézbesítési visszaigazolás kéréséhez. Gyakran kombinálják a registered_delivery
mezővel:
ESM Class: 0x20 (bináris 00100000) registered_delivery: 0x01 (visszaigazolás kérése)
3. Prioritásos üzenetküldés
Használja a 3-2 biteket az üzenetek prioritásának beállításához. Példa sürgős prioritásra:
ESM Class: 0x10 (bináris 00010000: Sürgős prioritás)
Példa SMPP PDU-k
1. példa: Alapszintű SMS (ESM=0x00)
0000001D // Parancs hossza (29 bájt) 00000004 // Parancs azonosító (SubmitSM) 00000001 // Sorszám 00 // Forrás TON 00 // Forrás NPI 736F7572636500 // Forráscím ("source") 00 // Cél TON 00 // Cél NPI 36353433323100 // Célcím ("654321") 00 // ESM Class (0x00: Alapértelmezett) 00 // Protokoll azonosító (PID) 00 // Prioritás 00 // Ütemezett kézbesítési idő 00 // Érvényességi idő 00 // Regisztrált kézbesítés 00 // Csere, ha jelen van 00 // Adatkódolás (DCS=0x00) 00 // SM alapértelmezett üzenet azonosító 07 // SM hossz (7 szeplett) C8329BFD06DDDF72 // Hasznos adat ("Hello!")
2. példa: Összefűzött SMS (ESM=0x40)
00000025 // Parancs hossza (37 bájt) 00000004 // Parancs azonosító (SubmitSM) 00000002 // Sorszám 00 // Forrás TON 00 // Forrás NPI 736F7572636500 // Forráscím ("source") 00 // Cél TON 00 // Cél NPI 36353433323100 // Célcím ("654321") 40 // ESM Class (0x40: UDHI engedélyezve) 00 // Protokoll azonosító (PID) 00 // Prioritás 00 // Ütemezett kézbesítési idő 00 // Érvényességi idő 00 // Regisztrált kézbesítés 00 // Csere, ha jelen van 00 // Adatkódolás (DCS=0x00) 00 // SM alapértelmezett üzenet azonosító 0C // SM hossz (12 bájt) 0500030201C8329BFD06DDDF72 // UDH + "Hello" (1. rész/2)
3. példa: Kézbesítési visszaigazolás (ESM=0x20)
0000001D // Parancs hossza (29 bájt) 00000004 // Parancs azonosító (SubmitSM) 00000003 // Sorszám 00 // Forrás TON 00 // Forrás NPI 736F7572636500 // Forráscím ("source") 00 // Cél TON 00 // Cél NPI 36353433323100 // Célcím ("654321") 20 // ESM Class (0x20: Kézbesítési visszaigazolás) 00 // Protokoll azonosító (PID) 00 // Prioritás 00 // Ütemezett kézbesítési idő 00 // Érvényességi idő 01 // Regisztrált kézbesítés (visszaigazolás kérése) 00 // Csere, ha jelen van 00 // Adatkódolás (DCS=0x00) 00 // SM alapértelmezett üzenet azonosító 07 // SM hossz (7 szeplett) C8329BFD06DDDF72 // Hasznos adat ("Hello!")
Interakciók más mezőkkel
- UDHI (ESM) + DCS: Ha az UDHI be van állítva, győződjön meg arról, hogy a DCS támogatja az UDH-t (pl. GSM-7 vagy 8 bites).
- ESM Class + registered_delivery: Mindkettőt használja a kézbesítési visszaigazolások kéréséhez.
- Prioritás bitek + Prioritás jelző: Néhány SMSC az ESM bitek alapján rangsorolja az üzeneteket a különálló prioritás mező helyett.
Gyakori buktatók
- UDHI beállítása érvényes User Data Header nélkül.
- Kézbesítési visszaigazolás jelzők (ESM=0x20) használata a
registered_delivery
beállítása nélkül. - ESM prioritás bitek és a különálló
priority_flag
mező eltérése.
Az ESM osztály hatékony eszköz az SMPP-ben történő üzenetkezelés szabályozására. Bitsorozatos kialakítása lehetővé teszi olyan funkciókat, mint az összefűzés, nyugták és prioritizálás. Mindig ellenőrizze az SMSC támogatását a fejlett jelzőbitekre, és alaposan tesztelje a konfigurációkat. A hiteles részletekért tekintse meg az SMPP specifikáció 3.4-es vagy 5.0-es verzióját.
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