Re: Zeitmessung zwischen Item Zustand ON - OFF
Verfasst: 28. Feb 2023 00:33
Ja, im Prinzip sollte das funktionieren.
Der Trigger ist aber Quatsch
Also nicht grundsätzlich, aber sinnvoller wäre, die Rule auf Item OneCallAPIweatherandforecast_Current_Windspeed changed triggern zu lassen.
Eine Rule, die minütlich auslöst, wird nur bei Änderung des Wertes im Item ein anderes Ergebnis liefern
Und der Wert wird sich nicht ändern, ohne dass ein changed Trigger ausgelöst wird.
Der minütliche Trigger ließe sich abgesehen davon auch so schreiben:Das Jahr ist optional, der * steht für egal bzw. jeder mögliche Wert, während 0/1 bedeutet Beginnend mit dem Wert 0 jeder erste nachfolgende Wert, also 3/5 stünde für Beginnend mit 3 jeder fünfte Wert, also 3, 8, 13, 18 usw., das 0/1 ist also gleichbedeutend mit *
Was den Wert an sich betrifft, so kann es sein, dass Du die Einheit in Anführungszeichen schreiben musst, also
Als Alternative kannst Du auch die Einheit entfernen (dann musst Du allerdings auch genau wissen, welcher Wert wirklich im Item steht - das ist dann die Default Einheit):
.floatValue entfernt die Einheit, (... as Number) sorgt dafür, dass die Methode überhaupt zur Verfügung steht.
Der Trigger ist aber Quatsch

Also nicht grundsätzlich, aber sinnvoller wäre, die Rule auf Item OneCallAPIweatherandforecast_Current_Windspeed changed triggern zu lassen.
Eine Rule, die minütlich auslöst, wird nur bei Änderung des Wertes im Item ein anderes Ergebnis liefern

Und der Wert wird sich nicht ändern, ohne dass ein changed Trigger ausgelöst wird.

Der minütliche Trigger ließe sich abgesehen davon auch so schreiben:
Code: Alles auswählen
Time cron "0 * * * * ?"
Was den Wert an sich betrifft, so kann es sein, dass Du die Einheit in Anführungszeichen schreiben musst, also
Code: Alles auswählen
if(OneCallAPIweatherandforecast_Current_Windspeed.state >= 20|"km/h")
Code: Alles auswählen
if((OneCallAPIweatherandforecast_Current_Windspeed.state as Number).floatValue >= 20)