import socket
import json
import sys

# IP de tu luz Govee (ajústala si cambia)
DEVICE_IP = "192.168.0.105"
DEVICE_PORT = 4003

# Validar argumentos
if len(sys.argv) != 4:
    print("Uso: python3 control_govee.py R G B")
    sys.exit(1)

try:
    r = int(sys.argv[1])
    g = int(sys.argv[2])
    b = int(sys.argv[3])
except ValueError:
    print("Los valores deben ser números enteros entre 0 y 255")
    sys.exit(1)

# Crear el mensaje JSON para cambiar el color
msg = {
    "msg": {
        "cmd": "colorwc",
        "data": {
            "color": {
                "r": r,
                "g": g,
                "b": b
            },
            "colorTemInKelvin": 0
        }
    }
}

# Enviar mensaje UDP
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.sendto(json.dumps(msg).encode(), (DEVICE_IP, DEVICE_PORT))
print(f"✅ Comando enviado: R={r}, G={g}, B={b}")

