Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Und Oder Verknüpfung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Und Oder Verknüpfung

Geplant Angeheftet Gesperrt Verschoben JavaScript
3 Beiträge 3 Kommentatoren 816 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • H Offline
    H Offline
    HKF8770
    schrieb am zuletzt editiert von
    #1

    Hallo Ih,

    leider eine Anfängerfrage aber ich komm nicht drauf.

    Wie mach erweitere ich unteres Skript durch eine "and" oder "or" Verknüpfung?

    Vor allem die "and" ist mir wichtig, sprich wenn 2 Abfragen wahr sind dann geschieht erst was.

    Danke für eure Hilfe

     if (Motion_Bad === true) {
    
          setState('hm-rpc.0.JRT0002008.1.ON_TIME', 600 );                          // Setze Timer in sekunden => 30x60=1800
          setState('hm-rpc.0.JRT0002008.1.STATE', 'true');                              // Licht Aussenbeleuchtung einschalten
          log("---> LED Bad eingeschaltet","info");
          setState('hm-rpc.0.KEQ0964544.1.ON_TIME', 600 );                          // Setze Timer in sekunden => 30x60=1800
          setState('hm-rpc.0.KEQ0964544.1.STATE', 'true');                              // Licht Aussenbeleuchtung einschalten
          } 
    

    Freddy

    1 Antwort Letzte Antwort
    0
    • B Offline
      B Offline
      Beatz
      schrieb am zuletzt editiert von
      #2

      Hallo,

      eine UND-Verknüpfung kannst Du mit && realisieren, eine ODER-Verknüpfung mit || (Pipe = Alt Gr + <).

      Beispiel (UND):

      if (Motion_Bad === true && Licht_Bad === false) {
          setState('hm-rpc.0.JRT0002008.1.STATE', 'true');
      }
      

      Beispiel (ODER):

      if (Motion_Bad === true || Motion_Schlafen === true) {
          Alarm;
      }
      

      Du kannst diese Bedingungen auch mithilfe von Klammern beliebig verschachteln.

      Beispiel (ODER):

      if ((Motion_Bad === true || Motion_Schlafen === true) && Alarmanlage_scharf === true) {
          Alarm;
      }
      

      Eine UND-Verknüfung kannst Du grundsätzlich auch mit verschachtelten if-Bedingungen erstellen. Das macht insbesondere komplexe Zusammenhänge übersichtlicher und Du kannst einzelne else-Zweige einbauen:

      if (Motion_Bad === true || Motion_Schlafen === true) {
          if (Alarmanlage_scharf === true) {
              Alarm;
          }
      }
      
      1 Antwort Letzte Antwort
      0
      • BluefoxB Offline
        BluefoxB Offline
        Bluefox
        schrieb am zuletzt editiert von
        #3

        Falls du auf zwei Inputs (sensoren) reagieren musst, dann ist das ein bisschen komplizierter:

        var idSensor1 = "hm-rpc.0.BLA1.1.STATE";
        var idSensor2 = "hm-rpc.0.BLA2.1.STATE";
        
        function checkStates() {
           // UND Verknüpfung 
           if (getState(idSensor1).val && getState(idSensor2).val) {
                // Irgendwas ausführen
           }
        }
        on(idSensor1, checkStates);
        on(idSensor2, checkStates);
        
        
        1 Antwort Letzte Antwort
        0
        Antworten
        • In einem neuen Thema antworten
        Anmelden zum Antworten
        • Älteste zuerst
        • Neuste zuerst
        • Meiste Stimmen


        Support us

        ioBroker
        Community Adapters
        Donate

        898

        Online

        32.4k

        Benutzer

        81.5k

        Themen

        1.3m

        Beiträge
        Community
        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
        ioBroker Community 2014-2025
        logo
        • Anmelden

        • Du hast noch kein Konto? Registrieren

        • Anmelden oder registrieren, um zu suchen
        • Erster Beitrag
          Letzter Beitrag
        0
        • Home
        • Aktuell
        • Tags
        • Ungelesen 0
        • Kategorien
        • Unreplied
        • Beliebt
        • GitHub
        • Docu
        • Hilfe