20-sep: [automatizacion] Morning routine (Tapo + WoL + AutoLogon + Apertura de pestañas)
This commit is contained in:
36
scripts/morning_routine/rpi_despierta_pc.py
Normal file
36
scripts/morning_routine/rpi_despierta_pc.py
Normal file
@@ -0,0 +1,36 @@
|
||||
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
|
||||
|
||||
# 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
|
||||
|
||||
# MAC detectada de la placa base del sobremesa
|
||||
PC_MAC = "74-56-3C-CB-0E-CE"
|
||||
|
||||
async 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.")
|
||||
except Exception as e:
|
||||
print(f" -> Error al encender Tapo: {e}")
|
||||
|
||||
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
|
||||
send_magic_packet(PC_MAC, ip_address='255.255.255.255')
|
||||
print(" -> Comando de arranque enviado con éxito.")
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user