Comunicação · Infraestrutura
Comunicação · Omnichannel

Sistema de Notificações

O centro nervoso da comunicação Romeo. Orquestra mensagens em 5 canais, respeita preferências do usuário e garante que nenhum evento importante passe despercebido.

Versão
1.0
Atualizado
junho/2026
Canais
5 ativos
Status
produção
1

Resumo

O Sistema de Notificações é a camada que conecta eventos do Romeo aos usuários finais. Cada ação relevante — novo lead, visita agendada, contrato assinado — gera um evento que o sistema processa, roteia e entrega no canal mais adequado.

O objetivo é entregar a informação certa, no momento certo, pelo canal certo. Isso significa respeitar preferências do usuário, evitar spam e garantir que notificações críticas nunca se percam.

Princípio
Uma notificação não entregue é pior que nenhuma notificação. O sistema prioriza confiabilidade sobre velocidade — melhor atrasar 30s do que perder a mensagem.
2

Arquitetura do sistema

O sistema segue uma arquitetura event-driven com filas de processamento. Eventos entram, são enriquecidos, roteados e despachados para os canais apropriados.

1
Evento

Ação no sistema gera evento tipado (ex: LeadCreated, VisitScheduled)

2
Enriquecimento

Sistema adiciona contexto: dados do usuário, preferências, histórico

3
Roteamento

Regras decidem: quais canais, qual prioridade, qual template

4
Fila

Notificação entra em fila por canal (WhatsApp, Email, Push, etc.)

5
Despacho

Worker consome fila e envia via provider (Twilio, SendGrid, FCM)

6
Tracking

Confirmação de entrega/leitura atualiza status da notificação

Garantia de entrega: cada notificação tem retry automático (3 tentativas com backoff exponencial). Após falhas, vai para dead-letter queue e alerta o time de operações.

3

Tipos de notificação

Notificações são categorizadas por natureza e propósito. Isso permite tratamento diferenciado em termos de urgência, canal preferido e agrupamento.

TipoDescriçãoExemplos
TransacionalConfirmações de ações do usuárioProposta enviada, contrato assinado, pagamento confirmado
AlertaEventos que requerem atenção imediataLead perdendo SLA, documento vencendo, falha de pagamento
LembreteEventos futuros agendadosVisita amanhã, contrato vence em 30 dias, renovação próxima
InformativoAtualizações e novidadesNovo imóvel na carteira, relatório semanal, feature release
MarketingComunicação promocional (opt-in)Campanha sazonal, upsell de serviços, convite para eventos
SistemaNotificações técnicasManutenção programada, atualização de termos, mudança de API
Agrupamento
Notificações do mesmo tipo e contexto são agrupadas em digest. Em vez de 10 emails sobre novos leads, o usuário recebe 1 resumo a cada hora.
4

Níveis de prioridade

Nem toda notificação é igual. O sistema define 4 níveis de prioridade que impactam velocidade de entrega, redundância de canais e persistência.

P1 — Crítica

AspectoComportamento
Latência< 30 segundos
CanaisTodos habilitados (push + WhatsApp + SMS + email)
Retry5 tentativas, intervalo curto (10s, 30s, 1m, 5m, 15m)
PersistênciaNão pode ser silenciada; aparece até ser lida
ExemplosFraude detectada, falha crítica, contrato expirado

P2 — Alta

AspectoComportamento
Latência< 2 minutos
CanaisPush + canal preferido do usuário
Retry3 tentativas, intervalo médio
PersistênciaFica em inbox até ser marcada como lida
ExemplosNovo lead quente, proposta recebida, SLA próximo

P3 — Normal

AspectoComportamento
Latência< 15 minutos
CanaisCanal preferido do usuário
Retry2 tentativas
PersistênciaPode ser agrupada em digest
ExemplosVisita confirmada, documento enviado, comentário em negociação

P4 — Baixa

AspectoComportamento
LatênciaPróximo digest (1h ou diário)
CanaisEmail ou in-app apenas
Retry1 tentativa
PersistênciaSempre agrupada; pode ser suprimida
ExemplosRelatório semanal, dicas do sistema, novidades do produto
5

Preferências do usuário

Cada usuário controla como quer ser notificado. O sistema respeita essas preferências, mas pode sobrescrevê-las para notificações críticas (P1).

ConfiguraçãoOpçõesPadrão
Canal preferidoWhatsApp, Email, Push, SMSWhatsApp
Horário silenciosoInício e fim (ex: 22h–7h)Desabilitado
Digest de baixa prioridadeImediato, Horário, DiárioHorário
Notificações de marketingHabilitado, DesabilitadoHabilitado
Som/vibração (mobile)Todos, Só alta prioridade, NenhumTodos
Preview no lock screenCompleto, Resumido, OcultoResumido
Horário silencioso
Durante o horário silencioso, notificações P2–P4 são enfileiradas e entregues ao final do período. P1 sempre passam — se é 3h da manhã e há fraude, o usuário precisa saber.

Granularidade: além das configurações globais, usuários podem configurar por tipo de notificação (ex: "quero leads por WhatsApp, mas relatórios só por email").

6

Orquestração multicanal

O Romeo opera 5 canais de notificação. A orquestração decide qual usar baseado em tipo, prioridade, preferências e disponibilidade do canal.

CanalMelhor paraLimitaçõesCusto
WhatsAppComunicação rápida, conversacionalJanela de 24h, templates aprovadosR$ 0,08–0,50/msg
EmailConteúdo longo, documentos, históricoPode ir para spam, baixa urgênciaR$ 0,001/msg
Push (mobile)Alertas instantâneos, alta urgênciaRequer app instalado, pode ser silenciadoGratuito
Push (web)Usuários desktop, tempo realRequer opt-in no browser, menos confiávelGratuito
SMSFallback crítico, usuários offline160 chars, alto custo, sem mídiaR$ 0,10–0,20/msg

Cascata de fallback

Para notificações P1 e P2, o sistema usa cascata: se o canal primário falha ou não tem confirmação de leitura em X minutos, tenta o próximo.

1Push (instantâneo)

Primeiro disparo sempre via push. Se usuário tem app, é o mais rápido e barato.

2WhatsApp (após 2 min sem leitura)

Se push não foi lido, escala para WhatsApp. Alta taxa de abertura, chega mesmo com app fechado.

3SMS (após 10 min sem leitura)

Último recurso para P1. SMS chega mesmo sem internet, mas tem custo alto. Usado só em emergências.

Deduplicação: se usuário leu no primeiro canal, os fallbacks são cancelados automaticamente. Ninguém recebe a mesma notificação 3 vezes.

7

Métricas e observabilidade

O sistema de notificações é monitorado em tempo real. Métricas são usadas para otimização contínua e alertas de degradação.

KPIs principais

MétricaMetaAlerta
Taxa de entrega (delivery rate)> 99.5%< 98%
Taxa de abertura (open rate)> 60% (push), > 40% (email)< 50% / < 30%
Latência P50 (tempo até entrega)< 5s (push), < 30s (WhatsApp)> 15s / > 2min
Latência P99< 30s (push), < 5min (WhatsApp)> 1min / > 10min
Taxa de opt-out< 0.5% / mês> 1% / mês
Notificações em dead-letter< 0.1%> 0.5%

Dashboard de operações

O time de operações tem acesso a dashboard em tempo real com:

  • Volume de notificações por canal (últimas 24h, 7d, 30d)
  • Mapa de calor de horários de pico
  • Filas por canal com tamanho e idade da mais antiga
  • Taxa de erro por provider (Twilio, SendGrid, FCM)
  • Top 10 templates mais usados e suas métricas
Alertas automáticos
Quando métricas saem do threshold, o sistema alerta via Slack e PagerDuty. Degradação de entrega > 5% aciona oncall imediatamente.