SMPP Data Coding Scheme (DCS) визначає кодування символів у SMS-повідомленнях, що впливає на їх відображення на пристроях одержувачів. SMPP підтримує кілька кодувань, включаючи GSM 7-bit, UCS-2 (Unicode), 8-bit binary, а також різні національні алфавіти. Вибір кодування важливий, оскільки він впливає на максимальну довжину повідомлення та сумісність із пристроями.
Правильне налаштування DCS дозволяє уникнути помилок відображення тексту, проблем з обрізанням повідомлень та збільшених витрат на надсилання.
DCS в SMPP представлений одним байтом (8 біт), який містить інформацію про кодування, тип повідомлення та додаткові параметри.
Біт | Значення |
---|---|
7-4 | Зарезервовано (зазвичай 0) |
3 | Flash SMS (якщо встановлено в 1, повідомлення відображається відразу на екрані та не зберігається) |
2 | Reserved (не використовується) |
1-0 | Кодування символів |
DCS (Hex) | DCS (Dec) | Кодування | Макс. довжина повідомлення | Застосування |
---|---|---|---|---|
0x00 | 0 | GSM 7-bit | 160 символів | Стандартні SMS у латиниці |
0x04 | 4 | 8-bit binary | 140 байт | Бінарні SMS (WAP Push, OTA) |
0x08 | 8 | UCS-2 (Unicode) | 70 символів | Підтримка кирилиці, арабської, китайської |
0x10 | 16 | GSM 7-bit (Flash) | 160 символів | Миттєве повідомлення (не зберігається у телефоні) |
0x18 | 24 | UCS-2 (Flash) | 70 символів | Unicode Flash SMS |
0xF5 | 245 | GSM 7-bit із зазначенням мови | 160 символів | Національні мови (Грецька, Турецька та ін.) |
При використанні GSM 7-bit кожне повідомлення може містити до 160 символів, але при переході на Unicode (UCS-2) максимальна довжина знижується до 70 символів.
GSM 7-bit (DCS = 0x00)
Використовується за замовчуванням та підтримує такі символи:
@ £ $ ¥ è é ù ì ò Ç Ø ø Å å Δ _ Φ Γ Λ Ω Π Ψ Σ Θ Ξ Æ æ ß É ! " # ¤ % & ' ( ) * + , - . / 0-9 : ; < = > ? ¡ A-Z Ä Ö Ñ Ü § ¿ a-z ä ö ñ ü à
Додаткові символи доступні через символ escape (0x1B).
Максимальна довжина SMS:
UCS-2 (DCS = 0x08)
Unicode-формат, який використовується для підтримки кириличних, арабських, китайських та інших символів.
Максимальна довжина SMS:
8-bit binary (DCS = 0x04)
Використовується для передачі бінарних даних, таких як WAP Push, налаштування OTA (Over-The-Air), ringtones та логотипи.
Максимальна довжина SMS:
Якщо повідомлення довше за встановлений ліміт (160 символів для GSM 7-bit або 70 для UCS-2), воно автоматично розбивається на кілька частин і збирається у одержувача.
Приклад довгого повідомлення:
Для правильного складання використовується UDH (User Data Header), який додає метадані в кожну частину повідомлення.
У разі виникнення запитань щодо настроювання кодування в SMPP зверніться до технічної підтримки.