If- um Else-Bedingung erweitern bei Verwendung "klammerarmer" Schreibweise

Begonnen von helgekraak, 17 Januar 2014, 00:32:02

Vorheriges Thema - Nächstes Thema

helgekraak

Ich verwende folgende "klammerarme" Syntax mit Erfolg für if-Bedingungen, welche sehr gut zu bei einer Vielzahl von Befehlen zu überblicken ist:


define AUFWACHENTERTAINMENT_STARTEN at *10:50:00 {\
\
fhem "define MAKRO_TEMP_1 at +00:00:30 set Halogenfluter 66" if (Value("AUFWACHENTERTAINMENT_WECKER_AKTIV") eq "on");;\
\
}


Es gelingt mir jedoch auch nach intensiver Lektüre vieler if-else-Beispiele nicht, an diese Schreibweise eine funktionierende else-Bedingung anzuhängen. Erwartet hatte ich, dass dies funktionieren würde:

define AUFWACHENTERTAINMENT_STARTEN at *10:50:00 {\
\
fhem "define MAKRO_TEMP_1 at +00:00:30 set Halogenfluter 66" if (Value("AUFWACHENTERTAINMENT_WECKER_AKTIV") eq "on") else fhem "define MAKRO_TEMP_2 at +00:00:30 set Lichtleiste_Weiss_Bett on";;\
\
}


Leider bekomme ich immer diesen Syntaxfehler:  syntax error at (eval 275) line 6, near ") else"

Rat ist sehr willkommen. Danke.

justme1968

elsif und else gehen nur in der 'langen' schreibweise mit klammern.

ohne klammern geht es nur so:

fhem "define MAKRO_TEMP_1 at +00:00:30 set Halogenfluter 66" if (Value("AUFWACHENTERTAINMENT_WECKER_AKTIV") eq "on");
fhem "define MAKRO_TEMP_2 at +00:00:30 set Lichtleiste_Weiss_Bett on" if (Value("AUFWACHENTERTAINMENT_WECKER_AKTIV") ne "on")

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

helgekraak