"Ajout ou correction sur develop"
This commit is contained in:
20
Monitor.py
20
Monitor.py
@@ -18,23 +18,23 @@ config = {
|
|||||||
"database": os.getenv("DB_NAME")
|
"database": os.getenv("DB_NAME")
|
||||||
}
|
}
|
||||||
|
|
||||||
# Charger les destinataires depuis .env
|
# Charger les destinataires depuis .env
|
||||||
destinataires = os.getenv("DESTINATAIRES_MAIL", "").split(',')
|
destinataires = os.getenv("DESTINATAIRES_MAIL", "").split(',')
|
||||||
|
|
||||||
# --- Suivi des alertes actives pour rappels ---
|
# --- Suivi des alertes actives pour rappels ---
|
||||||
alertes_actives = {}
|
alertes_actives = {}
|
||||||
|
|
||||||
# --- Fonction d'envoi de mail ---
|
# --- Fonction d'envoi de mail ---
|
||||||
def envoyer_mail(sujet, message, destinataires):
|
def envoyer_mail(sujet, message, destinataires_list):
|
||||||
msg = MIMEText(message)
|
msg = MIMEText(message)
|
||||||
msg['Subject'] = sujet
|
msg['Subject'] = sujet
|
||||||
msg['From'] = 'alertes_saclay@domo91.fr'
|
msg['From'] = 'alertes_saclay@domo91.fr'
|
||||||
msg['To'] = ', '.join(destinataires)
|
msg['To'] = ', '.join(destinataires_list)
|
||||||
try:
|
try:
|
||||||
with smtplib.SMTP_SSL('smtp.mail.ovh.net', 465) as server:
|
with smtplib.SMTP_SSL('smtp.mail.ovh.net', 465) as server:
|
||||||
server.login('alertes_saclay@domo91.fr', 'Kdpke674y23Feq^H')
|
server.login('alertes_saclay@domo91.fr', 'Kdpke674y23Feq^H')
|
||||||
server.sendmail(msg['From'], destinataires, msg.as_string())
|
server.sendmail(msg['From'], destinataires_list, msg.as_string())
|
||||||
print(f"📧 Mail envoyé à {destinataires}", flush=True)
|
print(f"📧 Mail envoyé à {destinataires_list}", flush=True)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"Erreur envoi mail : {e}", flush=True)
|
print(f"Erreur envoi mail : {e}", flush=True)
|
||||||
|
|
||||||
@@ -65,9 +65,9 @@ def surveiller():
|
|||||||
WHERE Sonde = %s
|
WHERE Sonde = %s
|
||||||
ORDER BY Date DESC LIMIT 6
|
ORDER BY Date DESC LIMIT 6
|
||||||
""", (nom_sonde,))
|
""", (nom_sonde,))
|
||||||
relevés = cursor.fetchall()
|
releves = cursor.fetchall()
|
||||||
|
|
||||||
for r in relevés:
|
for r in releves:
|
||||||
log_entries.append({
|
log_entries.append({
|
||||||
"Date": r['Date'],
|
"Date": r['Date'],
|
||||||
"Lieu": lieu,
|
"Lieu": lieu,
|
||||||
@@ -77,9 +77,9 @@ def surveiller():
|
|||||||
"État": "Dépassement" if r['Temperature'] > seuil else "Normal"
|
"État": "Dépassement" if r['Temperature'] > seuil else "Normal"
|
||||||
})
|
})
|
||||||
|
|
||||||
if len(relevés) == 6:
|
if len(releves) == 6:
|
||||||
toutes_hors_seuil = all(r['Temperature'] > seuil for r in relevés)
|
toutes_hors_seuil = all(r['Temperature'] > seuil for r in releves)
|
||||||
plus_ancien = relevés[-1]['Date']
|
plus_ancien = releves[-1]['Date']
|
||||||
maintenant = datetime.now()
|
maintenant = datetime.now()
|
||||||
|
|
||||||
if toutes_hors_seuil and (maintenant - plus_ancien >= timedelta(minutes=30)):
|
if toutes_hors_seuil and (maintenant - plus_ancien >= timedelta(minutes=30)):
|
||||||
|
|||||||
Reference in New Issue
Block a user