Codificación y número de caracteres
Generalmente, el texto del SMS tiene que ser transferido con codificación UTF-8 (y posiblemente con codificación urlen) a la pasarela. Tienes la opción de utilizar el parámetro “encoding” para decidir si quieres enviar un SMS normal de 7 bits o UCS-2 SMS.
Alfabeto estándar GSM de 7 bits (GSM 03.38)
Sección titulada «Alfabeto estándar GSM de 7 bits (GSM 03.38)»El juego de caracteres básico contiene todos los caracteres que pueden transmitirse con un SMS normal de 7 bits. Cada uno de estos caracteres cuenta como 1 carácter. El juego de caracteres ampliado también puede transferirse, pero requiere 2 caracteres para su transmisión. Los SMS que contienen más de 160 caracteres se envían al teléfono como varios SMS, cada uno con 153 caracteres, y el teléfono los concatena en un solo mensaje.
Basic Character Set
| 0x00 | 0x10 | 0x20 | 0x30 | 0x40 | 0x50 | 0x60 | 0x70 | |
|---|---|---|---|---|---|---|---|---|
| 0x00 | @ | Δ | SP | 0 | ¡ | P | ¿ | p |
| 0x01 | £ | _ | ! | 1 | A | Q | a | q |
| 0x02 | $ | Φ | ” | 2 | B | R | b | r |
| 0x03 | ¥ | Γ | # | 3 | C | S | c | s |
| 0x04 | è | Λ | ¤ | 4 | D | T | d | t |
| 0x05 | é | Ω | % | 5 | E | U | e | u |
| 0x06 | ù | Π | & | 6 | F | V | f | v |
| 0x07 | ì | Ψ | ’ | 7 | G | W | g | w |
| 0x08 | ò | Σ | ( | 8 | H | X | h | x |
| 0x09 | Ç | Θ | ) | 9 | I | Y | i | y |
| 0x0A | LF | Ξ | * | : | J | Z | j | z |
| 0x0B | Ø | ESC | + | ; | K | Ä | k | ä |
| 0x0C | ø | Æ | , | < | L | Ö | l | ö |
| 0x0D | CR | æ | - | = | M | Ñ | m | ñ |
| 0x0E | Å | ß | . | > | N | Ü | n | ü |
| 0x0F | å | É | / | ? | O | § | o | à |
- LF es un control de avance de línea.
- CR es un control de retorno de carro, o relleno.
- ESC es un control de Escape.
- SP es un carácter de espacio.
Ampliación del juego de caracteres básicos
| 0x00 | 0x10 | 0x20 | 0x30 | 0x40 | 0x50 | 0x60 | 0x70 | |
|---|---|---|---|---|---|---|---|---|
| 0x00 | ||||||||
| 0x01 | ||||||||
| 0x02 | ||||||||
| 0x03 | ||||||||
| 0x04 | ^ | |||||||
| 0x05 | € | |||||||
| 0x06 | ||||||||
| 0x07 | ||||||||
| 0x08 | { | |||||||
| 0x09 | } | |||||||
| 0x0A | FF | |||||||
| 0x0B | SS2 | |||||||
| 0x0C | [ | |||||||
| 0x0D | CR2 | ~ | ||||||
| 0x0E | ] | |||||||
| 0x0F | | |
- FF es un control de salto de página. Si no se reconoce, se tratará como LF.
- CR2 es un carácter de control. No se codificará ningún carácter codificado en esta posición.
- SS2 es un segundo control Single Shift Escape reservado para futuras ampliaciones.
UCS-2 (Unicode SMS)
Sección titulada «UCS-2 (Unicode SMS)»Con UCS-2 es posible transmitir 1.112.064 caracteres. Estos caracteres representan casi todos los idiomas hablados. Cada carácter cuenta como 1 carácter, pero Unicode SMS sólo puede constar de 70 caracteres, o consistir en múltiples SMS concatenados, cada uno con 67 caracteres.
SMS concatenados
Sección titulada «SMS concatenados»Por razones técnicas, con un sms sólo se pueden transferir 160 caracteres de texto (70 caracteres de texto Unicode). Si envía un SMS con más caracteres, se envía un SMS concatenado. Excesivamente largo Los mensajes de texto / Multi-SMS (SMS concatenados, SMS largos) son mensajes parciales y se transmiten por separado. Cada parte es un mensaje de texto independiente. El receptor vuelve a convertir las partes en un texto coherente. Para determinar que el mensaje es un mensaje concatenado y qué parte pertenece a qué parte se necesitan 7 caracteres (o 3 en Unicode) de los caracteres disponibles. Esta es la razón por la que una parte de un SMS demasiado largo sólo puede constar de 153 caracteres (o 67 en Unicode) de su texto. El máximo es de 1530 caracteres con un mensaje concatenado (o 670 caracteres para Unicode).