import requests import aiohttp class WLEDController: def __init__(self, ip_address): """Initialisiert das WLED-Gerät mit der angegebenen IP-Adresse.""" self.ip = ip_address self.url = f"http://{self.ip}/json/state" async def set_preset(self, preset_id): """Wechselt zu einem bestimmten Preset anhand der ID.""" payload = {"ps": preset_id} try: async with aiohttp.ClientSession() as session: async with session.post(self.url, json=payload) as response: if response.status == 200: print(f"Preset {preset_id} aktiviert.") else: text = await response.text() print(f"Fehler beim Setzen des Presets {preset_id}: {text}") except Exception as e: print(f"Fehler bei der Verbindung: {str(e)}") async def phase1(self): """Aktiviert das Preset Phase 1 (ID 4).""" await self.set_preset(4) async def phase2(self): """Aktiviert das Preset Phase 2 (ID 5).""" await self.set_preset(5) async def blitz(self): """Aktiviert das Preset Blitz (ID 6).""" await self.set_preset(6)