Como configurar o campo Prioridade SMPP
O que é o Campo Prioridade?
O Flag de Prioridade no SMPP (Short Message Peer-to-Peer Protocol) é um campo de 1 byte em PDUs SMPP como submit_sm e deliver_sm.
Ele indica a urgência de uma mensagem, influenciando como os SMSCs (Short Message Service Centers) lidam com filas, tentativas de entrega e roteamento.
Principais casos de uso incluem:
- Priorizar alertas de emergência sobre SMS promocionais
- Otimizar a alocação de recursos da rede
- Cumprir requisitos de SLA para mensagens de alta prioridade
Valores e Interpretação do Campo Prioridade
Definido no SMPP v3.4, o flag de prioridade usa um valor de 4 bits (embora apenas os valores 0-3 sejam normalmente usados):
| Prioridade (Hex) | Decimal | Descrição |
|---|---|---|
| 0x00 | 0 | Prioridade mais baixa (mensagens em massa) |
| 0x01 | 1 | Prioridade normal (SMS padrão) |
| 0x02 | 2 | Prioridade interativa (sensível ao tempo) |
| 0x03 | 3 | Prioridade mais alta (alertas de emergência) |
Como a Prioridade Afeta o Tratamento da Mensagem
1. Comportamento de Fila
Mensagens de alta prioridade avançam nas filas do SMSC. Exemplo:
Prioridade 3: Entregue antes de mensagens com Prioridade 0
2. Tentativas de Entrega
Prioridades mais altas podem receber mais tentativas de entrega. Exemplo de política SMSC:
Prioridade 3: 5 tentativas em 24 horas
Prioridade 0: 2 tentativas em 2 horas
3. Roteamento de Rede
Alguns SMSCs roteiam mensagens de alta prioridade por canais dedicados.
Exemplos de PDUs SMPP
Exemplo 1: SMS em Massa (Prioridade=0x00)
0000001D // Comprimento do Comando (29 bytes)
00000004 // ID do Comando (SubmitSM)
00000001 // Número de Sequência
00 // TON da Origem
00 // NPI da Origem
736F7572636500 // Endereço de Origem ("source")
00 // TON do Destino
00 // NPI do Destino
36353433323100 // Endereço de Destino ("654321")
00 // Classe ESM
00 // ID do Protocolo (PID)
00 // Flag de Prioridade (0x00: Mais baixa)
00 // Tempo de Entrega Agendada
00 // Período de Validade
00 // Entrega Registrada
00 // Substituir-se-Presente
00 // Codificação de Dados (DCS=0x00)
00 // ID Padrão de Mensagem SM
07 // Comprimento SM (7 septets)
C8329BFD06DDDF72 // Conteúdo ("Olá!")
Exemplo 2: Alerta de Emergência (Prioridade=0x03)
0000001D // Comprimento do Comando (29 bytes)
00000004 // ID do Comando (SubmitSM)
00000002 // Número de Sequência
00 // TON da Origem
00 // NPI da Origem
736F7572636500 // Endereço de Origem ("source")
00 // TON do Destino
00 // NPI do Destino
36353433323100 // Endereço de Destino ("654321")
00 // Classe ESM
00 // ID do Protocolo (PID)
03 // Flag de Prioridade (0x03: Mais alta)
00 // Tempo de Entrega Agendada
FF // Período de Validade (máximo)
01 // Entrega Registrada (recibo)
00 // Substituir-se-Presente
00 // Codificação de Dados (DCS=0x00)
00 // ID Padrão de Mensagem SM
0A // Comprimento SM (10 septets)
E8329BFD0E... // Conteúdo ("ALERTA: Inundação!")
Interações com Outros Campos
- Bits de Prioridade da Classe ESM: Os bits 3-2 da Classe ESM podem substituir este campo em alguns SMSCs.
- validity_period: Mensagens de alta prioridade geralmente têm validade mais curta (ex.: 1 hora vs 3 dias).
- registered_delivery: Mensagens com Prioridade 3 frequentemente exigem recibos de entrega.
Armadilhas Comuns
- Assumir que todos os SMSCs respeitam níveis de prioridade (verifique com o provedor)
- Confundir Prioridade SMPP com
TP-Status-Report-Indicationdo GSM - Definir Prioridade=3 para conteúdo não emergencial (pode violar regulamentações)
- Incompatibilidade entre Prioridade e validity_period (ex.: Prioridade=3 com validity=7 dias)
Alguns países restringem o uso de Prioridade=3 a entidades autorizadas (ex.: alertas governamentais).
Prioridade vs Bits de Prioridade da Classe ESM
| Campo | Bits | Níveis de Prioridade | Uso Típico |
|---|---|---|---|
| Flag de Prioridade SMPP | Octeto inteiro | 0-3 | Prioridade ponta a ponta |
| Classe ESM (bits 3-2) | 2 bits | 00=Normal, 01=Interativo, 10=Urgente, 11=Emergência | Priorização em nível de rede |
Conclusão
O campo Prioridade é crucial para gerenciar a urgência da entrega de SMS, mas requer coordenação cuidadosa com as capacidades do SMSC e regulamentações. Sempre teste o comportamento de prioridade com seu provedor e alinhe as configurações com as diretrizes locais de telecomunicações. Para implementações detalhadas, consulte a Seção 5.2.12 do SMPP v3.4 e a documentação do GSM 03.40.