könnte mal jemand auf meine Code-Zeile schauen, ich bekomms nicht hin :'(

Begonnen von aplatac, 17 November 2015, 18:11:55

Vorheriges Thema - Nächstes Thema

aplatac


define Abendbeleuchtung2_an at *{twilight("Tageslicht","ss","16:30","22:00")} if ($month<12) {fhem("set HM_LampeHaustuer on")}


nach echt viel gefummel gestern, hatte gehofft dass heute das Licht an geht... leider nein. Den twilight-Part habe ich seit Wochen
in Betrieb und wollte ihn jetzt nur so erweitern, das im Dezember NICHT das Außenlicht an geht. Statt dessen wird die Außensteckdose
der Lichterketten angesteuert.

Der Code oben führt zu keiner Fehlermeldung, sollte um 16:36 ausgeführt werden aber schaltet nicht...

Danke :-)

Icinger

Du willst ein Perl-if innerhalb von FHEM verwenden.
Das kann so nicht gehn.

Entweder das IF verwenden, oder das define so abändern:

define Abendbeleuchtung2_an at *{twilight("Tageslicht","ss","16:30","22:00")} {if ($month<12) fhem("set HM_LampeHaustuer on")}

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

aplatac

Vielen Dank für die superschnelle Hilfe.
Ich tue mich noch schwer mit der Mischung von Sprachen, wenn man nicht wirklich Programmierer kann, ist fhem evtl. nicht der leichteste Einstieg ;)
Was mir z.B. nicht klar war, ist dass ich die Ausdrücke in geschweifen Klammern einfach angehängt werden können. Ich hätte vermutet, dass es eine umfassende Klammer um alles geben muss, woher weiß der Interpreter, dass die beiden zusammen gehören?

dev0

Hinter timespec wird beim at noch ein command erwartet. In diesem fall ist es ein Perl Statement, könnte aber auch ein fhem Befehl sein.

aplatac

o.k. verstanden, der erste Ausdruck gehört noch zum at und der "zweite" ist somit der einzige.

Danke für die Hilfe.

aplatac

das wars noch nicht, aber ich glaube um den fhem-Befehl muss auch noch ein Klammernpaar, so:


*{twilight("Tageslicht","ss","16:30","22:00")} {if ($month<12) {fhem("set HM_LampeHaustuer on")}}


wir werden morgen sehen, ich möchte jetzt nicht an der System-zeit schrauben...

marvin78

oder so

*{twilight("Tageslicht","ss","16:30","22:00")} {fhem("set HM_LampeHaustuer on") if ($month<12)}

aplatac

das Licht war an :)

Hm, man kann die Bedingung auch an das Ende stellen?

Vielen Dank für eure Hilfe!