01Как идёт подсчёт
Цену текста определяют три числа.
Кодировка, длина в этой кодировке и размер каждой части. Один символ вне GSM-7 меняет все три.
-
GSM-7: 160 символов
Латиница, цифры и обычная пунктуация, по семь бит на символ: 160 в одном SMS и 153 в каждой части, когда текст делится.
-
Unicode: 70 символов
Всё остальное — кириллица, эмодзи, «умные» кавычки, китайский — по шестнадцать бит: 70 в одном SMS и 67 в каждой части. Русский текст всегда идёт в Unicode.
-
Части: до 6
Длинный текст уходит несколькими SMS, которые телефон склеивает, и каждая часть оплачивается. SMSMeteor принимает 6 частей: 918 символов GSM-7 или 402 Unicode.
| Кодировка | 1 SMS | 2 части | 3 части | 4 части | 5 частей | 6 частей |
|---|---|---|---|---|---|---|
| GSM-7 | 160 | 306 | 459 | 612 | 765 | 918 |
| Unicode (UCS-2) | 70 | 134 | 201 | 268 | 335 | 402 |
Максимум символов для каждого числа частей. У каждой части есть 6-байтовый заголовок для склейки на телефоне, поэтому в части помещается 153 и 67 символов, а не 160 и 70.
02Справочник
Алфавит GSM-7: все 128 позиций.
Каждый символ из этой таблицы занимает одну позицию, десять символов таблицы расширения — две. Всё, чего нет ни там, ни там, переводит сообщение в Unicode.
| Младшая цифра | 0x0_ | 0x1_ | 0x2_ | 0x3_ | 0x4_ | 0x5_ | 0x6_ | 0x7_ |
|---|---|---|---|---|---|---|---|---|
| _0 | @ | Δ | SP | 0 | ¡ | P | ¿ | p |
| _1 | £ | _ | ! | 1 | A | Q | a | q |
| _2 | $ | Φ | " | 2 | B | R | b | r |
| _3 | ¥ | Γ | # | 3 | C | S | c | s |
| _4 | è | Λ | ¤ | 4 | D | T | d | t |
| _5 | é | Ω | % | 5 | E | U | e | u |
| _6 | ù | Π | & | 6 | F | V | f | v |
| _7 | ì | Ψ | ' | 7 | G | W | g | w |
| _8 | ò | Σ | ( | 8 | H | X | h | x |
| _9 | Ç | Θ | ) | 9 | I | Y | i | y |
| _A | LF | Ξ | * | : | J | Z | j | z |
| _B | Ø | ESC | + | ; | K | Ä | k | ä |
| _C | ø | Æ | , | < | L | Ö | l | ö |
| _D | CR | æ | - | = | M | Ñ | m | ñ |
| _E | Å | ß | . | > | N | Ü | n | ü |
| _F | å | É | / | ? | O | § | o | à |
Таблица расширения: по две позиции
- FFESC 0x0A
- ^ESC 0x14
- {ESC 0x28
- }ESC 0x29
- \ESC 0x2F
- [ESC 0x3C
- ~ESC 0x3D
- ]ESC 0x3E
- |ESC 0x40
- €ESC 0x65
LF и CR — переводы строки, SP — пробел, ESC открывает таблицу расширения, FF — разрыв страницы, который телефоны не показывают. Национальные таблицы сдвига для турецкого, испанского и португальского есть в стандарте, но большинство международных маршрутов их не используют. Кириллицы в GSM-7 нет.
03Частые ловушки
Символы, которые незаметно переводят текст в Unicode.
Кириллица — всегда, остальное чаще всего приходит из текстовых редакторов, телефонов с «умной» пунктуацией и копирования с сайтов. Счётчик отмечает каждый символ и предлагает обычную замену или транслит.
| Символ | Что это | Откуда берётся | Чем заменить |
|---|---|---|---|
| А Б В ж я | Кириллица | Любой текст на русском, украинском, казахском | Транслит или Unicode |
| № | Знак номера | Русская раскладка, шаблоны документов | No |
| « » “ ” | «Ёлочки» и «лапки» | Word, Google Docs, сайты | " |
| ’ ‘ | Типографские апострофы | Автозамена в редакторах и на телефонах | ' |
| – — | Короткое и длинное тире | Автозамена превращает « - » в тире | - |
| … | Многоточие | Автозамена: один символ вместо трёх точек | ... |
| невидимый | Неразрывные и тонкие пробелы | Копирование с сайтов, из PDF и таблиц | Обычный пробел |
| невидимый | Символы нулевой ширины | Мессенджеры, HTML-редакторы, CMS | Ничего: удалите их |
| 😀 👍 📦 | Эмодзи | Телефоны, маркетинговые шаблоны | Слова или бюджет на Unicode |
| á ç ł ş | Буквы с диакритикой вне GSM-7 | Европейские языки, турецкий | Буква без диакритики или Unicode |
04Примеры
Во что обходится один символ.
Одно напоминание о брони столика: кириллицей, короче, транслитом, а затем транслитом с «ёлочками» и с эмодзи. Стоимость по сегодняшнему тарифу для направления «Россия»: $0,1583 за сегмент.
Ваш столик на 4 персоны забронирован на пятницу, 20:30. Ответьте 1 для подтверждения.
Рассчитать всю рассылку| Вариант | Кодировка | Символов | Сегментов | 10 000 SMS |
|---|---|---|---|---|
| По-русски | Unicode | 85 | 2 | $3 166,00 |
| По-русски, но короче | Unicode | 65 | 1 | $1 583,00 |
| Транслитом | GSM-7 | 90 | 1 | $1 583,00 |
| Транслит с «ёлочками» | Unicode | 87 | 2 | $3 166,00 |
| Транслит с эмодзи в конце | Unicode | 93 | 2 | $3 166,00 |
05Вопросы, ответы
Вопросы о подсчёте символов.
Сколько символов помещается в одно SMS?
160 в GSM-7 — базовом алфавите из латинских букв, цифр и обычной пунктуации — или 70 в Unicode. Русский текст всегда идёт в Unicode, поэтому одно SMS на кириллице — это 70 символов. Длинный текст делится на части по 153 символа GSM-7 или 67 Unicode, и каждая часть оплачивается как отдельное SMS. SMSMeteor принимает до 6 частей: 918 символов GSM-7 или 402 Unicode.
Почему сообщение из 150 символов стоит как три SMS?
В нём есть хотя бы один символ вне GSM-7 — кириллица, типографский апостроф, тире или эмодзи, — поэтому всё сообщение уходит в Unicode: 70 символов в одном SMS и по 67 в каждой следующей части. 150 символов — это три части. Если текст на латинице, замените этот символ, и он поместится в одно SMS на 160 символов.
Выгодно ли писать транслитом?
Да, если получатели готовы его читать. Транслит идёт в GSM-7, и в одно SMS помещается 160 символов вместо 70: сообщение из 120 символов кириллицей занимает две части, а транслитом — одну, то есть стоит вдвое дешевле. Для кодов подтверждения и служебных уведомлений это обычная практика, для маркетинга решайте по аудитории.
Эмодзи считается за один символ?
Нет. Большинство эмодзи занимают две единицы Unicode, а оттенки кожи, флаги и «семейные» эмодзи — четыре и больше. Кроме того, они переводят всё сообщение в Unicode, и места для остального текста остаётся 70 символов вместо 160.
Какие символы в GSM-7 считаются за два?
Десять символов таблицы расширения: € [ ] { } ^ ~ | \ и разрыв страницы. Каждый занимает две позиции — управляющий код и сам символ, — но сообщение остаётся в GSM-7.
Считаются ли пробелы и переводы строки?
Да. Каждый пробел и каждый перевод строки — один символ в GSM-7 и одна единица в Unicode, как и буква.
SMSMeteor меняет текст, чтобы сэкономить сегменты?
Нет. API никогда не переписывает сообщение: для каждого принятого сообщения он возвращает кодировку и число сегментов. Замены и транслит в этом счётчике — подсказки, которые вы применяете сами до отправки.
Отправляется ли куда-то то, что я ввожу?
Нет. Счётчик работает на этой странице, в вашем браузере. Текст не отправляется в SMSMeteor, не записывается в журналы и не хранится.
06Ещё бесплатные инструменты
Посчитать, отформатировать, оценить.
Каждый инструмент работает на открытых данных и прямо в браузере: таблицы GSM 03.38, план нумерации каждого направления и актуальная таблица тарифов.
Все инструменты