Tout ce qui mérite d'être su, rien qui ne le mérite pas.
Le fossé des 160 contre 70
Si votre message tient dans un segment GSM 7 bits, vous disposez de 160 caractères par segment. L'ajout d'un tiret cadratin (—), d'une apostrophe («") ou de tout caractère arabe, chinois ou emoji transforme le message en UCS-2, réduisant ainsi la taille des segments à 70 caractères. Un message de 150 caractères tenant dans un segment GSM nécessite alors 3 segments UCS-2, triplant ainsi le coût. Pour les envois en grand volume, il est recommandé de normaliser la ponctuation en équivalent ASCII GSM-7 lors de la composition.
Concaténation (SMS multiparties)
Les messages de plus d'un segment sont divisés côté client puis assemblés par le terminal destinataire à l'aide de l'en-tête de données utilisateur (UDH). Les segments concaténés UDH font 153 caractères (GSM-7) ou 67 caractères (UCS-2) ; l'UDH utilise trois octets par segment. La plupart des agrégateurs facturent par segment et non par message : un message GSM-7 de 320 caractères est facturé comme 3 segments.
Quand utiliser délibérément UCS-2
Toujours pour les contenus en arabe, chinois, japonais, coréen, cyrillique ou emoji. Toujours pour les langues européennes comportant des signes diacritiques ne faisant pas partie de l'extension GSM-7 (par exemple, ł en polonais, ř en tchèque et ă en vietnamien). Les SMS en arabe au Moyen-Orient et en Afrique du Nord sont presque exclusivement au format UCS-2 ; prévoyez votre budget en conséquence (les messages OTP en arabe comportent généralement deux segments).
L'option 8 bits (rarement utilisée)
Le protocole SMPP prend également en charge l'encodage binaire brut 8 bits pour les données binaires, utilisé pour les commandes OTA SIM, la distribution de sonneries (années 1990) et certains cas d'utilisation M2M très spécifiques. Il est quasiment inexistant dans le trafic A2P commercial.