BroadNet
Fundamentos Iniciante

Fundamentos de SMS

Como um SMS é construído, codificado e segmentado — do limite de 160 caracteres e do GSM 03.38 aos relatórios de entrega e ao A2P vs P2P.

5 lições4 min de leituraBaseado em padrões · ritmo próprio
DiagramaComo uma mensagem A2P chega ao telefone
  1. A sua aplicaçãoEnvia via REST API ou SMPP
  2. Plataforma BroadNetValida, encaminha e fatura cada mensagem
  3. SMSC da operadoraConexão direta com a operadora
  4. Dispositivo do assinanteA mensagem é entregue
O relatório de entrega (DLR) regressa pelo mesmo caminho até o seu webhook
Lição 01

A anatomia de um SMS

O SMS — Short Message Service — foi normalizado como parte do GSM e transporta uma carga útil de 140 bytes. Esse tamanho fixo é a origem de todos os limites de caracteres que vai encontrar: tudo sobre o comprimento do SMS resume-se, na verdade, a caber em 140 bytes.

Uma mensagem viaja como MO (mobile-originated — enviada a partir de um telemóvel) ou MT (mobile-terminated — entregue a um telemóvel). O tráfego de aplicação para pessoa é quase todo MT: a sua plataforma submete a mensagem e a rede entrega-a ao assinante.

Entre a submissão e o telemóvel está o SMSC (Short Message Service Centre), que armazena a mensagem e a reencaminha quando o destinatário está acessível. Se o telefone estiver desligado, o SMSC guarda a mensagem até o período de validade expirar.

Lição 02

Codificação: GSM 7 bits vs UCS-2

O texto latino simples usa o alfabeto predefinido GSM de 7 bits definido no GSM 03.38. Como cada caráter ocupa 7 bits, 140 bytes contêm 160 caracteres — o conhecido limite de segmento único.

Um punhado de símbolos comuns (como { } [ ] ~ ^ | \ e o sinal de euro) está numa tabela de extensão e custa dois caracteres cada. É fácil ultrapassar o limite de um segmento sem se aperceber quando o texto contém um destes.

No momento em que uma mensagem contém qualquer caráter fora desse alfabeto — árabe, cirílico, chinês ou um emoji — toda a mensagem muda para UCS-2, uma codificação Unicode de 16 bits. Agora cada caráter ocupa 2 bytes, pelo que um único segmento contém apenas 70 caracteres.

Lição 03

Segmentação e concatenação

Quando o texto excede um segmento, é dividido e remontado no telemóvel. Para isso, é acrescentado a cada parte um pequeno User Data Header (UDH), que consome espaço da carga útil. É por isso que os segmentos concatenados contêm menos caracteres do que um segmento isolado.

No GSM de 7 bits, os segmentos concatenados contêm 153 caracteres cada, em vez de 160; no UCS-2 contêm 67 em vez de 70. Uma mensagem latina de 300 caracteres tem três segmentos; a mesma extensão em árabe tem cinco. A faturação é por segmento, pelo que a codificação determina diretamente o custo.

Um erro comum e evitável é uma mensagem que fica mesmo acima de um limite — 161 caracteres passam a ser dois segmentos e duplicam o preço de cada envio. Cortar algumas palavras, ou remover um símbolo da tabela de extensão, pode reduzir a fatura a metade em grande escala.

Lição 04

Relatórios de entrega e estado

Um relatório de entrega (DLR) é a confirmação da rede sobre o que aconteceu a uma mensagem. Reporta um estado final, como entregue, não entregue, expirado ou rejeitado, e muitas vezes um código de erro específico da operadora que explica o motivo.

Os DLR são essenciais para a reconciliação e a medição da qualidade. Solicitá-los apenas onde são consumidos mantém o tráfego limpo; um recibo de entregue confirma que o telemóvel recebeu a mensagem, enquanto um recibo de expirado significa que nunca esteve acessível dentro do período de validade.

Como os códigos de erro das operadoras variam entre rotas, os remetentes mais maduros normalizam-nos numa taxonomia consistente — assinante ausente, número inválido, bloqueado por spam — para que a qualidade possa ser comparada entre destinos.

Lição 05

A2P vs P2P

O P2P (pessoa para pessoa) é o SMS conversacional que um humano envia a outro. O A2P (aplicação para pessoa) é tráfego programático de software: alertas, OTP, notificações e marketing. Parecem idênticos no telemóvel, mas são comercial e tecnicamente distintos.

As operadoras cobram e encaminham o A2P de forma diferente e esperam que chegue através de canais oficiais e faturados. O A2P entregue através de rotas P2P para evitar taxas de terminação é uma rota cinzenta — mais barata à partida, mas propensa a filtragem, má capacidade de entrega e exposição de conformidade.

Compreender esta divisão é a base para tudo o que se segue: a qualidade do encaminhamento, as regras de sender ID e as firewalls existem porque as operadoras têm de distinguir o tráfego A2P legítimo e pago do desvio.

Principais conclusões
  • A carga útil de um SMS é de 140 bytes; é por isso que o GSM de 7 bits cabe em 160 caracteres e o UCS-2 apenas em 70.
  • Qualquer caráter que não seja GSM (árabe, emoji) muda toda a mensagem para UCS-2 e reduz o limite.
  • Os segmentos concatenados custam espaço de cabeçalho (153 / 67 caracteres) e paga-se por segmento.
  • Os DLR fecham o ciclo da entrega; o A2P e o P2P parecem iguais, mas são encaminhados e cobrados de forma diferente.
Coloque em prática

Construa com base no que você acabou de aprender.

Fale com um engenheiro de verdade sobre o seu caso de uso ou abra a documentação para desenvolvedores e envie uma mensagem pelos canais descritos neste curso.

Porque aprender com BroadNet
  • Desde2003
  • Países200+
  • Links do operador1,000+