Definición
GSM-7 es el alfabeto SMS predeterminado de 7 bits definido en la especificación 3GPP TS 23.038 (antes GSM 03.38). Permite 160 caracteres en un solo SMS, o 153 por segmento cuando el mensaje se divide.
Un SMS transporta hasta 140 octetos de datos de usuario (3GPP TS 23.040). Al empaquetar caracteres de 7 bits se obtienen 140 × 8 / 7 = 160 caracteres. GSM-7 incluye las letras latinas básicas, los dígitos, los signos de puntuación habituales y algunas letras acentuadas y griegas.
Algunos caracteres están en una tabla de extensión a la que se accede mediante un carácter de escape, por lo que cada uno cuenta como dos: el salto de página y ^ { } \ [ ] ~ | €. Así, un mensaje con varios símbolos de euro o llaves admite menos de 160 caracteres visibles.
Si cualquier carácter del mensaje queda fuera de GSM-7 y de su tabla de extensión —una letra árabe, un emoji o unas comillas tipográficas pegadas desde un procesador de textos—, todo el mensaje pasa a UCS-2, que solo admite 70 caracteres por SMS.
En los mensajes largos, un encabezado de datos de usuario ocupa espacio en cada segmento, lo que deja 153 caracteres GSM-7 por parte (152 con un número de referencia de 16 bits). Un carácter con escape nunca se divide entre dos segmentos.
Revise los mensajes antes de una campaña: sustituir unas comillas tipográficas por unas rectas puede reducir a la mitad el número de segmentos facturados.
Ejemplo
"Your code is 123456" = 19 caracteres GSM-7, 1 segmento. "Price: 20€" = 10 caracteres pero 11 septetos, porque el € se envía como escape + código.