Hallo,
ich habe mehrere Thermostate im Einsatz und möchte die Anzahl abfragen, wie viele Thermostate gerade an sind.
defmod ThermoControl DOIF
FBH{
my $FBH_stateON = [#:"ThermostatFBH.*:^thermostatOperatingState":thermostatOperatingState$_ ne "idle"];
set_Reading("nrFBH_an",$FBH_stateON);
}
HK{
my $HK_stateON = [#:"Thermostat_.*:^reportedState":reportedState$_ ne "off"];
set_Reading("nrHK_an",$HK_stateON);
}
Es gibt zwei Blöcke
i) FBH Fußbodenheizung liefert im entsprechenden Reading entweder "idle" (wenn aus) oder "heating"
ii) HK Heizkörper liefert im entsprechende Reading entweder "off" (wenn aus) oder z.B. "dim 99"
Leider sind die entsprechenden Readings nrHK_an und nrFBH_an stets 0, obwohl mindestens ein Thermostat heating oder dim 99 schickt.
Wo liegt der Fehler?
ich denke, du möchtest eher haben:
my $FBH_stateON = [#:"^ThermostatFBH:^thermostatOperatingState":thermostatOperatingState:$_ ne "idle"];
und die andere Zeile entsprechend.