FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: DerBaer am 05 Oktober 2017, 16:27:07

Titel: Lichtautomatik funktioniert nicht
Beitrag von: DerBaer am 05 Oktober 2017, 16:27:07
Hallo zusammen,

ich bin dabei meine Lichtsteuerung einfacher und intelligenter zu machen. Zumindest soweit es meine Fähigkeiten zulassen.

Dabei bin ich jetzt auf ein Problem mit meinem Hauptnotify gestoßen.


SamsungS8 {
    if (ReadingsVal("myTwilight","light","6") > 5 || Value("Sleep") eq "on" || Value("Users") ne "zuhause" && Value("HueSchlafzimmer") eq "on" && Value("HUEAutomatik") eq "on")  {
      fhem("set HUEManager scene OFF");
   }elsif (ReadingsVal("myTwilight","light","6") eq 5 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON_50" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON_50");
   }elsif (ReadingsVal("myTwilight","light","6") eq 4 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON_80" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON_80");
   }elsif (ReadingsVal("myTwilight","light","6") < 4 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON");
   }
}


Leider funktioniert das ganze so nicht, da ich in der ersten und zweiten Zeile ors mit ands mischen möchte.

Jetzt zu meiner Frage, wie kann ich das bewerkstelligen?
Zur Funktion des ganzen, es ist im Prinzip eine Abfrage mehrere Dummys und Geräte die auf meine Anwesenheit, den Tageslichtstatus und meinen Schlafzustand  schließen und dementsprechend die LightScene einstellt. Das ganze wird alle 5 Sekunden getaktet und um das zu verhindern, bzw wirklich nur dann an die Lampen weiter zu geben wenns wirklich nötig ist, versuche ich soviele Situationen wie möglich in die Abfrage zu stecken.

Wäre super wenn mir jemand helfen könnte! Ich würde mir damit ein Notify sparen und hätte eine eine Funktion mehr.

Grüße Daniel
Titel: Antw:Lichtautomatik funktioniert nicht
Beitrag von: CoolTux am 05 Oktober 2017, 16:29:50
Wie in der Schule. Klammern


SamsungS8 {
    if ( (ReadingsVal("myTwilight","light","6") > 5 || Value("Sleep") eq "on" || Value("Users") ne "zuhause") && Value("HueSchlafzimmer") eq "on" && Value("HUEAutomatik") eq "on")  {
      fhem("set HUEManager scene OFF");
   }elsif (ReadingsVal("myTwilight","light","6") eq 5 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON_50" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON_50");
   }elsif (ReadingsVal("myTwilight","light","6") eq 4 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON_80" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON_80");
   }elsif (ReadingsVal("myTwilight","light","6") < 4 && Value("Sleep") eq "off" && Value("Users") eq "zuhause" && Value("HUEManager") ne "ON" && Value("HUEAutomatik") eq "on") {
      fhem("set HUEManager scene ON");
   }
}


Lichsteuerung mache ich im übrigen über eine eigene 99_myUtils. Das Notify ist viel zu Groß
Titel: Antw:Lichtautomatik funktioniert nicht
Beitrag von: DerBaer am 06 Oktober 2017, 06:15:26
Klammern...  ::)  ;D

Dankeschön  ;D

Naja das is jetzt schon die kurze Version, ich bin leider noch ned soweit das anders umzusetzen.
Eigentlich liegt das Lehrmaterial schon daheim, aber ich komm einfach ned dazu.  ;D