diff --git a/Automate.py b/Automate.py index 9999404..bc5e635 100644 --- a/Automate.py +++ b/Automate.py @@ -40,9 +40,32 @@ def main(): # Vérifier l'état de maintenance en priorité if camera_status.get("maintenance", False): - logging.info("Caméra en mode maintenance, aucune action nécessaire") + logging.info("Caméra en mode maintenance") + + # Vérifier si un projet est déjà en cours (config active avec images restantes) + if is_active_config and images_remaining > 0: + logging.info(f"Un projet est en cours avec {images_remaining} images restantes - capture maintenue en mode maintenance") + + # Importer le gestionnaire de capture + from timelapse.capture import timelapse_manager + + # Prendre une image et l'envoyer + logging.info("Prise d'image en mode maintenance pour projet en cours") + online_status = api_client.check_connection() + timelapse_manager.single_capture(online=online_status) + + # Décrémenter le compteur d'images restantes + config.decrement_remaining_images() + + # Si c'était la dernière image, désactiver la configuration + if config.get("nb_images_restantes", 0) <= 0: + logging.info("Dernière image capturée, désactivation de la configuration") + config.update_config({"config_active": False}) + else: + logging.info("Aucun projet en cours, mode maintenance sans action") + # Mettre à jour la configuration pour refléter le mode maintenance - config.update_config({"maintenance": True, "config_active": False}) + config.update_config({"maintenance": True}) return # Vérifier si un arrêt de la procédure est demandé