state im dummy aktualisieren

Begonnen von Himi, 22 Dezember 2015, 11:41:55

Vorheriges Thema - Nächstes Thema

Himi

Hallo,

ich habe den beigefügten dummy erfolgreich am laufen.
Nun hätte ich aber noch gerne folgende Funktion..

Wenn ich z.B. das device "MAX_074ca1" mit einer festen Temperatur (z.B. 21.0) einstelle, steht das state auf 21.0. (logisch)
Mein Wochenprogramm senkt dann wie gewünscht "MAX_074ca1"  um 19:00 Uhr auf 18.0 Grad C ab. Das state im dummy bleibt aber immer noch auf 21.0 stehen.

Wie kann ich den dummy "HA_Heizung_Modus" dazu bringen, dass sich das state automatisch mit dem device MAX_074ca1 mitändert?

#--Dummy für die Schnell-Einstellung der Temperatur bis zum nächsten automatischen Schaltzeitpunkt-----------
define HA_Heizung_Modus dummy
attr HA_Heizung_Modus devStateIcon 21.0:set_on:17.0 17.0:set_off:21.0
attr HA_Heizung_Modus fp_Grundriss 500,250,1,
attr HA_Heizung_Modus group dummy
attr HA_Heizung_Modus icon heizung.0
attr HA_Heizung_Modus room Heizung OG.
attr HA_Heizung_Modus setList state:17.0,21.0
attr HA_Heizung_Modus webCmd state

define HA_Heizung_Modus.ntfy notify HA_Heizung_Modus.* {\
  my $valtemp = "$EVENT";;\
  my $device = "MAX_074ca1";;\
  my $cmd = 'set '.$device.' desiredTemperature auto '.$valtemp;;\
  fhem($cmd);;\
}

Hans Franz

Hallo,

Lass doch das Wochenprogramm den Dummy ändern. Das Notify greift ja auch dann.

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

Puschel74

Man kann das regexp im notify auch erweitern und dann in einem notify mehrere Prüfungen durchführen lassen.
(HA_Heizung_Modus|MAX_074ca1).*

Allerdings sollte man
a) den Devices sinnvolle Namen geben - Geschmackssache erleichtert das Coden aber
b) das Reading noch ins regexp mit aufnehmen da das notify so jedesmal ausgeführt wird wenn MAX_074ca1 irgendwas sendet.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Himi

Danke für Euere Antworten,

habe das notify abgändert (siehe beigefügten Code)
ich habe erwartet, dass bei einer Status-Änderung (entweder über das Wochenprogramm oder Händisch)
sich der status vom "HA_Heizung_Modus dummy" mit ändert.

Aber...der status ändert sich nicht mit..

Wer kann weiterhelfen.

PS: Bei MAX_074ca1 handelt es sich um einen Zwischenstecker. Im Event-Monitor ändert sich im Device "MAX_074ca1" lediglich die Valveposition von 0 -->100 bzw. 100 -->0
define HA_Heizung_Modus.ntfy notify (HA_Heizung_Modus|MAX_074ca1).* {\
  my $valtemp = "$EVENT";;\
  my $device = "MAX_074ca1";;\
  my $cmd = 'set '.$device.' desiredTemperature auto '.$valtemp;;\
  fhem($cmd);;\
}

Puschel74

Versuch mal
(HA_Heizung_Modus|MAX_074ca1).*:.*
und zeig mal aus dem EventMonitor einen Ausschnitt des MAX_074ca1

Edith: Meine Codebeispiele sind für das DEF und nicht für die fhem.cfg gedacht  ;)
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Hans Franz

Ich gehe davon aus, dass der Status des Dummy aktualisiert werden soll. Wenn das im Notify gemacht wird (die Zeile fehlt noch) triggert das aber wiederum das Notify. Da das dummy nur ein Reading hat, kann es auch nicht per regex eingeschränkt werden.

Einfacher wäre es, wie schon vorgeschlagen, per Wochenprogram den state des Dummy zu ändern und das Notify im ursprünglichen Zustand (horcht auf Dummy) zu belassen.

Keep it simple :)

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

Puschel74

#6
Ein set triggert - ein setreading nicht.
Und hier würde ein setreading genügen aber ja, der Code ist noch nicht fertig.

Ich biete auch nur Hilfe zur Selbsthilfe  ;)

Aber du darfst gerne für deine Idee einen Codevorschlag bringen.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Wernieman

Bist Du Dir sicher?

Aus der Doku von setreading:
http://fhem.de/commandref.html#setreading
ZitatSet the reading <reading> for the device <name> to <value> without sending out commands to the device, but triggering events and eventMap/stateFormat transformations as usual. See the set command documentation for replacement description.

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Puschel74

#8
Hmmm, das hatte ich aber noch anders im Kopf  ???
Grad ausprobiert und stimmt mit der commandref überein - Mist.

Edith: Was aber auch nicht weiter schlimm ist.
Man darf einem Dummy ja auch ein Reading spendieren  ;D
Was aber auch nicht nötig ist da man den Wert ja nur setzen braucht wenn er != ist
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Himi

Danke dass da jetzt mehrere mitmachen..

Es ist ja eigentlich simpel. Mit dem dummy schalte ich den Zwischenstecker (MAX_074ca1) unabhängig vom Wochenprogramm ein/aus.
(bei mir das state zwischen 17.0 und 21.0.) Schaltet das Wochenprogramm oder der ECO-Taster soll sich das state des dummy mit ändern.

Gruß Himi

Auszug aus dem Event-Monitor.
22 15:53:45 readingsGroup rg_Heating MAX_074ca1.valveposition: 100 %
2015-12-22 15:53:45 MAX MAX_074ca1 valveposition: 100

Wernieman

Ich verstehe immer noch nicht, warum Du nicht in Deinem Wochenprogramm auch denn Dummy mitänderst ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Himi

Mein Wochenprogramm ist im MAX-Cube hinterlegt. Habe bis heute noch keinen CUL..

Puschel74

Mit den speziellen MAX-interna kenn ich mich leider nicht aus und kann dahingehend auch nicht behilflich sein.
Wenn man an das Wochenprogramm im CUBE irgendwie rankommt lässt sich da sicher was machen.

Sonst kann man immer noch das notify passend erweitern.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.