Controlar por post el TP-Link HS110

Posted by David Guillermo on Thursday, May 7, 2020

Esta vez traigo algo de toqueteo sobre el tp-link hs110 desde una shell, guardar info para exportar a grafana y tener el consumo del dispositivo que tengamos conectado en este enchufe inteligente. Desde hace algún tiempo, tenemos este dispositivo para una máquina específica que, por alguna extraña razón, se nos cuelga cada X tiempo y para no tener que desplazarnos y hacer algo físico, pues se le colocó dicho enchufe y de esta manera reinicar la máquina de forma sencilla.

Estos días por diferentes motivos, se me dió por investigar un poco y el resultado fue bueno. Lo primero que debemos hacer es obtener un UUID, y para ello podemos usar cualquier sitio web dedicado a generarlos como uuidgenerator para poder obtener el token y hacer las peticiones.

curl -X POST -H "Content-Type: application/json" 

-d "{ "method" : "login", "params" : {"appType" : "Kasa_Android", 

"cloudPassword" : "TÚ CONTRASEÑA", "cloudUserName" : "usuario", 

"terminalUUID" : "PONER EL UUID ADQUIRIDO ANTES" }}" https://eu-wap.tplinkcloud.com

Ahora es cuando vemos el contenido del dispositivo usando el TOKEN que obtuvimos antes.

curl -X POST -H "Content-Type: application/json" -d "{ "method" : "getDeviceList" }" 

https://eu-wap.tplinkcloud.com?token=AQUÍ EL TOKEN 

Y de aquí ya tendremos el Device ID y con ello podremos activar, desactivar el dispositivo y además ver el consumo de energía.

curl -X POST -H "Content-Type: application/json" -d 

"{ "method" : "passthrough", "params" : { "deviceId" : "OUR DEVICE ID HERE", 

"requestData" : '{ "system" : { "set_relay_state" : { "state" : 1}}}'}}" 

https://eu-wap.tplinkcloud.com/?token=AQUÍ EL TOKEN 

Para desactivar el socket, reemplazaremos ese 1 por un 0 y listo.

curl -X POST -H "Content-Type: application/json" -d 

"{ "method" : "passthrough", "params" : { "deviceId" : "AQUÍ EL ID", 

"requestData" : '{ "system" : { "set_relay_state" : { "state" : 0}}}'}}" 

https://eu-wap.tplinkcloud.com/?token=AQUÍ EL TOKEN 

Bueno y con esto, los que usamos tasker en el teléfono podemos añadir tareas predefinidas para ciertas ocasiones o incluso integrarlo Home Assistant, así que en sus conciencias lo dejo que lo integren con todo lo que encunetren ¿telegram? también.

Nos vemos !!!