Ako nakonfigurovať pole ESM Class v SMPP

Nastavenia ESM class v Ozeki SMS Gateway

Ozeki SMS Gateway umožňuje manuálnu konfiguráciu poľa ESM class (Obrázok 1)

Obrázok 1 - Nastavenie poľa ESM class

Čo je pole ESM Class?

Extended Service Message (ESM) Class v SMPP je 1-bajtové pole v SMPP PDU, ktoré riadi pokročilé funkcie spracovania správ. Používa sa v operáciách submit_sm, deliver_sm a data_sm na určenie:

  • Typu správy (napr. SMS, doručovací doklad)
  • Správania doručovacieho dokladu
  • Prítomnosti UDH (User Data Header)
  • Priority a smerovacích príznakov správy

Štruktúra a bitová maska ESM Class

ESM class je bitová maska, kde každý bit alebo skupina bitov aktivuje špecifické funkcie:

Bity Popis
7 Režim správy: 0 = Predvolený, 1 = Datagram
6 Typ správy: 0 = Normálna, 1 = Doručovací doklad
5 UDHI indikátor: 1 = UDH je prítomný v dátovej časti
4 Reply Path: 1 = Vyžiadaná odpoveď
3-2 Priorita správy (00 = Normálna, 01 = Interaktívna, 10 = Urgentná, 11 = Nouzová)
1-0 Rezervované

Bežné hodnoty ESM Class

ESM (Hex) Binárne Popis
0x00 00000000 Predvolené (žiadne špeciálne spracovanie)
0x04 00000100 Nastavený príznak UDHI (UDH je prítomný)
0x08 00001000 Vyžiadaná odpoveď
0x20 00100000 Doručovací doklad (bit 6 = 1)
0x30 00110000 Urgentná priorita + doručovací doklad
0x60 01100000 Datagramový režim + doručovací doklad
Poznámka: Mnohé SMSC ignorujú rezervované bity (1-0). Úrovne priority (bity 3-2) závisia od siete.

Kľúčové prípady použitia

1. Zreťazené SMS (UDHI príznak)

Pri odosielaní viacdielnych správ nastavte bit 5 (UDHI=1) a zahrňte User Data Header (UDH) do dátovej časti. Príklad pre 3-dielnu správu:

ESM Class: 0x40 (binárne 01000000: UDHI povolené)
Dátová časť: 
05 00 03 02 01  // UDH (5 bajtov: IEI=00, IEDL=03, časť 1 z 2)
C8329BFD06       // GSM-7 dátová časť ("Ahoj")

2. Žiadosti o doručovací doklad

Nastavte bit 6 (0x20) na vyžiadanie doručovacieho dokladu. Často kombinované s poľom registered_delivery:

ESM Class: 0x20 (binárne 00100000)
registered_delivery: 0x01 (žiadosť o doklad)

3. Prioritné správy

Použite bity 3-2 na určenie priority správ. Príklad pre urgentnú prioritu:

ESM Class: 0x10 (binárne 00010000: Urgentná priorita)

Príklady SMPP PDU

Príklad 1: Základná SMS (ESM=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        // ESM Class (0x00: Predvolené)
00        // Protokol ID (PID)
00        // Priorita
00        // Čas naplánovaného doručenia
00        // Platnosť
00        // Registrované doručenie
00        // Nahradiť ak je prítomné
00        // Kódovanie dát (DCS=0x00)
00        // Predvolené ID správy
07        // Dĺžka správy (7 septetov)
C8329BFD06DDDF72  // Dátová časť ("Ahoj!")

Príklad 2: Zreťazená SMS (ESM=0x40)

00000025  // Dĺžka príkazu (37 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")
40        // ESM Class (0x40: UDHI povolené)
00        // Protokol ID (PID)
00        // Priorita
00        // Čas naplánovaného doručenia
00        // Platnosť
00        // Registrované doručenie
00        // Nahradiť ak je prítomné
00        // Kódovanie dát (DCS=0x00)
00        // Predvolené ID správy
0C        // Dĺžka správy (12 bajtov)
0500030201C8329BFD06DDDF72  // UDH + "Ahoj" (Časť 1/2)

Príklad 3: Doručovací doklad (ESM=0x20)

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")
20        // ESM Class (0x20: Doručovací doklad)
00        // Protokol ID (PID)
00        // Priorita
00        // Čas naplánovaného doručenia
00        // Platnosť
01        // Registrované doručenie (žiadosť o doklad)
00        // Nahradiť ak je prítomné
00        // Kódovanie dát (DCS=0x00)
00        // Predvolené ID správy
07        // Dĺžka správy (7 septetov)
C8329BFD06DDDF72  // Dátová časť ("Ahoj!")

Interakcie s inými poľami

  • UDHI (ESM) + DCS: Ak je UDHI nastavené, uistite sa, že DCS podporuje UDH (napr. GSM-7 alebo 8-bit).
  • ESM Class + registered_delivery: Použite obidve na explicitnú žiadosť o doručovacie doklady.
  • Priority Bits + Priority Flag: Niektoré SMSC uprednostňujú správy na základe bitov ESM namiesto samostatného poľa priority.

Bežné problémy

  • Nastavenie UDHI bez zahrnutia platného User Data Header.
  • Použitie príznakov doručovacieho dokladu (ESM=0x20) bez nastavenia registered_delivery.
  • Nesúlad bitov priority ESM s samostatným poľom priority_flag.

Záver

Trieda ESM je výkonný nástroj na ovládanie správania správ v SMPP. Jej bitmaskový dizajn umožňuje funkcie ako zreťazenie, potvrdenia o doručení a priorizáciu. Vždy overte podporu SMSC pre pokročilé príznaky a dôkladne otestujte konfigurácie. Pre autoritatívne informácie sa obráťte na špecifikáciu SMPP v3.4 alebo v5.0.

More information