Kul med de nye scripteventen
Posted: Fri Mar 17, 2023 9:45 am
Script hooks i ny betan gör ju vissa saker barnsligt enkelt.
Har länge småpillrat med ett använda callbacks men där har det inte funnits tillräckligt eleganta lösningar, bilioteket som fanns har jag både testat med socat och att byta ut med unix sockets men gillar inte naitive saker i java.
Pyton finns det rätt bra grejer till men måste då orka lära sig hur man gör demoner i pyton.
Nu i betan så kom ju de nya eventscripten som gör allt aldeles för enkelt.
Här är 2 script som ser till att temp, RH och deviceevents hamnar på en lokal mqtt broker med json som utformat.
pub-sensors.sh
pub-de.sh
Om man då tittar på vad man får så blir det ngt i stil med detta.
> mosquitto_sub -v -t "#"
tellstick/sensor/oregon/1A2D/177/temperature {"1380980586","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980586","41","%RH"}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980587","12.4","°C"}
tellstick/device/1 {"2",""}
tellstick/sensor/oregon/1A2D/177/temperature {"1380980625","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980625","41","%RH"}
tellstick/device/1 {"1",""}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980626","12.4","°C"}
tellstick/sensor/oregon/1A2D/177/temperature {"1380980664","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980664","41","%RH"}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980665","12.4","°C"}
tellstick/device/7 {"16","255"}
tellstick/device/7 {"16","161"}
tellstick/device/7 {"16","146"}
tellstick/device/7 {"16","255"}
Kul att se att ngt händer om än lite långsamt
Har länge småpillrat med ett använda callbacks men där har det inte funnits tillräckligt eleganta lösningar, bilioteket som fanns har jag både testat med socat och att byta ut med unix sockets men gillar inte naitive saker i java.
Pyton finns det rätt bra grejer till men måste då orka lära sig hur man gör demoner i pyton.
Nu i betan så kom ju de nya eventscripten som gör allt aldeles för enkelt.
Här är 2 script som ser till att temp, RH och deviceevents hamnar på en lokal mqtt broker med json som utformat.
pub-sensors.sh
Code: Select all
#!/bin/bash
BASE="tellstick/sensor/${PROTOCOL}/${MODEL}/${SENSORID}/"
if [ "${DATATYPE}" -eq 1 ]; then
TARGET="temperature"
EGU="°C"
elif [ "${DATATYPE}" -eq 2 ]; then
TARGET="humidity"
EGU="%RH"
fi
# Send the message
mosquitto_pub -t "${BASE}${TARGET}" -m "{\"${TIMESTAMP}\",\"${VALUE}\",\"${EGU}\"}"
Code: Select all
#!/bin/bash
BASE="tellstick/device/${DEVICEID}/"
# Send the message
mosquitto_pub -t "${BASE}" -m "{\"${METHOD}\",\"${METHODDATA}\"}"
> mosquitto_sub -v -t "#"
tellstick/sensor/oregon/1A2D/177/temperature {"1380980586","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980586","41","%RH"}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980587","12.4","°C"}
tellstick/device/1 {"2",""}
tellstick/sensor/oregon/1A2D/177/temperature {"1380980625","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980625","41","%RH"}
tellstick/device/1 {"1",""}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980626","12.4","°C"}
tellstick/sensor/oregon/1A2D/177/temperature {"1380980664","23.0","°C"}
tellstick/sensor/oregon/1A2D/177/humidity {"1380980664","41","%RH"}
tellstick/sensor/oregon/EA4C/196/temperature {"1380980665","12.4","°C"}
tellstick/device/7 {"16","255"}
tellstick/device/7 {"16","161"}
tellstick/device/7 {"16","146"}
tellstick/device/7 {"16","255"}
Kul att se att ngt händer om än lite långsamt