Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

    This topic has been deleted. Only users with topic management privileges can see it.
    • s.bormann
      s.bormann Most Active @Rookie50 last edited by

      @rookie50 sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

      @s-bormann Hi, ist im Wiki 😄 Habe ein bisschen von tombox geklaut 😉 Bitte geht mal durch, ob es so verständlich ist.

      Klasse!! Sieht super aus, vielen Dank!!

      1 Reply Last reply Reply Quote 0
      • M
        muuulle @muuulle last edited by muuulle

        @muuulle said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

        @s-bormann

        Moin Sebastian,

        die persistenten Popup sind großartig. Zwei bebilderte Fragen:

        1. Kann man die Transparenz reduzieren?
          Bildschirmfoto 2023-03-29 um 20.55.11.png.png

        2. Was bedeuten die Info- und Warnmeldung vom Web Adapter?
          logs - pi-broker.png.png

        Besten Dank

        @s-bormann
        Moin,

        neben den beiden hier zitierten Punkten, habe ich noch eine weitere Frage/Anregung 😊

        Kann man persistente Popup einer bestimmten ID über einen Blockly Befehl löschen?

        Schönes Wochenende

        s.bormann 1 Reply Last reply Reply Quote 0
        • s.bormann
          s.bormann Most Active @muuulle last edited by

          @muuulle sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

          @muuulle said in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

          @s-bormann

          Moin Sebastian,

          die persistenten Popup sind großartig. Zwei bebilderte Fragen:

          1. Kann man die Transparenz reduzieren?
            Bildschirmfoto 2023-03-29 um 20.55.11.png.png

          2. Was bedeuten die Info- und Warnmeldung vom Web Adapter?
            logs - pi-broker.png.png

          Besten Dank

          @s-bormann
          Moin,

          neben den beiden hier zitierten Punkten, habe ich noch eine weitere Frage/Anregung 😊

          Kann man persistente Popup einer bestimmten ID über einen Blockly Befehl löschen?

          Schönes Wochenende

          Hi,

          Zu 1.: Transprarenz wollte ich noch als Option einbauen - bin aber gerade anderweitig beschäftigt, deshalb wird es noch ein klein wenig dauern. Bis dahin könntest Du im Benutzerdefinierten CSS folgendes eingeben:

          #popup{
          	opacity: 1 !important;
          }
          

          Damit fadet es zwar nicht mehr so schön ein- und aus, aber es kann als Überbrückung bis alles user-wählbar ist genutzt werden. Ich werde dann auch noch die Hintergrundfarbe anpassbar machen.

          Zu 2.: Die Warnungen im Web-Adapter kann man erst mal ignorieren, da muss ich noch das ack-flag korrekt setzen, werde ich demnächst bearbeiten.

          Zu 3.: Das geht mit dem "steuere"-Blockly auf den Datenpunkt iqontrol.<x>.Popup.PERSISTENT_MESSAGES_DELETE_ID:
          727a49a6-da18-42a6-a0b9-c83d35028d94-image.png

          LG!!

          1 Reply Last reply Reply Quote 0
          • E
            Easyghost last edited by

            Hi benötige eure Hilfe
            Das ist mein Aktueller Stand
            Screenshot_20230403-094211.png

            Hätte es gerne so

            Screenshot_20230403-095057.png

            Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

            Danke für eure Mühe

            dslraser s.bormann 2 Replies Last reply Reply Quote 0
            • dslraser
              dslraser Forum Testing Most Active @Easyghost last edited by dslraser

              @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

              Hi benötige eure Hilfe
              Das ist mein Aktueller Stand
              Screenshot_20230403-094211.png

              Hätte es gerne so

              Screenshot_20230403-095057.png

              Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

              Danke für eure Mühe

              Das ist ein altes Foto von mir. Damals hatte ich das noch so. (da ist auch eine Beschreibung)

              https://forum.iobroker.net/post/752651

              Dann hatte ich noch eine neuere Version davon gemacht.

              https://forum.iobroker.net/post/755066

              Dazu musst Du wahrscheinlich etwas Zeit zum Einlesen investieren.
              Es gibt auch noch andere Möglichkeiten so etwas umzusetzen, allerdings müsste ich dafür auch erst im Forum auf die Suche gehen…(irgendwo ist das hier im Forum schon alles beschrieben)

              E 2 Replies Last reply Reply Quote 0
              • s.bormann
                s.bormann Most Active @Easyghost last edited by

                @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                Hi benötige eure Hilfe
                Das ist mein Aktueller Stand
                Screenshot_20230403-094211.png

                Hätte es gerne so

                Screenshot_20230403-095057.png

                Habe aktuell das Problem das es sich nicht zu und aufklappen lässt finde einfach nicht die Einstellung dazu!

                Danke für eure Mühe

                Schau auch mal im wiki:
                https://github.com/sbormann/ioBroker.iqontrol/wiki/Listen-Zähler

                E 1 Reply Last reply Reply Quote 0
                • E
                  Easyghost @dslraser last edited by

                  @dslraser OK Danke Versuch es heute Abend Mal nach der neuen Version

                  1 Reply Last reply Reply Quote 1
                  • E
                    Easyghost @s.bormann last edited by Easyghost

                    @s-bormann ja nach dem Wiki habe ich es gemacht aber leider ist das nicht mehr aktuell und bekomme es auch nicht hin das es sich aufklappt und schließt.

                    PS: und erstmal großes Lob von mir für den Adapter iQontrol.

                    1 Reply Last reply Reply Quote 0
                    • E
                      Easyghost @dslraser last edited by Easyghost

                      @dslraser Hi habe es nochmal mit der neuen Version gemacht
                      Screenshot_20230403-211233.png
                      Screenshot_20230403-211227.png

                      Da komme ich so weit bin nur nicht ganz sicher ob der Fehler in der Überschrift am Blockly oder am iQontrol liegt?

                      da_Woody dslraser 2 Replies Last reply Reply Quote 0
                      • da_Woody
                        da_Woody @Easyghost last edited by

                        @easyghost du meinst 39225417-c8e3-4543-873d-342730e9ff9a-grafik.png ?

                        E 1 Reply Last reply Reply Quote 0
                        • E
                          Easyghost @da_Woody last edited by Easyghost

                          @da_woody ja habe eins offen eins gekippt dann sollte doch oben stehen 2 Fenster geöffnet oder ? Weiß aber nicht wo der Fehler liegt

                          da_Woody 1 Reply Last reply Reply Quote 0
                          • da_Woody
                            da_Woody @Easyghost last edited by

                            @easyghost hab dich verstanden. ich verwende das so nicht, aber hab mir das blockly mal runtergeladen, da steht nix von okay drinnen. würde also sagen, du hast da in iQontrol was falsch eingestellt.
                            kontrolliere anhand vom wiki nochmal alles, oder machs gegebene falles komplett neu...

                            1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active @Easyghost last edited by

                              @easyghost
                              ich habe Dir mal eine Chat Nachricht geschrieben.
                              Die Überschrift macht das Blockly. Du hast wahrscheinlich im Blockly etwas nicht bzw. etwas falsch eingestellt.
                              Bei mir laufen diese Blockly seit sehr langer Zeit Fehlerfrei.

                              E 1 Reply Last reply Reply Quote 0
                              • E
                                Easyghost @dslraser last edited by

                                @dslraser

                                Danke für eure Hilfe habe es hinbekommen Screenshot_20230404-221836.png

                                War eine Einstellung in der Liste im iQontrol habe es nach den Bildern gemach aus dem Wiki
                                149938703-94bd37bb-aeca-4547-85a1-559cf6126f47.png 149938704-37e620a4-6b71-41ff-bc12-94ae801fdfb8.png 149938707-ebd82516-cb25-4fd7-afb8-6fb8f561b141.png

                                Und so muss es bei mir sein
                                Screenshot_20230404-222816.png Screenshot_20230404-222829.png Screenshot_20230404-222752.png

                                dslraser 1 Reply Last reply Reply Quote 1
                                • dslraser
                                  dslraser Forum Testing Most Active @Easyghost last edited by dslraser

                                  @easyghost

                                  War eine Einstellung in der Liste im iQontrol habe es nach den Bildern gemach aus dem Wiki

                                  Ich habe Alias in Verwendung und diese dann auf deutsch erstellt, also nicht mit CLOSED/TILTED oder OPEN.

                                  Beispiel von einem alias für ein Fenster wie ich es verwende

                                  {
                                    "type": "state",
                                    "common": {
                                      "name": "Bad links",
                                      "def": 0,
                                      "type": "number",
                                      "role": "window.value",
                                      "read": true,
                                      "write": false,
                                      "min": 0,
                                      "max": 2,
                                      "states": {
                                        "0": "geschlossen",
                                        "1": "gekippt",
                                        "2": "geöffnet"
                                      },
                                      "alias": {
                                        "id": "hm-rpc.xxxxxxxxxxxx.1.STATE"
                                      }
                                    },
                                    "native": {},
                                    "from": "system.adapter.javascript.0",
                                    "user": "system.user.admin",
                                    "ts": 1615639416752,
                                    "_id": "alias.0.Fenster.Bad_Fenster_links",
                                    "acl": {
                                      "object": 1636,
                                      "state": 1636,
                                      "owner": "system.user.admin",
                                      "ownerGroup": "system.group.administrator"
                                    }
                                  }
                                  

                                  jetzt vielleicht nur noch "einheitliche" Schreibweisen in groß oder klein und "passende" Symbole für geschlossen/gekippt und geöffnet verwenden und vielleicht Alias anlegen ohne ".STATE" 👍 , dann sieht es noch besser aus.😊

                                  3DB89260-C2C9-4977-A76A-4459E10BF02C.png

                                  E 1 Reply Last reply Reply Quote 1
                                  • E
                                    Easyghost @dslraser last edited by Easyghost

                                    @dslraser ja das muss ich später noch ändern für mich ist erst Mal die Funktion wichtig und das ich es verstehe außensehen kommt zum Schluss 😜.
                                    Das ist ne andere Aufgabe nun muss ich als nächstes erst Mal schauen wie das mit der digitalen Uhr läuft.
                                    Aber Danke für das Skript kann es dann direkt mit machen.

                                    dslraser 1 Reply Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active @Easyghost last edited by

                                      @easyghost sagte in Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread):

                                      Aber Danke für das Skript kann es dann direkt mit machen.

                                      ? was für’n Skript ?

                                      1 Reply Last reply Reply Quote 0
                                      • E
                                        Easyghost last edited by Easyghost

                                        @dslraser der Tip mit den Alias habe es auch so hinbekommen.

                                        Habe noch einige Probleme mit dem Digitalen Uhr Skript kann da jemand helfen?

                                        Screenshot_20230407-194749.png

                                        Kenne mich mit Java nicht aus

                                        Habe mir das Skript aus dem Beitrag Version 7 und Astro genommen Bilder Ordner im Skript eingetragen und Außenfühler geändert jetzt bekomme ich immer wieder die Fehler.

                                        Die Anzeige scheint zu funktionieren
                                        Screenshot_20230407-200215.png

                                        Danke für die Hilfe

                                        dslraser 1 Reply Last reply Reply Quote 0
                                        • dslraser
                                          dslraser Forum Testing Most Active @Easyghost last edited by

                                          @easyghost
                                          am Besten Du postest mal Dein Script und auch die Fehlermeldung, aber beides in Code Tags.

                                          E 1 Reply Last reply Reply Quote 0
                                          • E
                                            Easyghost @dslraser last edited by Easyghost

                                            @dslraser

                                            Astro

                                            21:59:00.005	error	javascript.0 (2742) at Object.<anonymous> (script.js.smarthome.iqontrol.Astro:97:45)
                                            
                                            
                                            
                                            const sec = false; // Sekunden darstellen oder nicht
                                            
                                            const fC = false; // forceCreation ein/aus
                                            
                                            const pfad = "0_userdata." + 0  + ".Astro."; // Pfad zum Objekt - Objektbaum-Hauptverzeichnis
                                            
                                             
                                            
                                            // *****************************************************************************
                                            
                                            // TAGESZEITEN - T E I L 
                                            
                                             
                                            
                                            // Tageszeiten nach eigenem Gusto
                                            
                                            const tageszeiten = [{name: "Nacht", astro: "nauticalDusk", shift: 45},
                                            
                                               	     {name: "Morgendämmerung", astro: "nauticalDawn", shift: -45},
                                            
                                               	     {name: "Sonnenaufgang", astro: "sunrise", shift: 0},
                                            
                                               	     {name: "Morgen", astro: "sunriseEnd", shift: 0},
                                            
                                               	     {name: "Vormittag", astro: "goldenHourEnd", shift: 60},
                                            
                                               	     {name: "Mittag", astro: "solarNoon", shift: -30},
                                            
                                               	     {name: "Nachmittag", astro: "solarNoon", shift: 30},
                                            
                                               	     {name: "Abend", astro: "goldenHour", shift: -60},
                                            
                                               	     {name: "Sonnenuntergang", astro: "sunsetStart", shift: 0},
                                            
                                               	     {name: "Abenddämmerung", astro: "sunset", shift:0}
                                            
                                                               ];
                                            
                                             
                                            
                                            const idTageszeit = pfad + "Tageszeit.current" /*Tageszeit*/,
                                            
                                                 idTageszeitNext = pfad + "Tageszeit.next",
                                            
                                                 idAstrotag =  pfad + "Tageszeit.Astrotag";
                                            
                                             
                                            
                                                 
                                            
                                            createState(idTageszeit, "nächste Minute abwarten", {
                                            
                                               name: "Tageszeit",
                                            
                                               desc: "Name der Tageszeit",
                                            
                                               type: "string"
                                            
                                            });   
                                            
                                            createState(idTageszeitNext, "nächste Minute abwarten", {
                                            
                                               name: "nächste Tageszeit",
                                            
                                               desc: "Name der nächsten Tageszeit",
                                            
                                               type: "string"
                                            
                                            });
                                            
                                            createState(idAstrotag, isAstroDay(), {
                                            
                                               type: "boolean",
                                            
                                               name: "Astrologischer Tag",
                                            
                                               desc: "Liegt die aktuelle Zeit zwischen Sonnenauf- und untergang"
                                            
                                            }); 
                                            
                                             
                                            
                                             
                                            
                                            schedule('* * * * *', function() { // jede Minute
                                            
                                               for(let i = 0; i < tageszeiten.length; i++) {
                                            
                                               	var act = tageszeiten[i];
                                            
                                               	var next = tageszeiten[0];
                                            
                                               	if(i + 1 < tageszeiten.length) next = tageszeiten[i + 1];
                                            
                                                   var actTime = getAstroDate(act.astro).getTime() + 60000 * act.shift;
                                            
                                                   var nextTime = getAstroDate(next.astro).getTime() + 60000 * next.shift;
                                            
                                                   if(actTime > nextTime) {
                                            
                                                       if(new Date().getHours() > 12) nextTime = nextTime + 24 * 3600000;
                                            
                                                       else actTime = actTime - 24 * 3600000;
                                            
                                                   }    
                                            
                                               	var now = Date.now();
                                            
                                               	if(now > actTime && now < nextTime) {
                                            
                                            			setState(idTageszeit, act.name, true);
                                            
                                               		setState(idTageszeitNext, next.name, true);
                                            
                                               	}
                                            
                                               }
                                            
                                               setState(idAstrotag, isAstroDay(), true);
                                            
                                            });
                                            
                                             
                                            
                                             
                                            
                                            // *****************************************************************************
                                            
                                            // A S T R O - T E I L 
                                            
                                             
                                            
                                            // Objekt für Uhrzeiten der Astrozeiten
                                            
                                            const astrotime = {
                                            
                                               "elements" : [
                                            
                                                   // Astrotag beginnt
                                            
                                                   {
                                            
                                                       "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" : "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" : "bürgerliche Morgendämmerung",
                                            
                                                           "nxt" : "nächste",
                                            
                                                           "desc" : ""
                                            
                                                       },
                                            
                                                       "en" : {
                                            
                                                           "name" : "dawn",
                                            
                                                           "desc" : "morning nautical twilight ends, morning civil twilight starts"
                                            
                                                       },
                                            
                                                       "astroday" : false //during astronight
                                            
                                                   },
                                            
                                                   {
                                            
                                                       "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" : "Ende bürgerliche Abenddämmerung",
                                            
                                                           "nxt" : "nächstes",
                                            
                                                           "desc" : ""
                                            
                                                       },
                                            
                                                       "en" : {
                                            
                                                           "name" : "Dusk",
                                            
                                                           "desc" : "evening nautical twilight starts"
                                            
                                                       },
                                            
                                                       "astroday" : false //during astronight
                                            
                                                   },
                                            
                                                   {
                                            
                                                       "fname" : "nauticalDusk",
                                            
                                                       "de" : {
                                            
                                                           "name" : "Ende nautische Abenddämmerung",
                                            
                                                           "nxt" : "nächstes",
                                            
                                                           "desc" : ""
                                            
                                                       },
                                            
                                                       "en" : {
                                            
                                                           "name" : "Nautical dusk",
                                            
                                                           "desc" : "evening astronomical twilight starts"
                                            
                                                       },
                                            
                                                       "astroday" : false //during astronight
                                            
                                                   }
                                            
                                               
                                            
                                               ]
                                            
                                            };
                                            
                                             
                                            
                                            for(let i = 0; i < astrotime.elements.length; i++) {
                                            
                                               // führende Nummer zur Sortierung in Admin/Objekte
                                            
                                               var nr = i;
                                            
                                               if(i < 10) nr = '0' + nr;
                                            
                                               // Erstelle Objekt, falls nicht bereits vorhanden
                                            
                                               var idAstroObject = pfad + "Zeiten." + nr + "-" + astrotime.elements[i].fname;
                                            
                                               createState(idAstroObject, " ", {
                                            
                                                   name: astrotime.elements[i].de.nxt + " " + astrotime.elements[i].de.name,
                                            
                                                   desc: astrotime.elements[i].en.desc,
                                            
                                                   type: "string"
                                            
                                               });
                                            
                                            }
                                            
                                             
                                            
                                            function writeAstroTimes(i) {
                                            
                                               // führende Nummer zur Sortierung in Admin/Objekte
                                            
                                               var nr = i;
                                            
                                               if(i < 10) nr = '0' + nr;
                                            
                                               var idAstroObject = pfad + "Zeiten." + nr + "-" + astrotime.elements[i].fname;
                                            
                                               var today = new Date();
                                            
                                               var tomorrow = today.setDate(today.getDate()+1);
                                            
                                               var fname = astrotime.elements[i].fname;
                                            
                                               var next_event = today.getTime();
                                            
                                               if (getAstroDate(fname) < today) next_event = tomorrow;
                                            
                                               var temp = getAstroDate(fname, next_event);
                                            
                                               let astro = formatDate(temp, 'hh:mm');
                                            
                                               if(sec) astro = formatDate(temp, 'hh:mm:ss');
                                            
                                               setState(idAstroObject, astro, true);
                                            
                                            }
                                            
                                             
                                            
                                            function iterateAstrotimes() {
                                            
                                               // Zeiten für jede Astrozeit schreiben
                                            
                                               for (var i = 0; i < astrotime.elements.length; i++) {
                                            
                                                   writeAstroTimes(i);
                                            
                                               }
                                            
                                            }
                                            
                                             
                                            
                                            schedule("59 1 * * *", iterateAstrotimes);
                                            
                                             
                                            
                                            setTimeout(function() { // Skriptstart
                                            
                                               iterateAstrotimes();
                                            
                                               setState(idAstrotag, isAstroDay(), true);
                                            
                                            }, 200);
                                            
                                             
                                            
                                            

                                            Uhr

                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at processTimers (internal/timers.js:500:7)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at listOnTimeout (internal/timers.js:557:17)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at Timeout._onTimeout (/opt/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at /opt/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at Job.invoke (/opt/iobroker/node_modules/node-schedule/lib/Job.js:171:15)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at Job.job (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1606:34)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	at Object.<anonymous> (script.js.smarthome.iqontrol.Astro:97:45)
                                            javascript.0
                                            	2023-04-07 22:02:00.007	error	Error in callback: TypeError: Cannot read property 'getTime' of undefined
                                            javascript.0
                                            	2023-04-07 22:02:00.006	error	Longitude or latitude does not set. Cannot use astro.
                                            
                                            
                                            
                                             
                                            
                                            const DP_Uhr_digital 				= '0_userdata.0.Uhr.Digital_Uhr_HTML_Uhrzeit_und_Datum_V7';
                                            
                                            const DP_Wetter_Vorschau 			= '0_userdata.0.Uhr.Wetter_Vorschau';
                                            
                                            const DP_Wetter_Vorschau_Trigger	= '0_userdata.0.Uhr.Wetter_Vorschau_Trigger';
                                            
                                             
                                            
                                            fctInit();
                                            
                                             
                                            
                                            on({id:DP_Wetter_Vorschau_Trigger, val:true} , function (dp) {
                                            
                                              if (getState(DP_Wetter_Vorschau).val){
                                            
                                                  setState(DP_Wetter_Vorschau, false);
                                            
                                              }else{
                                            
                                                  setState(DP_Wetter_Vorschau, true);
                                            
                                              }
                                            
                                            });
                                            
                                             
                                            
                                            function fctInit(){
                                            
                                            if(!existsState(DP_Uhr_digital)) {
                                            
                                                createState(DP_Uhr_digital,
                                            
                                                    {type: 'string', name: 'iQontrol Uhr', role: 'html', read: true , write: true}
                                            
                                                );
                                            
                                            }
                                            
                                            if(!existsState(DP_Wetter_Vorschau_Trigger)) {
                                            
                                                createState(DP_Wetter_Vorschau_Trigger,
                                            
                                                    {type: 'boolean', name: 'Wetter Vorschau Trigger', role: 'button', read: false , write: true}
                                            
                                                );
                                            
                                            }
                                            
                                            if(!existsState(DP_Wetter_Vorschau)) {
                                            
                                                createState(DP_Wetter_Vorschau,
                                            
                                                    {type: 'boolean', name: 'Wetter Vorschau', role: 'switch', read: true , write: true, def: false}
                                            
                                                );
                                            
                                            }
                                            
                                            setStateDelayed(DP_Uhr_digital, fctUhrzeitDatumWetter_V7(), 1000);
                                            
                                            schedule("*/10 * * * * *", function () {
                                            
                                                setState(DP_Uhr_digital, fctUhrzeitDatumWetter_V7());
                                            
                                            })
                                            
                                            }
                                            
                                             
                                            
                                            function fctUhrzeitDatumWetter_V7() {
                                            
                                            let str_Uhrzeit         = String(formatDate(new Date(), "hh:mm"));
                                            
                                            let str_Datum           = String(formatDate(new Date(), "DD.MM.YYYY"));
                                            
                                            let str_Wochentag       = String(formatDate(new Date(), "WW", "de"));
                                            
                                             
                                            
                                            let str_color_body      = 'rgba(66, 66, 66, 1)';
                                            
                                            let str_color_cell      = 'rgba(71, 87, 92, 0)';
                                            
                                            let str_color_font      = 'rgba(255, 255, 255, 1)';
                                            
                                             
                                            
                                             
                                            
                                            let str_position_font   = 'left'
                                            
                                            let str_Tageszeit       = 'Tag';
                                            
                                            let str_html            = '';
                                            
                                            let str_html_head       = '';
                                            
                                            let image_Wetter_Pfad   = './../iqontrol.meta/userimages/usericons/wetter/';
                                            
                                             
                                            
                                            // ##########################################################################
                                            
                                            // CSS Style (Formatierung der HTML Elemente)
                                            
                                            // ##########################################################################
                                            
                                            str_html_head = str_html_head + '<head><meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0">';
                                            
                                            str_html_head = str_html_head + '<style>';
                                            
                                            str_html_head = str_html_head + 'body {';
                                            
                                            //str_html_head = str_html_head + 'overflow:hidden;'; //Scrollbalken ausgeblendet
                                            
                                            str_html_head = str_html_head + 'background-color:' + str_color_body + ';';
                                            
                                            str_html_head = str_html_head + '}'; 
                                            
                                             
                                            
                                             
                                            
                                             
                                            
                                            str_html_head = str_html_head + 'span {';
                                            
                                            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                            
                                            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:1px solid gainsboro;border-color:White;';
                                            
                                            //Textausrichtung
                                            
                                            str_html_head = str_html_head + 'text-align:' + str_position_font + ';';
                                            
                                            //Schriftfarbe
                                            
                                            str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                            
                                            //Wer keine Hintergrundfarbe für die Boxen will, kommentiert die nachfolgende Zeile aus oder löscht sie.
                                            
                                            //str_html_head = str_html_head + 'background-color:' + str_color_cell + ';';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + 'td {';
                                            
                                            str_html_head = str_html_head + 'border-width:0px;';
                                            
                                            str_html_head = str_html_head + 'border-style:solid;';
                                            
                                            str_html_head = str_html_head + 'border-color:silver;';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + '.container_column {';
                                            
                                            str_html_head = str_html_head + 'display:flex;';
                                            
                                            //Elemente werden untereinander dargestellt
                                            
                                            str_html_head = str_html_head + 'flex-direction: column;';
                                            
                                            str_html_head = str_html_head + 'justify-content: flex-start;';
                                            
                                            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                            
                                            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + '.container_row {';
                                            
                                            str_html_head = str_html_head + 'display: flex;';
                                            
                                            //Elemente werden untereinander dargestellt
                                            
                                            str_html_head = str_html_head + 'flex-direction: row;';
                                            
                                            str_html_head = str_html_head + 'justify-content: space-between;';
                                            
                                            //Rahmen: abgerundete Ecken (5px), Strichstärke (0px = aus) und Farbe
                                            
                                            //str_html_head = str_html_head + 'border-radius:5px;border-collapse:separate;border:2px solid gainsboro;border-color:yellow;';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + 'input {';
                                            
                                            str_html_head = str_html_head + 'height:10vw;';
                                            
                                            str_html_head = str_html_head + 'width:10vw;';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + '.img_wetter {';
                                            
                                            str_html_head = str_html_head + 'height:15vw;';
                                            
                                            str_html_head = str_html_head + 'width:15vw;';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                             
                                            
                                            //Hier habt ihr die Möglichkeit, CSS Eigenschaften für jede Box einzeln einzutragen.
                                            
                                            //Bspw. könnt ihr hier eine separate Hintergrundfarbe einstellen.
                                            
                                            //Außerdem steuert ihr hier die Schriftgrößen der einzelnen Boxen
                                            
                                            str_html_head = str_html_head + '.box_uhr {font-size:14vmax;}';
                                            
                                            str_html_head = str_html_head + '.box_datum {font-size:4vmax;text-align:center;}';
                                            
                                            str_html_head = str_html_head + '.box_wetter {font-size:4vmax;margin-right:1.5vw;text-align:center;}';
                                            
                                             
                                            
                                            str_html_head = str_html_head + '.table_Wettervorschau {';
                                            
                                            str_html_head = str_html_head + 'margin-top:4vw;';
                                            
                                            str_html_head = str_html_head + 'border-collapse: collapse;';
                                            
                                            str_html_head = str_html_head + 'font-size:3vmax;';
                                            
                                            str_html_head = str_html_head + 'color:' + str_color_font + ';';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                            str_html_head = str_html_head + '</style>';
                                            
                                            str_html_head = str_html_head + '<script type="text/javascript">';
                                            
                                            str_html_head = str_html_head + 'function setState(stateId, value){';
                                            
                                            str_html_head = str_html_head + 'sendPostMessage("setState", stateId, value);';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                            str_html_head = str_html_head + 'function sendPostMessage(command, stateId, value){';
                                            
                                            str_html_head = str_html_head + 'message = { command: command, stateId: stateId, value: value};';
                                            
                                            str_html_head = str_html_head + 'window.parent.postMessage(message, "*");';
                                            
                                            str_html_head = str_html_head + '}';
                                            
                                            str_html_head = str_html_head + '</script>';
                                            
                                            str_html_head = str_html_head + '</head>';
                                            
                                             
                                            
                                            // ##########################################################################
                                            
                                            // Prüfen ob Tag oder Nacht um Sonne oder Mond Icons anzuzeigen
                                            
                                            // ##########################################################################
                                            
                                            //Wenn ihr den nachfolgenden Datenpunkt '0_userdata.0.Astro.Tageszeit.current' auch habt, könnt ihr das einkommentieren --> /* und */ löschen
                                            
                                            //--> dafür gibt es ein ASTRO Skript hier im Forum
                                            
                                             
                                            
                                            switch (getState('0_userdata.0.Astro.Tageszeit.current').val){
                                            
                                                case "Sonnenuntergang":
                                            
                                                case "Abenddämmerung":
                                            
                                                case "Nacht":
                                            
                                                case "Morgendämmerung":
                                            
                                                    str_Tageszeit = 'Nacht';
                                            
                                                    break;
                                            
                                                default:
                                            
                                                    break;
                                            
                                            }
                                            
                                             
                                            
                                             
                                            
                                            // ##########################################################################
                                            
                                            // Ab hier werden die verschiedenen HTML Flex Container zusammengebaut
                                            
                                            // ##########################################################################
                                            
                                            //Box 1 = Uhrzeit und Wettersymbol
                                            
                                            str_html = str_html + str_html_head + '<div class="container_row">';
                                            
                                            str_html = str_html + '<span class="box_uhr"><b>' + str_Uhrzeit + ' Uhr</b></span>';
                                            
                                            if (str_Tageszeit == 'Tag'){
                                            
                                                  str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_value').val + '.png' + '" />';
                                            
                                            }else{
                                            
                                                  str_html = str_html + '<input type="image" class="img_wetter" onclick="setState(\'' + DP_Wetter_Vorschau_Trigger + '\', true)" src="' + image_Wetter_Pfad + 'mond/' + getState('daswetter.0.NextHours.Location_1.Day_1.moon_symbol').val + '.png' + '" />';
                                            
                                            }
                                            
                                            str_html = str_html + '</div>';
                                            
                                             
                                            
                                            //Box 2 = Wochentag/Datum, Abfallentsorgung und aktuelle Wetterdaten
                                            
                                            str_html = str_html + '<div class="container_row">';
                                            
                                            str_html = str_html + '<div class="container_column">';
                                            
                                            str_html = str_html + '<span class="box_datum"><b><i>' + str_Wochentag + ', ' + str_Datum + '</i></b></span>';
                                            
                                            str_html = str_html + '</div>';
                                            
                                            str_html = str_html + '<div class="container_column">';
                                            
                                            str_html = str_html + '<span class="box_wetter"><b><i>' + /*Math.round;*/(getState('modbus.0.holdingRegisters.40133_prmRamIdxT1'/*Temperatursensor aussen ACTUAL TEMPERATURE*/).val.toFixed(1)) + '°C</i></b></span>';
                                            
                                            if (str_Tageszeit == 'Tag'){
                                            
                                                str_html = str_html + '<span class="box_wetter"><i>' + getState('daswetter.0.NextHours.Location_1.Day_1.current.symbol_desc').val + '</i></span>';
                                            
                                            }else{
                                            
                                                str_html = str_html + '<span class="box_wetter"><i>' + str_Tageszeit + '</i></span>';
                                            
                                            }
                                            
                                             
                                            
                                            str_html = str_html + '</div>';
                                            
                                            str_html = str_html + '</div>';
                                            
                                             
                                            
                                            //Box 3 = Wettervorschau
                                            
                                            str_html = str_html + '<div class="container_column">';
                                            
                                            str_html = str_html + '<table class="table_Wettervorschau">';
                                            
                                             
                                            
                                            str_html = str_html + '<tr>';
                                            
                                            str_html = str_html + '<td>heute</td>';
                                            
                                            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_value').val + '.png' + '"/></td>';
                                            
                                            str_html = str_html + '<td nowrap>' + getState('daswetter.0.NextHours.Location_1.Day_1.tempmin_value').val + '°C bis ';
                                            
                                            str_html = str_html + getState('daswetter.0.NextHours.Location_1.Day_1.tempmax_value').val + '°C</td>';
                                            
                                            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_1.humidity_value').val + '%</td>';
                                            
                                            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_1.symbol_desc').val + '</td>';
                                            
                                            str_html = str_html + '</tr>';
                                            
                                             
                                            
                                            str_html = str_html + '<tr>';
                                            
                                            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.day_name').val + '</td>';
                                            
                                            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_value').val + '.png' + '"/></td>';
                                            
                                            str_html = str_html + '<td nowrap>' + getState('daswetter.0.NextHours.Location_1.Day_2.tempmin_value').val + '°C bis ';
                                            
                                            str_html = str_html + getState('daswetter.0.NextHours.Location_1.Day_2.tempmax_value').val + '°C</td>';
                                            
                                            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_2.humidity_value').val + '%</td>';
                                            
                                            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_2.symbol_desc').val + '</td>';
                                            
                                            str_html = str_html + '</tr>';
                                            
                                             
                                            
                                            str_html = str_html + '<tr>';
                                            
                                            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.day_name').val + '</td>';
                                            
                                            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_value').val + '.png' + '"/></td>';
                                            
                                            str_html = str_html + '<td nowrap>' + getState('daswetter.0.NextHours.Location_1.Day_3.tempmin_value').val + '°C bis ';
                                            
                                            str_html = str_html + getState('daswetter.0.NextHours.Location_1.Day_3.tempmax_value').val + '°C</td>';
                                            
                                            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_3.humidity_value').val + '%</td>';
                                            
                                            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_3.symbol_desc').val + '</td>';
                                            
                                            str_html = str_html + '</tr>';
                                            
                                             
                                            
                                            str_html = str_html + '<tr>';
                                            
                                            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.day_name').val + '</td>';
                                            
                                            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_value').val + '.png' + '"/></td>';
                                            
                                            str_html = str_html + '<td nowrap>' + getState('daswetter.0.NextHours.Location_1.Day_4.tempmin_value').val + '°C bis ';
                                            
                                            str_html = str_html + getState('daswetter.0.NextHours.Location_1.Day_4.tempmax_value').val + '°C</td>';
                                            
                                            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_4.humidity_value').val + '%</td>';
                                            
                                            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_4.symbol_desc').val + '</td>';
                                            
                                            str_html = str_html + '</tr>';
                                            
                                             
                                            
                                            str_html = str_html + '<tr>';
                                            
                                            str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.day_name').val + '</td>';
                                            
                                            str_html = str_html + '<td><img src="' + image_Wetter_Pfad + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_value').val + '.png' + '"/></td>';
                                            
                                            str_html = str_html + '<td nowrap>' + getState('daswetter.0.NextHours.Location_1.Day_5.tempmin_value').val + '°C bis ';
                                            
                                            str_html = str_html + getState('daswetter.0.NextHours.Location_1.Day_5.tempmax_value').val + '°C</td>';
                                            
                                            //str_html = str_html + '<td>' + getState('daswetter.0.NextHours.Location_1.Day_5.humidity_value').val + '%</td>';
                                            
                                            str_html = str_html + '<td align=left>' + getState('daswetter.0.NextHours.Location_1.Day_5.symbol_desc').val + '</td>';
                                            
                                            str_html = str_html + '</tr>';
                                            
                                             
                                            
                                            str_html = str_html + '</table>';
                                            
                                            str_html = str_html + '</div>';
                                            
                                             
                                            
                                            return str_html;
                                            
                                            }
                                            
                                            

                                            Danke für eure hilfe

                                            Hat sich erledigt fehler konnte ich nach Tagelangen suchen selber beheben

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            573
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            app dark-mode iqontrol responsive vis visualisierung visualization widget
                                            295
                                            7633
                                            5493941
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo