FHEM Forum

FHEM - Hausautomations-Systeme => MAX => Thema gestartet von: Xaser am 04 Februar 2015, 19:43:18

Titel: ECO-Taster
Beitrag von: Xaser am 04 Februar 2015, 19:43:18
Hallo,

das Forum habe ich bereits durch, allerdings habe ich zum ECO-Taster keine richtige Lösung gefunden. Folgenden Code habe ich nun zusammen "gebaut":

define ECOTasterECO notify ECOTaster:onoff {fhem("set Thermostat_Arbeitszimmer,Thermostat_Bad,Thermostat_Kueche,Thermostat_Schlafzimmer,Thermostat_Wohnzimmer1,Thermostat_Wohnzimmer2 desiredTemperature eco") if (ReadingsVal("ECOTaster","onoff","") = 0)}


Problem ist nun...das der ECOTaster einfach nichts macht beim drücken...kein Log eintrag...einfach nichts. An was kann das liegen? Wenn der Code falsch ist, müsste doch zumindest FHEM in der Log etwas anzeigen oder?

Titel: Antw:ECO-Taster
Beitrag von: John am 04 Februar 2015, 20:47:56
Hallo Xaser,

ich denk du bist schon nah dran an einer Lösung.
Tröste dich die RegExps sind für Anfänger die größte Hürde, um mit FHEM klarzukommen

versuchs mit: (".*" fehlt wohl bei onoff)
define ECOTasterECO notify ECOTaster:onoff.* {fhem("set Thermostat_Arbeitszimmer,Thermostat_Bad,Thermostat_Kueche,Thermostat_Schlafzimmer,Thermostat_Wohnzimmer1,Thermostat_Wohnzimmer2 desiredTemperature eco") if (ReadingsVal("ECOTaster","onoff","") = 0)}

John
Titel: Antw:ECO-Taster
Beitrag von: Xaser am 05 Februar 2015, 19:49:56
Danke für den Tipp!! Habe es nun endlich geschafft. Hatte da noch mehr falsch gehabt, konnte es dann aber doch (mit viel ausprobieren) irgendwie hinbekommen.

define ECOTasterECO notify ECOTaster:onoff.* {fhem ("set Thermostat_Arbeitszimmer,Thermostat_Bad,Thermostat_Kueche,Thermostat_Schlafzimmer,Thermostat_Wohnzimmer1,Thermostat_Wohnzimmer2 desiredTemperature eco") if (ReadingsVal("ECOTaster","onoff","") eq "0")}

Was bedeutet eigentlich das "eq" am Schluß? Habe dies von einem anderen Beitrag mit eingebaut.

Gruß

Sebastian
Titel: Antw:ECO-Taster
Beitrag von: John am 05 Februar 2015, 23:13:52
Ach ja, das ist die nächste Hürde, man muß die Perl-Basics lernen.

eq bedeutet equals und wird zum Stringvergleich in Perl verwendet.

John