Notificaciones¶
El subsistema de notificaciones guarda eventos en base de datos y después los entrega por WebSocket y Web Push cuando está configurado.
sequenceDiagram
participant S as Servicio
participant DB as PostgreSQL
participant C as Channels/Redis
participant B as Navegador
S->>DB: crea Notificacion
S-->>S: transaction.on_commit
S->>C: publica evento
C->>B: WebSocket
Modelos¶
| Modelo | Uso |
|---|---|
Notificacion |
Evento persistente por usuario. |
PreferenciaNotificacion |
Preferencias por tipo/canal. |
SuscripcionWebPush |
Endpoint y claves del navegador. |
Entrega¶
Si Redis o Web Push fallan, la notificación persistente queda guardada. La bandeja del panel lee desde base de datos y el contador no leído se calcula por usuario.
Configuración Web Push¶
Generación local:
La clave privada debe permanecer fuera del repositorio.