pause idel

This commit is contained in:
2025-12-10 10:31:59 -05:00
parent 25e8ce1885
commit e9c7f51f91
8 changed files with 166 additions and 93 deletions

View File

@ -15,6 +15,32 @@ def run_once():
log_info("[INFO] Aucune course active.")
return
# -------------------------------------------------
# Appliquer les PAUSE_REQUEST avant tout traitement
# -------------------------------------------------
active_courses = get_active_con_ids(cur)
for con_id in active_courses:
engine_table = f"resultv2_{con_id}_lecture"
# Lire le statut actuel
cur.execute(f"SELECT process_status FROM `{engine_table}` LIMIT 1")
row = cur.fetchone()
if not row:
continue
status = (row["process_status"] or "").upper()
# Si CI4 a demandé une pause → Python applique la pause maintenant
if status == "PAUSE_REQUEST":
cur.execute(f"UPDATE `{engine_table}` SET process_status = 'PAUSE'")
cnx.commit()
log_info(f"[PAUSE APPLIED] con_id={con_id}")
for con_id in con_ids:
process_course(cur, cnx, con_id)
@ -30,4 +56,21 @@ def run_once():
if __name__ == "__main__":
run_once()
import time
import msvcrt # Spécifique Windows
log_info("[TEST MODE] Boucle continue — appuyer ENTER pour arrêter.")
try:
while True:
run_once()
time.sleep(0.5)
if msvcrt.kbhit(): # Une touche a été pressée
key = msvcrt.getch()
if key == b'\r': # ENTER = arrêt
log_info("[TEST MODE] Arrêt demandé via ENTER.")
break
except KeyboardInterrupt:
log_info("[TEST MODE] Arrêt via CTRL+C.")