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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Sonnenprogramm

NEWS

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

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

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

Sonnenprogramm

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
53 Beiträge 4 Kommentatoren 3.4k Aufrufe 1 Watching
  • Ä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.
  • M Offline
    M Offline
    meicker
    schrieb am zuletzt editiert von
    #42

    @RappiRN:

    Ich würde sagen: haltlose Anschuldigung! 😞 `

    Damit wollte ich nicht die helfenden Hände ansprechen ! Sicherlich habe ich hier viel Hilfe erhalten, sonst wäre ich nicht da wo ich jetzt bin, das ist klar.

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      meicker
      schrieb am zuletzt editiert von
      #43

      @Paul

      Hi Paul,

      noch eine Kleinigkeit - 🙂

      script.js.Homepilot.Szenen.Sonne.Sonnenprogramm_V2: clearTimeout() => not found
      

      Kannst Du damit was anfangen ? M.E werden alle Timeouts auch geschlossen, dieser hat aber keinen Namen …

      Ich zeige am Besten mal den Code, das Blocky ist zu lang wenn ich es komplett öffne ...

      ! ````
      var Sommer2, TOB1, TOB2, TOM1, TOM2, TOE1, TOE2, TOBS1, TOBS2;
      ! /**

      • Beschreibe diese Funktion …
        /
        function Sonnenprogramm() {
        Sommer2 = schedule('
        9-20 * 5-9 *', function () {
        createState("global.sonne-balkon", function () {
        });
        createState("global.sonne-markise", function () {
        });
        createState("global.sonne-esszimmer", function () {
        });
        createState("global.sonne-bad-schlafzimmer", function () {
        });
        if (getState("javascript.0.Homepilot.Temperatur").val >= 22 && getState("javascript.0.Homepilot.Lichtwert").val >= 50000 && getState("javascript.0.Homepilot.Sonnenrichtung").val >= 80 && getState("javascript.0.Homepilot.Sonnenrichtung").val <= 190) {
        setState("javascript.0.global.sonne-balkon"/global.sonne-balkon/, true, true);
        } else {
        setState("javascript.0.global.sonne-balkon"/global.sonne-balkon/, false, true);
        }
        if (getState("javascript.0.Homepilot.Temperatur").val >= 22 && getState("javascript.0.Homepilot.Lichtwert").val >= 50000 && getState("javascript.0.Homepilot.Sonnenrichtung").val >= 80 && getState("javascript.0.Homepilot.Sonnenrichtung").val <= 190) {
        setState("javascript.0.global.sonne-markise"/global.sonne-markise/, true, true);
        } else {
        setState("javascript.0.global.sonne-markise"/global.sonne-markise/, false, true);
        }
        if (getState("javascript.0.Homepilot.Temperatur").val >= 22 && getState("javascript.0.Homepilot.Lichtwert").val >= 10000 && getState("javascript.0.Homepilot.Sonnenrichtung").val >= 190 && getState("javascript.0.Homepilot.Sonnenrichtung").val <= 265) {
        setState("javascript.0.global.sonne-esszimmer"/global.sonne-esszimmer/, true, true);
        } else {
        setState("javascript.0.global.sonne-esszimmer"/global.sonne-esszimmer/, false, true);
        }
        if (getState("javascript.0.Homepilot.Temperatur").val >= 22 && getState("javascript.0.Homepilot.Lichtwert").val >= 5000 && getState("javascript.0.Homepilot.Sonnenrichtung").val >= 260 && getState("javascript.0.Homepilot.Sonnenrichtung").val <= 280) {
        setState("javascript.0.global.sonne-bad-schlafzimmer"/global.sonne-bad-schlafzimmer/, true, true);
        } else {
        setState("javascript.0.global.sonne-bad-schlafzimmer"/global.sonne-bad-schlafzimmer/, false, true);
        }
        });
        }

      ! if (getState("javascript.0.global.sonnenprogramm_aktiv").val) {
      Sonnenprogramm();
      }
      on({id: 'javascript.0.global.sonnenprogramm_aktiv', change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("javascript.0.global.sonnenprogramm_aktiv").val == true) {
      Sonnenprogramm();
      } else {
      (function () {if (Sommer2) {clearSchedule(Sommer2); Sommer2 = null;}})();
      }
      });
      on({id: "javascript.0.global.sonne-balkon"/global.sonne-balkon/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      // Balkon
      if (getState("javascript.0.global.sonne-balkon").val == true) {
      (function () {if (TOB2) {clearTimeout(TOB2); TOB2 = null;}})();
      TOB1 = setTimeout(function () {
      if (getState("javascript.0.global.homepilot.automatik.wohnzimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10015.level"/level Rollo Links/, 30);
      setState("homepilot.0.devices.RolloTubeDuoFern.10001.level"/level Rollo Rechts/, 30);
      (function () {if (TOB1) {clearTimeout(TOB1); TOB1 = null;}})();
      }
      }, 900000);
      } else {
      (function () {if (TOB1) {clearTimeout(TOB1); TOB1 = null;}})();
      TOB2 = setTimeout(function () {
      if (getState("javascript.0.global.homepilot.automatik.wohnzimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10015.level"/level Rollo Links/, 0);
      setState("homepilot.0.devices.RolloTubeDuoFern.10001.level"/level Rollo Rechts/, 0);
      (function () {if (TOB2) {clearTimeout(TOB2); TOB2 = null;}})();
      }
      }, 900000);
      }
      });
      // Markise
      on({id: "javascript.0.global.sonne-markise"/global.sonne-markise/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("javascript.0.global.sonne-markise").val == true) {
      (function () {if (TOM2) {clearTimeout(TOM2); TOM2 = null;}})();
      TOM1 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-markise").val == true) {
      if (getState("javascript.0.global.homepilot.automatik.markise").val == true) {
      setState("homepilot.0.devices.DuoFernRohrmotor-Aktor.10018.level"/level Markise/, 90);
      (function () {if (TOM1) {clearTimeout(TOM1); TOM1 = null;}})();
      }
      }
      }, 900000);
      } else {
      (function () {if (TOM1) {clearTimeout(TOM1); TOM1 = null;}})();
      TOM2 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-markise").val == false) {
      if (getState("javascript.0.global.homepilot.automatik.markise").val == true) {
      setState("homepilot.0.devices.DuoFernRohrmotor-Aktor.10018.level"/level Markise/, 0);
      (function () {if (TOM2) {clearTimeout(TOM2); TOM2 = null;}})();
      }
      }
      }, 900000);
      }
      });
      // Esszimmer
      on({id: "javascript.0.global.sonne-esszimmer"/global.sonne-esszimmer/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("javascript.0.global.sonne-esszimmer").val == true) {
      (function () {if (TOE2) {clearTimeout(TOE2); TOE2 = null;}})();
      TOE1 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-esszimmer").val == true) {
      if (getState("javascript.0.global.homepilot.automatik.esszimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.1010011.level"/level Rollo Esstisch/, 30);
      }
      (function () {if (TOE1) {clearTimeout(TOE1); TOE1 = null;}})();
      }
      }, 900000);
      } else {
      (function () {if (TOE1) {clearTimeout(TOE1); TOE1 = null;}})();
      TOE2 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-esszimmer").val == false) {
      if (getState("javascript.0.global.homepilot.automatik.esszimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.1010011.level"/level Rollo Esstisch/, 0);
      (function () {if (TOE2) {clearTimeout(TOE2); TOE2 = null;}})();
      }
      }
      }, 900000);
      }
      });
      // Bad & Schlafzimmer
      on({id: "javascript.0.global.sonne-bad-schlafzimmer"/global.sonne-bad-schlafzimmer/, change: "ne"}, function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (getState("javascript.0.global.sonne-bad-schlafzimmer").val == true) {
      (function () {if (TOBS2) {clearTimeout(TOBS2); TOBS2 = null;}})();
      TOBS1 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-bad-schlafzimmer").val == true) {
      if (getState("javascript.0.global.homepilot.automatik.badezimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10013.level"/level Rollo Badezimmer/, 30);
      }
      if (getState("javascript.0.global.homepilot.automatik.schlafzimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10012.level"/level Rollo Schlafzimmer/, 30);
      }
      (function () {if (TOBS1) {clearTimeout(TOBS1); TOBS1 = null;}})();
      }
      }, 900000);
      } else {
      (function () {if (TOBS1) {clearTimeout(TOBS1); TOBS1 = null;}})();
      TOBS2 = setTimeout(function () {
      if (getState("javascript.0.global.sonne-bad-schlafzimmer").val == false) {
      if (getState("javascript.0.global.homepilot.automatik.badezimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10013.level"/level Rollo Badezimmer/, 0);
      }
      if (getState("javascript.0.global.homepilot.automatik.schlafzimmer").val == true) {
      setState("homepilot.0.devices.RolloTubeDuoFern.10012.level"/level Rollo Schlafzimmer/, 0);
      }
      (function () {if (TOBS2) {clearTimeout(TOBS2); TOBS2 = null;}})();
      }
      }, 900000);
      }
      });

      
      vg
      
      Marc
      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #44

        @meicker:

        M.E werden alle Timeouts auch geschlossen, dieser hat aber keinen Namen … `
        Ich kann keinen clearTimeout() ohne Namen finden. Im Reiter Log ist die Fehlermeldung meist ausführlicher mit Angabe der Zeilennummer.

        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
        • M Offline
          M Offline
          meicker
          schrieb am zuletzt editiert von
          #45

          @paul53:

          Im Reiter Log ist die Fehlermeldung meist ausführlicher mit Angabe der Zeilennummer. `
          Du meinst bei den Scripten selber, richtig ? Hast Du eine Idee warum ich da manchmal gar nichts angezeigt bekomme ? Normalerweise kommt ja beim Start eines Scriptes etwas von subscriptions bla bla bla … da kommt nix. Javascript Adapter habe ich schon neu gestartet.

          Der Fehler kommt glaube ich auch nur wenn das Script läuft, also richtig aktiv ist. Morgen mal sehen wenn die Sonne wieder scheint, oder ich muss heute Abend mal auf Fake Werte setzen ...

          vg Marc

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

            @meicker:

            Du meinst bei den Scripten selber, richtig ? `
            Nein, im Reiter "Log".

            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
            • M Offline
              M Offline
              meicker
              schrieb am zuletzt editiert von
              #47

              Das stand nur auf 'WARN' - Hab eben den Javascript Adapter wieder auf info gesetzt und warte auf ein erneutes Vorkommnis … 🙂

              1 Antwort Letzte Antwort
              0
              • M Offline
                M Offline
                meicker
                schrieb am zuletzt editiert von
                #48

                neeeee, Paul, da kommt nix anderes 😞

                javascript.0	2018-09-11 16:30:00.040	warn	script.js.Homepilot.Szenen.Sonne.Sonnenprogramm_V2: clearTimeout() => not found
                

                Ist doch richtig, dass ich zwei eigenständige Blöcke habe, oder ? Wobei das immer noch nicht den Timer erklären würde und eigentlich ja auch alles funktioniert …
                8270_screenshot_2018-09-11_javascript_-_iobroker.png

                vg

                Marc

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

                  @meicker:

                  da kommt nix anderes `
                  Ist ja auch "nur" eine Warnung.

                  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
                  • M Offline
                    M Offline
                    meicker
                    schrieb am zuletzt editiert von
                    #50

                    @paul53:

                    Ist ja auch "nur" eine Warnung. ` Ja, vor einem nicht vorhandenen Abschluss zvom Timer ohne Namen … :lol:

                    Der Timer dessen Namen nicht genannt werden darf ... 🙂

                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      meicker
                      schrieb am zuletzt editiert von
                      #51

                      @Paul

                      Hi Paul, schau mal hier, das war im Log :

                      script.js.Homepilot.Szenen.Sonne.Sonnenprogramm_V2: getState(id=javascript.0.global.sonnenprogramm_aktiv, timerId=0) => {"val":true,"ack":false,"ts":1536103846400,"q":0,"from":"system.adapter.admin.0
                      

                      Also ich habe jetzt nochmals alles durchgesehen und nichts im Script gefunden … aber doch eigenartig ...

                      vg

                      Marc

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

                        Du https://forum.iobroker.net/viewtopic.php?f=21&t=16313&start=20#p172360, wenn die Zeit abgelaufen ist. Das ist nicht nötig, da die Timer sich selbst beenden. Vielleicht gibt es an der Stelle ein Laufzeitproblem ?

                        Nimm mal diese Stopps raus.

                        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
                        • M Offline
                          M Offline
                          meicker
                          schrieb am zuletzt editiert von
                          #53

                          Hi Paul,

                          das war es glaube ich … zumindest kommt die warnung nicht mehr. Aber für einen Funktionstest war zu wenig Sonne. Zumidest sind die Rollos nicht wild rumgefahren, soweit alles gut...

                          Vielen Dank 🙂

                          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

                          475

                          Online

                          32.4k

                          Benutzer

                          81.4k

                          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