A rede SMS / O protocolo GSM SMS explicado

Se você opera serviços de SMS, é uma boa prática educar sua equipe sobre a rede SMS e o protocolo SMS usado para transferir mensagens dentro da rede móvel. Este guia ajuda você nesse aspecto. Ele fornece uma visão abrangente da infraestrutura SMS e do protocolo SMS usado dentro das redes móveis.

Índice
  • Termos e definições importantes (MS, SME, SMSC, MMI, PDU, SM-AL, SM-TL,...)
  • Entidades da rede SMS
  • Formato da unidade de dados do protocolo SMS (PDU)
  • Codificação de texto SMS
  • Exemplos de PDU
  • Enviando PDUs usando modems
  • O alfabeto SMS padrão
  • Glossário
Termos e definições importantes

  • MS: Estação Móvel
  • SME: Entidade de Mensagem Curta
  • SMSC: Centro de Serviço de Mensagem Curta
  • MMI: Interface Homem-Máquina
  • PDU: Unidades de Dados de Protocolo
  • SM-AL: Camada de Aplicação de Mensagem Curta
  • SM-TL: Camada de Transporte de Mensagem Curta
  • SM-RL: Camada de Retransmissão de Mensagem Curta
  • SM-LL: Camada de Enlace de Mensagem Curta

O MMI é baseado no conjunto de comandos do AT+Cellular e pode ser realizado por meio de um terminal (por exemplo, Win-Terminal, HyperTerminal, etc) ou no display de um celular.

O SM-TL fornece um serviço para a Camada de Aplicação de Mensagem Curta. Este serviço permite que o SM-AL transfira mensagens curtas para sua entidade par, receba mensagens curtas de sua entidade par e receba relatórios sobre solicitações anteriores de transferência de mensagens curtas. O SM-TL se comunica com sua entidade par usando seis PDUs (Unidades de Dados de Protocolo) diferentes:

  • SMS-DELIVER, transmitindo uma mensagem curta do SMSC para o MS
  • SMS-DELIVER-REPORT, transmitindo uma causa de falha (se necessário)
  • SMS-SUBMIT, transmitindo uma mensagem curta do MS para o SMSC
  • SMS-SUBMIT-REPORT, transmitindo uma causa de falha (se necessário)
  • SMS-STATUS-REPORT, transmitindo um relatório de status do SMSC para o MS
  • SMS-COMMAND, transmitindo um comando do MS para o SMSC

O modem SMS suporta os PDUs SMS-DELIVER e SMS-SUBMIT, conforme descrito nas seções a seguir.

2.1 SMS-DELIVER (Terminado no Móvel)

-

MTI bit 1 = 0

bit 0 = 0

2.2 SMS-SUBMIT (Originado no Móvel)

MTI bit 1 = 0

bit 0 = 1

! Atenção: Qualquer bit não utilizado será definido como zero pela entidade remetente e será ignorado pela entidade receptora !

SCA Endereço do Centro de Serviço – elemento de informação Número de telefone do Centro de Serviço
PDU Type Tipo de Unidade de Dados de Protocolo  
MR Referência da Mensagem Número sequencial (0-255) de todos os quadros SMS-SUBMIT definidos pelo modem
OA Endereço do Originador Endereço do SME originador
DA Endereço do Destinatário Endereço do SME destinatário
PID Identificador de Protocolo Parâmetro que mostra ao SMSC como processar a SM (como FAX, voz, etc)
DCS Esquema de Codificação de Dados Parâmetro que identifica o esquema de codificação dentro dos Dados do Usuário (UD)
SCTS Carimbo de Data e Hora do Centro de Serviço Parâmetro que identifica o horário em que o SMSC recebeu a mensagem
VP Período de Validade Parâmetro que identifica o tempo a partir do qual a mensagem não é mais válida no SMSC
UDL Comprimento dos Dados do Usuário Parâmetro que indica o comprimento do campo UD
UD Dados do Usuário Dados da SM
RP Caminho de Resposta Parâmetro que indica que existe um Caminho de Resposta
UDHI Indicador de Cabeçalho dos Dados do Usuário Parâmetro que indica que o campo UD contém um cabeçalho
SRI Indicação de Relatório de Status Parâmetro que indica se o SME solicitou um relatório de status
SRR Solicitação de Relatório de Status Parâmetro que indica se o MS solicitou um relatório de status
VPF Formato do Período de Validade Parâmetro que indica se o campo VP está presente
MMS Mais Mensagens para Enviar Parâmetro que indica se há mais mensagens para enviar
RD Rejeitar Duplicatas  
MTI Indicador de Tipo de Mensagem

Parâmetro que descreve o tipo de mensagem

00 significa SMS-DELIVER

01 significa SMS-SUBMIT

Descrição do parâmetro

3.1 Elemento de informação do endereço do Centro de Serviço (elemento de informação SCA)

-

len:

O octeto "len" contém o número de octetos necessários para o número do Centro de Serviço mais o byte "tipo de número".

tipo de número:

81H: o número seguinte é nacional

91H: o número seguinte é internacional

(Para mais informações, consulte o capítulo 10.5.4.6 do GSM 04.08)

octeto:

Um octeto inclui dois campos de dígitos BCD. Se o número BCD da parte chamada contiver um número ímpar de dígitos, o último dígito deve ser preenchido com uma marca de fim codificada como "FH".

Exemplo:

se você tiver o número SC +61418706700, deve digitar:

style="font-size: 14.0pt">07911614786007F0

! Observação: Se o campo "len" for definido como Zero, o modem SMS assume o valor padrão do endereço do Centro de Serviço definido pelo comando AT+CSCA

3.2 Tipo de Unidade de Dados de Protocolo (PDU Type)

SMS-SUBMIT: SMS-DELIVER:

- -

! Observação: você deve escrever o PDU-type em formato Hex, um exemplo possível é "11H" !

RP: 0 O parâmetro Reply Path não está definido neste PDU

1 O parâmetro Reply Path está definido neste PDU

UDHI: 0O campo UD contém apenas a mensagem curta

1 O início do campo UD contém um cabeçalho além da mensagem curta

SRI: (é definido apenas pelo SMSC)

0 Um relatório de status não será retornado ao SME

1 Um relatório de status será retornado ao SME

SRR: 0 Um relatório de status não é solicitado

1 Um relatório de status é solicitado

VPF: bit4 bit3

0 0 O campo VP não está presente

0 1 Reservado

1 0 O campo VP presente é representado por um inteiro (relativo)

1 1 O campo VP presente é representado por semi-octeto (absoluto)

quaisquer valores reservados podem ser rejeitados pelo SMSC

MMS: (é definido apenas pelo SMSC)

0 Mais mensagens estão esperando pelo MS no SMSC

1 Não há mais mensagens esperando pelo MS no SMSC

RD: 0 Instrui o SMSC a aceitar um SMS-SUBMIT para uma mensagem curta ainda mantida no SMSC que tenha o mesmo MR e DA de uma mensagem previamente enviada pelo mesmo OA.

1 Instrui o SMSC a rejeitar um SMS-SUBMIT para uma mensagem curta ainda mantida no SMSC que tenha o mesmo MR e DA de uma mensagem previamente enviada pelo mesmo OA.

MTI: bit1 bit0 Tipo de mensagem

0 0 SMS-DELIVER (SMSC ==> MS)

0 0 SMS-DELIVER REPORT (MS ==> SMSC, é gerado automaticamente pelo

modem, após receber um 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

(As linhas marcadas em negrito representam os recursos suportados pelo modem SMS)

! Observação: nem todo tipo de PDU é suportado pelo Centro de Serviço !

3.3 Referência de Mensagem (MR)

-

O campo MR fornece uma representação inteira (0..255) de um número de referência do SMS-SUBMIT enviado ao SMSC pelo MS.

Observação: no modem SMS, o MR é gerado automaticamente, - de qualquer forma, você deve gerá-lo - uma entrada possível é, por exemplo, "00H"

3.4 Endereço do Originador (OA) Endereço do Destinatário (DA)

OA e DA têm o mesmo formato explicado nas linhas a seguir:

-

len:

O octeto "len" contém o número de dígitos BCD

tipo de número:

81H: o número seguinte é nacional

91H: o número seguinte é internacional

(Para mais informações, consulte o capítulo 10.5.4.6 do GSM 04.08)

dígitos BCD:

O campo de dígitos BCD contém o número BCD do Destinatário, por exemplo, o Originador.

Se o número BCD da parte chamada contiver um número ímpar de dígitos, o último dígito deve ser preenchido com uma marca de fim codificada como "FH".

Exemplo:

se você tiver o número nacional 1234567, deve digitar:

style="font-size: 14.0pt">0781214365F7

3.5 Identificador de Protocolo (PID)

-

O PID é o elemento de informação pelo qual a Camada de Transporte se refere ao protocolo de camada superior sendo usado ou indica interação com um certo tipo de dispositivo telemático.

Aqui estão alguns exemplos de codificação PID:

00H: O PDU deve ser tratado como uma mensagem curta

01H: O PDU deve ser tratado como um telex

02H: O PDU deve ser tratado como um telefax grupo3

03H: O PDU deve ser tratado como um telefax grupo4

(Para mais informações, consulte o capítulo 9.2.3.9 do GSM 03.40)

! Observação: não é garantido que o SMSC suporte todas as codificações PID!

3.6 Esquema de Codificação de Dados (DCS)

-

O campo DCS indica o esquema de codificação de dados do campo UD (User Data) e pode indicar uma classe de mensagem. O octeto é usado de acordo com um grupo de codificação que é indicado nos bits 7..4. O octeto é então codificado da seguinte forma:

Grupo de codificação:

Bits 7..4

bits 3..0

0000

Indicação de alfabeto

Manuseio de mensagem não especificado no MS

0000 Alfabeto padrão (codificação de dados de 7 bits no User Data)

0001-1111 reservado

0001-1110

Grupos de codificação reservados

1111

Codificação de dados/classe de mensagem

bit 3 é reservado, definido como 0

bit 2 (codificação de mensagem)

0 Alfabeto padrão (codificação de dados de 7 bits no User Data)

1 Codificação de dados de 8 bits no User Data

bit 1 bit 0 (classe de mensagem)

0 0 Classe0 exibição imediata

0 1 Classe1 específica para ME (Mobile Equipment)

1 0 Classe2 mensagem específica para SIM

style="margin-left: 3.6pt">1 1 Classe3 específica para TE (Terminate Equipment)

O alfabeto padrão indica que o UD (User Data) é codificado a partir do alfabeto de 7 bits fornecido no apêndice A. Quando este alfabeto é usado, oito caracteres da mensagem são compactados em sete octetos, e a mensagem pode consistir em até 160 caracteres (em vez de 140 caracteres na codificação de dados de 8 bits)

Na codificação de dados de 8 bits, você pode se referir à tabela ASCII-HEX da INTEL.

Na Classe 0 (exibição imediata), a mensagem curta é escrita diretamente no display, como o modem SMS não tem display, a mensagem Classe 0 só pode ser realizada de forma indireta.

Nas Classes 1 a 3, a mensagem curta é armazenada em vários locais: ME, cartão SIM e TE.

Atualmente, a Classe 2 é suportada; se você escolher Classe 1 ou Classe 3, a mensagem curta será tratada da mesma forma que uma mensagem Classe 2.

! Nota: É recomendado usar a mensagem Classe2 ou o grupo de codificação "0000 bin" !

3.7 Carimbo de Tempo do Centro de Serviço (SCTS)

O SCTS é o elemento de informação pelo qual o SMSC informa o MS destinatário sobre o tempo de chegada da mensagem curta na entidade da Camada de Transporte do SMSC. O valor de tempo é incluído em cada SMS-DELIVER entregue ao SMSC e representa o horário local da seguinte forma:

-

O Fuso Horário indica a diferença, expressa em quartos de hora, entre o horário local e o GMT (Greenwich Mean Time).

3.8 Período de Validade (VP)

O Período de Validade é o elemento de informação que dá a um MS que envia um SMS-SUBMIT ao SMSC a possibilidade de incluir um valor de período de tempo específico na mensagem curta. O valor do parâmetro Período de Validade indica o período de tempo para o qual a mensagem curta é válida, ou seja, por quanto tempo o SMSC deve garantir sua existência na memória do SMSC antes que a entrega ao destinatário seja realizada.

-

O campo VP é dado em representação inteira ou de semi-octeto. No primeiro caso, o VP compreende 1 octeto, fornecendo a duração do período de validade, contado a partir do momento em que o SMS-SUBMIT é recebido pelo SMSC. No segundo caso, o VP compreende 7 octetos, fornecendo o tempo absoluto do término do período de validade. No primeiro caso, a representação do tempo é a seguinte:

Valor VPValor do período de validade
0-143(VP + 1) x 5 minutos (ou seja, intervalos de 5 minutos até 12 horas)
144-16712 horas + ((VP-143) x 30 minutos)
168-196(VP-166) x 1 dia
197-255(VP - 192) x 1 semana

No segundo caso, a representação do tempo é idêntica à representação do SCTS (Carimbo de Tempo do Centro de Serviço).

O caso de representação é definido no VPF (Formato do Período de Validade) no tipo PDU.

3.9 Comprimento dos Dados do Usuário (UDL) e Dados do Usuário (UD)

-

O campo UDL fornece uma representação inteira do número de caracteres dentro do campo User Data a seguir.

Exemplos de PDU

Técnico SMS

Técnico SMS

Aqui estão dois exemplos de como enviar uma mensagem curta com AT+Cellular (consulte o Apêndice B para mais detalhes sobre como enviar as mensagens SMS):

Primeiro, insira o número PIN e o Endereço do Centro de Serviço:

at+cpin="XXXX"insira o número PIN
OK
at+csca="+61418706700" insira o Endereço do Centro de Serviço (Telstra)
OK

1º exemplo:

at+cmgs=18 insira ”enviar mensagem”, 18 é o comprimento real da PDU
mensagem em octeto
> 0011000A81 4090793444 00000105E8329BFD06

digite a PDU (SMS-SUBMIT) e termine com ”ctrl Z” os caracteres em fonte fina são o Endereço de Destino, por exemplo, o próprio número de telefone (0409974344) o endereço do Centro de Serviço é o mesmo definido pelo comando at+csca

+CMGS: 0
OK
  
at+cpms?
as mensagens estão armazenadas no cartão SIM?
+CPMS: "SM" , 1   , 7 , "SM" , 1 , 7 neste cartão SIM há 1   mensagem armazenada
OK você pode armazenar no máximo 7 mensagens
  
at+cmgr=1
ler a mensagem armazenada na posição 1
+CMGR: 0,,24

07911614786007F0040B911604994743F400009930139100406B05E8329BFD06 Esta é uma PDU (SMS-

OK 

-DELIVER) enviada pelo

Centro de Serviço

2º exemplo:

at+cmgw=18          escrever mensagem na memória do cartão SIM

> 07911614786007F011000781409079344400F6AA0568656C6C6F
digite a PDU (SMS-SUBMIT) e termine com ”ctrl Z” os caracteres em fonte fina 
são o Endereço de Destino, por exemplo, o próprio número de telefone (0409974344). 
O Endereço do Centro de Serviço é „+61418706700“ 
+CMGW: 2
OK
  
at+cmgr=2

ler a mensagem armazenada na posição 2

+CMGR: 2,,18

07911614786007F011000A81407008090500F6010568656C6C6F esta é a PDU armazenada na posição 2

OK

at+cmss=2 enviar a mensagem armazenada na posição 2

+CMSS: 3 OK at+cmss=2,“0407485455“,129 enviar a mensagem armazenada na posição 2 para o endereço de destino nacional (129 = 81H) „0407485455“ at+cmss=2,“+61419877302“,145 enviar a mensagem armazenada na posição 2 para o endereço de destino internacional (145 = 91H) „+61419877302“

at+cpms? as mensagens estão armazenadas no cartão SIM?

+CPMS: "SM" , 3 , 7 , "SM" , 3 , 7 neste cartão SIM há 3 mensagens armazenadas

OK você pode armazenar no máximo 7 mensagens

at+cmgr=3 ler a mensagem armazenada na posição 3

+CMGR: 0,,24

07911614786007F0040B911604994743F400009930139100406B05E8329BFD06 Esta é uma PDU (SMS-

OK -DELIVER) enviada pelo Centro de Serviço
Apêndice A - Alfabeto Padrão Tabela técnica SMS

Abreviações:

  • MS Estação Móvel
  • SME Entidade de Mensagem Curta
  • SMSC Centro de Serviço de Mensagem Curta
  • MMI Interface Homem-Máquina
  • PDUs Unidades de Dados de Protocolo
  • SM-AL Camada de Aplicação de Mensagem Curta
  • SM-TL Camada de Transporte de Mensagem Curta
  • SM-RL Camada de Retransmissão de Mensagem Curta
  • SM-LL Camada de Ligação de Mensagem Curta
  • PDU Type Tipo de Unidade de Dados de Protocolo
  • MR Referência de Mensagem
  • OA Endereço do Originador
  • DA Endereço de Destino
  • PID Identificador de Protocolo
  • DCS Esquema de Codificação de Dados
  • SCTS Carimbo de Tempo do Centro de Serviço
  • VP Período de Validade
  • UDL Comprimento dos Dados do Usuário
  • UD Dados do Usuário
  • RP Caminho de Resposta
  • UDHI Indicador de Cabeçalho de Dados do Usuário
  • SRI Indicação de Relatório de Status
  • SRR Solicitação de Relatório de Status
  • VPF Formato do Período de Validade
  • MMS Mais Mensagens para Enviar
  • RD Rejeitar Duplicata
  • MTI Indicador de Tipo de Mensagem
  • ME Equipamento Móvel
  • TE Equipamento Terminal
  • SIM Módulo de Identidade do Assinante
  • 0 falha no telefone
  • 1 sem conexão com o telefone
  • 2 link adaptador-telefone reservado
  • 3 operação não permitida
  • 4 operação não suportada
  • 5 PIN PH-SIM necessário
  • 10 SIM não inserido
  • 11 PIN do SIM necessário
  • 12 PUK do SIM necessário
  • 13 falha no SIM
  • 14 SIM ocupado
  • 15 SIM incorreto
  • 16 senha incorreta
  • 20 memória cheia
  • 21 índice inválido
  • 22 não encontrado
  • 23 falha na memória
  • 24 string de texto muito longa (+CPBW)
  • 25 caracteres inválidos na string de texto
  • 26 string de discagem muito longa
  • 27 caracteres inválidos na string de discagem
  • 30 sem serviço de rede
  • 31 tempo limite da rede
  • 100 desconhecido
  • 265 PUK para proteção contra roubo necessário
  • 266 PUK2 para SIM necessário
  • 267 PIN2 para SIM necessário
Às vezes, a abreviatura SC (Centro de Serviço) significa o mesmo que SMSC..

O modo PDU é a configuração padrão para o modem SMS. .

Para poder ler a mensagem SMS diretamente em formato de texto, certifique-se de que o modem SMS tenha sido configurado para o modo texto..

O número de telefone pode ser inserido como um número nacional ou internacional (+61…)..

Um octeto contém dois campos de dígitos BCD, por exemplo, 11, 00 ou 0A etc..

18 é o comprimento da mensagem PDU em octetos, conforme mostrado no passo 2..

Escolher o SMSC correto

Para usar o SMS você precisa declarar o número do Centro de Serviço de Mensagens Curtas (SMSC) na Estação Móvel (MS), desde que a MS suporte o Serviço de Mensagens Curtas Originadas no Móvel (SMS-MO).

O modem SMS suporta SMS-MO.

Os números de SMSC para cada país podem ser encontrados na tabela Endereço do Centro de Serviço de SMS.

No modem SMS, você insere o número do SMSC com o comando AT+Celular:

at+csca = ”<número-SMSC>”

Se o destinatário do SMS possuir um cartão SIM da Telstra, o comando AT deve ser inserido da seguinte forma:

at+csca = "+61418706700"

Com o comando

at+csca?

você pode consultar o número atual do SMSC.

! Observação: Além do comando AT+CSCA, é possível inserir o número do SMSC antes da Unidade de Dados de Protocolo (PDU).

More information