From aab08f5fcef4430e70cb86fabebfc1858b24c324 Mon Sep 17 00:00:00 2001 From: juanminsanz Date: Sun, 20 Sep 2026 20:20:35 +0200 Subject: [PATCH] 20-sep: [scripts] Script de RPi actualizado para usar PyP100 sincronos en lugar de plugp100 asyncio --- scripts/morning_routine/rpi_despierta_pc.py | 47 ++++++++++++--------- 1 file changed, 26 insertions(+), 21 deletions(-) diff --git a/scripts/morning_routine/rpi_despierta_pc.py b/scripts/morning_routine/rpi_despierta_pc.py index 4cc6fed..aa597f1 100644 --- a/scripts/morning_routine/rpi_despierta_pc.py +++ b/scripts/morning_routine/rpi_despierta_pc.py @@ -1,36 +1,41 @@ import os import time -import asyncio from wakeonlan import send_magic_packet -from plugp100.api.tapo_client import TapoClient -from plugp100.api.plug_device import PlugDevice +from PyP100 import PyP100 +from dotenv import load_dotenv + +load_dotenv() # Credenciales de TAPO (leer del entorno en la Raspberry) -TAPO_USER = os.getenv("TAPO_USER") -TAPO_PASS = os.getenv("TAPO_PASS") -TAPO_IP = os.getenv("TAPO_IP") # La IP local del enchufe Tapo +TAPO_USER = os.getenv('TAPO_USER', '') +TAPO_PASS = os.getenv('TAPO_PASS', '') +TAPO_IP = os.getenv('TAPO_IP', '') # MAC detectada de la placa base del sobremesa -PC_MAC = "74-56-3C-CB-0E-CE" +PC_MAC = '74-56-3C-CB-0E-CE' -async def main(): - print("1. Encendiendo monitor via Tapo...") +def main(): + print('1. Encendiendo monitor via Tapo...') try: - client = TapoClient(TAPO_USER, TAPO_PASS) - device = PlugDevice(client, TAPO_IP) - await device.login() - await device.turn_on() - print(" -> Enchufe Tapo encendido correctamente.") + if TAPO_USER and TAPO_PASS and TAPO_IP: + p100 = PyP100.P100(TAPO_IP, TAPO_USER, TAPO_PASS) + p100.handshake() + p100.login() + p100.turnOn() + print(' -> Enchufe Tapo encendido correctamente.') + else: + print(' -> Saltando Tapo: Faltan credenciales o IP en el .env.') except Exception as e: - print(f" -> Error al encender Tapo: {e}") + print(' -> Error al encender Tapo: ' + str(e)) - print("2. Esperando 3 segundos para estabilidad eléctrica...") + print('2. Esperando 3 segundos para estabilidad eléctrica...') time.sleep(3) - print(f"3. Enviando paquete Wake-On-LAN al PC (MAC: {PC_MAC})...") - # Broadcast global para asegurar que llega de la 192.168.50.x a la 192.168.1.x + print('3. Enviando paquete Wake-On-LAN al PC (MAC: ' + PC_MAC + ')...') + # Broadcast global para asegurar que llega a la 192.168.1.x send_magic_packet(PC_MAC, ip_address='255.255.255.255') - print(" -> Comando de arranque enviado con éxito.") + send_magic_packet(PC_MAC, ip_address='192.168.1.255') + print(' -> Comando de arranque enviado con éxito.') -if __name__ == "__main__": - asyncio.run(main()) +if __name__ == '__main__': + main()