Porque a resposta do SMS diz queued: a fila de envio, os lotes e o que dizer ao cliente

WhatsApp e APIs·· 30 visualizações· 3 min de leitura

A resposta curta: queued quer dizer que o pedido foi aceite e a mensagem está na fila, à espera da vez. Não é um erro e não se repete o pedido. Sem agendamento, a API tenta enviar logo e responde com o estado real: sent se saiu, failed se falhou, ou queued se tiver de esperar. O seu sistema guarda o id e confirma o estado mais tarde.

Quando uma mensagem fica na fila

Situação O que acontece
Um envio isolado Normalmente sai logo; se tiver de esperar a vez, volta queued.
Um envio em lote (POST /v1/sms/messages/batch) As mensagens entram na fila, que sai de minuto a minuto; até 20 saem logo. As outras seguem nos minutos seguintes.
Uma mensagem que falha ao sair É tentada mais 2 vezes, de 10 em 10 minutos. Se continuar a falhar, fica failed e os créditos voltam ao saldo.

O que dizer ao cliente

No ecrã do seu site ou da sua aplicação, não escreva «enviámos-lhe um SMS» só porque o pedido foi aceite. Uma frase mais honesta funciona melhor: «Vai receber a confirmação por SMS dentro de momentos.» Se mais tarde o estado passar a failed, o seu sistema pode mostrar outra via, como o e-mail.

Não volte a enviar só porque a resposta disse queued. A mensagem já está a caminho: um segundo pedido com outra Idempotency-Key dá dois SMS ao cliente e gasta créditos a dobrar. Se repetir por falha de ligação, use sempre a mesma chave.

Como acompanhar até ao fim

1 Guarde o id que veio na resposta, junto do evento.
2 Confirme o estado com GET /v1/sms/messages/{id} passados uns minutos, ou registe um webhook para ser avisado quando cada SMS é enviado ou falha.
3 Num lote, leia results: cada mensagem tem o seu index (a posição no pedido), o seu id e o seu estado, ou rejected com o motivo em error.
4 Se ficar failed, veja o motivo, corrija o que for do seu lado e decida se reenvia ou usa outro canal.

Os estados, um a um, estão em acompanhar cada SMS transaccional.

Avisos urgentes, um a um; avisos que podem esperar, em lote. Um envio isolado no momento do evento tenta sair logo; o lote serve para muitos avisos de uma vez, que seguem pela fila nos minutos seguintes.

Quer avisos que saem sozinhos e um estado claro para cada um? Veja o SMS Transaccional.

Ver o SMS Transaccional

VEJA TAMBÉM

Acompanhar cada SMS transaccional: o id da mensagem, o número tapado, os estados e o charged

Erros e estados das mensagens na API de SMS: o que significa cada um e o que fazer

Síncrono ou assíncrono: porque a confirmação de um pagamento ou de um SMS chega depois

Histórico e agendamento de SMS: estados, filtros e o que acontece quando uma mensagem falha

Tempos de espera, repetições e idempotência: como não cobrar duas vezes ao cliente

Uma função para enviar SMS em PHP, Python ou Node.js, com tempo limite e tratamento de erros

PRODUTO RECOMENDADO

Alojamento de sites com cPanel

Domínio e SSL incluídos, cópias diárias e o painel que já conhece. desde $6.60/mês (plano de 3 anos, com cupão)

Ver planos
Esta resposta foi útil? A sua resposta ajuda-nos a melhorar este artigo.