Variablen Werte sichern für FHEM Shutdown oder reload module ..

Begonnen von ritchie, 21 Juli 2013, 11:05:42

Vorheriges Thema - Nächstes Thema

ritchie

Hallo Zusammen,

Ich möchte errechnete Werte im System speichern, so das Z.B. Tagesverbrauch, Wochenverbrauch und Monatsverbrauch bei Beenden von FHEM mit dem alten Wert nach dem Starten von FHEM wieder verfügbar sind.

Der Zähler selber kann dies leider nicht.

a) wie muss ich solche Variablen deklarieren und
b) wie sichere ich diese Variablen

oder sichere das besser in einer eigenen Datei ?

 gibt es ein Ereignis Fhem_closed()

Gruss R.
IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

AK-868

Morgen,

ich hab gerade quasi die selbe Frage gestellt. Nur im Bezug auf einen speziellen Fall.

Link
Hardware FHEM:
Neue Fritzbox 7390 keine Labor von AVM
Konfigurationsadapter Lan
Funk-Schließerkontaktschnittstellen
Funk-Fenster/Türkontakt
Funk-Schaltaktoren UP ein und zweifach
Funk-Jalousieaktoren
Funk-Rauchmelder


rudolfkoenig

Ich wuerde es als Reading (userReadings) oder Attribut (userattr) anlegen, dann wird das vor shutdown bzw. beim save in fhem.state automatisch gespeichert und nach dem Hochfahren wieder gesetzt.

Wenn man das selbst bauen will, dann gibt es z.Bsp. das globale %data, und die global INITIALIZED, SHUTDOWN, REREADCFG Events.

AK-868

Ich hab es so gemacht. Dann brauchst du nur noch Hell: Ja oder Nein abfragen.

Dann kann ich auch die Zeiten sehen wann es Hell oder Dunkel ist.

in den Readings steht aktuell:  state   Ja   2013-07-21 05:12:04


define Hell dummy
attr Hell eventMap Ja Nein
define Sonnenaufgang at *{sunrise("HORIZON=-4",0,,)} set Hell Ja
define Sonnenuntergang at *{sunset("HORIZON=-5",0,,)} set Hell Nein
Hardware FHEM:
Neue Fritzbox 7390 keine Labor von AVM
Konfigurationsadapter Lan
Funk-Schließerkontaktschnittstellen
Funk-Fenster/Türkontakt
Funk-Schaltaktoren UP ein und zweifach
Funk-Jalousieaktoren
Funk-Rauchmelder


ritchie

In Deinem Fall würde ich eine Variable (Dummy) anlegen , welche sich bei
dem Eintreten des Ereignis den Wert merkt und diesen nach Beenden
des Ereignis wieder zurückschreibt.

Ich will Werte speichern, welche über das Kommando "shutdown restart" leben.

Edit:

Danke "rudolfkoenig" Deine Antwort, war die, die ich gebrauchen kann. Das war ja ein schneller Post :-)

Gruss R.

IPU662  Ipfire & Fhem (Homematic + MAX) - Produktiv
Cubietruck (1Wire - USB) - Produktiv

AK-868

Der Post vor deinem sollte da nicht hin. Sorry irgendwas ist da falsch gelaufen...

Das mit dem Dummy war auch meine Idee, ich dachte mann könnte vllt. irgendwie ein globales Attribut setzen und dieses dann mit Werten füllen.
Hardware FHEM:
Neue Fritzbox 7390 keine Labor von AVM
Konfigurationsadapter Lan
Funk-Schließerkontaktschnittstellen
Funk-Fenster/Türkontakt
Funk-Schaltaktoren UP ein und zweifach
Funk-Jalousieaktoren
Funk-Rauchmelder


fiedel

Bei meinem Tagesenergie- Dummy hatte ich letztens das Problem, dass der Wert nicht gespeichert wurde, weil FHEM abgestürzt ist(hatte mit OWServer rumgespielt). Um sowas in Zukunft zu verhindern, habe ich an die Routine die den Wert in den Dummy schreibt ein "save" angehängt. Dann überlebt der Wert auch einen Absturz.

Grüße

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

herrmannj