[gelöst] DOIF "and" und "or" Kombination

Begonnen von Frank_Huber, 23 Mai 2017, 10:21:45

Vorheriges Thema - Nächstes Thema

Frank_Huber

Moin Moin,

mein DOIF:

([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 130 and ([WetterProplanta:weather] eq "bedeckt" or [WetterProplanta:weather] eq "heiter" or [WetterProplanta:weather] eq "klar")) 

kann ich die Oder Bedingungen zusammenfassen?
Also z.B.:

([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 130 and ([WetterProplanta:weather] eq "bedeckt" or "heiter" or "klar"))

???


amenomade

Spontan würde ich sowas probieren:


([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 130 and [WetterProplanta:weather] =~ "bedeckt|heiter|klar")
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

nils_

nein  :)



funktionert dein DOIF nicht?
oder willste du platz sparen?
viele Wege in FHEM es gibt!

Frank_Huber

Zitat von: nils_ am 23 Mai 2017, 11:10:25
nein  :)
funktionert dein DOIF nicht?
oder willste du platz sparen?
Hab das DOIF heute erst erstellt und momentan erstmal nur azimuth und temperatur drin.
Will wenn das funktioniert noch das Wetter reinbringen und finde die kurze Version übersichtlicher und angenehmer.

Zitat von: amenomade am 23 Mai 2017, 11:09:47
Spontan würde ich sowas probieren:
([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 130 and [WetterProplanta:weather] =~ "bedeckt|heiter|klar")

Ahhhhhh! Danke, so werd ich es testen.

nils_

Zitat von: Frank_Huber am 23 Mai 2017, 11:15:12
Hab das DOIF heute erst erstellt und momentan erstmal nur azimuth und temperatur drin.
Will wenn das funktioniert noch das Wetter reinbringen und finde die kurze Version übersichtlicher und angenehmer.

ja ok. ist dann lesbarer (für den menschen), aber nen parser/compiler weiß dann nicht mehr was er mit dem zweiten vergleich anfangen soll ;)



die lösung von amenomade geht ja in die von dir gewünschte richtung!
viele Wege in FHEM es gibt!

Frank_Huber

#5
danke euch! läuft!

defmod DOIF_ROLLO_DOWN_BESCHATTUNG DOIF ([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 130 and [WetterProplanta:weather] =~ "bedeckt|heiter|klar") \
(set PI_EG cmd set Rollo1_Gast geschlossen,set PI_OG cmd set Rollos_OG_Sued geschlossen,set PI_DG cmd set Rollos_DG_Sued geschlossen) \
DOELSEIF ([Aussen_Temp:temperature] > 20 and [Sonnenstand:azimuth] > 220 and [WetterProplanta:weather] =~ "bedeckt|heiter|klar")\
(set PI_EG cmd set Rollos_West geschlossen,set PI_OG cmd set Rollos_OG_West geschlossen)\
DOELSEIF ([18:30]) (set PI_EG cmd set Rollos_EG offen,set PI_OG cmd set Rollos_OG offen,set PI_DG cmd set Rollos_DG offen)