routeros-mqtt-telemetry.ino
Script RouterOS v7 que lee la temperatura de la CPU y publica JSON en un broker MQTT.
Usa comandos nativos de RouterOS v7. Asegúrese de que el módulo MQTT esté habilitado. El script se ejecuta mediante el planificador integrado. Requiere conectividad de red activa (LTE o Ethernet).
routeros-mqtt-telemetry.ino
/system script add name="mqtt-temp" source={
:local temp [/interface wireless registration-table print detail where name=wlan1 as-value];
# Note: RouterOS v7 exposes some internal sensors via /system health
:local cpuTemp [/system health print detail where name=cpu-temp as-value];
:local payload ("{\"device\":\"HL9\",\"cpu_temp\":" . [:tostr [$cpuTemp get temp]] . "}");
/tool mqtt publish broker="mqtt.example.com" port=1883 topic="knot/hl9/status" payload=$payload username="user" password="pass";
} /system scheduler add name="mqtt-sched" interval=5m on-event=mqtt-temp