Como configurar o campo sm_default_msg_id
O campo sm_default_msg_id
faz parte das PDUs submit_sm
e deliver_sm
no protocolo SMPP (Short Message Peer-to-Peer). Ele é usado para referenciar mensagens curtas pré-definidas (incorporadas) armazenadas no SMSC, geralmente por um ID numérico.
Detalhes do Campo
- Nome do Campo: sm_default_msg_id
- Tamanho: 1 byte (inteiro sem sinal)
- Intervalo: 0–255
- Uso: Indica qual mensagem padrão enviar (se houver)
Descrição do Uso
O campo sm_default_msg_id
permite que um usuário solicite que o SMSC envie uma mensagem pré-definida de seu armazenamento interno de mensagens. Isso pode ser útil em ambientes restritos ou para enviar mensagens padrão do sistema sem transmitir o texto completo todas as vezes.
Comportamento Padrão
- Se
sm_default_msg_id = 0
, então o conteúdo da mensagem definido pelo usuário emshort_message
é usado. - Se
sm_default_msg_id > 0
, então a mensagem com esse ID é usada, e o camposhort_message
deve geralmente estar vazio ou ser ignorado pelo SMSC.
Prática Comum
Na maioria dos sistemas e APIs modernos de SMS, o sm_default_msg_id
não é usado e geralmente é definido como 0
. O conteúdo real da mensagem é enviado via campo short_message
.
Exemplo de PDU com Valor Padrão
0000003B // Comprimento do Comando (59 bytes) 00000004 // ID do Comando: submit_sm 00000000 // Status do Comando 00000001 // Número de Sequência 00 // service_type 01 // source_addr_ton 01 // source_addr_npi 31323334 // source_addr ("1234") 00 01 // dest_addr_ton 01 // dest_addr_npi 35363738 // destination_addr ("5678") 00 00 // esm_class 00 // protocol_id 00 // priority_flag 00 // schedule_delivery_time 00 // validity_period 00 // registered_delivery 00 // replace_if_present_flag 00 // data_coding 00 // sm_default_msg_id = 0 (usar short_message) 05 // sm_length 48656C6C6F // short_message = "Hello"
Exemplo de PDU com ID de Mensagem Pré-definida
... 00 // sm_default_msg_id = 1 (usar mensagem pré-definida 1) 00 // sm_length (vazio) // short_message está vazio ou é ignorado
Quando Usar
Embora raro, você pode usar sm_default_msg_id
quando:
- Trabalhando com implementações legadas de SMSC que suportam mensagens pré-definidas
- Enviando alertas ou modelos de sistema repetitivos em alto volume armazenados no SMSC
- Seu provedor de SMS recomendar o uso desse recurso
Considerações Importantes
- Se
sm_default_msg_id > 0
, alguns SMSCs podem ignorar completamente oshort_message
. - Se ambos forem usados, o comportamento é específico da implementação. Sempre teste ou consulte a documentação.
- Definir um valor diferente de zero sem um ID de mensagem pré-definida válido pode resultar em falha de entrega ou rejeição da mensagem.
Conclusão
O campo sm_default_msg_id
é um recurso legado do protocolo SMPP que permite referenciar modelos de mensagens padrão armazenados no SMSC. Embora seja pouco usado em sistemas modernos, entender seu papel ajuda a garantir compatibilidade ao trabalhar com gateways legados ou implementações personalizadas de SMSC.
Referências
- Especificação do Protocolo SMPP 3.4
- Documentação específica do fornecedor para SMSC SMPP
More information
- Como configurar o campo Tipo de serviço SMPP
- Como configurar os campos de número de telefone SMPP
- Como configurar o campo Classe ESM do SMPP
- Como configurar o campo PID do SMPP
- Como configurar o campo de prioridade do SMPP
- Como configurar o campo de tempo agendado do SMPP
- Como configurar o campo de período de validade do SMPP
- Como configurar o campo de entrega registrada do SMPP
- Como configurar o campo Substituir se presente do SMPP
- Como configurar o campo sm_default_msg_id
- Como configurar o campo DCS do SMPP
- Como calcular o campo de comprimento SM do SMPP
- Como inserir dados no campo SM SMPP