Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Astro-Tageszeit abfragen und in Datenpunkt eintragen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    783

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

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

Astro-Tageszeit abfragen und in Datenpunkt eintragen

Scheduled Pinned Locked Moved Skripten / Logik
349 Posts 72 Posters 112.4k Views 23 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Altersrentner
    wrote on last edited by
    #224

    Hallo,

    Leider war der Optimismus zu viel.

    Der Rolladen fährt zwar am Abend runter aber morgens nicht hoch.
    7666_k-blockly_state.png
    Das Bild zeigt zwar Sonnenuntergang aber Sonnenaufgang ist gleich.

    Hat jemand eine Idee woran das liegen könnte.

    Gruß Michael

    1 Reply Last reply
    0
    • paul53P Offline
      paul53P Offline
      paul53
      wrote on last edited by
      #225

      Es wäre sinnvoller, wenn Du das Skript postest, das nicht funktioniert.

      Weshalb zwei Skripte ?

      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 Reply Last reply
      0
      • paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by
        #226

        In den Objekten sehe ich bei "Rollo_WZ_Terasse state" rechts den Wert "auf" ! Du steuerst aber mit dem Wert true (wahr). Da passt etwas nicht.

        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 Reply Last reply
        0
        • A Offline
          A Offline
          Altersrentner
          wrote on last edited by
          #227

          Hallo Paul,

          Danke für Deine Hilfe.
          > In den Objekten sehe ich bei "Rollo_WZ_Terasse state" rechts den Wert "auf" ! Du steuerst aber mit dem Wert true (wahr). Da passt etwas nicht.
          Das habe ich auf "false" geändert und das Teil hat gemacht was es soll :) :) :)

          > Weshalb zwei Skripte ?
          Eins für Sonnenaufgang und das andere Skript für Sonnenuntergang

          7666_k-astro_rollo_auf_zu.png

          Oder geht das auch so?

          Gruß Michael

          1 Reply Last reply
          0
          • paul53P Offline
            paul53P Offline
            paul53
            wrote on last edited by
            #228

            @Altersrentner:

            Oder geht das auch so? `
            Die Astro-Trigger nicht verschachteln, sondern untereinander anordnen !

            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 Reply Last reply
            0
            • A Offline
              A Offline
              Altersrentner
              wrote on last edited by
              #229

              Hallo Paul,

              Meinst Du so?
              7666_k-neue_anordnung.png
              Gruß Michael

              1 Reply Last reply
              0
              • J Offline
                J Offline
                Jan1
                wrote on last edited by
                #230

                nein, untereinander nicht den einen in den anderen. Ist aber auch logisch, wie soll ein Trigger im Trigger funktionieren. Alles im Trigger funktioniert nur beim Trigger Signal und wenn Du verschachtelst, ist es sehr wahrscheinlich das der untergeordnete Trigger eben nie aktiv wird.

                1 Reply Last reply
                0
                • paul53P Offline
                  paul53P Offline
                  paul53
                  wrote on last edited by
                  #231

                  @Altersrentner:

                  Meinst Du so? `
                  Nein, so
                  493_blockly_astro_altersrentner.jpg

                  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 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    Altersrentner
                    wrote on last edited by
                    #232

                    Hallo Paul,

                    Danke für Deine Unterstützung und die Geduld.

                    Dann werde ich jetzt die anderen Rollos einfügen.

                    Mal sehen was man zukünftig dort noch implementieren kann.

                    Danke :) :) :)

                    Gruß Michael

                    1 Reply Last reply
                    0
                    • B Offline
                      B Offline
                      Belei
                      wrote on last edited by
                      #233

                      Wann, wie oft und wodurch triggert ihr den Astro Script?

                      1 Reply Last reply
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #234

                        @Belei:

                        Wann, wie oft und wodurch triggert ihr den Astro Script? `
                        Astro ist ein Schedule-Trigger !

                        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 Reply Last reply
                        0
                        • B Offline
                          B Offline
                          Belei
                          wrote on last edited by
                          #235

                          Sorry und was bedeutet das?

                          1 Reply Last reply
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            wrote on last edited by
                            #236

                            @Belei:

                            was bedeutet das? `
                            Die Funktion innerhalb des Astro-Triggers wir einmal täglich zum eingestellten Trigger-Zeitpunkt (z.B. Sonnenaufgang) ausgeführt.

                            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 Reply Last reply
                            0
                            • B Offline
                              B Offline
                              Belei
                              wrote on last edited by
                              #237

                              mhh

                              also es geht dadrum das der Punkt AstroTag schnellstmöglich aktualisiert wird.

                              Also führe ich den Script in einem extra Blockly täglich 1minute nach Sonnenuntergang und 1minute nach Sonneaufgang durch?

                              Wenn ich den nur 1x zum Sonnenaufgang ausführe dann merkt der Datenpunkt AstroTag ja zu Sonnenuntergang nicht, das er sich ändern muss, oder?

                              1 Reply Last reply
                              0
                              • paul53P Offline
                                paul53P Offline
                                paul53
                                wrote on last edited by
                                #238

                                @Belei:

                                es geht dadrum das der Punkt AstroTag schnellstmöglich aktualisiert wird. `
                                Für die Aktualisierung eines Datenpunktes "AstroTag" braucht es zwei Trigger: Sonnenauf- und Sonnenuntergang.
                                493_blockly_dp_astrotag.jpg

                                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 Reply Last reply
                                0
                                • B Offline
                                  B Offline
                                  Belei
                                  wrote on last edited by
                                  #239

                                  OK den oberen Teil hab ich auch schon so aber was macht der untere?

                                  Es wurde dann doch schon Tag auf True gesetzt? Und wozu dann noch den ganzen Script?

                                  1 Reply Last reply
                                  0
                                  • paul53P Offline
                                    paul53P Offline
                                    paul53
                                    wrote on last edited by
                                    #240

                                    @Belei:

                                    was macht der untere? `
                                    Das, was im Kommentar steht: Bei <u>Skriptstart</u> wird der Datenpunkt "AstroTag" auf den Wert gesetzt, der zum Zeitpunkt des Skriptstarts zutrifft. Während das Skript aktiv ist, aktualisieren die beiden Trigger den Datenpunkt.

                                    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 Reply Last reply
                                    0
                                    • B Offline
                                      B Offline
                                      Belei
                                      wrote on last edited by
                                      #241

                                      Sorry ich versteh es nicht….entweder wir reden aneinander vorbei oder es ist zu kompliziert für mich :-)

                                      Dann brauch ich doch garnicht den Script? Dann reicht ja ein selber erstellter Datenpunkt Astrotag?

                                      `/* System Tageszeoten
                                      
                                      Skript meldet Tageszeiten
                                      
                                      Nacht;Frühmorgens;Morgengrauen;Vormittag;Mittag;Nachmittag;Dämmerung;Abend;
                                      Basis: http://www.homematic-inside.de/tecbase/homematic/scriptlibrary/item/tageszeit-in-abschnitte-unterteilen
                                      oder hier: https://github.com/ioBroker/ioBroker.javascript#astro--funktion
                                      
                                      https://github.com/iobroker/ioBroker.javascript/blob/master/README.md#getastrodate
                                      
                                      erstellt: 01.06.2015 von Pix
                                      11.12.2015 getAstroDate ermittelt nun auch Sonnenaufgang und Untergang
                                                 Astrotag (isAstroDay) eingebaut
                                      23.02.2018 checkSec eingebaut (Uhrzeit sekundengenau?)
                                                 andere Astrozeiten werden nun auch gespeichert
                                                 Neuer Pfad
                                      24.02.2018 Unterteilung in zwei Bereiche
                                      27.02.2018 Bestimmung, welche AstroZeit aktuell ist (mit der ioBroker-Funktion compareTime)
                                                 Beschreibung Objekt Astrotag korrigiert
                                                 Objekte werden jetzt bei jedem Zeitplan angelegt, falls nicht (mehr) vorhanden
                                      */
                                      
                                      const sec = false; // Sekunden darstellen oder nicht
                                      const fC = false; // forceCreation ein/aus
                                      const pfad = "Astro"; // Pfad zum Objekt - Objektbaum-Hauptverzeichnis
                                      
                                      // *****************************************************************************
                                      // TAGESZEITEN - T E I L 
                                      
                                      // Tageszeiten nach eigenem Gusto (Shifts siehe schedules weiter unten)
                                      const tageszeiten = ["Nacht", // Night
                                                           "Morgendämmerung",  // nightEnd
                                                           "Morgen",
                                                           "Vormittag",
                                                           "Mittag",
                                                           "Nachmittag",
                                                           "Abenddämmerung",
                                                           "Abend"];
                                      
                                      const idTageszeit = "javascript." + instance  + "." + pfad + ".Tageszeit.current" /*Tageszeit*/,
                                            idTageszeitNext = "javascript." + instance  + "." + pfad + ".Tageszeit.next";
                                      
                                      function createTageszeiten() {
                                          createState(idTageszeit, "nächsten Wechsel abwarten", fC, {
                                              name: "Tageszeit",
                                              desc: "Name der Tageszeit",
                                              type: "string"
                                          });   
                                          createState(idTageszeitNext, "nächsten Wechsel abwarten", fC, {
                                              name: "nächste Tageszeit",
                                              desc: "Name der nächsten Tageszeit",
                                              type: "string"
                                          });
                                      }
                                      
                                      function neue_tageszeit(abschnitt) {
                                          createTageszeiten(); // Objekte anlegen, falls noch nicht geschehen
                                          var akt = tageszeiten[parseInt(abschnitt, 10)],
                                              // wenn aktuelles Element ist letztes, dann nächstes ist erstes :-D
                                              nxt = (abschnitt + 1 === tageszeiten.length) ? tageszeiten[0] : tageszeiten[parseInt(abschnitt + 1, 10)];
                                          setState(idTageszeit, akt);
                                          setState(idTageszeitNext, nxt);
                                          log("neue Tagezeit: " + akt);
                                          log("nächte kommende Tagezeit: " + nxt);
                                      }
                                      
                                      // Nacht
                                      schedule({
                                          astro: "night", 
                                          shift: 120
                                      }, function () { 
                                          neue_tageszeit(0);
                                      });
                                      
                                      // Morgengdämmerung
                                      schedule({
                                          astro: "nightEnd"
                                      }, function () {
                                          neue_tageszeit(1);
                                      });
                                      
                                      // Morgen
                                      schedule({
                                          astro: "sunrise"
                                      }, function () {
                                          neue_tageszeit(2);
                                      });
                                      
                                      // Vormittag (beginnt 120min vor Sonnenhöchststand)
                                      schedule({
                                          astro: "solarNoon",
                                          shift: -120
                                      }, function () {
                                          neue_tageszeit(3);
                                      });
                                      
                                      // Mittag
                                      schedule({
                                          astro: "solarNoon"
                                      }, function () {
                                          neue_tageszeit(4);
                                      });
                                      
                                      // Nachmittag
                                      schedule({
                                          astro: "solarNoon",
                                          shift: 60
                                      }, function () {
                                          neue_tageszeit(5);
                                      });
                                      
                                      // Abenddämmerung (nach Sonnenuntergang)
                                      schedule({
                                          astro: "dusk"
                                      }, function () {
                                          neue_tageszeit(6);
                                      });
                                      
                                      // Abend
                                      schedule({
                                          astro: "night"
                                      }, function () {
                                          neue_tageszeit(7);
                                      });
                                      
                                      // *****************************************************************************
                                      // A S T O - T E I L 
                                      
                                      /* Objekt Astrotag 
                                         Astrotag liegt zwischen Sonnauf- und untergang, 
                                         Astronacht liegt zwischen Sonnenunter- und aufgang */
                                      const idAstrotag =  "javascript." + instance + "." + pfad + ".Astrotag";
                                      const idAstrotime = "javascript." + instance + "." + pfad + ".Astrozeit";
                                      
                                      // Array für Funktion compareTime (sind leider nicht alle Astrozeiten, die auch mit Astro-Function möglich sind)
                                      const astrotime_arr = [
                                          "sunrise", 
                                          "sunriseEnd", 
                                          "goldenHourEnd", 
                                          "goldenHour",
                                          "sunsetStart", 
                                          "sunset",
                                          "dusk", 
                                          "nauticalDusk", 
                                          "night", 
                                          "nightEnd", 
                                          "nauticalDawn", 
                                          "dawn"
                                          ];
                                      
                                      // Objekt für Uhrzeiten der Astrozeiten
                                      const astrotime = {
                                          "elements" : [
                                              // Astrotag beginnt
                                              {
                                                  "fname" : "sunrise", // function name
                                                  "de" : {
                                                      "name" : "Sonnenaufgang",
                                                      "nxt" : "nächster",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Sunrise",
                                                      "desc" : "top edge of the sun appears on the horizon"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              {
                                                  "fname" : "sunriseEnd", // function name
                                                  "de" : {
                                                      "name" : "Ende Sonnenaufgang",
                                                      "nxt" : "nächstes",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "End of sunrise",
                                                      "desc" : "bottom edge of the sun touches the horizon"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              {
                                                  "fname" : "goldenHourEnd", // function name
                                                  "de" : {
                                                      "name" : "Ende der goldenen Stunde am Morgen",
                                                      "nxt" : "nächstes",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "End of golden hour",
                                                      "desc" : "morning golden hour (soft light, best time for photography) ends"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              {
                                                  "fname" : "solarNoon", // function name
                                                  "de" : {
                                                      "name" : "Sonnenhöchststand",
                                                      "nxt" : "nächster",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Solar noon",
                                                      "desc" : "sun is in the highest position"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              {
                                                  "fname" : "goldenHour", // function name
                                                  "de" : {
                                                      "name" : "Goldene Stunde (am Abend)",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Golden hour",
                                                      "desc" : "evening golden hour starts"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              {
                                                  "fname" : "sunsetStart", // function name
                                                  "de" : {
                                                      "name" : "Beginn Sonnenuntergang",
                                                      "nxt" : "nächster",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Sunset starts",
                                                      "desc" : "bottom edge of the sun touches the horizon"
                                                  },
                                                  "astroday" : true //during astroday
                                              },
                                              // Astronacht beginnt
                                              {
                                                  "fname" : "sunset", // function name
                                                  "de" : {
                                                      "name" : "Sonnenuntergang",
                                                      "nxt" : "nächster",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Sunset",
                                                      "desc" : "sun disappears below the horizon, evening civil twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "dusk",
                                                  "de" : {
                                                      "name" : "Abenddämmerung",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Dusk",
                                                      "desc" : "evening nautical twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "nauticalDusk",
                                                  "de" : {
                                                      "name" : "nautische Abenddämmerung",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Nautical dusk",
                                                      "desc" : "evening astronomical twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "night",
                                                  "de" : {
                                                      "name" : "Nacht",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Night",
                                                      "desc" : "dark enough for astronomical observations"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "nadir",
                                                  "de" : {
                                                      "name" : "Nadir",
                                                      "nxt" : "nächster",
                                                      "desc" : "Fußpunkt gegenüber dem Zenit"
                                                  },
                                                  "en" : {
                                                      "name" : "Nadir",
                                                      "desc" : "darkest moment of the night, sun is in the lowest position"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "nightEnd",
                                                  "de" : {
                                                      "name" : "Nachtende",
                                                      "nxt" : "nächstes",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Night ends",
                                                      "desc" : "morning astronomical twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "nauticalDawn",
                                                  "de" : {
                                                      "name" : "nautische Morgendämmerung",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "Nautical dawn",
                                                      "desc" : "morning nautical twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              },
                                              {
                                                  "fname" : "dawn",
                                                  "de" : {
                                                      "name" : "Morgendämmerung",
                                                      "nxt" : "nächste",
                                                      "desc" : ""
                                                  },
                                                  "en" : {
                                                      "name" : "dawn",
                                                      "desc" : "morning nautical twilight ends, morning civil twilight starts"
                                                  },
                                                  "astroday" : false //during astronight
                                              }
                                      
                                          ]
                                      };
                                      
                                      function writeAstroTimes(i) {
                                          // führende Nummer zur Sortierung in Admin/Objekte
                                          var nr = (i+1 < 10) ? "0" + (i+1) : (i+1);
                                          // Erstelle Objekt, falls nicht bereits vorhanden
                                          var idAstroObject = "javascript." + instance + "." + pfad + "." + nr + " - " + astrotime.elements[i].fname;
                                          createState(idAstroObject, " ", fC, {
                                              name: astrotime.elements[i].de.nxt + " " + astrotime.elements[i].de.name + " Uhrzeit",
                                              desc: astrotime.elements[i].en.desc,
                                              type: "string"
                                          });
                                      
                                          setTimeout(function() { // kurz warten, damit Objekte ggf. erst angelgt werden können
                                              var astrotag = getState(idAstrotag).val,
                                                  temp;
                                              var today = new Date();
                                              var tomorrow = today.setDate(today.getDate()+1);
                                              var next_event;
                                              if (astrotag) { 
                                                  // Wenn Tag (Aufgang vorbei (erst wieder morgen, Untergang kommt noch heute)
                                                  next_event = (astrotime.elements[i].astroday) ? tomorrow : today; // prüfen
                                                  temp = getAstroDate(astrotime.elements[i].fname, next_event);
                                              } else { 
                                                  // nach Nacht (Untergang vorbei (erst wieder morgen, Aufgang kommt heute oder morgen)
                                                  next_event = (astrotime.elements[i].astroday) ? today : tomorrow; // prüfen
                                                  temp = getAstroDate(astrotime.elements[i].fname, next_event);
                                              /* // Rudimente aus altem Skript zur Erinnerung -> Nachfrage bei Bluefox
                                              sonnenuntergang = getAstroDate("sunset", tomorrow);
                                              nacht = (today.getHours() > 12 && today.getHours() <= 23) ? getAstroDate("night", today) : getAstroDate("night", tomorrow);
                                              nachtende = (today.getHours() > 12 && today.getHours() <= 23) ? getAstroDate("night", tomorrow) : getAstroDate("night", today);
                                              sonnenaufgang = (today.getHours() > 12 && today.getHours() <= 23) ? getAstroDate("sunrise", tomorrow) :  getAstroDate("sunrise", today); // es ist vor Mitternacht (bzw. vor 23:XXUhr), dann morgen, sonst heute
                                              */
                                              }
                                              setState(idAstroObject, checkSec(temp.toLocaleTimeString()) );
                                      
                                          }, 3 * 1000);
                                      }
                                      
                                      // Zeit mit oder ohne Sekunden anzeigen
                                      function checkSec (zeit) {
                                          if (!sec) {
                                              var newString_arr = zeit.split(":");
                                              var newString = newString_arr[0] + ":" + newString_arr[1];
                                              return (newString);
                                          } else return (zeit);
                                      }
                                      
                                      function getAstrotime (j) {
                                          // Objekt anlegen, falls nicht bereits geschehen
                                          createState(idAstrotime, " ", fC, {
                                              type: "string",
                                              name: "aktuelle Astrozeit",
                                              desc: "Anzeige der aktuellen Astrozeit durch ioBroker-Funktion compareTime()"
                                          }); 
                                          // aktuelle Astrozeit bestimmen
                                          var k = (j == (astrotime_arr.length-1) ) ? 0 : (j+1); // wenn j max ist, dann ist k min
                                          var startTime = astrotime_arr[j];
                                          var endTime   = astrotime_arr[k];
                                          //log("Astrozeit zwischen " + j + " und " + k + " von " + astrotime_arr.length);
                                          if (!startTime || !endTime) {
                                              log("Fehler","error");
                                          } else {
                                              var astrotime_check = (compareTime(startTime, endTime, "between") ) ;
                                              if (astrotime_check) {
                                                  setState(idAstrotime, startTime);
                                                  //log("Astrozeit: " + startTime);
                                              }
                                          }
                                      }
                                      
                                      function getAstroday() {
                                          // Astrotag bestimmen (boolean)
                                          createState(idAstrotag, false, fC, {
                                              type: "boolean",
                                              name: "Astrologischer Tag",
                                              desc: "Liegt die aktuelle Zeit zwischen Sonnenauf- und untergang"
                                          }); 
                                          setState(idAstrotag, isAstroDay());
                                      }
                                      
                                      function iterateAstrotimes() {
                                          // Zeiten für jede Astrozeit schreiben
                                          for (var i = 0; i < astrotime.elements.length; i++) {
                                              writeAstroTimes(i);
                                          }
                                          // aktuelle Astrozeit ermitteln
                                          for (var j = 0; j < astrotime_arr.length; j++) {
                                              getAstrotime(j);
                                          }
                                      }
                                      
                                      // Astrotag checken
                                      schedule("*/1 * * * *", function () { // jede Minute
                                          getAstroday();
                                          iterateAstrotimes();
                                      });
                                      
                                      iterateAstrotimes();
                                      getAstroday();
                                      
                                      "*/5 * * * *"`[/i][/i][/i][/i][/i][/i][/i][/i]
                                      
                                      1 Reply Last reply
                                      0
                                      • paul53P Offline
                                        paul53P Offline
                                        paul53
                                        wrote on last edited by
                                        #242

                                        @Belei:

                                        Dann brauch ich doch garnicht den Script? Dann reicht ja ein selber erstellter Datenpunkt Astrotag? `
                                        Wenn Du die anderen Datenpunkte aus dem "großen" Skript nicht benötigst, sondern nur den selbst erstellten Datenpunkt "AstroTag" haben möchtest, dann genügt das kleine Blockly-Skript.

                                        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 Reply Last reply
                                        0
                                        • paul53P Offline
                                          paul53P Offline
                                          paul53
                                          wrote on last edited by
                                          #243

                                          Bezog sich Deine Frage
                                          @Belei:

                                          Wann, wie oft und wodurch triggert ihr den Astro Script? `
                                          auf den Teil des Astroskripts ?

                                          // Astrotag checken
                                          schedule("*/1 * * * *", function () { // jede Minute
                                              getAstroday();
                                              iterateAstrotimes();
                                          });
                                          
                                          

                                          Dann haben wir tatsächlich aneinander vorbei geredet. Den Trigger würde ich bei einer Minute belassen. Es werden minütlich die beiden Funktionen getAstroday() und iterateAstrotimes() ausgeführt.

                                          Das Skript selbst wird nicht getriggert, sondern ist permanent aktiv.

                                          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 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          381

                                          Online

                                          32.8k

                                          Users

                                          82.7k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe