BroadNet
Documentação·/troubleshooting-queued-messages

Porque as minhas mensagens estão presas na fila?.

Uma mensagem que permanece "na fila" — nunca chegando a DELIVRD ou UNDELIV — geralmente significa que foi aceita pelo gateway, mas ainda não foi entregue pela operadora de destino: normalmente porque está agendada para mais tarde, limitada pelo seu limite de TPS, aguardando o término do período de validade num aparelho desligado ou fora de área de cobertura, ou retida numa rota congestionada. Verifique o schtime, o seu limite de throughput e o DLR — uma mensagem só sai da fila quando a operadora devolve um recibo final.

5 minutos de leitura·Atualizado em maio de 2026Centro de desenvolvedores

Overview

Uma mensagem que permanece "na fila" — nunca chegando a DELIVRD ou UNDELIV — geralmente significa que foi aceita pelo gateway, mas ainda não foi entregue pela operadora de destino: normalmente porque está agendada para mais tarde, limitada pelo seu limite de TPS, aguardando o término do período de validade num aparelho desligado ou fora de área de cobertura, ou retida numa rota congestionada. Verifique o schtime, o seu limite de throughput e o DLR — uma mensagem só sai da fila quando a operadora devolve um recibo final.

Está agendado para mais tarde.

Se você definir o schtime (com GMT), o gateway reterá a mensagem propositalmente até esse momento, mantendo-a em fila até que o horário agendado chegue. Verifique o schtime/GMT que você enviou — um deslocamento GMT incorreto ou uma data futura é o motivo mais simples para um lote "não ser enviado". Omita o schtime para enviar imediatamente; a API REST devolve um ScheduleId quando um envio é agendado.

  • schtime (yyyyMMddhhmm) + gmt mantém a mensagem até esse horário.
  • Um deslocamento GMT incorreto pode atrasar o envio em horas.
  • Omita "schtime" para enviar agora.
  • Um lote agendado devolve um ScheduleId, não uma entrega imediata.

A aceleração é limitada pelo seu limite de TPS (Sensor de Posição do Acelerador).

Um grande lote de dados é processado na capacidade máxima da sua conta (mensagens por segundo), portanto, as mensagens posteriores permanecem na fila enquanto as anteriores são enviadas — isso é um processamento normal, não uma falha. Se o volume contínuo for importante, solicite uma taxa de transferência por segundo (TPS) maior. Envios muito grandes são melhor enviados como ficheiro de destinatários para o endpoint de envio em massa /sms/sendbulk do que como uma única solicitação enorme.

  • Grandes quantidades de água são drenadas pela tampa do TPS — as peças subsequentes aguardam.
  • Esse ritmo é o esperado, não um erro.
  • Solicitar maior capacidade de processamento para volume contínuo.
  • Use /sms/sendbulk para listas muito grandes.

O aparelho está inacessível durante o período de validade.

Se o telefone do destinatário estiver desligado ou fora da área de cobertura, o SMSC da operadora armazena a mensagem e tenta reenviá-la até que o aparelho volte a ficar online ou o período de validade expire. Durante esse período, a mensagem fica legitimamente em fila de espera. Quando a validade expira sem que a mensagem seja entregue, o DLR passa a indicar "UNDELIV/expired" (não entregue/expirada) — portanto, uma mensagem em fila de espera por um longo período geralmente se resolve sozinha assim que o aparelho volta a ficar online.

  • O recurso SMSC de armazenamento e encaminhamento tenta novamente um aparelho inacessível.
  • A mensagem permanece na fila até ser entregue ou até expirar o seu prazo de validade.
  • Ao expirar, o DLR fica com o status UNDERIV/expirado.
  • Geralmente o problema se resolve quando o telefone volta a ter sinal.

Verifique os créditos, a rota e o status real.

Se nada mudar, confirme o saldo — um envio pode falhar com HTTP 18 (créditos insuficientes) — e se o ID do remetente e a rota estão aprovados para o destino. Não infira o estado a partir da ausência de um webhook: consulte diretamente o status de cada mensagem (pela API HTTP legada: /websmpp/websmsstatus com o ID de resposta).

  • Sem nenhuma movimentação? Verifique os seus créditos — HTTP18 significa saldo insuficiente.
  • Confirme se o ID do remetente e a rota estão aprovados para o país.
  • Leia o status real consultando-o diretamente (API HTTP legada: /websmpp/websmsstatus).
  • Não faça suposições com base na ausência de um webhook — verifique o status.
Acesso de teste · resposta no prazo de um dia útil

Solicite acesso para testes e desenvolva com confiança.

Responderemos em até um dia útil com as credenciais de teste. Em seguida, instale o SDK TypeScript ou aceda à API REST de qualquer linguagem e envie a sua primeira mensagem de teste para o seu próprio número.

$npm install @broadnet/cpaas-sdk axiosready