Mehrere DOIFS in einem DOIF? Soll ja gehen habe ich gelesen...

Begonnen von misux, 18 März 2018, 20:37:39

Vorheriges Thema - Nächstes Thema

misux

HI!
Ich probiere mich mit den mehreren DOIFS in einer DOIF..

Aber irgendwie willl das nicht...

Hat jemand einen Tipp was ich hier falsch mache?

Hier dei DEF code aus meine DOIF:


([Tageslicht_indoor] eq "Nacht") (set Deckenfluter on) DOELSEIF ([23:00|So Mo Di Mi Do] or [23:30|Fr Sa]) (set Deckenfluter off)
([Tageslicht_indoor] eq "Nacht") and ([TVTime:"off"]) (set WZBodenLed on) DOELSEIF ([22:00|So Mo Di Mi Do] or [23:00|Fr Sa]) (set WZBodenLed off)

Frank_Huber

Zitat von: misux am 18 März 2018, 20:37:39
HI!
Ich probiere mich mit den mehreren DOIFS in einer DOIF..

Aber irgendwie willl das nicht...

Hat jemand einen Tipp was ich hier falsch mache?

Hier dei DEF code aus meine DOIF:


([Tageslicht_indoor] eq "Nacht") (set Deckenfluter on) DOELSEIF ([23:00|So Mo Di Mi Do] or [23:30|Fr Sa]) (set Deckenfluter off)
([Tageslicht_indoor] eq "Nacht") and ([TVTime:"off"]) (set WZBodenLed on) DOELSEIF ([22:00|So Mo Di Mi Do] or [23:00|Fr Sa]) (set WZBodenLed off)

Da fehlt mindestens ein DOELSEIF

Mit dem Handy online, daher kurz gefasst...


Damian

Zitat von: misux am 18 März 2018, 20:37:39
HI!
Ich probiere mich mit den mehreren DOIFS in einer DOIF..

Aber irgendwie willl das nicht...

Hat jemand einen Tipp was ich hier falsch mache?

Hier dei DEF code aus meine DOIF:


([Tageslicht_indoor] eq "Nacht") (set Deckenfluter on) DOELSEIF ([23:00|So Mo Di Mi Do] or [23:30|Fr Sa]) (set Deckenfluter off)
([Tageslicht_indoor] eq "Nacht") and ([TVTime:"off"]) (set WZBodenLed on) DOELSEIF ([22:00|So Mo Di Mi Do] or [23:00|Fr Sa]) (set WZBodenLed off)


In einem DOIF wird immer nur ein Zweig aufgrund eines Ereignisses ausgeführt. Wenn die Ereignisse unabhängig voneinander sind, dann brauchst du mehrere DOIFs  - bisher ;)

Bald wird diese Version eingecheckt: https://forum.fhem.de/index.php/topic,84969.0.html

Mit dieser Version fallen viele bisherige Restriktionen weg, dafür muss man auf die Perl-Ebene. Dein Vorhaben ließe sich so definieren:

{if ([Tageslicht_indoor] eq "Nacht") {fhem"set Deckenfluter on"} elsif ([23:00|So Mo Di Mi Do] or [23:30|Fr Sa]) {fhem"set Deckenfluter off"}}
{if ([Tageslicht_indoor] eq "Nacht") and ([TVTime:"off"]) {fhem"set WZBodenLed on"} elsif ([22:00|So Mo Di Mi Do] or [23:00|Fr Sa]) {fhem"set WZBodenLed off"}}




Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

misux

Ah, ok! Ich dachte das wäre schon im Fhem integriert...

Bin gespannt!

Ist denn schon absehbar wann es soweit ist??

Damian

Zitat von: misux am 18 März 2018, 21:40:35
Ah, ok! Ich dachte das wäre schon im Fhem integriert...

Bin gespannt!

Ist denn schon absehbar wann es soweit ist??

Ich denke im Laufe der Woche :)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

misux

Werden denn die alten DOIFS noch funktionieren? Muss man einfach nur ein FHEM update machen damit es implementiert ist?

Damian

Zitat von: misux am 18 März 2018, 21:43:48
Werden denn die alten DOIFS noch funktionieren? Muss man einfach nur ein FHEM update machen damit es implementiert ist?

Die neue Version ist voll abwärtskompatibel zur bisherigen. Der neue Modus wird automatisch erkannt, ansonsten verhält sich das Modul wie bisher.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF