GSM 03.40
GSM 03.40 nebo 3GPP TS 23.040[1] je standard popisující formát protokolových datových jednotek (anglicky Transfer Protocol Data Units, TPDU) protokolu Short Message Transfer Protocol (SM-TP) používaného v GSM sítích pro přenos krátkých (textových) zpráv. GSM 03.40 se používá především pro přenos zpráv mobilní sítí GSM; aplikační servery používají pro přenos zpráv jiné protokoly, jako Short Message Peer to Peer nebo Universal Computer Protocol.
GSM 03.40 je původní jméno standardu. Od roku 1999 je vyvíjen organizací 3GPP pod jménem 3GPP TS 23.040. V praxi se však původní jméno často používá i pro označení nových verzí 3GPP standardu.
Použití
[editovat | editovat zdroj]Protokolové datové jednotky (TPDU) GSM 03.40 se používají pro přenos zpráv mezi mobilní stanicí (MS) a Mobile Switching Centre (MSC) pomocí Short Message Relay Protocol (SM-RP),[2]; mezi MSC a střediskem krátkých textových zpráv (SMS centrum) jsou přenášeny jako parametr Mobile Application Part (MAP) zpráv.[3][4]
V nastupujících sítích, které používají IP Multimedia Subsystem (IMS), jsou textové zprávy přenášeny v MESSAGE příkazu protokolu Session Initiation Protocol (SIP). I v těchto sítích založených na protokolu IP existuje možnost, při které se (z důvodu kompatibility) přenášejí krátké textové zprávy v GSM 03.40 formátu vloženém v 3GPP 24.011 jako Content-Type: application/vnd.3gpp.sms.[5][6]
Typy zpráv
[editovat | editovat zdroj]GSM 03.40 definuje 6 typů zpráv, které jsou rozlišeny 2 nejméně významnými bity v prvním oktetu zprávy SM-TP (v poli TP-MTI) a směrem přenosu zprávy:
TP-MTI | směr | typ zprávy |
---|---|---|
0 0 | MS → SC | SMS-DELIVER-REPORT |
0 0 | SC → MS | SMS-DELIVER |
0 1 | MS → SC | SMS-SUBMIT |
0 1 | SC → MS | SMS-SUBMIT-REPORT |
1 0 | MS → SC | SMS-COMMAND |
1 0 | SC → MS | SMS-STATUS-REPORT |
1 1 | libovolný | Rezervováno |
SMS-SUBMIT slouží k odeslání (anglicky submit) zprávy z mobilního telefonu (anglicky mobile station, MS) na středisko krátkých textových zpráv (SMS centrum, SMSC, SC, MC).
SMS-COMMAND lze použít pro dotaz na zprávy uložené v SMS centru, pro změnu jejich parametrů nebo pro jejich smazání.
SMS-DELIVER se používá pro doručení zprávy z SMS centra na mobilní telefon. Potvrzení vrácené mobilním telefonem může obsahovat SMS-DELIVER-REPORT. Je-li použit SMS home routing, používá se SMS-DELIVER i pro přenos zprávy z jednoho SMS centra na jiné.
Na každý požadavek na přenos zprávy posílá příjemce potvrzení. Toto potvrzení však nemusí vždy obsahovat GSM 03.40 TPDU.
SMS-SUBMIT-REPORT je potvrzení zprávy SMS-SUBMIT; úspěch znamená, že zpráva byla uložena v SMS centru, selhání znamená, že SMS centrum zprávu zamítlo.
SMS centrum může poslat SMS-STATUS-REPORT pro informování mobilního telefonu odesilatele o výsledku doručení zprávy nebo jako odpověď na SMS-COMMAND.
Struktura TPDU
[editovat | editovat zdroj]Pole SM-TP zprávy včetně jejich pořadí a velikosti jsou shrnuta v následující tabulce, kde M znamená povinné pole, O nepovinné pole, E se používá pro pole, která jsou povinná v záporných odezvách (RP-ERR) a nepřítomná v kladných odezvách (RP-ACK), x je pole přítomné na jiném místě (v různých typech zpráv jsou pole v různém pořadí):
SMS-COMMAND | velikost | pole jméno | ||||||
---|---|---|---|---|---|---|---|---|
SMS-STATUS-REPORT | ||||||||
SMS-SUBMIT-REPORT | ||||||||
SMS-SUBMIT | ||||||||
SMS-DELIVER-REPORT | ||||||||
SMS-DELIVER | ||||||||
pole | ||||||||
TP-MTI | M | M | M | M | M | M | 2 bity | Message Type Indicator |
TP-MMS | M | M | 1 bit | More Messages to Send | ||||
TP-RD | M | Reject Duplicates | ||||||
TP-LP | O | O | 1 bit/ 2 bity |
Loop Prevention | ||||
TP-VPF | M | Validity Period Format | ||||||
TP-SRI | O | 1 bit | Status Report Indication | |||||
TP-SRR | O | O | Status Report Požadavek | |||||
TP-SRQ | M | Status Report Qualifier | ||||||
TP-UDHI | O | O | O | O | O | O | 1 bit | User Data Header Indicator |
TP-RP | M | M | 1 bit | Reply Path | ||||
TP-FCS | E | E | 1 oktet | Failure Cause | ||||
TP-MR | M | M | M | 1 oktet | Message Reference | |||
TP-DA | M | x | 2-12 oktetů | Cílová adresa | ||||
TP-OA | M | 2-12 oktetů | Adresa odesilatele | |||||
TP-RA | M | 2-12 oktetů | Adresa příjemce | |||||
TP-SCTS | x | x | M | 7 oktetů | Časové razítko SMS centra Service Centre Time Stamp | |||
TP-DT | M | 7 oktetů | Čas poslední transakce (Discharge Time) | |||||
TP-ST | M | 1 oktet | Status | |||||
TP-PI | M | M | O | 1 oktet | Indikátor parametrů (Parameter Indicator) | |||
TP-SCTS | x | M | x | 7 oktetů | Časové razítko obslužného centra (Service Centre Time Stamp) | |||
TP-PID | M | O | M | O | O | M | 1 oktet | Identifikátor protokolu (Protocol Idetifier) |
TP-DCS | M | O | M | O | O | 1 oktet | Data Coding Scheme (Data Coding Scheme) | |
TP-SCTS | M | x | x | 7 oktetů | Časové razítko obslužného centra (Service Centre Time Stamp) | |||
TP-VP | O | 0, 1 nebo 7 oktetů | Doba platnosti (Validity Period) | |||||
TP-UDL | M | O | M | O | O | 1 oktet | Délka uživatelských dat (User Data Length) | |
TP-UD | O | O | O | O | O | daný TP-UDL | Uživatelská data (User Data) | |
TP-CT | M | 1 oktet | Typ příkazu (Command Type) | |||||
TP-MN | M | 1 oktet | Číslo zprávy (Message Number) | |||||
TP-DA | x | M | 2-12 oktetů | Cílová adresa (Destination Address) | ||||
TP-CDL | M | 1 oktet | Délka dat příkazu (Command Data Length) | |||||
TP-CD | O | daný TP-CDL | Data příkazu (Command Data) |
První oktet TPDU obsahuje různé příznaky včetně pole TP-MTI popsaného výše:
bit(s) | Význam |
---|---|
1-0 | TP-Message-Type-Indicator (TP-MTI) |
2 | TP-More-Messages-to-Send (TP-MMS) v SMS-DELIVER (0 = více zpráv) |
2 | TP-Reject-Duplicates (TP-RD) v SMS-SUBMIT |
3 | TP-Loop-Prevention (TP-LP) v SMS-DELIVER a SMS-STATUS-REPORT |
4-3 | TP-Validity-Period-Format (TP-VPF) v SMS-SUBMIT (00 = žádné TP-VP) |
5 | TP-Status-Report-Indication (TP-SRI) v SMS-DELIVER |
5 | TP-Status-Report-Request (TP-SRR) v SMS-SUBMIT a SMS-COMMAND |
5 | TP-Status-Report-Qualifier (TP-SRQ) v SMS-STATUS-REPORT |
6 | TP-User-Data-Header-Indicator (TP-UDHI) |
7 | TP-Reply-Path (TP-RP) v SMS-DELIVER a SMS-SUBMIT |
Nastavením bitu TP-More-Messages-to-Send (TP-MMS) na 0 (obrácená logika), SMS centrum signalizuje, že má pro tohoto příjemce více zpráv (často to jsou další segmenty sřetězené zprávy). V tomto případě MSC obvykle nezavře spojení na mobilní telefon a neukončí MAP dialog s SMS centrem, což umožňuje rychlejší doručení dalších zpráv nebo segmentů. Pokud by mezitím došlo k odstranění těchto zpráv z SMS centra (pokud jsou například smazány), SMS centrum ukončí MAP dialog zprávou MAP Abort.
Bit TP-Loop-Prevention (TP-LP) má zabránit zacyklení zpráv SMS-DELIVER nebo SMS-STATUS-REPORT směrovaných na jiné adresy, než je cílová adresa původní zprávy nebo generované aplikací. Takovou zprávu lze poslat, pouze pokud původní zpráva měla tento příznak vynulovaný. Nová zpráva musí být poslána s nastaveným příznakem.
Nastavením bitu TP-Status-Report-Indication (TP-SRI) na 1 SMS centrum vyžaduje vrácení status report na SME.
Nastavením bitu TP-Status-Report-Požadavek (TP-SRR) na 1 v SMS-SUBMIT nebo SMS-COMMAND vyžaduje mobilní telefon, aby SMS centrum vrátilo status report.
Když TP-SRQ má ve zprávě SMS-STATUS-REPORT hodnotu 1, je zpráva výsledkem SMS-COMMAND; jinak je výsledkem SMS-SUBMIT.
Když má TP-UDHI hodnotu 1, pole TP-UD začíná hlavičkou User Data Header.
Nastavením bitu TP-RP se žádá o vytvoření spojení pro poslání odpovědi stejnou cestou, jakou přišla původní zpráva. Pokud domovská síť odesilatele a příjemce není stejná, odpovědi by procházely jiným SMS centrem. Mobilní operátor musí věnovat zvláštní pozornost účtování takových zpráv.
Na každý přenos zprávy odpovídá protistrana potvrzením (anglicky acknowledge). Potvrzení nemusí vždy obsahovat GSM 03.40 TPDU, protože protokoly SM-RP i MAP, pomocí kterých se TPDU přenášejí, obsahují dostatek informací pro informování o výsledku požadavku. Potvrzení může Nicméně GSM 03.40 TPDU může být obsažený v potvrzení na přenášejí dokonce více informace. GSM 03.40 prošlo následujícím vývojem:
- GSM 03.40 do verze 5.2.0 uvádí, že se SMS-DELIVER-REPORT a SMS-SUBMIT-REPORT mají posílat pouze v případě chyby. Od verze 5.3.0 se mají posílat i v případě úspěchu.
- GSM 03.40 do verze 6.0.0 uvádí, že SMS-DELIVER-REPORT a SMS-SUBMIT-REPORT posílané v případě chyby mají obsahovat pouze pole TP-MTI a TP-FCS, a že poslední pole v SMS-STATUS-REPORT má být TP-ST. Od verze 6.1.0 mají tyto TPDU formát uvedený v tabulce výše.
Ačkoli tyto změny jsou poměrně staré (verze 6.1.0 byla vydána v červenci 1998), staré formáty MAP zpráv se v některých sítích stále používají.
Obsah zprávy
[editovat | editovat zdroj]Obsah zprávy (její text, pokud zpráva není binární) je přenášen v poli TP-UD. Jeho velikost může být až 160 x 7 = 140 x 8 = 1120 bitů. Delší zprávy mohou být rozloženy na více částí a poslány jako zřetězená zpráva (anglicky concatenated message). Délka obsahu zprávy je uvedena v poli TP-UDL. Když zpráva používá sedmibitovou implicitní abecedu GSM (závisí na poli TP-DCS), udává pole TP-UDL délku pole TP-UD v 7bitových jednotkách; jinak TP-UDL udává délku pole TP-UD v oktetech.
Když TP-UDHI je 1, TP-UD začíná User Data Header (UDH); v tomto případě první oktet TP-UD obsahuje UDHL - délku UDH v oktetech bez samotného UDHL. UDH ubírá prostor z pole TP-UD. Je-li UDH přítomné ve zprávě v sedmibitové implicitní abecedě GSM, vloží se za UDH výplňkové bity, které zarovnávají začátek prvního znaku textu za UDH na hranici septetu. Díky tomu bylo možné uspokojivě zobrazovat zprávy s UDH i na starších telefonech; takové telefony zobrazí UDH jako změť divných znaků následovanou textem zprávy; pokud první znak po UDH je Carriage Return (CR), telefon by měl tuto změť přepsat textem zprávy.
Adresy
[editovat | editovat zdroj]GSM 03.40 zpráva obsahuje nejvýše jednu adresu: adresu příjemce (TP-DA) v SMS-SUBMIT a SMS-COMMAND, adresu odesilatele (TP-OA) v SMS-DELIVER a adresu příjemce (TP-RA) v SMS-STATUS-REPORT. Ostatní adresy jsou přenášeny nižších vrstvách.
Formát GSM 03.40 adres shrnuje následující tabulka:
oktet | Význam |
---|---|
0 | délka adresy v nibblech |
1 | EXT, TON, NPI |
2-11 | číslice adresy |
Typ čísla (anglicky Type of number , TON):
Bit 6 5 4 |
Význam |
---|---|
0 0 0 | Neznámý 1) |
0 0 1 | Mezinárodní číslo 2) |
0 1 0 | Národní číslo 3) |
0 1 1 | Síťově specifické číslo 4) |
1 0 0 | Účastnické číslo 5) |
1 0 1 | Alfanumerické (kódované podle 3GPP TS 23.038 [9] sedmibitová implicitní abeceda GSM) |
1 1 0 | Zkrácené číslo |
1 1 1 | Rezervováno pro rozšíření |
Pokud odesilatel vloží telefonní číslo začínající znakem `+', znak `+' bude odstraněn a adresa dostane TON=1 (mezinárodní číslo), NPI=1. V tomto případě musí číslo vždy začínat kódem země a musí být zformátovaná přesně podle standardu E.164.
Pokud odesilatel vloží telefonní číslo bez úvodního znaku `+', adresa dostane TON=0 (neznámé), NPI=1. V tomto případě číslo musí odpovídat číslovacímu plánu mobilního operátora, což znamená, že mezinárodní čísla musí mít mezinárodní prefix (v většině zemí 00, v USA 011) před kódem země a čísla pro meziměstské volání musí začínat meziměstským prefixem (anglicky trunk prefix, ve většině zemí 0, v USA 1, v ČR bylo zrušeno při přečíslování v roce 2001) následovaným kódem oblasti (anglicky trunk code).
Identifikace číslovacího plánu (anglicky Numbering plan Identification, NPI):
Bity 3 2 1 0 |
Význam |
---|---|
0 0 0 0 | Neznámé |
0 0 0 1 | Číslovací plán (E.164/E.163) ISDN/telefon |
0 0 1 1 | Datový číslovací plán (X.121) |
0 1 0 0 | Telexový číslovací plán |
0 1 0 1 | Zvláštní číslovací plán SMS centra 1) |
0 1 1 0 | Zvláštní číslovací plán SMS centra 1) |
1 0 0 0 | Národní číslovací plán |
1 0 0 1 | Soukromý číslovací plán |
1 0 1 0 | Číslovací plán ERMES (ETSI DE/PS 3 01 3) |
1 1 1 1 | Rezervováno pro rozšíření |
Telefonní čísla musí mít NPI=1. Aplikační servery mohou používat alfanumerické adresy, které mají kombinaci TON=5, NPI=0.
Bit EXT má hodnotu vždy 1 - "žádné rozšíření".
Příklady adres
[editovat | editovat zdroj]Americké číslo +1 555 123 4567 bude zakódováno jako 0B 91 51 55 21 43 65 F7 (F v horních čtyřech bitech posledního oktetu je výplňková hodnota, která se používán, když číslo obsahuje lichý počet číslic).
Alfanumerická adresa je vyjádřena v sedmibitové implicitní abecedě GSM a je zakódována stejným způsobem jako text zprávy v poli TP-UD (což znamená, že je 7bitově zpakována), před adresou je oktet s délkou (ve čtveřicích bitů) a oktetem s hodnotami TON a NPI.
Například alfanumerická adresa Design@Home se zkonvertuje do sedmibitové implicitní abecedy GSM, což dává 11 bytů s hexadecimálními hodnotami 44 65 73 69 67 6E 00 48 6F 6D 65, 7bitové pakování převede tuto hodnotu na 77 bitů uložených v 10 oktetech jako C4 F2 3C 7D 76 03 90 EF 76 19; 77 bitů je 20 nibblů (14 hex), což bude hodnota prvního oktetu adresy. Druhý oktet bude obsahovat TON (5) a NPI (0), což dává D0 hex. Úplná adresa v GSM formátu je 14 D0 C4 F2 3C 7D 76 03 90 EF 76 19.
Message Reference
[editovat | editovat zdroj]Pole Message Reference (TP-MR) se používá ve zprávách odesílaných z mobilního zařízení (SMS-SUBMIT, SMS-COMMAND) a v SMS-SUBMIT-REPORT. Je jednobytová hodnota, které se zvyšuje o jedničku při odeslání každé nové zprávy nebo poslání nového SMS-COMMAND. Jestliže odeslání zprávy selže, mobilní telefon musí při opakovaném odeslání téže zprávy použít stejnou hodnotu TP-MR a zároveň nastavit bit TP-RD na hodnotu 1.
Formát času
[editovat | editovat zdroj]Datum a čas používaný v polích TP-SCTS, TP-DT a jako absolutní formát pole TP-VP se skládá ze 7 oktetů:
oktet | Obsah |
---|---|
0 | Poslední dvě číslice roku |
1 | Měsíc |
2 | Den |
3 | Hodiny |
4 | Minuty |
5 | Sekundy |
6 | Časová zóna |
Ve všech oktetech jsou hodnoty uloženy v BCD formátu s přehozenými číslicemi (číslo 35 je uloženo jako 53 hex).
Časová zóna je zadána ve čtvrtinách hodin. Na západní polokouli je hodnota v časové zóně záporná, což je signalizováno nastavením bitu 3 posledního oktetu na hodnotu 1.
Časový údaj 25. března 2013 23:01:56 PST (GMT-7) bude zakódovaný jako 31 30 52 32 10 65 8A.
Doba platnosti
[editovat | editovat zdroj]SMS-SUBMIT TPDU může obsahovat parametr TP-VP, který omezuje časový interval, v němž se SMS centrum bude snažit zprávu doručit. Tento časový interval obvykle nemůže přesáhnout globální konfigurační parametr SMS centra, který bývá 48 nebo 72 hodin. Formát pole Validity Period určuje pole Validity Period Format (TP-VPF):
TP-VPF | TP-VP formát | TP-VP délka |
---|---|---|
0 0 | TP-VP ne přítomný | 0 |
0 1 | Vylepšený formát | 7 |
1 0 | Relativní formát | 1 |
1 1 | Absolutní formát | 7 |
Relativní formát
[editovat | editovat zdroj]TP-VPF hodnota | Doba platnosti | Možné doba platnosti |
---|---|---|
0-143 | (TP-VP + 1) x 5 minut | 5, 10, 15 minut ... 11:55, 12:00 hodin |
144-167 | (12 + (TP-VP - 143) / 2 ) hodin | 12:30, 13:00, ... 23:30, 24:00 hodin |
168-196 | (TP-VP - 166) dní | 2, 3, 4, ... 30 dní |
197-255 | (TP-VP - 192) týdnů | 5, 6, 7, ... 63 týdnů |
Absolutní formát
[editovat | editovat zdroj]Absolutní formát je shodný s formátem časových údajů v jiných polích čas formáty v GSM 03.40 TPDU.
Vylepšený formát
[editovat | editovat zdroj]Vylepšený formát (anglicky Enhanced format) pole TP-VP se používá zřídka. Má vždy 7 oktetů, ale některé z nich nejsou používány. První oktet je TP-VP Funkcionality Indicator. Jeho 3 nejméně významné bity mají následující význam:
2 1 0 | Význam |
---|---|
0 0 0 | Doba platnosti nebyla zadána |
0 0 1 | Následující oktet je relativní doba platnosti popsaná v tabulce Hodnoty Relativní Doba platnosti |
0 1 0 | Následující oktet obsahuje relativní dobu platnosti v sekundách v rozsahu 0-255 |
0 1 1 | Následující 3 oktety obsahují relativní dobu platnosti v hodinách, minutách a sekundách jako oktety 3-5 formátu času |
1 X X | Rezervováno |
Hodnota 1 v bitu 6 prvního oktetu znamená, že zpráva je Single-shot. Hodnota 1 v bitu 7 prvního oktet indikuje, že TP-VP Funktionality Indicator pokračuje v dalším oktetu. Žádné takové rozšíření však není definované.
Identifikátor protokolu
[editovat | editovat zdroj]Identifikátor protokolu (anglicky Protokol identifier, TP-PID) buď udává, jaký protokol vyšší vrstvy je použit, indikuje interworking s určitým typem telematického zařízení (jako fax, telex, pager, teletex, e-mail), stanovuje, že zpráva má přepsat předchozí zprávu z téže skupiny, nebo umožňuje přenést konfigurační parametry do SIM karty. Obyčejné zprávy z mobilního telefonu na mobilní telefon (anglicky Mobile Originated - Mobile Terminated, MO-MT) mají TP-PID=0.
TP-PID | význam |
---|---|
0 | Implicitní krátká zpráva dopravovaná metodou store and forward |
1-31 | Protokol SME-to-SME (ne telematický interworking) |
32 | Implicitní telematické zařízení |
33 | Telex nebo teletex redukovaný na telex formát |
34 | Telefax skupiny 3 |
35 | Telefax skupiny 3 |
36 | Hlasový telefon |
37 | ERMES (European Radio Messaging System) |
38 | Národní Paging systém (známý SC) |
39 | Videotex (T.100 [20] /T.101 [21]) |
40 | Teletex, carrier unspecified |
41 | Teletex, v PSPDN |
42 | Teletex, v CSPDN |
43 | Teletex, v analogových PSTN |
44 | Teletex, v digitálních ISDN |
45 | UCI (Universal Computer Interface, ETSI DE/PS 3 01 3) |
46-47 | Rezervováno |
48 | Systém zpracovávání zpráv (známý SMS centru) |
49 | Jakýkoli veřejný systém zpracovávání zpráv založený na X.400 |
50 | Internetová elektronická pošta |
51-55 | Rezervováno |
56-62 | SC-zvláštní; vycházející z použití na vzájemné dohodě mezi SME a SMS centra |
63 | Mobilní stanice GSM/UMTS |
64 | Short Message Type 0 |
65 | Replace Short Message Type 1 |
66 | Replace Short Message Type 2 |
67 | Replace Short Message Type 3 |
68 | Replace Short Message Type 4 |
69 | Replace Short Message Type 5 |
70 | Replace Short Message Type 6 |
71 | Replace Short Message Type 7 |
72 | Device Triggering Short Message |
73-93 | Rezervováno |
94 | Enhanced Message Service (zastaralé) |
95 | Return Call Message |
96-123 | Rezervováno |
124 | ANSI-136 R-DATA |
125 | ME Data download |
126 | ME De-personalization Short Message |
127 | (U)SIM Data download |
127-191 | Rezervováno |
192-255 | Přiřazuje bitům 0-5 zvláštní použití pro SMS centrum |
Pro TP-PID = 63 SMS centrum konvertuje zprávu z přijatého Data Coding Scheme do libovolného kódování podporované tímto MS (například do implicitní).
Short Message Type 0 je známý jako silent SMS. Jakýkoli telefon musí být schopen takovéto krátké zprávy přijímat, bez ohledu na to, zda je paměť pro příjem zpráv v (U)SIM nebo telefonu volná, musí potvrdit její doručení, ale její obsah musí být zahozen a její přijetí nesmí být uživateli indikováno.
Kódování zprávy
[editovat | editovat zdroj]Pro SMS v GSM bylo navrženo speciální 7bitové kódování nazývané sedmibitová implicitní abeceda GSM (anglicky GSM 7 bit default alphabet). Abeceda obsahuje nejpoužívanější symboly západoevropských jazyků (a některé velká písmena řecké abecedy). Některé ASCII znaky a Euro sign se nevcházejí do sedmibitové implicitní abecedy GSM a musí být zakódovány pomocí dvou septetů. Tyto znaky tvoří rozšiřující tabulku sedmibitové implicitní abecedy GSM. Pro mobilní telefony a síťové prvky GSM je podpora GSM 7bitové abeceda povinná[7].
Jazyky, které používají latinku a používající znaky, které nejsou přítomné v sedmibitové implicitní abecedě GSM, často nahrazují chybějící znaky s diakritikou odpovídajícími znaky bez diakritiky, což je pro mnoho uživatelů přijatelné. Pro dosažení lepšího vzhledu zprávy je třeba používat 16bitové kódování UTF-16 (v GSM nazývané UCS-2); tím se však sníží maximální délka (nesegmentované) zprávy ze 160 na 70 znaků.
Zprávy v čínštině, korejštině nebo japonštině jazyky musí být zakódovány pomocí znakového kódu UTF-16. To platí také pro jiné jazyky používající jiné písmo než latinku, jako je ruština, arabština, hebrejština a různé indické jazyky. Od verze 3GPP TS 23.038 8.0.0 publikované v roce 2008 existuje možnost používání národních tabulek, které ve verze 11.0.0 publikované v roce 2012 pokrývá turečtinu, španělštinu, portugalštinu, bengálštinu, hindštinu, malajštinu, paňdžábštinu, tamilštinu, urdštinu, telugštinu, gudžarátštinu, kannadštinu a orijštinu. Mechanismus národních tabulek nahrazuje kódovou tabulku sedmibitové implicitní abecedy GSM a/nebo rozšířenou tabulku za národní tabulku nebo tabulky podle hodnoty speciálních informačních prvků v User Data Header. Nesegmentované zprávy používající národní tabulky mohou přenášet až 155 (nebo 153) 7bitových znaků.
Pole Data Coding Scheme (TP-DCS) obsahuje primárně informace o kódování zprávy. GSM definuje pouze 2 kódování pro textové zprávy a 1 kódování pro binární zprávy:
- Sedmibitová implicitní abeceda GSM, včetně případného použití národních tabulek (anglicky National language shift tables)
- UCS-2 (ve skutečnosti UTF-16)
- 8bitová data
TP-DCS oktet má složitou strukturu a obsahuje i další informace než o kódování zprávy; nejvýznamnější je třída zprávy:
Hodnota | Message Class |
---|---|
0 0 | 0 - Flash zprávy |
0 1 | 1 - ME-zvláštní |
1 0 | 2 - SIM / USIM zvláštní |
1 1 | 3 - TE-zvláštní |
Flash zprávy jsou přijaté mobilním telefonem, i když má plnou paměť zpráv. Nejsou ukládány v telefonu, ale jsou pouze zobrazeny na displeji.
Další vlastnost dostupná pomocí TP-DCS je automatické smazání: zpráva je po přečtení automaticky vymazána z telefonu.
Skupina DCS hodnot Message Waiting Indication Group slouží k nastavování nebo nulování příznaků indikujících přítomnost nepřečtené voicemail, faxové, e-mailové nebo jiné zprávy.
Speciální DCS hodnoty také umožňují zkrácení zprávy díky kompresi; tato vlastnost však pravděpodobně není používána žádným operátorem.
Hodnoty TP-DCS jsou definovány v GSM doporučení 03.38. GSM zprávy mohou používat kódování GSM 7bit implicitní abeceda, UTF-16 (nazývané UCS-2) a nebo se může jedna o 8bitová data.[7]
Čas poslední transakce
[editovat | editovat zdroj]Pole TP-DT indikuje čas a datum poslední transakce provedené se zprávou:
- Pokud byla zpráva úspěšně doručena nebo byla úspěšně provedena jiná transakce se zprávou (TP-ST je 0-31), je TP-DT čas dokončení transakce
- Pokud se SMS centrum stále pokouší zprávu doručit (TP-ST je 32-63), TP-DT je čas posledního pokusu o doručení
- Jestliže se SMS centrum již nebude pokoušet zprávu doručit (TP-ST je 64-127), TP-DT je buď čas posledního pokusu o doručení anebo čas odstranění zprávy z SMS centra
Parameter Indicator
[editovat | editovat zdroj]Pole TP-PI indikuje přítomnost dalších polí v SUBMIT-REPORT, DELIVER-REPORT nebo SMS-STATUS-REPORT TPDU.
bit | Význam |
---|---|
0 | TP-PID přítomné |
1 | TP-DCS přítomné |
2 | TP-UDL a TP-UD přítomné |
8 | následuje další TP-PI oktet (bit indikující rozšíření) |
Protože i v 3GPP TS 23.040 V15.2.0 vydané v září 2018 jsou v poli TP-PI stále 4 volné bity, lze očekávat, že bit indikující rozšíření bude nulový i v budoucnosti, což lze použít pro rozlišení pole TP-PI od pole TP-FCS, když není dostupná informace z nižší vrstvy, zda TPDU je částí kladné nebo záporné odezvy; jestliže nejvýznamnější bit druhého oktetu TPDU je 1, je druhý oktet TP-FCS (v záporné odezvě), jinak je TP-PI (v kladné odezvě).
Reference
[editovat | editovat zdroj]V tomto článku byl použit překlad textu z článku GSM_03.40 na anglické Wikipedii.
- ↑ 3GPP TS 23.040 3rd Generation Partnership Project; Technical realization of Short Message Service (SMS)
- ↑ 3GPP TS 24.011 3rd Generation Partnership Project; Point-to-Point Short Message Service (SMS) support on mobile radio interface
- ↑ 3GPP TS 29.002 3rd Generation Partnership Project; Mobile Aplikace Part (MAP) standard
- ↑ 3rd Generation Partnership Project; Technical realization of Short Message Service (SMS) (3G TS 23.040 verze 11.5.0) (zipped .doc soubor), ETSI, March 2013.
- ↑ 3GPP TS 24.341 3rd Generation Partnership Project; Support of SMS over IP networks
- ↑ 3GPP TS 24.451 Support of SMS and MMS over NGN IMS subsystem; Stage 3 of 3GPP TS 24.341 Release 7
- ↑ a b 3GPP TS 23.038, Abecedy a jazykově specifické informace.
Související články
[editovat | editovat zdroj]- SMS (Short Message Service)
- Enhanced Messaging Service (EMS)
- MMS (Multimedia Messaging Service)
- Technická realizace SMS
- Short Message Peer to Peer
- Universal Computer Protocol