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)[source]
Initialise le NotificationManager avec les gestionnaires de configuration, base de données et journalisation.
- 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.
- Lève:
ValueError – si les paramètres fournis sont invalides.
- send_report_email(stats: Dict)[source]
Génère le rapport, compresse les logs et envoie l’email.
- Paramètres:
stats (Dict) – statistiques à inclure dans le rapport.