**Meross MSS310** Precio: 12€ Documentación API:\\ https://albertogeniola.github.io/MerossIot/ Github:\\ https://github.com/albertogeniola/MerossIot **Peticiones directamente al enchufe** Configuramos un proxy con SQUID Ejecutamos tcpdump para capturar los paquetes con el siguiente comando: tcpdump -i any -s 65535 -w captura.tcpdump Abrimos el dump con wireshark Filtramos por petción http y la ip del dispositivo, en mi caso son: 192.168.1.53 192.168.1.79 192.168.1.123 Por ejemplo el filtro: ip.dst == 192.168.1.79 and http {{:energia:monitorizacion:enchufes:tcpdump01.png|}} Miramos las peticiones hasta que encontremos una que en el payload del post sale electricity: { "header": { "from": "/app/724391-ce3061cb409fb325273d61db1fdc988b/subscribe", "messageId": "0dd9808195b48a358003b7da16de6862", "method": "GET", "namespace": "Appliance.Control.Electricity", "payloadVersion": 1, "sign": "178bed152888826e92e597b3b08e62fc", "timestamp": 1597047437, "triggerSrc": "Android" }, "payload": { "electricity": { "channel": 0 } } } Si hacemos un post con esa petición a /config tenemos los datos de consumo (añadir al final |python -m json.tool para poner formato legible) : curl -d @peticion.json 192.168.1.79/config |python -m json.tool { "header": { "from": "/appliance/20051881797870251h4148e1e91c65ce/publish", "messageId": "0dd9808195b48a358003b7da16de6862", "method": "GETACK", "namespace": "Appliance.Control.Electricity", "payloadVersion": 1, "sign": "67cd1c537334b5a6d9d8d3784f542135", "timestamp": 1597049595, "timestampMs": 431 }, "payload": { "electricity": { "channel": 0, "config": { "electricityRatio": 100, "voltageRatio": 188 }, "current": 287, "power": 41679, "voltage": 2293 } } } Faltaría jugar con los timestamp por si caduca la petición Para sacar solo el valor de power que es el que interesa, con jq (herramienta para parsear json) lanzamos: curl --silent -d @peticion.json 192.168.1.79/config|jq -r '.payload.electricity.power' 42976