Az SMPP DCS mező (és az SMPP karakterkódolás)

Ez az oldal információt nyújt az SMPP DCS mező kódolásáról.

Hogyan kódolja az Ozeki SMS Gateway az SMPP DCS mezőt

A legtöbb esetben nem kell manuálisan konfigurálni az SMPP PDU-k DCS mezőjét. Az Ozeki SMS Gateway ezt elvégzi helyetted. Az Ozeki SMS Gateway kódolási módját az SMPP Kliens konfigurációs űrlapján állíthatod be (1. ábra).

1. ábra - SMPP DCS kódolás

Ezen az űrlapon beállíthatod az előnyben részesített karakterkészletet, vagy megadhatsz egy fix értéket a DCS paraméterhez az SMS PDU-ban.

Mi az SMPP DCS mező?

A Data Coding Scheme (DCS) az SMPP (Short Message Peer-to-Peer Protocol) protokollban egy 1 bájtos mező az SMPP PDU-k (Protocol Data Units) belül. Meghatározza, hogyan legyen kódolva az üzenet tartalma, hogy a fogadó fél helyesen értelmezhesse. A DCS meghatározza:

  • Karakterkódolást (pl. GSM-7, UCS2, 8 bites bináris)
  • Üzenet osztályt (pl. Flash SMS)
  • Tömörítési jelzőket

A DCS szerkezete és bitmaszkja

A DCS egy bitmaszk, ahol minden bitcsoport egy adott célt szolgál:

Bitek Leírás
7-6 Kódolási csoport: Meghatározza az általános kódolási típust.
5-4 Ábécé: Meghatározza a karakterkészletet (ha a Kódolási csoport = 00).
3-0 Üzenet osztály/Jelzők: Az üzenet típusát jelzi (pl. Flash) vagy a tömörítést.

Kódolási csoport értékek

Kódolási csoport (7-6. bitek) Leírás
00 Általános adatkódolás (az ábécé a 5-4. bitekben van megadva)
01 Fenntartva
10 UCS2 kódolás (16 bites)
11 Adatkódolás/Üzenet osztály (pl. Flash SMS)

Példa DCS értékek

DCS (Hex) Leírás Bináris
0x00 GSM-7 alapértelmezett ábécé 00000000
0x04 8 bites bináris adat 00000100
0x08 UCS2 (Unicode) 00001000
0x10 Flash SMS (GSM-7) 00010000
0xF0 Flash SMS (UCS2) 11110000

Példa SMPP PDU-k DCS-sel

1. példa: SubmitSM GSM-7 kódolással (DCS=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ás cím ("source")
00        // Cél TON
00        // Cél NPI
36353433323100  // Cél cím ("654321")
00        // ESM osztály
00        // Protokoll azonosító
00        // Prioritás
00        // Szállítási időpont
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  // Rövid üzenet ("Hello!")
    

2. példa: SubmitSM UCS2 kódolással (DCS=0x08)

00000024  // Parancs hossza (36 bájt)
00000004  // Parancs azonosító (SubmitSM)
00000002  // Sorszám
00        // Forrás TON
00        // Forrás NPI
736F7572636500  // Forrás cím ("source")
00        // Cél TON
00        // Cél NPI
36353433323100  // Cél cím ("654321")
00        // ESM osztály
00        // Protokoll azonosító
00        // Prioritás
00        // Szállítási időpont
00        // Érvényességi idő
00        // Regisztrált kézbesítés
00        // Csere, ha jelen van
08        // Adatkódolás (DCS=0x08)
00        // SM alapértelmezett üzenet azonosító
0C        // SM hossz (12 bájt)
00480065006C006C006F0021  // "Hello!" UCS2-ben
    

3. példa: Flash SMS (DCS=0x10)

0000001D  // Parancs hossza (29 bájt)
00000004  // Parancs azonosító (SubmitSM)
00000003  // Sorszám
00        // Forrás TON
00        // Forrás NPI
736F7572636500  // Forrás cím ("source")
00        // Cél TON
00        // Cél NPI
36353433323100  // Cél cím ("654321")
00        // ESM osztály
00        // Protokoll azonosító
00        // Prioritás
00        // Szállítási időpont
00        // Érvényességi idő
00        // Regisztrált kézbesítés
00        // Csere, ha jelen van
10        // Adatkódolás (DCS=0x10: Flash SMS)
00        // SM alapértelmezett üzenet azonosító
07        // SM hossz (7 szeplett)
C8329BFD06DDDF72  // Rövid üzenet ("Hello!")
    

Összegzés

A DCS mező kritikus fontosságú az SMS üzenetek helyes kódolásához és megjelenítéséhez. A megvalósítások eltérőek lehetnek, ezért a pontos bitmaszk részletekért fordulj az SMPP specifikációhoz (v3.4 vagy v5.0). A DCS helyes használata elkerüli a kódolási hibákat és biztosítja a kompatibilitást az SMSC-k között.

More information