Gestionnaire de Notifications
Le module NotificationManager
orchestre la génération de rapports et leur envoi par email.
Usage
Le NotificationManager
est appelé à la fin du pipeline de traitement pour notifier les utilisateurs des résultats.
Fonctionnalités
Coordonne la génération des rapports d’analyse au format HTML.
Compresse les fichiers de log et la base de données dans une archive ZIP.
Utilise le module EnvoyerMail pour expédier le rapport avec les logs en pièce jointe.
Gère le cycle de vie des fichiers temporaires (création, nettoyage).
Modules
- class src.smart_watch.core.NotificationManager.NotificationManager(config_manager: ConfigManager, db_manager: DatabaseManager, logger: SmartWatchLogger)[source]
Bases :
object
Gère la création et l’envoi de notifications par email avec pièces jointes.
- __init__(config_manager: ConfigManager, db_manager: DatabaseManager, logger: SmartWatchLogger) None [source]
Initialise le NotificationManager.
- Paramètres:
config_manager (ConfigManager) – Gestionnaire de configuration de l’application.
db_manager (DatabaseManager) – Gestionnaire de la base de données.
logger (SmartWatchLogger) – Instance de journalisation pour enregistrer les événements.
- config_manager
Le gestionnaire de configuration.
- Type:
- db_manager
Le gestionnaire de base de données.
- Type:
- logger
Le logger.
- Type:
- email_sender
L’expéditeur d’email.
- Type:
- send_report_email(stats: Dict[str, Any]) None [source]
Génère le rapport, compresse les logs et envoie l’email.
- Paramètres:
stats (Dict[str, Any]) – Statistiques à inclure dans le rapport.