diff --git a/Monitor.py b/Monitor.py index 3f2fd34..c63a38b 100644 --- a/Monitor.py +++ b/Monitor.py @@ -5,10 +5,9 @@ import time import smtplib from email.mime.text import MIMEText import pandas as pd -from dotenv import load_dotenv import os +from dotenv import load_dotenv -# Charger les variables d'environnement load_dotenv() # --- Config MySQL --- @@ -19,8 +18,9 @@ config = { "database": os.getenv("DB_NAME") } -# --- Destinataires email --- -destinataires = os.getenv("EMAIL_DEST").split(",") +# --- Fonction de sélection des destinataires selon le site --- +def get_destinataires(lieu): + return os.getenv(f"EMAIL_{lieu.upper()}", os.getenv("EMAIL_DEFAULT")).split(",") # --- Fonction d'envoi de mail --- def envoyer_mail(sujet, message, destinataires): @@ -36,7 +36,6 @@ def envoyer_mail(sujet, message, destinataires): except Exception as e: print(f"Erreur envoi mail : {e}", flush=True) - # --- Fonction de surveillance --- def surveiller(): log_entries = [] @@ -98,7 +97,7 @@ def surveiller(): f"La sonde '{nom_sonde}' du site '{lieu}' a dépassé le seuil de {seuil}°C " f"depuis plus de 30 minutes.\nHeure : {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}" ) - envoyer_mail(sujet, message, destinataires) + envoyer_mail(sujet, message, get_destinataires(lieu)) # Acquittement automatique cursor.execute(f""" @@ -128,6 +127,6 @@ def surveiller(): # --- Boucle principale --- while True: - print(f"📡 Vérification à {datetime.now()}", flush=True) + print(f"🛁 Vérification à {datetime.now()}", flush=True) surveiller() time.sleep(300) # 5 minutes