diff --git a/backend/utils/hardware_integration.py b/backend/utils/hardware_integration.py index 8856f41dd..4b46f5750 100644 --- a/backend/utils/hardware_integration.py +++ b/backend/utils/hardware_integration.py @@ -426,24 +426,22 @@ class DruckerSteuerung: """Wrapper für template_daten_sammeln (Backward-Compatibility)""" return self.template_daten_sammeln() - def check_outlet_status(self, ip: str) -> Dict[str, Any]: + def check_outlet_status(self, ip: str, printer_id: Optional[int] = None) -> tuple: """ Prüft den Status einer Tapo-Steckdose. Args: ip: IP-Adresse der Steckdose + printer_id: Optional - ID des Druckers (für Legacy-Kompatibilität) Returns: - Dict mit Status-Informationen + tuple: (reachable: bool, status: str) - Legacy-Format für Kompatibilität """ - hardware_logger.debug(f"🔍 Prüfe Steckdosen-Status: {ip}") + hardware_logger.debug(f"🔍 Prüfe Steckdosen-Status: {ip}" + (f" (Drucker ID: {printer_id})" if printer_id else "")) if not TAPO_AVAILABLE: - return { - 'success': True, - 'outlet_on': True, - 'message': 'Simulation: Steckdose online' - } + # Legacy-Format: (reachable, status) + return (True, 'online') try: # Tapo P100/P110 Verbindung @@ -460,33 +458,18 @@ class DruckerSteuerung: hardware_logger.debug(f"✅ Steckdose {ip}: {'EIN' if device_on else 'AUS'}") - return { - 'success': True, - 'outlet_on': device_on, - 'message': f"Steckdose ist {'eingeschaltet' if device_on else 'ausgeschaltet'}" - } + # Legacy-Format: (reachable, status) + return (True, 'online' if device_on else 'offline') else: hardware_logger.warning(f"⚠️ Steckdose {ip} Error Code: {device_info['error_code']}") - return { - 'success': False, - 'outlet_on': False, - 'message': f"Steckdose Fehler: {device_info['error_code']}" - } + return (False, 'error') else: hardware_logger.error(f"❌ Steckdose {ip}: Keine gültige Antwort") - return { - 'success': False, - 'outlet_on': False, - 'message': 'Keine gültige Antwort von Steckdose' - } + return (False, 'unreachable') except Exception as e: hardware_logger.error(f"❌ Fehler beim Prüfen von Steckdose {ip}: {e}") - return { - 'success': False, - 'outlet_on': False, - 'message': f'Verbindungsfehler: {str(e)}' - } + return (False, 'unreachable') # ===== GLOBALE INSTANZ =====