Contenidos
- Convertidor PDU de SMS
- Trama de envío (SMS-SUBMIT)
- Trama de recepción (SMS-DELIVER)
- SCA (Service Center address):
- PDU-TYPE:
- MR (Menssage Reference)
- OA(Originator Address)
- DA (Destination Address)
- PID (Protocol Identifier)
- DCS (Data Coding Scheme)
- SCTS (Service Center Time Stamp)
- VP (Validity Period)
- UDL (User Data Length)
- UD (User Data)
- Ejemplos:
- Abreviaturas:
Hay dos formas de enviar y recibir mensajes SMS, en modo texto y en modo PDU (Protocol Description Unit). El modo texto es una representación de la cadena de bits contenida en el campo de datos del modo PDU.
No todos los teléfonos soportan el modo texto, sobre todo los teléfonos más antiguos. El envío de mensajes en modo texto es más sencillo ya que no requiere de ningún tipo de codificación del texto que se quiere enviar.
El modo PDU permite enviar datos que se pueden obtener, por ejemplo, de un microcontrolador. En esta ocasión se explicará el funcionamiento del modo PDU en formato de 7 y 8 bits.
Convertidor PDU de SMS
Trama de envío (SMS-SUBMIT)
1-12 Bytes | 1 Byte | 1 Byte | 2-12 Bytes | 1 Byte | 1 Byte | O,1 o 7 Bytes | 1 Byte | 0-140 Bytes |
SCA | TIPO PDU | MR | DA | PID | DCS | VP | UDL | UD |
Trama de recepción (SMS-DELIVER)
1-12 Bytes | 1 Byte | 2-12 Bytes | 1 Byte | 1 Byte | 7 Bytes | 1 Byte | 0-140 Bytes |
SCA | TIPO PDU | OA | PID | DCS | SCTS | UDL | UD |
SCA (Service Center address):
Número de teléfono del Centro de Servicio
La longitud de este campo puede variar entre 1 y 12 bytes, como mínimo es un byte.
1 Byte | 0-1 Byte | Número de teléfono del centro de servicios 0-10 bytes | |||||||||
LONGITUD | TIPO | DIGITO 2 | DIGITO 1 | DIGITO 4 | DIGITO 3 | DIGITO 6 | DIGITO 5 | DIGITO 8 | DIGITO 7 | DIGITO 10 ó F | DIGITO 9 |
Longitud: Número de bytes requeridos para el número del centro de servicios mas un byte para el tipo de número.
Tipo de número: 81 para números nacionales y 91 para internacionales. Para mas información ver GSM 04.08 capítulo 10.5.4.6
Teléfono: Número telefónico del SMCS, se deben intercambiar los dígitos. Si es un número impar de dígitos es necesario rellenar con una F.
Si el campo longitud es cero, se toma como número del centro de servicios el que este configurado por defecto en el teléfono móvil.
PDU-TYPE:
El formato de este campo varia dependiendo si se trata de un mensaje para envío o de un mensaje recibido.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
ENVIO | RP | UDHI | SRR | VPF | RD | MTI | ||
RECEPCION | RP | UDHI | SRI | MMS | MTI |
RP (Reply Path): Indica si existe ruta de respuesta.
UDHI (User Data Header Indicator):Indica si los datos de usuario contienen cabecera.
SRR (Status Report Request):Indica si se ha solicitado un informe de estado.
SRI (Status Report Indication):Indica si el SME ha solicitado un informe de estado.
VPF (Validity Period Format):Indica si el campo VP está presente y el formato.
0 0 Campo VP no está presente.
0 1 Reservado
1 0 Campo VP presente como entero (relativo).
1 1 Campo VP presente como un semi-octeto (absoluto).
MMS (More Messages to Send): Indica si existen mas mensajes en el SMSC para enviar al MS.
RD (Reject Duplicate):Rechazar duplicados. Indica al SMSC que acepte (0) o rechace (1) un SMS-SUBMIT de un mensaje que todavía está almacenado en el SMSC el cual tiene el mismo MR y DA y proviene del mismo OA.
MTI (Message Type Indicator): Tipo de mensaje.
0 0 SMS-DELIVER (SMSC ==> MS)
0 0 SMS-DELIVER REPORT (MS ==> SMSC, es generado automáticamente por el móvil, después de recibir un SMS-DELIVER)
0 1 SMS-SUBMIT (MS ==> SMSC)
0 1 SMS-SUBMIT REPORT (SMSC ==> MS)
1 0 SMS-STATUS REPORT (SMSC ==> MS)
1 0 SMS-COMMAND (MS ==> SMSC)
1 1 Reservado
MR (Menssage Reference)
Número sucesivo de 0 a 255. Para los mensajes enviados se puede rellenar con 0x00, el teléfono móvil se encarga de rellenar este campo con el número que corresponda.
OA(Originator Address)
Numero de teléfono del emisor del mensaje SMS.
1 Byte | 0-1 Byte | Número de teléfono del centro de servicios 0-10 bytes | |||||||||
LONGITUD | TIPO | DIGITO 2 | DIGITO 1 | DIGITO 4 | DIGITO 3 | DIGITO 6 | DIGITO 5 | DIGITO 8 | DIGITO 7 | DIGITO 10 ó F | DIGITO 9 |
Longitud: Número de bytes del número de origen del SMS.
Tipo de número: 81 para números nacionales y 91 para internacionales. Para mas información ver GSM 04.08 capítulo 10.5.4.6
Teléfono: Número telefónico de origen del SMS, se deben intercambiar los dígitos. Si es un número impar de dígitos es necesario rellenar con una F.
Si el campo longitud es cero, se toma como número del centro de servicios el que este configurado por defecto en el teléfono móvil.
DA (Destination Address)
Numero de teléfono del receptor del mensaje SMS, tiene el mismo formato que el campo OA.
PID (Protocol Identifier)
Indica al SMSC como procesar el mensaje SMS ( FAX, VOZ, etc.).
DCS (Data Coding Scheme)
Indica la codificación de los datos de usuario.
Grupo de codificación bits 7-4 | bits 3-0 |
0000 | Indicación de alfabetoMensaje sin especificación en el MS0000 Alfabeto por defecto (Datos de usuario codificados en formato de 7 bit)0001-1111 reservado |
0001-1110 | Grupos de codificación reservados. |
1111 | Codificación de datos/Clase del mensajebit 3 esta reservado, siempre 0 bit 2 (codificación del mensaje) 0 Alfabeto por defecto (codificación de 7 bit por caracter en los datos de usuario) 1 (codificación de 8 bit por caracter en los datos de usuario)bit 1 bit 0 (message class) 0 0 Class0 el mensaje es escrito inmediatamente en el display 0 1 Class1 ME (Mobile Equipment) el mensaje se almacena en el ME 1 0 Class2 SIM specific message el mensaje se almacena en el SIM 1 1 Class3 TE (Terminate Equipment) el mensaje se almacena en el TE |
SCTS (Service Center Time Stamp)
Indica cuando se ha recibido el mensaje SMS en el SMSC.
Año | Mes | Día | Hora | Minuto | Segundo | Zona horaria | Dígito 2 | Dígito 1 | Digito 2 | Digito 1 | Digito 2 | Dígito 1 | Digito 2 | Digito 1 | Digito 2 | Digito 1 | Digito 2 | Digito 1 | Dígito 2 | Digito 1 |
VP (Validity Period)
Indica el tiempo de validez del mensaje SMS, el formato depende del valor de VP (relativo o absoluto).
Para el formato relativo el valor se calcula según la siguiente tabla:
Valor | Tiempo |
0-143 | (VP +1) x 5 minutos |
144-167 | 12 horas + ((VP-143) x 30 minutos) |
168-196 | (VP-166) x 1 día |
197-255 | (VP-192) x 1 semana |
Para el formato absoluto, se indica la fecha y la zona horaria, intercambiando los dígitos:
Año | Mes | Día | Hora | Minuto | Segundo | Zona horaria | Dígito 2 | Dígito 1 | Digito 2 | Digito 1 | Digito 2 | Dígito 1 | Digito 2 | Digito 1 | Digito 2 | Digito 1 | Digito 2 | Digito 1 | Dígito 2 | Digito 1 |
UDL (User Data Length)
Indica el número de caracteres de los datos de usuario.
UD (User Data)
Datos de usuario. La codificación depende del formato seleccionado en el campo DCS. En el formato de 8 bits los caracteres se toman directamente de la codificación hexadecimal de cada caracter, pero en el formato de 7 bits es necesario realizar una agrupación de los septetos para formar octetos.
Los caracteres se codifican en binario formando septetos, a continuación se cogen los bits menos significativos del siguiente septeto para formar un octeto y se colocan como bits mas significativos del octeto que se está formando, este proceso se repite hasta finalizar todos los caracteres.
Paso | Caracter | H | o | l | a |
1 | HEX | 48 | 6F | 6C | 61 |
2 | Binario | 1001000 | 1101111 | 1101100 | 1100001 |
3 | Bits a desplazar | 1001000 | 1101111 | 1101100 | 1100001 |
4 | Bits desplazados | 11001000 | 00110111 | 00111011 | 00001100 |
5 | Conversión HEX | C8 | 37 | 3B | 0C |
Ejemplos:
1ª fila es el campo de la trama PDU.
2ª fila explicación.
3ª fila trama PDU ha enviar.
LONGITUD SCA | TIPO PDU | MR | LONGITUD NUMERO DESTINO | TIPO NUMERO DESTINO | NUMERO DESTINO | PID | DCS | VP | UDL | UD |
SMSC por defecto | 7 dígitos | Nacional | Número 1234567 | 7 bits | 4 días | 5 caracteres | «Hello» codificado en formato de 7 bits | |||
00 | 11 | 00 | 07 | 81 | 214365F7 | 00 | 00 | AA | 05 | E8329BFD06 |
LONGITUD SCA | TIPO NUMERO SCA | NUMERO SCA | TIPO PDU | MR | LONGITUD NUMERO DESTINO | TIPO NUMERO DESTINO | NUMERO DESTINO | PID | DCS | VP | UDL | UD |
+491710760000 | 1234567 | 8 bits | 4 días | 5 caracteres | «Hello» codificado en formato de 8 bits | |||||||
07 | 91 | 947101670000 | 11 | 00 | 07 | 81 | 214365F7 | 00 | F6 | AA | 05 | 68656C6C6F |
LONGITUD SCA | TIPO NUMERO SCA | TIPO PDU | MR | LONGITUD NUMERO DESTINO | TIPO NUMERO DESTINO | NUMERO DESTINO | PID | DCS | VP | UDL | UD |
123456789 | 7 bits | 24 horas | 4 caracteres | «Hola» codificado en formato de 7 bits | |||||||
01 | 80 | 11 | 00 | 09 | 81 | 21436587F9 | 00 | 00 | A7 | 04 | C8373B0C |
Abreviaturas:
SMSC: Short Message Service Center .
MS: Mobile Station.
SME: Short Message Entity.
SMS-MO: Short Message Service-Mobile Originated.
OA: Originator Address.
DA: Destination Address.
Fuente de la información: zonabot.com