TIP#1190: Kolik znaků má SMS? Proč má tak málo? A kdo vynalezl SMS?

SMS určitě všichni známe. Umí je posílat a přijímat každý mobil, od těch „hloupých“ až po ty „chytré“. Dříve to býval zlatý důl pro operátory, za každou poslanou SMS se platilo a jinudy nebylo jak psát, takže kdykoliv jste potřebovali někomu poslat zprávu či vzkaz, bylo jasné, že za to zaplatíte. Dnes jsou SMS v ohrožení, chatovací programy (WhatsApp, Messenger, atd) a sociální sítě je nahrazují (viz Jaké chatovací aplikace jsou na výběr? Přes co posílat zprávy?). Byť SMS stále mají tu nejzásadnější výhodu, jistotu, že pokud znáte něčí číslo, tak na něj můžete poslat zprávu. Bez pořizování něčeho extra.

SMS je samozřejmě zkratka, Short Message Service, služba krátkých textových zpráv. To slovo krátkých je podstatné, jedna zpráva má totiž maximálně 160 znaků. Ve skutečnosti, přesně řečeno, má jedna zpráva k dipozici 1120 bitů – pokud se posílají zprávy obsahující čisté ASCII (tedy zejména žádnou diakritiku, háčky a čárky), tak se do 1120 bitů vejde právě 160 znaků. Pokud ale bude posláno cokoliv více než ASCII, tak s použitým UCS-2 kódováním je k dispozici pouze 70 znaků.

gsm7.png
Tyto znaky umí klasické 7 bitové SMS. GSM-7

Dříve bylo použití čistého ASCII (čtěte dále, tohle je zjednodušené označení) v SMS v pohodě, stejně jako omezení na 160 znaků – dnes to nikdo neřeší a zprávy píše česky a běžně tam bude dávat i různé emotikony a smajlíky. A už vůbec nebude počítat znaky, aby se vešel do limitu. Telefony to vyřešily tím, že dlouhé zprávy pošlou „přes SMS“ rozdělením do více SMS zpráv – proto je dnes možné poslat i stovky znaků dlouhou SMS, v zásadě až do 1 600 znaků,  pár znaků/bajtů si totiž zaberou informace o pokračování).

POZNÁMKA: V otázce bezpečnosti byste měli vědět, že SMS nejsou bezpečné – je možné falšovat odesílatele, takže se nemůžete spolehnout na číslo odesílatele. Jejich obsah také není nijak chráněný proti čtení „cestou“ a už vůbec nebývají bezpečně uložené v telefonech samotných

Ale zpět k omezení na 160 znaků

Kde se na ono původní omezení vlastně přišlo? Výše bylo zmíněno, že původní SMS dokonce ani nevyužívají plných 8 bitů na znak – a trochu zjednodušeně je tam řečeno, že používají ASCII. SMS ve skutečnosti používaly vlastní kódování označené jako GSM-7 (viz obrázek výše)- tvůrci SMS standardu (GSM protokol z roku 1985) potřebovali co nejvíce ušetřit místo, takže  vybrali nejpoužívanější znaky a vytvořili vlastní kódovací tabulku.

SMS se do GSM standardu podařilo „vložit mezi“ signalizační protokol – v té době se o datech/mobilním Internetu dalo jenom zdát. A právě ono „volné“ místo kam se podařilo „vložit“ jednotlivé SMS je omezeno – pojmenované to je SMPP signalling protocol a  omezení je na 140 klasických bajtů/znaků (oněch výše uvedený 1120 bitů).

Jedno z dalších vysvětlení proč tak „málo“ říká, že za to vlastně může Friedhelm Hillebrand z German Telecom. Ten při vymýšlení SMS standardu prostě zkusil jak dlouhé texty se asi budou posílat a došel k tomu, že 160 znaků musí stačit. Najít tenhle příběh můžete například ve Why text messages are limited to 160 characters a Hillebrand kupodivu není jedním z nejznámějších vynálezců na světě.

TIP: Na chadselph.github.io/smssplit si můžete vyzkoušet jakým způsobem se bude chovat konkrétní text. Zkuste si tam psát čisté znaky bez diakritiky, pak totéž s diakritikou a pak si to zkuste doplnit ještě o nějaké znaky, které původní 7 bitová (GSM 7) sada nezná (třeba složené závorky). Nezapomeňte si přepnout mezi GSM a UCS2 (či Auto).

Celý ten příběh je vlastně hrozně zajímavý. SMS neměly vlastně moc důvod se stát masově používanými, v ono razantní  omezení nakonec nevěřili ani další lidé. Hillebrand k tomu navíc došel tak, že si prostě na psacím stroji napsal nějaké texty a pak počítal znaky. Včetně toho že z takto psaného textu odvodil i ono specifické kódování.

Zajímavost je, že Twitter měl původně příspěvky omezeny na 140 znaků a důvodem byly právě SMS. Vznikl v době, kdy se ještě mobilní aplikace moc nevyskytovaly a psát a číst si Twitter bylo možné přes SMS. 20 znaků si ale Twitter vyhradil na počátku pro nějaké ty „řídící“ znaky a hlavně jméno účtu, ke kterému příspěvek patří..

TIP: Tipy týkající se SMS najdete na @365tipu snadno přes štítek SMS.  Jeden je ale určitě je dobré vytáhnout: Jak získat potvrzení o doručení SMS? Jde i potvrzení o přečtení?

Reklamy