Skip to main content
O domínio de Communication cobre notificações persistidas dentro do produto. Ele permite mostrar avisos em inbox e realtime, controlar leitura por destinatário e manter contexto suficiente para o front abrir a tela correta. Ele não substitui email, WhatsApp ou mensagens transacionais externas. Esses canais continuam no adapter de notificação externa.

Conceitos

Notifications

Criação da notificação, recipients, entrega, leitura e arquivamento.

Data Modelling

Entidades Notification e NotificationRecipient.

Audiências

AudiênciaSuperfície
CUSTOMERApp ou superfície do passageiro.
DRIVERApp ou superfície do motorista.
OPSAmbiente operacional usado por Company e Cooperative.
BKOBackOffice interno da plataforma.
Se o mesmo evento precisar aparecer em mais de uma superfície, o sistema cria uma notificação por audiência.

Fronteiras

  • Notification guarda conteúdo, contexto, audiência, prioridade e recurso relacionado.
  • NotificationRecipient guarda estado por usuário: entrega, leitura, arquivamento e remoção lógica.
  • Não existe actionUrl persistido. O front resolve a rota pelo tipo e pelo recurso relacionado.
  • Não há companyId ou cooperativeId direto na notificação. O escopo vem de organização, audiência, memberships e recurso relacionado.

Exemplos de notificações

TipoQuem recebe
Chamado criadoAtendentes OPS ou BackOffice, conforme escopo.
Nova mensagem em chamadoParticipantes do chamado.
Rota aguardando aprovaçãoUsuários OPS com permissão de aprovar.
Pagamento confirmado ou falhouPassageiro ou operador envolvido no Order.
Exportação concluída ou falhouUsuário que solicitou a exportação.
Communication registra a notificação in-app. O envio externo por email ou WhatsApp pode acontecer em paralelo, mas não é controlado por NotificationRecipient.