Skip to content

Envio de SMS

Pré-requisitos de acesso

  • Permissão (módulo): acesso liberado pelo guard administrativo da rota (admin). Não há módulo dinâmico específico para esta tela.
  • Licença/Feature: Nenhuma.
  • Contêiner do menu: GERAL → grupo Comunicação (ícone campaign) → Envio de SMS.

O que é / quando usar

Tela para criar e agendar disparos de SMS em massa ou para uma lista de destinatários específicos. A mecânica é idêntica à de Envio de e-mail: cada disparo vira uma "ação em massa" (MassActions com action = 'SMS') que entra na fila do CommunicationScheduler. Use para avisos curtos, confirmações e campanhas por canal SMS.

Pré-condições

  • Permissão: item sob o guard admin da rota. Permissão no Axia é dupla (enum CPM no backend + módulo dinâmico no DB); aqui o gate efetivo é o guard de rota — valide perfil administrativo.
  • Licença/Feature: nenhuma.
  • Dependências de outras telas: no modo Individual, o destinatário é validado contra a base de usuários (mesma checagem do e-mail).

Passo a passo

  1. Acesse o menu Comunicação → Envio de SMS.
  2. A tela lista os disparos existentes (colunas Quando, Assunto, Status, editar/excluir).
  3. Clique em Novo / Criar para abrir o modal.
  4. Escolha o público: Todos (all) ou Individual (single).
  5. No modo Individual, adicione cada destinatário (validado contra a base, vira chip).
  6. Preencha Mensagem e Data.
  7. Confirmar. O disparo entra na fila.

Campos

Listagem

ColunaO que mostraOrigem do dado
Quando (when)Data de criação/agendamentoMassActions.when/scheduleTo
Assunto (subject)Para SMS é gravado vazioMassActions.subject (string vazia no SMS)
StatusCREATED/PENDING, EXECUTED, CANCELLEDMassActions.status
Editar / ExcluirReabre o modal / cancela (marca CANCELLED)
CampoO que éObrigatório?Efeito no sistema/backend
Público (Todos / Individual)Toda a base ou lista específicaSimall = true enfileira um registro PENDING por usuário da base; all = false por destinatário da lista. No modo edição, o público fica bloqueado.
E-mail/destinatário (só no modo Individual)Identifica o usuário-alvoCondicional (≥1 no modo Individual)Validado contra a base via getUserByEmailWallet; só entra quem existe. Vira chip.
Mensagem (message)Texto do SMSSimGravado em MassActions.message. Diferente do e-mail, não há campo de assunto (gravado vazio).
Data (when)Data a partir da qual pode ser processadoSimMínimo = hoje. O scheduler roda a cada 30 minutos.

Ações e modais

  • Criar (Confirmar): cria a MassActions (action = 'SMS', status = 'CREATED') e os destinatários PENDING. A tela recarrega.
  • Editar: ajusta Mensagem e Data; público e lista ficam somente leitura. Salvar volta o disparo para CREATED.
  • Excluir: marca CANCELLED (não apaga).

Regras de negócio / cuidados

Atenção

  • Caveat de entrega de SMS: no CommunicationScheduler atual, o ramo action === 'SMS' do laço de processamento está vazio (sem implementação de envio efetivo). Na prática, disparos de SMS criados por esta tela são registrados e agendados, mas o envio real depende da implementação do provedor de SMS no scheduler. Confirme com o time de plataforma se o canal SMS está ativo no ambiente antes de prometer entrega ao cliente. O fluxo de e-mail, por outro lado, é processado de fato.
  • Destinatário individual só é aceito se existir na base.
  • Envio não imediato: depende do ciclo de 30 min do scheduler.

Irreversível

  • Uma vez enviado pelo provedor, não há rollback do SMS. Cancelar só impede disparos ainda PENDING.
  • Idempotência: processamento por destinatário (PENDINGEXECUTED); reexecução não reenvia quem já recebeu.

Telas relacionadas