Stalo se vám někdy, že jste poslali klientům jednoduché připomenutí schůzky a zjistili, že se váš účet za SMS bez zjevného důvodu zdvojnásobil? Tento jev přímo souvisí s **kódováním SMS zpráv** (encodage sms message), což je často přehlížený technický aspekt, který však může výrazně ovlivnit váš rozpočet na komunikaci.
Co je to kódování SMS zpráv?
Abychom si jasně definovali kódování SMS, musíme pochopit, že mobilní sítě nečtou všechny znaky stejně. Kódování je technický proces, který převádí písmena, číslice a symboly vaší zprávy na binární data (nuly a jedničky) přenositelná telekomunikačními operátory.
Historicky byla mobilní síť navržena pro přenos velmi lehkých zpráv. Dnes se při odesílání SMS používají dva hlavní standardy:
- GSM-7: Standardní kódování, které využívá 7 bitů na znak. Umožňuje napsat až 160 znaků v jedné SMS.
- UCS-2 (Unicode): Bohatší kódování využívající 16 bitů na znak, které je nutné pro nelatinková písma, složité speciální znaky a emotikony. Omezuje délku jedné SMS na pouhých 70 znaků.
GSM-7 vs. UCS-2: Past v podobě speciálních znaků a emoji
Zde začínají komplikace pro majitele malých firem (kadeřnictví, lékařské kliniky, autoškoly). Jediný znak mimo tabulku GSM-7 vynutí přepnutí celé vaší zprávy do kódování Unicode.
Kódování speciálních znaků a diakritiky v SMS, jako jsou české znaky s háčky a čárkami (ě, š, č, ř, ž, á, í, é...), stejně jako odesílání emoji přes SMS v kódování UCS-2, okamžitě snižují limit znaků ze 160 na 70 na zprávu. Vliv emoji na kódování SMS je tedy okamžitý: vaše zpráva je rozdělena do několika částí (segmentů), což u většiny tradičních poskytovatelů násobí náklady na odeslání.
Zde je srovnávací tabulka pro lepší představu o tomto rozdílu:
| Standard kódování | Limit znaků (1 SMS) | Povolené znaky | Dopad na klasické účtování | |
|---|---|---|---|---|
| GSM-7 | 160 znaků | Základní latinka, číslice, mezery a některé běžné západoevropské akcenty (é, à, è, ù) | Standardní cena (1 kredit) | |
| UCS-2 (Unicode) | 70 znaků | Všechny abecedy (arabština, cyrilice, čínština), emoji, složitá diakritika (ě, š, č, ř, ž...) | Dvojnásobná nebo trojnásobná cena (více segmentů) |
Vliv kódování Unicode na cenu SMS
Vliv kódování Unicode na cenu SMS je finanční pastí číslo jedna u klasických SMS bran, jako jsou Twilio nebo Plivo. Tyto platformy účtují poplatky za „segment“ SMS. Jeden segment odpovídá 160 znakům v GSM-7, ale klesá na 70 znaků, jakmile je detekován byť jen jediný znak Unicode.
Představte si, že provozujete autoservis a posíláte toto připomenutí schůzky:
„Dobry den! Vase vozidlo je pripraveno. Vyzvednete si ho prosim v servisu do 18 hodin. Brzy na videnou!“
Tato zpráva obsahuje 106 znaků. Pokud ji odešlete bez diakritiky, používá standardní kódování GSM-7 (velká písmena s diakritikou mohou někdy u některých bran způsobit problémy, ale zbytek je standardní). To vás stojí 1 segment SMS.
Pokud na konec přidáte obyčejné emoji auta, aby zpráva působila přívětivěji, přepne se do kódování UCS-2. Vašich 107 znaků (včetně emoji) nyní překračuje přísný limit 70 znaků pro Unicode. Vaše zpráva se pak rozdělí do 2 segmentů. U klasického operátora tak za tuto zprávu zaplatíte dvojnásobek, a to pouze kvůli jednomu emoji.
Právě proto, aby se vyhnuly podobným nepříjemným překvapením, hledají mnohé firmy alternativy. S MySMSGate připojíte svůj vlastní chytrý telefon s Androidem a posíláte zprávy přes něj. Účtujeme jednotnou a pevnou cenu 0,02 $ za odeslanou SMS bez ohledu na její délku nebo kódování. Nečekají vás žádné skryté poplatky za segmenty. Chcete-li se dozvědět více o úsporných možnostech, přečtěte si našeho průvodce nejlevnější SMS bránou pro malé firmy.
Vývojáři: Jaké kódování zvolit pro odesílání SMS přes API?
Pokud integrujete SMS notifikace do své vlastní aplikace nebo podnikového softwaru, vyvstává technická otázka: jaké kódování zvolit pro odesílání SMS přes API?
Téměř všechna moderní API, včetně MySMSGate, přijímají požadavky ve formátu JSON kódované v UTF-8. SMS brána však následně musí tento UTF-8 tok převést pro mobilní síť. Pro zajištění maximální kompatibility a zamezení poškození znaků (známé otazníky nebo černé čtverečky) je zásadní správně nakonfigurovat kódování UTF-8 na SMS bráně.
Zde je jednoduchý příklad v Pythonu pro odeslání správně kódované zprávy přes API MySMSGate, aniž byste se museli starat o složité rozdělování:
import requests
url = "https://mysmsgate.net/api/v1/send"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
}
payload = {
"to": "+33612345678",
"message": "Vase schuzka je potvrzena na zitra ve 14h! ",
"sim_slot": 1
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())Naše API zpracovává převod zcela transparentně. Náš systém navíc obsahuje mechanismus automatického vrácení peněz v případě selhání doručení, což zajišťuje, že platíte pouze za to, co skutečně funguje. Pro kompletní integraci na vašem vlastním serveru si přečtěte náš návod, jak posílat SMS z telefonu s Androidem přes API.
Jak se vyhnout dvojitému kódování SMS?
Chcete-li předejít dvojitému kódování SMS, ujistěte se, že váš kód neaplikuje kódovací funkci (například urlencode nebo utf8_encode) na řetězec, který již zpracovává vaše HTTP knihovna. Odesílání dvakrát kódovaných dat má za následek doručení nečitelných zpráv plných podivných symbolů vašim zákazníkům.
Zvláštní případ předvolby kódování pro SMS/MMS video
V oblasti mobilních telekomunikací se někdy můžete setkat s pojmem předvolba kódování SMS/MMS videa (preset encodage sms/mms video). Na rozdíl od kódování textu (GSM-7 ou UCS-2) se tato předvolba týká komprese a formátování multimediálních souborů (videa, animované obrázky) odesílaných prostřednictvím MMS.
Mobilní sítě ukládají velmi přísné limity na velikost MMS (často méně než 300 KB nebo 600 KB v závislosti na operátorovi). Předvolba kódování videa umožňuje drasticky snížit rozlišení a datový tok videa, aby mohlo být doručeno bez odmítnutí bránou operátora. Pokud je vaším cílem pouze odesílání textových oznámení nebo provozních připomenutí, nebudete se muset těmito složitými nastaveními zabývat.
Často kladené otázky o kódování SMS
Zde jsou odpovědi na nejčastější dotazy týkající se správy kódování a speciálních znaků při odesílání hromadných SMS.
Proč může obyčejný diakritický znak zdvojnásobit cenu mé SMS?
České znaky s diakritikou (jako š, č, ř, ž, á, í...) nebo speciální znaky jako „ç“ či „ê“ nejsou součástí standardní abecedy GSM-7. Jakmile použijete byť jen jeden z těchto znaků, váš odesílací software přepne celou zprávu do režimu Unicode (UCS-2). Limit pro jednu SMS pak klesne ze 160 na 70 znaků. Pokud váš text přesáhne 70 znaků, rozdělí se do dvou segmentů, což u tradičních operátorů zdvojnásobí náklady na odeslání.
Jak mohu otestovat kódování svých SMS před odesláním?
Existují online nástroje pro testování segmentů SMS (často nazývané „SMS Length Calculator“). Ty vám umožní vložit text a okamžitě zjistit, zda neviditelný znak nebo emoji nevynucuje přepnutí do Unicode, a také přesný počet segmentů, které vám poskytovatel naúčtuje.
Jak MySMSGate pomáhá předcházet vícenákladům spojeným s Unicode?
Na rozdíl od klasických API (Twilio, Plivo), která účtují každý segment zvlášť, MySMSGate uplatňuje jednotnou a pevnou cenu 0,02 $ za odeslanou zprávu bez ohledu na její délku nebo použití speciálních znaků či emoji. Vaše zprávy odcházejí přímo z vašeho vlastního smartphonu s Androidem připojeného k naší platformě, což eliminuje přemrštěné poplatky za segmentaci.
Comments (0)
Be the first to comment!