Residents Doif macht nix

Begonnen von hietzi, 09 Januar 2017, 19:27:42

Vorheriges Thema - Nächstes Thema

hietzi

Habe gerade erfolgreich Residents mit Geofency eingerichtet.
Jetzt wollte ich falls keiner zu Hause ist meine MAX Thermostate auf eco absenken

Habe dazu folgendes gemacht

define di_rgr_Residents DOIF ([rgr_Residents:?presence] eq "present") (set Heizung desiredTemperature auto) DOELSEIF ([rgr_Residents:?presence] eq "absent") (set Heizung desiredTemperature eco)

Gebe ich im Resdients Modul den Status absent ein passiert aber nix ?

Heizung ist ein Structure und sieht wie folgt aus
define Heizung structure Heizung 01_Thermostat_Buegelzimmer 01_Thermostat_Gaestezimmer 01_Thermostat_Kinderzimmer 01_Thermostat_Kueche 01_Thermostat_Vorraum Wandthermostat
attr Heizung group HZ_Gesammt
attr Heizung room Heizung
attr Heizung webCmd desiredTemperature


Habe ich irgendwo einen Denkfehler oder ist es alles falsch :-)

lg

kumue

Kommt eine Fehlermeldung ?
Hast Du es schon ohne ? probiert ?

Ellert

#2
Nimm [rgr_Residents:presence] ? vor dem Reading ist eine veraltete Syntax für Events, aber Events sind nur 0 oder 1, daher ist ein Vergleich auf "present" sinnlos.

hietzi

Zitat von: kumue am 09 Januar 2017, 19:38:35
Kommt eine Fehlermeldung ?
Hast Du es schon ohne ? probiert ?

Thx a lot ohne ? gehts :-)

define di_rgr_Residents DOIF ([rgr_Residents:presence] eq "present") (set Heizung desiredTemperature auto) DOELSEIF ([rgr_Residents:presence] eq "absent") (set Heizung desiredTemperature eco)

kumue

Falls Du Events auswerten willst (Stichwort Event-Monitor) dann ist hier beschrieben, wie es mit DOIF funktioniert.
http://fhem.de/commandref_DE.html#DOIF_Ereignissteuerung_ueber_Auswertung_von_Events
Da findest Du auch den Hinweis von ellert, warum es mit dem ersten ?-Versuch nicht klappte.

Weiterhin findest Du hier, wie man lediglich abfragt, ohne zu triggern... da kommt das ? wieder zum Einsatz.
http://fhem.de/commandref_DE.html#DOIF_Zeitintervalle_Readings_und_Stati_ohne_Trigger



hietzi

Guck ich mir an
Vielen Dank nochmals