Openhab rule I use as watchdog
rule “WatchDogZVWDReset”
when
Time cron “20 * * * * ?”
then
var Number nbuffer
// innogy setzt kZVWD=ON
// Openhab setzt kZVWD=OFF
// die rule checked ob doe variable kZVWD von innogy auf ON gesetzt wurde
// falls nein wird ZVWDBuffer nicht zurückgesetzt
if (ZVWDBuffer.state == NULL){
postUpdate( ZVWDBuffer, 0)
}
nbuffer = ZVWDBuffer.state as DecimalType
if (kZVWD.state == NULL){
postUpdate( kZVWD, "OFF")
}
else{
if (kZVWD.state.toString == "ON"){
// reset ZVWDBuffer counter
postUpdate( ZVWDBuffer, 0)
//logInfo("WatchDogZVWDReset ", "ZVWDBuffer counter= 0, postUpdate kZVWD = OFF")
kZVWD.sendCommand ("OFF")
postUpdate( kZVWD, "OFF")
if (nbuffer > 5 ){
logInfo("WatchDogZVWD ", "Wieder Updates von der RWE Zentrale")
}
}
else{
nbuffer = nbuffer + 1
postUpdate( ZVWDBuffer, nbuffer)
if (nbuffer > 2){
logInfo("WatchDogZVWD ", "ZVWDBuffer counter= " + nbuffer)
}
if (nbuffer == 6){
logInfo("WatchDogZVWD ", "KEINE Updates von der RWE Zentrale")
}
if( nbuffer > 20 ) {
executeCommandLine("/mnt/USER/haushalt/scripts/RestartInnogy.sh" ,10000)
nbuffer = 7
}
postUpdate( ZVWDBuffer, nbuffer)
}
}
end
RestartInnogy.sh
#!/bin/bash
sshpass -p habopen ssh openhab@localhost -p 8101 “bundle:restart org.openhab.binding.innogysmarthome”