>> Tecnologia Eletrônica >  >> Celulares e Acessórios >> Mensagens de Texto

O que é SMS Binário (Unicode SMS)? Codificação, Suporte e Como Enviar

SMS Binário (comumente chamado Unicode SMS) usa codificação de caracteres de 8 bits (ou 16 bits) em vez do padrão GSM-7 de 7 bits, permitindo scripts não latinos, emojis e símbolos especiais.

Mecânica da Codificação

CodificaçãoBits/CaractereMáx. Caracteres/SegmentoCharset
GSM-7 (Padrão)7160Latim, Grego, poucos símbolos
UCS-2 / UTF-16 (Unicode)1670Todo Unicode: CJK, Árabe, Emoji, etc.
8-bit (Binário)8140Bytes brutos (WAP push, config OTA, toques)

O que "SMS Binário" Geralmente Significa na Prática

  • A maioria dos usuários/dispositivos refere-se a Unicode SMS (UCS-2) quando diz "SMS binário".
  • O verdadeiro SMS binário de 8 bits é para máquina-a-máquina: provisionamento OMA, SIM toolkit, atualizações de firmware — não para texto humano.
  • Quando você digita 😀 ou 漢字, seu telefone muda automaticamente para UCS-2, reduzindo o comprimento do segmento de 160 → 70 caracteres.

Exemplos de Caracteres em Unicode SMS

CaracterePonto de Código UnicodeUTF-16 HexSegmentos (70 chars)
éU+00E900E91
中U+4E2D4E2D1
😀U+1F600D83D DE00 (par surrogate)1 (conta como 2 caracteres)
🇺🇸U+1F1FA + U+1F1F8D83C DDFA D83C DDF81 (4 caracteres)

Suporte de Dispositivos e Redes

  • Smartphones modernos (iOS, Android): Envio/recebimento Unicode completo.
  • Feature phones (pré-2010): Frequentemente apenas GSM-7 → Unicode aparece como □, ?, ou ausente.
  • SMSC da operadora: Deve suportar UCS-2 (virtualmente todas as modernas suportam).
  • Roaming: Geralmente transparente; algumas interconexões legadas podem corromper.

Como Enviar Unicode/SMS Binário

  1. App de mensagens padrão: Apenas digite emoji/caracteres estrangeiros — codifica automaticamente.
  2. Ative "Unicode" ou "Caracteres especiais" nas configurações (alguns OEMs Android ocultam isso).
  3. API/SMPP: Defina data_coding=0x08 (UCS-2) no PDU submit_sm. Payload = bytes UTF-16BE.
  4. Email-para-SMS: Geralmente converte para GSM-7 → emojis perdidos. Use API.

Implicações de Custo

  • Cada segmento Unicode de 70 caracteres costuma ser cobrado como múltiplos SMS (ex.: 160 GSM-7 = 1 SMS; 160 Unicode = 3 SMS).
  • Verifique preços da operadora/API — pode custar 3× mais para textos com muitos emojis.

Conclusão Principal

SMS Binário ≠ texto humano com emojis. Para usuários: é Unicode SMS (UCS-2). Para desenvolvedores: verdadeiro SMS binário é payload de máquina de 8 bits. Sempre verifique a capacidade do destinatário antes de enviar conteúdo não-GSM-7.