Étudiants
Notifications push - Documentation
Recevoir les menus et événements par notification sur son téléphone.
MARIAM peut envoyer des notifications push directement dans le navigateur — sur Android, iOS (Safari 16.4+) et desktop — sans application native à installer.
S’abonner
Rendez-vous sur la page /notifications depuis le menu du site. Acceptez la demande d’autorisation du navigateur, puis choisissez vos préférences :
- Menu du jour — rappel quotidien avec le menu publié.
- Événements — alerte J-7 et J-1 avant chaque événement.
- Notifications test — envoyez-vous une notification pour vérifier que tout fonctionne.
L’abonnement se fait en un clic ; aucun compte n’est nécessaire.
Compatibilité
| Plateforme | Support |
|---|---|
| Android (Chrome, Edge, Firefox) | Complet |
| iOS / iPadOS (Safari 16.4+) | Complet (nécessite d’ajouter le site à l’écran d’accueil) |
| Desktop (Chrome, Edge, Firefox) | Complet |
Sur iOS, les notifications push ne fonctionnent que si le site est installé en tant que PWA (« Ajouter à l’écran d’accueil »).
Fonctionnement technique
Web Push & VAPID
Les notifications utilisent le protocole Web Push (RFC 8030) avec authentification VAPID. Le serveur génère une paire de clés VAPID ; la clé publique est transmise au navigateur lors de l’abonnement, la clé privée signe les messages côté serveur.
Service Worker
Un Service Worker intercepte les messages push en arrière-plan. L’architecture utilise un SW minimal en développement et Workbox injectManifest en production pour le cache des assets.
Scheduler
Le backend exécute un cron APScheduler (chaque minute) qui :
- Détecte les menus publiés du jour et envoie le rappel quotidien.
- Vérifie les événements à J-7 et J-1 et envoie les alertes correspondantes.
- Nettoie les abonnements expirés ou invalides.
Un verrou distribué Redis garantit qu’une seule instance exécute le scheduler en environnement multi-conteneur.