Тіркеу

SMS ұзындығы және рұқсат етілген таңбалар

Қолдау көрсетілетін таңбалар жиынтығы

SMS мәтіні хабарламаны құрастыру кезінде пайдаланылған таңбалар жиынына байланысты екі кодтаудың бірінде жіберілуі мүмкін.

GSM кодтау (латиница, 7 bit)

Егер мәтін тек келтірілген кестедегі таңбаларды қамтитын болса, SMS GSM кодтауында жіберіледі:

@ Δ SP 0 ¡ P ¿ p
£ _ ! 1 A Q a q
$ Φ " 2 B R b r
¥ Γ # 3 C S c s
è Λ ¤ 4 D T d t
é Ω % 5 E U e u
ù Π & 6 F V f v
ì Ψ ' 7 G W g w
ò Σ ( 8 H X h x
Ç Θ ) 9 I Y i y
LF Ξ * : J Z j z
Ø + ; K Ä k ä
ø Æ , < L Ö l ö
CR æ - = M Ñ m ñ
Å ß . > N Ü n ü
å É / ? O § o à

CR - каретканы қайтару таңбасы
LF - жолды ауыстыру таңбасы
SP - бос орын таңбасы

Бұл кодтау бір SMS хабарламасында 160 таңбаға дейін жіберуге мүмкіндік береді. Сондай-ақ GSM-7 кодтауында кейбір таңбалар бар екенін ескеру қажет, олар SMS ұзындығын есептегенде екі таңба ретінде есептеледі, мұндай таңбалар төмендегі кестеде көрсетілген:

^ { } \ [ ~ ] |

Unicode кодтау (кириллица, кеңейтілген таңбалар жиынтығы)

Егер мәтінде бірде-бір таңба GSM кодтауына жатпаса, SMS-хабарлама Unicode кодтауында жіберіледі. Мұндай хабарлама 70 таңбаға дейін болуы мүмкін. Тек Юникод кестесіндегі (UTF-8) U+0000 - U+9999 аралығындағы таңбалар қолдау көрсетіледі, қалған таңбалар қазіргі уақытта қолдау көрсетілмейді.

SMS ұзындығы

Тек GSM алфавит таңбаларынан тұратын бір хабарламаның ұзындығы - 160 таңба.

Unicode кодтауындағы бір хабарламаның ұзындығы - 70 таңба.

SMS-хабарламаның ұзындығы көрсетілгеннен асып кетсе, ол бөліктерге - сегменттерге бөлінеді.

Назар аударыңыз! Әрбір SMS сегменті жеке хабарлама ретінде жіберіледі және тарификацияланады.

Әрбір SMS сегменті арнайы тақырыпты (бірнеше қызметтік ақпарат таңбаларын) қамтиды, бұл қабылдаушы жақта біріктіру үшін қажет, сондықтан ұзақ хабарламадағы бір сегменттің максималды ұзындығы GSM кодтауында 153 таңба және Unicode кодтауында 67 таңба құрайды.

SMS ұзындығы және сегменттер саны қалай есептелетіні туралы толығырақ.

SMS максималды ұзындығы 140 байт. Әрбір GSM алфавитінің таңбасы 7 битпен кодталады (бірнеше таңбадан басқа, олар 14 битпен кодталады). Бұл 140 байтта, SMS мәтініне бөлінген, 160 таңбаға дейін жеткізуге мүмкіндік береді (140*8/7=160). Егер SMS мәтінінде тіпті бір таңба GSM кодтауына жатпаса, барлық мәтін Unicode кодтауында жіберіледі. Бұл жағдайда бір хабарламадағы таңбалар саны 70-ке дейін азаяды, себебі Unicode әрбір таңбасы 16 битпен кодталады (140*8/16=70).

Ұзақ SMS-хабарламалар үшін тақырып (немесе UDH) пайдаланылады, ол 6 байт қызметтік ақпаратты қамтиды, бұл тек латын әріптерін пайдаланғанда 7 таңбаны немесе Юникодты пайдаланғанда 3 таңбаны алады. Сондықтан бір сегменттегі мәтіннің максималды ұзындығы GSM үшін 153 таңба және Unicode кодтауында 67 таңба құрайды.

SMS сегменттерінің саны SMS таңбалар саны
GSM кодтау Unicode кодтау
1 160 70
2 306 134
3 459 201
4 612 268
5 765 335
6 918 402
7 1071 469
8 1224 536
9 1377 603
10 1530 670
Назар аударыңыз! SMPP протоколының спецификациясы 128 сегментке дейінгі хабарламаларды жасауға мүмкіндік бергенімен, іс жүзінде ұялы байланыс операторлары 3 сегменттен асатын хабарламаларды сапалы жеткізуге кепілдік бермейді. Кейбір операторлар 10 сегменттен асатын хабарламаларды мүлде жеткізбейді немесе тек кейбір сегменттерін жеткізе алады, осылайша хабарламаның бүкіл мәтінін мағынасыз етеді. Сондықтан біз ұзындығы 3 сегменттен аспайтын хабарламаларды жіберуді ұсынамыз. Ұзын SMS-хабарламаларды жеткізу байланыс операторларымен кепілдендірілмейді.