Hi Leute,
ich habe eine Anfängerfrage. Ich möchte gerne Werte global Speichern um von jedem define wie at, notify,... darauf zugreifen zu können.
Derzeit benutze ich "$data{<Name>}" dafür. Ist dies auch dafür gedacht?
Was mich dabei stört ist, dass ich nach jedem Event auf Grund dessen einen Log-File Eintrag wie z.B. folgender bekomme.
"at_ITPlus_UpdateTemperatur: 1398382560". Ich speichere darin z.B. einen Zeitwert, welchen ich später noch einmal benötige.
Gibt es eine elegantere Lösung?
Danke im Voraus.
Zitat von: ulli am 27 April 2014, 15:16:10
Gibt es eine elegantere Lösung?
Lege Dir einen dummy an, und speichere dort die Werte mit setreading. Dann kannst Du ganz normal mit ReadingsVal arbeiten.
define speicherDummy dummy
setreading speicherDummy <readingName> <readingWert>
Vorteil: Die Werte werden sogar sauber mit abgespeichert, da es sich um ein reguläres Device handelt.
In einem einzigen speicherDummy kannst Du soviele Readings setzen wie Du möchtest.
Das ist ja genial! Merci :)
Ähm... das sieht ja superpraktisch aus, aber wie greift man dann darauf zu?
Danke,
Marek
Hallo,
so wie auf alle anderen Readings aller anderen Geräte - ReadingsVal("device","reading","ersatzwert")
Zur Not nochmal das Einsteiger.pdf durchblättern.
Grüße
hallo vielle Jahre später
geht das auch für Attribute attr ?
Sodass man über die "Variable" z.B
attr <device> stateformat variablestateformat1
variable nur einmal und auswechselbar das stateformat anpassen kann.
beste Grüße und Dank
Thomas