Userreading setzen mit Bedingung

Begonnen von Arek, 14 Mai 2021, 17:39:38

Vorheriges Thema - Nächstes Thema

Arek

Hallo,

ich möchte, dass ein Userreading eines Temperatursensors gesetzt wird, nur wenn eine Bedingung erfüllt ist. Wenn die Bedingung nicht erfüllt ist, soll der letzte Wert aber bleiben.

userreading temperature {ReadingsVal($name,"getG1","") if (ReadingsVal($name,"logging",'')eq"on")}

Damit ist das Userreading leer, sobald die Bedingung nicht erfüllt ist. Bitte um Hilfe.

Schöne Grüße
Arek

KölnSolar

Hallo Arek,

userReadings temperature {if (ReadingsVal($name,"logging",'')eq"on"){ReadingsVal($name,"getG1","")} else {ReadingsVal($name,"temperature","")}}

oder Du bekommst es ggfs. über die Eventeinschränkung temperature:.... und/oder den event-on-Attributen hin.

Grüße Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

TomLee

Den trigger einfach nur auf das on-Event einschränken ?

userreading temperature:logging:.on {ReadingsVal($name,'getG1','')}

Lieg ich damit so daneben ?

Arek

Zitat von: KölnSolar am 14 Mai 2021, 17:53:52
userReadings temperature {if (ReadingsVal($name,"logging",'')eq"on"){ReadingsVal($name,"getG1","")} else {ReadingsVal($name,"temperature","")}}

oder Du bekommst es ggfs. über die Eventeinschränkung temperature:.... und/oder den event-on-Attributen hin.
Das funktioniert. Danke
Zitat von: TomLee am 14 Mai 2021, 17:59:11
Den trigger einfach nur auf das on-Event einschränken ?
userreading temperature:logging:.on {ReadingsVal($name,'getG1','')}

Lieg ich damit so daneben ?
Dabei wird nur einmalig beim on-Event das Userreading gesetzt, aber nicht solange die Bedingung wahr ist.

TomLee

#4
Die Frage ist doch jetzt ob getG1 das einzige Reading in dem Device ist welches das userreadings (ohne trigger) immer auslöst oder gibts da noch mehr ?

Wenns das einzige ist dann ist die Lösung ohne trigger OK.

Aber wenn nicht, wäre meine nächste Frage wie oft es denn das on-Event gibt ? wirklich nur bei Änderung, oder ist das vlt. eingeschränkt mit event-on-change-reading logging|.* und aktualisiert sich eigentlich zeitgleich mit getG1?

Wenn zeitgleich wäre evtl. event-on-update logging ein Kompromiss das userReadings nicht all zu oft auszuführen, mit meinem Vorschlag.