Aller au contenu principal

Modèle notifications

Objectif du modèle

Représenter les notifications envoyées ou à envoyer aux utilisateurs : favoris, publications, alertes mairie, messages ou événements système.

Responsabilités

  • Tracer les notifications générées.
  • Porter le statut d’envoi ou de lecture.
  • Respecter préférences, consentements et périmètres.
  • Supporter l’envoi asynchrone via jobs.

Relations principales

  • Une notification cible un utilisateur ou un groupe de destinataires.
  • Une notification peut être déclenchée par une publication, alerte, boost ou événement.
  • Une notification peut être liée à une commune ou un acteur.

Cycle de vie

  1. Événement métier.
  2. Calcul backend des destinataires.
  3. Création de notification.
  4. Envoi via provider ou affichage in-app.
  5. Lecture, expiration ou archivage.

Permissions/RBAC liées

  • Les destinataires sont calculés côté Laravel.
  • Les alertes mairie restent limitées à leur périmètre autorisé.
  • Les administrateurs peuvent consulter les logs selon besoin support.

Contraintes métier

  • Éviter le spam.
  • Respecter les préférences utilisateur.
  • Ne pas exposer de données sensibles dans un push.
  • Auditer les envois de masse.

Données sensibles éventuelles

  • Destinataires, préférences, tokens push indirects.
  • Contenu de notification.
  • Historique de lecture ou réception.

Cache/offline éventuel

  • Notifications in-app cacheables localement avec prudence.
  • Statut lu/non lu à synchroniser côté backend.

Stratégie d’indexation

  • Index par destinataire, statut, date, type.
  • Index par source métier pour support et audit.

Partitionnement si concerné

Possible à long terme si volume élevé, par période, mais moins prioritaire que publications.

État actuel vs cible

NiveauDescription
Structure visible/confirméeNotifications, push, favoris et alertes mairie documentés.
Structure probableNotification avec destinataire, type, source, statut et dates.
Cible futureSystème central, asynchrone, respectueux des préférences et auditable.

Points à confirmer

  • Providers d’envoi.
  • Canaux supportés.
  • Préférences exactes.
  • Règles de rétention.

Diagramme Mermaid ER simplifié