Resposta curta
Os status do relatório de entrega de SMS informam ao remetente o que aconteceu com a mensagem depois que a operadora a aceitou. Nas confirmações SMPP 3.4, DELIVRD significa entregue no aparelho, UNDELIV não entregável, EXPIRED prazo de validade esgotado e REJECTD recusada pela rede. As APIs HTTP costumam convertê-los em status como DELIVERED ou FAILED.
O que significam os valores de stat do SMPP?
A especificação SMPP 3.4 traz um formato de exemplo de confirmação com um campo stat que indica o estado final da mensagem. O texto exato da confirmação varia conforme o SMSC, mas estes valores são amplamente usados.
| stat | Significado | Causa típica |
|---|---|---|
| DELIVRD | Entregue no aparelho | Sucesso normal |
| UNDELIV | Não entregável | Número inválido, inativo ou bloqueado |
| EXPIRED | Prazo de validade esgotado antes da entrega | Celular desligado ou sem sinal por tempo demais |
| REJECTD | Recusada pela rede | ID de remetente (Sender ID) não registrado, conteúdo ou rota bloqueados |
| DELETED | Excluída antes da entrega | Cancelada no SMSC |
| ACCEPTD ou UNKNOWN | Estado aceito ou estado inválido/desconhecido | Específico do SMSC; confirme com seu provedor |
Como os status de webhook da plataforma se relacionam?
As APIs padronizam as confirmações das operadoras em status mais simples. Na plataforma OmniChannels.ai, todos os canais informam SUBMITTED, SENT, DELIVERED, READ, FAILED e REJECTED. SUBMITTED e SENT são intermediários; DELIVERED, FAILED e REJECTED são finais para SMS. Os status podem chegar fora de ordem, então nunca deixe um SENT atrasado sobrescrever um DELIVERED.
Como ler uma confirmação de entrega bruta?
- Associe o id da confirmação ao message_id retornado no submit_sm_resp.
- Leia stat para o estado final e err para o código de erro da operadora.
- Compare submit date e done date para ver quanto tempo a entrega levou.
- Em mensagens longas, consolide as confirmações de todos os segmentos antes de marcar a mensagem como entregue.
Quais são os limites dos relatórios de entrega?
Algumas operadoras não enviam confirmações ou as enviam com atraso, e outras informam a entrega quando a mensagem chega à rede, e não ao celular. Confirmações DELIVRD falsas são um sinal conhecido de rotas cinzas (grey routes). Trate a confirmação como forte indício, não como prova de que a mensagem foi lida.
