FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: ulli am 27 April 2014, 15:16:10

Titel: globale Variablen
Beitrag von: ulli am 27 April 2014, 15:16:10
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.
Titel: Antw:globale Variablen
Beitrag von: betateilchen am 27 April 2014, 15:30:16
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.
Titel: Antw:globale Variablen
Beitrag von: ulli am 27 April 2014, 15:38:53
Das ist ja genial! Merci :)
Titel: Antw:globale Variablen
Beitrag von: Marek am 30 Juli 2014, 23:34:06
Ähm... das sieht ja superpraktisch aus, aber wie greift man dann darauf zu?

Danke,
Marek
Titel: Antw:globale Variablen
Beitrag von: Puschel74 am 31 Juli 2014, 04:55:57
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
Titel: Aw: globale Variablen
Beitrag von: thburkhart am 06 März 2025, 18:41:22
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