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. [Gelöst] [Blockly] Rollladen mit Lux wert fahren

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    969

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

[Gelöst] [Blockly] Rollladen mit Lux wert fahren

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
48 Beiträge 5 Kommentatoren 5.1k 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.
  • Homer.J.H Offline
    Homer.J.H Offline
    Homer.J.
    schrieb am zuletzt editiert von
    #17
    // -----------------------------------------------
    // Trigger
    // -----------------------------------------------
    
    schedule({hour: 6, minute: 30}, function () {
        // werktags, kein Feiertag -> unten hoch
        if(!isWeekend() || getState("hm-rega.0.54978"/*Feiertag_heute*/).val === false) {
            log("Werktag, Kein Feiertag: Fahre Jalousie hoch");
            Jalousie_unten_hoch();
        }
    });
    schedule({hour: 8, minute: 0}, function () {
        // wochenende oder Feiertag -> unten hoch
        if(isWeekend() || getState("hm-rega.0.54978"/*Feiertag_heute*/).val === true) {
            log("Wochende bzw. Feiertag: Fahre Jalousie hoch");
            Jalousie_unten_hoch();
        }
    });
    schedule({hour: 6, minute: 30}, function () {
        // werktags, kein Urlaub, kein Feiertag, -> oben hoch
        if (!isWeekend() && getState("hm-rega.0.55182"/*Urlaub*/).val === false && getState("hm-rega.0.54978"/*Feiertag_heute*/).val === false) {
            log("Werktag, kein Urlaub, kein Feiertag: Fahre Jalousie hoch");
            Jalousie_oben_hoch();
        }
    });
    schedule({hour: 8, minute: 0}, function () {
        // wochenende -> oben hoch
        if (isWeekend()) {
            log("Wochenende: Fahre Jalousie hoch");
            Jalousie_oben_hoch();
        }
        // Feiertag, werktags -> oben hoch
        if (!isWeekend() && getState("hm-rega.0.54978"/*Feiertag_heute*/).val === true) {
            log("Werktag, Feiertag: Fahre Jalousie hoch");
            Jalousie_oben_hoch();
        }
        // Urlaub, werktags -> oben hoch
        if (!isWeekend() && getState("hm-rega.0.55182"/*Urlaub*/).val === true) {
            log("Werktag, Urlaub: Fahre Jalousie hoch");
            Jalousie_oben_hoch();
        }
    });
    
    // Bei Sonnenuntergang (kleiner 4 Lux)
    
    on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {
       var value = obj.state.val;
       var oldValue = obj.oldState.val;
       console.log('*** Lux hat sich aktualisiert');
       if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 4 ) {
          console.log('*** Jalousie runter auf wahr setzen');
          setState('javascript.0.Rollladen_Hoch/Runter', true, true);  // aktualisiere Rolladen_Hoch/Runter mit wahr
       } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {
          console.log('*** Jalousie runter auf unwahr setzen');
          setState('javascript.0.Rollladen_Hoch/Runter', false, true);  // aktualisiere Rolladen_Hoch/Runter mit unwahr
       }
    });
    
    // -----------------------------------------------
    // Aktionen
    // -----------------------------------------------
    
    function Jalousie_oben_hoch() {
        // Abbruch bei deaktivierter Automatik
        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
    
        log("Jalousie oben hoch");
    
        // Status setzen (Standard)
        lvJalBad = 100;
        lvJalFlur = 100;
        lvJalWohnrechts = 100;
        lvJalWohnlinks = 100;
        lvJalKueche = 100;
    
        // Status setzen (Ausnahmen)
        if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
            lvJalWohnrechts = 0;
            lvJalWohnlinks = 0;
        }
    
        // Ausführen
        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
    
    }
    
    function Jalousie_unten_hoch() {
        // Abbruch bei deaktivierter Automatik
        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
    
        log("Jalousie unten hoch");
    
        // Status setzen (Standard)
        lvJalKZ = 100;
        lvJalHWR = 100;
        lvJalBad = 100;
        lvJalFlur = 100;
        lvJalWohnrechts = 100;
        lvJalWohnlinks = 100;
        lvJalBalkontuer = 100;
        lvJalSZ = 100;
        lvJalKueche = 100;
        lvJalBadoben = 1;
    
        // Status setzen (Ausnahmen)
        if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
            lvJalWohnrechts = 40;
            lvJalWohnlinks = 40;
            if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
                lvJalFlur = 60;
            } else {
                lvJalWohnrechts = 40;
            }
            lvJalWohnlinks = 40;
        }
    
        // Ausführen
        setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
        setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
        setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
        setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
        setState("hm-rpc.1.LEQ1211399.3.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
    }
    
    function Jalousie_runter () {
        // Abbruch bei deaktivierter Automatik
        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
    
        log("Jalousie runter");
    
        // Status setzen (Standard)
        lvJalKZ = 0;
        lvJalHWR = 0;
        lvJalBad = 0;
        lvJalFlur = 0;
        lvJalWohnrechts = 0;
        lvJalWohnlinks = 0;
        lvJalBalkontuer = 0;
        lvJalSZ = 0;
        lvJalKueche = 0;
        lvJalBadoben = 1;
    
        // Status setzen (Ausnahmen)
        // Tür Flur Sperre (0 = geschlossen, 1 = gekippt, 2 = offen)
        if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
            lvJalFlur = 100;
        }
    
        // Ausführen
        setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
        setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer .LEVEL*/, lvJalBad);
        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
        setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
        setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
        setState("hm-rpc.1.LEQ1211399.2.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
    
    }
    
    1 Antwort Letzte Antwort
    0
    • Homer.J.H Offline
      Homer.J.H Offline
      Homer.J.
      schrieb am zuletzt editiert von
      #18

      Das ist dann die Ausgabe.

      15:44:00.415

      [info]

      javascript.0 Stop script script.js.Rollladen_.Jalousien_ändern_script_Lux

      15:44:00.442

      [info]

      javascript.0 Start javascript script.js.Rollladen_.Jalousien_ändern_script_Lux

      15:44:00.443

      [info]

      javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: registered 1 subscription and 4 schedules

      15:46:17.837

      [info]

      javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: *** Lux hat sich aktualisiert

      15:48:51.619

      [info]

      javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: *** Lux hat sich aktualisiert

      15:48:51.620

      [info]

      javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: *** Jalousie runter auf wahr setzen

      15:48:51.621

      [warn]

      javascript.0 at Object. (script.js.Rollladen_.Jalousien_ändern_script_Lux:52:7)

      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #19

        Die Funktion Jalousie_runter() wird nirgends aufgerufen. Es fehlt der Trigger mit dem Funktionsaufruf (als letztes im Skript):

        on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
           if(dp.state.val) Jalousie_runter();
        });
        

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #20

          @Homer1976:

          [warn]

          javascript.0 at Object. (script.js.Rollladen_.Jalousien_ändern_script_Lux:52:7) `
          Es wird das setState() in Zeile 52 angemeckert. Gibt es denn den Datenpunkt 'javascript.0.Rollladen_Hoch/Runter' vom Typ Logikwert (boolean) ?

          Es kann auch sein, dass der Schrägstrich in der ID stört.

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          1 Antwort Letzte Antwort
          0
          • Homer.J.H Offline
            Homer.J.H Offline
            Homer.J.
            schrieb am zuletzt editiert von
            #21
            // Bei Sonnenuntergang (kleiner 4 Lux)
            
            on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               console.log('*** Lux hat sich aktualisiert');
               if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 4 ) {
                  console.log('*** Jalousie runter auf wahr setzen');
                  setState('javascript.0.Rollladen_Hoch/Runter', true, true);  // aktualisiere Rolladen_Hoch/Runter mit wahr
                } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {
                  console.log('*** Jalousie runter auf unwahr setzen');
                  setState('javascript.0.Rollladen_Hoch/Runter', false, true);  // aktualisiere Rolladen_Hoch/Runter mit unwahr
                  on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
                  if(dp.state.val) Jalousie_runter();
            });
            
               }
            });
            
            
            1 Antwort Letzte Antwort
            0
            • Homer.J.H Offline
              Homer.J.H Offline
              Homer.J.
              schrieb am zuletzt editiert von
              #22

              Hab es jetzt so weiß nicht ob es jetzt so richtig ist.

              Funktioniert noch nicht und das kommt in der Ausgabe.

              16:03:27.379

              [info]

              javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: *** Lux hat sich aktualisiert

              16:03:27.380

              [info]

              javascript.0 script.js.Rollladen_.Jalousien_ändern_script_Lux: *** Jalousie runter auf wahr setzen

              16:03:27.380

              [warn]

              javascript.0 at Object. (script.js.Rollladen_.Jalousien_ändern_script_Lux:52:7)

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #23

                @Homer1976:

                    // Status setzen (Standard)
                    lvJalBad = 100;
                    lvJalFlur = 100;
                    lvJalWohnrechts = 100;
                    lvJalWohnlinks = 100;
                    lvJalKueche = 100;
                ```` `  
                

                Man sollte keine Variablen ohne das Schlüsselwort var deklarieren. Richtig:

                    // Status setzen (Standard)
                    var lvJalBad = 100,
                    lvJalFlur = 100,
                    lvJalWohnrechts = 100,
                    lvJalWohnlinks = 100,
                    lvJalKueche = 100;
                

                Das gilt auch für die anderen Funktionen.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #24

                  @Homer1976:

                        setState('javascript.0.Rollladen_Hoch/Runter', false, true);  // aktualisiere Rolladen_Hoch/Runter mit unwahr
                        on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
                        if(dp.state.val) Jalousie_runter();
                  });
                     
                     }
                  });
                  ```` `  
                  

                  Nein, den Trigger mit dem Funktionsaufruf ganz an das Ende des Skripts setzen !

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  1 Antwort Letzte Antwort
                  0
                  • Homer.J.H Offline
                    Homer.J.H Offline
                    Homer.J.
                    schrieb am zuletzt editiert von
                    #25

                    Für mich ist das alles absolutes Neuland nutze es erst 1 Monat.

                    Hab es jetzt mal so angepasst wie ich es jetzt verstanden habe.

                    Wenn es nicht passt nimm es mir nicht übel. :shock:

                    1 Antwort Letzte Antwort
                    0
                    • Homer.J.H Offline
                      Homer.J.H Offline
                      Homer.J.
                      schrieb am zuletzt editiert von
                      #26
                      // Bei Sonnenuntergang (kleiner 4 Lux)
                      
                      on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {
                         var value = obj.state.val;
                         var oldValue = obj.oldState.val;
                         console.log('*** Lux hat sich aktualisiert');
                         if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 4 ) {
                            console.log('*** Jalousie runter auf wahr setzen');
                            setState('javascript.0.Rollladen_Hoch/Runter', true, true);  // aktualisiere Rolladen_Hoch/Runter mit wahr
                          } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {
                            console.log('*** Jalousie runter auf unwahr setzen');
                            setState('javascript.0.Rollladen_Hoch/Runter', false, true);  // aktualisiere Rolladen_Hoch/Runter mit unwahr
                      
                         }
                      });
                      
                      // -----------------------------------------------
                      // Aktionen
                      // -----------------------------------------------
                      
                      function Jalousie_oben_hoch() {
                          // Abbruch bei deaktivierter Automatik
                          if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                      
                          log("Jalousie oben hoch");
                      
                          // Status setzen (Standard)
                          var lvJalBad = 100;
                          var lvJalFlur = 100;
                          var lvJalWohnrechts = 100;
                          var lvJalWohnlinks = 100;
                          var lvJalKueche = 100;
                      
                          // Status setzen (Ausnahmen)
                          if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
                              lvJalWohnrechts = 0;
                              lvJalWohnlinks = 0;
                          }
                      
                          // Ausführen
                          setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
                          setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                          setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                          setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                          setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                      
                      }
                      
                      function Jalousie_unten_hoch() {
                          // Abbruch bei deaktivierter Automatik
                          if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                      
                          log("Jalousie unten hoch");
                      
                          // Status setzen (Standard)
                          var lvJalKZ = 100;
                          var lvJalHWR = 100;
                          var lvJalBad = 100;
                          var lvJalFlur = 100;
                          var lvJalWohnrechts = 100;
                          var lvJalWohnlinks = 100;
                          var lvJalBalkontuer = 100;
                          var lvJalSZ = 100;
                          var lvJalKueche = 100;
                          var lvJalBadoben = 1;
                      
                          // Status setzen (Ausnahmen)
                          if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
                               lvJalWohnrechts = 40;
                               lvJalWohnlinks = 40;
                              if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
                               lvJalFlur = 60;
                              } else {
                                  lvJalWohnrechts = 40;
                              }
                                  lvJalWohnlinks = 40;
                          }
                      
                          // Ausführen
                          setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
                          setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
                          setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
                          setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                          setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                          setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                          setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
                          setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
                          setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                          setState("hm-rpc.1.LEQ1211399.3.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                      }
                      
                      function Jalousie_runter () {
                          // Abbruch bei deaktivierter Automatik
                          if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                      
                          log("Jalousie runter");
                      
                          // Status setzen (Standard)
                          var lvJalKZ = 0;
                          var lvJalHWR = 0;
                          var lvJalBad = 0;
                          var lvJalFlur = 0;
                          var lvJalWohnrechts = 0;
                          var lvJalWohnlinks = 0;
                          var lvJalBalkontuer = 0;
                          var lvJalSZ = 0;
                          var lvJalKueche = 0;
                          var lvJalBadoben = 1;
                      
                          // Status setzen (Ausnahmen)
                          // Tür Flur Sperre (0 = geschlossen, 1 = gekippt, 2 = offen)
                          if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
                           lvJalFlur = 100;
                          }
                      
                          // Ausführen
                          setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
                          setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
                          setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer .LEVEL*/, lvJalBad);
                          setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                          setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                          setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                          setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
                          setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
                          setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                          setState("hm-rpc.1.LEQ1211399.2.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                      
                            on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
                            if(dp.state.val) Jalousie_runter();
                      });
                      }
                      
                      1 Antwort Letzte Antwort
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von
                        #27

                        Oder mache es ohne den Datenpunkt 'javascript.0.Rollladen_Hoch/Runter', sondern mit einer Skriptvariablen Rollos_unten

                        // Bei Sonnenuntergang (kleiner 4 Lux)
                        var Rollos_unten = false;
                        
                        on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {
                           var value = obj.state.val;
                           var oldValue = obj.oldState.val;
                           console.log('*** Lux hat sich aktualisiert');
                           if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 4 ) {
                              console.log('*** Jalousie runter auf wahr setzen');
                              if(!Rollos_unten) Jalousie_runter();  // Funktionsaufruf zum Runterfahren der Rollos
                              Rollos_unten = true;
                           } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {
                              console.log('*** Jalousie runter auf unwahr setzen');
                              Rollos_unten = false;
                           }
                        });
                        
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Antwort Letzte Antwort
                        0
                        • Homer.J.H Offline
                          Homer.J.H Offline
                          Homer.J.
                          schrieb am zuletzt editiert von
                          #28

                          Hallo Paul,

                          so wie als letztes beschrieben funktioniert es Klasse.

                          Ich Danke Dir ein weiteres mal, auf dich ist wie immer Verlass.

                          Wünsche Dir noch einen schönen Sonntag

                          Grüße Steffen

                          1 Antwort Letzte Antwort
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von
                            #29

                            @Homer1976:

                            so wie als letztes beschrieben funktioniert es Klasse. `
                            Das freut mich für Dich.
                            @Homer1976:

                            Wenn es nicht passt nimm es mir nicht übel. `
                            Warum sollte ich ? Jeder hat mal angefangen.
                            @Homer1976:

                                setState("hm-rpc.1.LEQ1211399.2.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                            
                                  on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
                                  if(dp.state.val) Jalousie_runter();
                            });
                            }
                            ```` `  
                            

                            Für den Fall, dass es woanders gebraucht wird: Der Trigger muss außerhalb der Funktion, die aufgerufen wird, deklariert werden.

                                setState("hm-rpc.1.LEQ1211399.2.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                            
                            } // Ende der Funktion
                            
                            on('javascript.0.Rollladen_Hoch/Runter', function(dp) {
                               if(dp.state.val) Jalousie_runter();
                            });
                            
                            

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            1 Antwort Letzte Antwort
                            0
                            • Homer.J.H Offline
                              Homer.J.H Offline
                              Homer.J.
                              schrieb am zuletzt editiert von
                              #30

                              Hab meine Velux Rollladen über einen HM-LC-Sw4-WM am laufen.

                              Kann ich den als Schalter so stehen lassen. ?

                              1 Antwort Letzte Antwort
                              0
                              • Homer.J.H Offline
                                Homer.J.H Offline
                                Homer.J.
                                schrieb am zuletzt editiert von
                                #31

                                Hallo Paul,

                                das Script löst jetzt bei jeder Aktualisierung des Helligkeitsensor immer wieder aus und die Aktoren schalten dann jedes mal.

                                Gruß Steffen

                                1 Antwort Letzte Antwort
                                0
                                • paul53P Offline
                                  paul53P Offline
                                  paul53
                                  schrieb am zuletzt editiert von
                                  #32

                                  @Homer1976:

                                  das Script löst jetzt bei jeder Aktualisierung des Helligkeitsensor immer wieder aus und die Aktoren schalten dann jedes mal. `
                                  Ganau das soll durch die Skriptvariable Rollos_unten verhindert werden, solange die Helligkeit nicht wieder über 100 steigt.

                                        if(!Rollos_unten) Jalousie_runter();  // Funktionsaufruf zum Runterfahren der Rollos
                                        Rollos_unten = true;
                                  
                                  

                                  Oder verwendest du die Variante mit dem Datenpunkt 'javascript.0.Rollladen_Hoch/Runter' ? Dann soll dies die Triggerung "bei Änderung" verhindern.

                                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                  1 Antwort Letzte Antwort
                                  0
                                  • Homer.J.H Offline
                                    Homer.J.H Offline
                                    Homer.J.
                                    schrieb am zuletzt editiert von
                                    #33
                                    // Bei Sonnenuntergang (kleiner 4 Lux)
                                    
                                    var Rollos_unten = false;
                                    
                                    on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {
                                       var value = obj.state.val;
                                       var oldValue = obj.oldState.val;
                                       console.log('*** Lux hat sich aktualisiert');
                                       if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 3 ) {
                                          console.log('*** Jalousie runter auf wahr setzen');
                                          if(!Rollos_unten) Jalousie_runter();  // Funktionsaufruf zum Runterfahren der Rollos
                                          Rollos_runter = true;
                                       } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {
                                          console.log('*** Jalousie runter auf unwahr setzen');
                                          Rollos_unten = false;
                                       }
                                    });
                                    
                                    // -----------------------------------------------
                                    // Aktionen
                                    // -----------------------------------------------
                                    
                                    function Jalousie_oben_hoch() {
                                        // Abbruch bei deaktivierter Automatik
                                        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                                    
                                        log("Jalousie oben hoch");
                                    
                                        // Status setzen (Standard)
                                        var lvJalBad = 100;
                                        var lvJalFlur = 100;
                                        var lvJalWohnrechts = 100;
                                        var lvJalWohnlinks = 100;
                                        var lvJalKueche = 100;
                                    
                                        // Status setzen (Ausnahmen)
                                        if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
                                            lvJalWohnrechts = 0;
                                            lvJalWohnlinks = 0;
                                        }
                                    
                                        // Ausführen
                                        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
                                        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                                        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                                        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                                        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                                    
                                    }
                                    
                                    function Jalousie_unten_hoch() {
                                        // Abbruch bei deaktivierter Automatik
                                        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                                    
                                        log("Jalousie unten hoch");
                                    
                                        // Status setzen (Standard)
                                        var lvJalKZ = 100;
                                        var lvJalHWR = 100;
                                        var lvJalBad = 100;
                                        var lvJalFlur = 100;
                                        var lvJalWohnrechts = 100;
                                        var lvJalWohnlinks = 100;
                                        var lvJalBalkontuer = 100;
                                        var lvJalSZ = 100;
                                        var lvJalKueche = 100;
                                        var lvJalBadoben = 1;
                                    
                                        // Status setzen (Ausnahmen)
                                        if (getState("javascript.0.Jalousie.Sonnenschutz"/*Jalousie.Sonnenschutz*/).val === true) {
                                             lvJalWohnrechts = 40;
                                             lvJalWohnlinks = 40;
                                            if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
                                             lvJalFlur = 60;
                                            } else {
                                                lvJalWohnrechts = 40;
                                            }
                                                lvJalWohnlinks = 40;
                                        }
                                    
                                        // Ausführen
                                        setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
                                        setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
                                        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer.LEVEL*/, lvJalBad);
                                        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                                        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                                        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                                        setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
                                        setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
                                        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                                        setState("hm-rpc.1.LEQ1211399.3.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                                    }
                                    
                                    function Jalousie_runter () {
                                        // Abbruch bei deaktivierter Automatik
                                        if (getState("hm-rega.0.55181"/*Jalousie Automatik*/).val === false) { return; }
                                    
                                        log("Jalousie runter");
                                    
                                        // Status setzen (Standard)
                                        var lvJalKZ = 0;
                                        var lvJalHWR = 0;
                                        var lvJalBad = 0;
                                        var lvJalFlur = 0;
                                        var lvJalWohnrechts = 0;
                                        var lvJalWohnlinks = 0;
                                        var lvJalBalkontuer = 0;
                                        var lvJalSZ = 0;
                                        var lvJalKueche = 0;
                                        var lvJalBadoben = 1;
                                    
                                        // Status setzen (Ausnahmen)
                                        // Tür Flur Sperre (0 = geschlossen, 1 = gekippt, 2 = offen)
                                        if(getState("hm-rpc.2.0007D7099CF99C.1.STATE"/*Tür Flur.STATE*/).val == 2) {
                                         lvJalFlur = 100;
                                        }
                                    
                                        // Ausführen
                                        setState("hm-rpc.1.MEQ0735305.1.LEVEL"/*Rollladen Kinderzimmer .LEVEL*/, lvJalKZ);
                                        setState("hm-rpc.1.MEQ0735367.1.LEVEL"/*Rollladen Abstellraum .LEVEL*/, lvJalHWR);
                                        setState("hm-rpc.1.MEQ0735410.1.LEVEL"/*Rollladen Badezimmer .LEVEL*/, lvJalBad);
                                        setState("hm-rpc.1.MEQ0735420.1.LEVEL"/*Rollladen Flur .LEVEL*/, lvJalFlur);
                                        setState("hm-rpc.1.MEQ0735434.1.LEVEL"/*Rollladen Wohnzimmer rechts .LEVEL*/, lvJalWohnrechts);
                                        setState("hm-rpc.1.MEQ0735459.1.LEVEL"/*Rollladen Wohnzimmer links .LEVEL*/, lvJalWohnlinks);
                                        setState("hm-rpc.1.MEQ0735466.1.LEVEL"/*Rollladen Balkontür Küche .LEVEL*/, lvJalBalkontuer);
                                        setState("hm-rpc.1.MEQ0735467.1.LEVEL"/*Rollladen Schlafzimmer .LEVEL*/, lvJalSZ);
                                        setState("hm-rpc.1.MEQ0735469.1.LEVEL"/*Rollladen Fenster Küche .LEVEL*/, lvJalKueche);
                                        setState("hm-rpc.1.LEQ1211399.2.STATE"/*Rollladen Fenster Bad oben .STATE*/, lvJalBadoben);
                                    
                                    }
                                    
                                    1 Antwort Letzte Antwort
                                    0
                                    • Homer.J.H Offline
                                      Homer.J.H Offline
                                      Homer.J.
                                      schrieb am zuletzt editiert von
                                      #34

                                      So ist es jetzt.

                                      1 Antwort Letzte Antwort
                                      0
                                      • paul53P Offline
                                        paul53P Offline
                                        paul53
                                        schrieb am zuletzt editiert von
                                        #35

                                        Da warst Du zu schnell: Ich hatte einen Fehler gepostet, den ich vielleicht 1 Minute später korrigiert habe: Zeile 11

                                              Rollos_runter = true;
                                        

                                        ändern in

                                              Rollos_unten = true;
                                        
                                        

                                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                        1 Antwort Letzte Antwort
                                        0
                                        • Homer.J.H Offline
                                          Homer.J.H Offline
                                          Homer.J.
                                          schrieb am zuletzt editiert von
                                          #36

                                          [code// Bei Sonnenuntergang (kleiner 4 Lux)

                                          var Rollos_unten = false;

                                          on({id: 'hm-rpc.1.NEQ0322210.1.LUX', change: "ne"}, function (obj) {

                                          var value = obj.state.val;

                                          var oldValue = obj.oldState.val;

                                          console.log('*** Lux hat sich aktualisiert');

                                          if (getState("hm-rpc.1.NEQ0322210.1.LUX").val < 3 ) {

                                          console.log('*** Jalousie runter auf wahr setzen');

                                          if(!Rollos_unten) Jalousie_runter(); // Funktionsaufruf zum Runterfahren der Rollos

                                          Rollos_unten = true;

                                          } else if (getState("hm-rpc.1.NEQ0322210.1.LUX").val > 100) {

                                          console.log('*** Jalousie runter auf unwahr setzen');

                                          Rollos_unten = false;

                                          }

                                          });

                                          ]

                                          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

                                          633

                                          Online

                                          32.6k

                                          Benutzer

                                          82.2k

                                          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