Esta sección documenta la plataforma de notificaciones de B Brands — cómo cualquier
acción de negocio notifica a un usuario (push, in-app, SMS, live activity) encolando
un mensaje que un consumidor central despacha a
OneSignal.
Qué es esto
Cualquier acción de negocio que necesite notificar a un usuario (cobro fallido, contrato firmado, campaña) encola una notificación en lugar de llamar a OneSignal directamente. Una única cola de Vercel (notification) alimenta un consumidor central que
despacha cada mensaje al handler del canal correspondiente.
Sin notificaciones perdidas
Reintentos con backoff, dead-letter queue y replay heredados de la
infraestructura compartida de
queue_event absorben los picos y las caídas transitorias.Idempotente
Cada mensaje transporta un
queue_event_id; una reentrega duplicada es un no-op.Gating de preferencias
El opt-out por usuario se aplica antes de encolar, sin tocar a los productores.
Único punto de entrada
Los productores solo llaman a
notificationDispatcher; la fontanería de canales queda
oculta detrás de él.Canales
Cómo fluye la señal
Adónde ir después
Arquitectura
El dispatcher, el consumidor unificado, los handlers y el payload de la cola.
Canales y segmentación
Semántica de canales, categorías y cómo se segmenta a los usuarios.
Preferencias e inbox
La matriz de opt-out y el inbox de notificaciones de cara al usuario.
Operaciones
Variables de entorno, runbook de DLQ/replay y salud.