Estructura de los SMS en formato PDU
LNº: longitud nº centro servicio. Nº de octetos (pares de caracteres hexadecimales o decimales) que forman el nº del centro de servicio más 1 octeto que indica tipo de llamada nacional o internacional. TLL: tipo de llamada: Nº C S: nº centro de servicio. (se pondrá el número del centro de servicio que utilizamos invirtiendo el orden por pares, por ejemplo: 674562345 se pondría 7654325F4, la F se pone cuando la longitud del número es impar). |
2. Estructura de los SMS en formato PDU
2.1. SMS Enviados
| DCS | TIPO PDU |
DD | PID | NR | COD | PV | LD | DATOS |
DCS: Dirección Centro de Servicio
LNº: longitud nº centro servicio. Nº de octetos (pares de caracteres hexadecimales o decimales) que forman el nº del centro de servicio más 1 octeto que indica tipo de llamada nacional o internacional. TLL: tipo de llamada: Nº C S: nº centro de servicio. (se pondrá el número del centro de servicio que utilizamos invirtiendo el orden por pares, por ejemplo: 674562345 se pondría 7654325F4, la F se pone cuando la longitud del número es impar). |
TIPO PDU: Tipo Protocolo de la Unidad de Datos
PC: Path contestación (0 No, 1 Sí) CD: Cabecera datos (0 Sin, 1 Con) PRE: Petición reporte de estado (0 No, 1 Sí) PV: campo Periodo Vigencia presente (0 0 No, 01 Reservado, Sí como entero, Sí como semiocteto) RD: permite que el centro de SMS acepte un SMS-SUBMIT para un mensaje que todavía está en el centro. (0 Sí, 1 No) TIPO: 0 1 Mensaje de envío |
DD: Dirección destino. Se rellenará igual que el campo Dirección centro de servicio, poniendo el nº de teléfono del destinatario del SMS. En el campo longitud nº se contarán por semioctetos sin contar la F en caso de que haya habido que ponerla.
Ejemplo: nº 34676543524(11=0B semioctetos) en el campo DD será 0B914376563425F4)
PID: Protocolo Identificación
Lo pondremos a 00
NR: Número de referencia
COD: Codificación trama de datos
Indica el alfabeto con el que se codifica la trama (alfabeto por defecto= codificación a 7 bits o codificación a 8 bits) e indica tipo de SMS.
|
PV: Periodo de Vigencia del sms
Valor de PV:
|
LD: Longitud de la cadena de datos
| Ejemplo: si el mensaje está formado por la siguiente cadena C8 27 33 08 El campo LD se rellenará con 04 (ya que hay 4 octetos= 2 caracteres hexadecimal) |
DATOS: Para explicar la codificación A 7 BITS usaremos un ejemplo. Codificación de la palabra HOLA:
Para transformarlo a octetos se toma el número de caracteres de la siguiente letra que nos falten para llegar a 8, cuando se hayan tomado caracteres de una letra para la anterior, esta se queda sin esos caracteres y los debe tomar de la siguiente letra
|
>> Ejemplo Envío SMS en formato PDU
Envío de un SMS con la palabra ALARMA
| A | L | A | R | M | A | |
| Hex | 41 | 4C | 41 | 52 | 4D | 41 |
| Bin | 1000001 | 100110 0 | 10000 01 | 1010 010 | 100 1101 | 10 00001 |
| 0 1000001 | 01 100110 0 | 010 10000 01 | 1101 1010 010 | 00001 100 1101 | 10 00001 |
|
| 41 | 66 | 50 | DA | 0C | 02 |
Enviamos los comandos AT …
AT+CPIN=nºpin
AT+CMGF=0 //modo PDU
AT+CMGS=19 //nº octetos que forman el SMS sin contar el campo dirección centro servicio. ( en el ejemplo cuenta hasta el 11 azul )
> 07914356060013F11100098126064321F50000A706416650DA0C02 CTRL+Z
donde …
| 07 = nº octetos que forman el campo dirección centro servicio 91 = nº con prefijo internacional 4356060013F1 = nº centro servicio 34656000131 11 = tipo PDU (SMS para enviar. Formato Periodo Vigencia Relativo(1 octeto)) 00 = número de referencia 09 = número de semioctetos (caracteres) del teléfono de envío 81 = nº sin prefijo internacional 26064321F5 = nº teléfono de envío 62064321F5 00 = protocolo identificación 00 = codificación trama de datos a 7 bits. Alfabeto por defecto A7 = periodo de vigencia del SMS 06 = nº de octetos que forman los datos del mensaje 416650DA0C02 = datos “ALARMA” codificado a 7 bits |
2.2 SMS Recibidos
| DCS | TIPO PDU |
DO | PID | NR | COD | TR | LD | DATOS |
DCS: Dirección Centro de Servicio. Será el nº centro de servicio de envio al que pertenezca el teléfono
TIPO PDU: Tipo Protocolo de la Unidad de Datos
PC: Path contestación (0 No, 1 Sí) CD: Cabecera datos (0 Sin, 1 Con) RE: Petición reporte de estado (0 No, 1 Sí). Este campo lo rellena el centro de servicio. RD: permite que el centro de SMS acepte un SMS-SUBMIT para un mensaje que todavía está en el centro. (0 Sí, 1 No) TIPO: 0 0 Tipo SMS recibido |
DO: Dirección Origen. Este campo contiene el nº del que envía el SMS
PID: Protocolo Identificación
COD: Codificación trama de datos. Indica qué tipo de codificación tienen los datos
TR: Tiempo Recepción. Indica cuando se ha recibido el SMS. Invierte el orden por pares de caracteres.
Ejemplo. Supongamos la fecha/hora: 14/03/02 a las 20:17:52 |
LD: Longitud Datos
DATOS: Datos codificados (con el alfabeto indicado en el campo codificación de datos)
>> Ejemplo recepción de SMS
Recibimos el SMS con el texto “ALARMA” el: 28/05/02 a las 15:24:59 zona 00
+CMGL: 12,1,,25
07914356060018F2040B914356554985F200002050825142950006416650DA0C02
donde …
| 07 = nº octetos que forman el campo dirección centro servicio 91 = nº con prefijo internacional 4356060018F2 = nº centro servicio 34656000812 04 = tipo PDU (SMS recibido) 0B = número de semioctetos (caracteres) del teléfono de envío 91 = nº sin prefijo internacional 4356554985F2 = nº teléfono de envío +34655594582 00 = protocolo identificación 00 = codificación trama de datos a 7 bits. Alfabeto por defecto 20508251429500 Cuando llegó el SMS: 28/05/02, 15:24:59+00 06 = nº de octetos que forman los datos del mensaje 416650DA0C02 = datos “ALARMA” codificado a 7 bits |
El manual disponía de algunos ejemplos más, que incluyo en este enlace para quien los necesite.
Bueno, otro día más. Ahora me voy un rato a hacer de mecánico. Ayer Sábado mi hijo cumplió 3 añitos y como es fan (apasionado) de Rayo MCQueen (de la película Cars) le regalé uno eléctrico que compré por Internet. El problema es que quiere “que corra como los del Youtube“, como dice él, por lo que me toca “trastear” un poquito con el coche ![]()



