Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Vorlage] Variable Zeitsteuerung mit VIS Editor

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Variable Zeitsteuerung mit VIS Editor

    This topic has been deleted. Only users with topic management privileges can see it.
    • smartboart
      smartboart @GiuseppeS last edited by

      @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

      javascript.0.Timer.Editor.ConditionsHtml

      hi , hab prombt mal umgestellt...

      Danke für die Weiterentwicklung....
      Beim Hinzunehmen vone Bedingungen sieht es bei mir so aus...
      Die Werte und Vergleicher fehlen...

      Unbenannt.JPG

      Glasfaser 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @smartboart last edited by

        @smartboart sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

        Die Werte und Vergleicher fehlen...

        auch wenn du Ihn als erstes auswählst ( Bedingung 1 ) !?

        smartboart 1 Reply Last reply Reply Quote 0
        • smartboart
          smartboart @Glasfaser last edited by

          @Glasfaser

          ja

          Unbenannt.JPG

          Glasfaser 1 Reply Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @smartboart last edited by Glasfaser

            @smartboart

            im Screenshot oben ist aber :

            .
            2.JPG

            ????

            Sind dann mehere betroffen !????

            smartboart 1 Reply Last reply Reply Quote 0
            • smartboart
              smartboart @Glasfaser last edited by

              @Glasfaser Unbenannt.JPG

              Glasfaser 1 Reply Last reply Reply Quote 0
              • Glasfaser
                Glasfaser @smartboart last edited by Glasfaser

                @smartboart

                Habe gestern/heute alles nach dem Update von ihm durchgespielt ... alles wird angezeigt .

                .
                33.JPG

                .

                Starte mal das Script bzw. dein System neu , als würde er die Bedingungen nicht richtig zuweisen ..

                smartboart 1 Reply Last reply Reply Quote 0
                • smartboart
                  smartboart @Glasfaser last edited by smartboart

                  @Glasfaser
                  hat nix gebracht....

                  vlt. liegt es daran, dass ich vorher schon 6 Bedingungen hatte und beim jetzigen wieder Aufbereiten des json was durcheinander ging...

                  Wenn ich jatzt alle states wieder lösche muss ich alles neu anlegen.

                  hatte das script auch nochmal komplett neu kopiert weil ich dachte meine Anpassungen haetten was zerschossen...Aber ich passe ja nur an 2 Stellen an. ( Enum und Viewwechsel ). kann also auch nicht sein...

                  Glasfaser G 2 Replies Last reply Reply Quote 0
                  • Glasfaser
                    Glasfaser @smartboart last edited by Glasfaser

                    @smartboart

                    Nimm mal das Script ( neu anlegen lassen ) im Original mit dem Orginal View/Popup und dann deine Bedingung anpassen ...
                    was ist dann !?

                    smartboart G 2 Replies Last reply Reply Quote 0
                    • G
                      GiuseppeS @smartboart last edited by GiuseppeS

                      @smartboart
                      Wenn Du die Version heute geladen hast, hätte es funktionieren müssen. Gestern Abend hatte ich tatsächlich noch ein Bug drin.

                      Was steht im State "Editor.Cond7State" wenn du was gewählt hast (für 7. Bedingung)?
                      Geht es bei dir allgemein nicht weiter wenn du eine Bedingung neu hinzufügst? Als auch wenn du nur zwei Bedingungen hattest und eine Dritte hinzufügen möchtest?
                      Du kannst im Skript debugLog aktivieren, wird was angezeigt wenn Du ein State auswählst?

                      1 Reply Last reply Reply Quote 0
                      • smartboart
                        smartboart @Glasfaser last edited by smartboart

                        @Glasfaser sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                        Nimm mal das Script ( neu anlegen lassen ) im Original mit dem Orginal View/Popup und dann deine Bedingung anpassen ...
                        was ist dann !?

                        wollte ich gerade machen ...jetzt sind meine gefühlten 100 Skripte nicht mehr im Baum zu sehen....nur noch 4 stück...Beim Exportieren sind noch alle da...Laufen auch alle...Der Anzeigebaum ist voll im Eimer...Muss erstmal schauen was da jetzt los ist...

                        1 Reply Last reply Reply Quote 0
                        • G
                          GiuseppeS @Glasfaser last edited by

                          @Glasfaser
                          Kannst du neue Bedingungen hinzufügen?

                          Glasfaser 2 Replies Last reply Reply Quote 0
                          • Glasfaser
                            Glasfaser @GiuseppeS last edited by Glasfaser

                            @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                            @Glasfaser
                            Kannst du neue Bedingungen hinzufügen?

                            ????

                            du meinst @smartboart

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              GiuseppeS @Glasfaser last edited by

                              @Glasfaser
                              Meinte schon dich 😉

                              Kurioserweise kann ich gerade auch keine Bedingungen ergänzen. Bin allerdings unterwegs. Schaue es mir später an, bin gerade unterwegs.

                              In meinem Testsystem funktioniert es einwandfrei. Habe evtl den Bugfix nicht übernommen. Werde es heute Abend korrigieren. Sorry

                              1 Reply Last reply Reply Quote 0
                              • Glasfaser
                                Glasfaser @GiuseppeS last edited by Glasfaser

                                @GiuseppeS

                                So habe jetzt Produktiv umgestellt :

                                Habe auch ein Fehler .... ich arbeite mit Split

                                dort wird nach dem einfügen des neuen Scripts nichts mehr angezeigt .
                                Die Datenpunkte werden für das html erstellt

                                sieht aber dann so aus

                                Original alt :

                                1111111111111.JPG
                                .
                                Neu
                                2222222222222.JPG

                                .
                                hier der Html Inhalt :

                                Alt :

                                <style>.timer-remember-green-glow {filter: drop-shadow(0px 0px 2px #4CAF50) drop-shadow(0px 0px 2px #4CAF50) drop-shadow(0px 0px 4px #4CAF50)}.timer-remember-red-glow {filter: drop-shadow(0px 0px 2px #F44336) drop-shadow(0px 0px 2px #F44336) drop-shadow(0px 0px 4px #F44336)}.timer-remember-red-blink {animation: timer-remember-blink-ani 1s linear infinite;}@keyframes timer-remember-blink-ani {0%,50% {filter: drop-shadow(0px 0px 4px #F44336) drop-shadow(0px 0px 4px #F44336) drop-shadow(0px 0px 4px #F44336); }51% {filter: none;}}</style><table style='font-size:1em;width:100%;'><thead><tr><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Aktiv</button></th><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Bed</button></th><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Zeit</button></th><th style='text-align:left;'>Wochentag</th><th style='text-align:left;'>Soll</th><th style='text-align:left;'>Astro</th><th style='text-align:left;'>Offset</th><th style='text-align:left;'>Zufall</th></tr></thead><tbody><tr><td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Küche.LEVEL~1~nr"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">✅</button></td><td> </td><td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Küche.LEVEL~1~time"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">21:08</button></td><td>täglich</td><td>Ab</td><td>sunset</td><td>+ 10</td><td>± 20</td></tr><tr><td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Küche.LEVEL~2~nr"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">✅</button></td><td> </td><td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Küche.LEVEL~2~time"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">06:48</button></td><td>täglich</td><td>Auf</td><td>goldenHourEnd</td><td> </td><td>± 20</td></tr></body></table><script>function setOnClickRollladenEG(val) {var objID = "javascript.0.Timer.RollladenEG.clickTarget";servConn.setState(objID, val);}function setOnDblClickRollladenEG(val) {var objID = "javascript.0.Timer.RollladenEG.dblClickTarget";servConn.setState(objID, val);}</script>
                                

                                Neu mit Update :

                                <style>.timer-remember-green-glow {filter: drop-shadow(0px 0px 2px #4CAF50) drop-shadow(0px 0px 2px #4CAF50) drop-shadow(0px 0px 4px #4CAF50)}.timer-remember-red-glow {filter: drop-shadow(0px 0px 2px #F44336) drop-shadow(0px 0px 2px #F44336) drop-shadow(0px 0px 4px #F44336)}.timer-remember-green-blink {animation: timer-remember-green-blink-ani 1s linear infinite;}.timer-remember-red-blink {animation: timer-remember-red-blink-ani 1s linear infinite;}@keyframes timer-remember-green-blink-ani {0%,50% {filter: drop-shadow(0px 0px 4px #4CAF50) drop-shadow(0px 0px 4px #4CAF50) drop-shadow(0px 0px 4px #4CAF50); }51% {filter: none;}}@keyframes timer-remember-red-blink-ani {0%,50% {filter: drop-shadow(0px 0px 4px #F44336) drop-shadow(0px 0px 4px #F44336) drop-shadow(0px 0px 4px #F44336); }51% {filter: none;}}</style><table style='font-size:1em;width:100%;'><thead><tr><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Aktiv</button></th><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Bed</button></th><th style='text-align:left;'><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" >Zeit</button></th><th style='text-align:left;'>Wochentag</th><th style='text-align:left;'>Soll</th><th style='text-align:left;'>Astro</th><th style='text-align:left;'>Offset</th><th style='text-align:left;'>Zufall</th></tr></thead><tbody></tbody></table><script>function setOnClickRollladenEG(val) {var objID = "javascript.0.Timer.RollladenEG.clickTarget";servConn.setState(objID, val);}function setOnDblClickRollladenEG(val) {var objID = "javascript.0.Timer.RollladenEG.dblClickTarget";servConn.setState(objID, val);}</script>
                                

                                hier der LOG :

                                2020-08-09 16:04:30.172 - info: javascript.0 (31028) Stop script script.js.Timer.Rollladen.Timer_Rollladen_EGTest
                                2020-08-09 16:04:30.334 - info: javascript.0 (31028) Start javascript script.js.Timer.Rollladen.Timer_Rollladen_EGTest
                                2020-08-09 16:04:30.365 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: registered 0 subscriptions and 0 schedules
                                2020-08-09 16:04:31.879 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Küche.LEVEL #1": [1] | 8 21 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0300877.1.LEVEL | Ab
                                2020-08-09 16:04:31.881 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Küche.LEVEL #2": [2] | 48 6 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0300877.1.LEVEL | Auf
                                2020-08-09 16:04:31.884 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor WC.LEVEL #1": [21] | 44 21 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0300882.1.LEVEL | Ab
                                2020-08-09 16:04:31.887 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor WC.LEVEL #2": [22] | 4 7 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0300882.1.LEVEL | Auf
                                2020-08-09 16:04:31.889 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Terrassentür.LEVEL #1": [41] | 47 21 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0301018.1.LEVEL | Ab
                                2020-08-09 16:04:31.891 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Terrassentür.LEVEL #2": [42] | 0 8 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0301018.1.LEVEL | Auf
                                2020-08-09 16:04:31.893 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Wohnzimmer.LEVEL #1": [61] | 26 21 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0301105.1.LEVEL | Ab
                                2020-08-09 16:04:31.894 - info: javascript.0 (31028) script.js.Timer.Rollladen.Timer_Rollladen_EGTest: Schedule aktiviert: "Rollladenaktor Wohnzimmer.LEVEL #2": [62] | 45 6 * * 0,1,2,3,4,5,6 | hm-rpc.1.JEQ0301105.1.LEVEL | Auf
                                

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  GiuseppeS @Glasfaser last edited by

                                  @Glasfaser
                                  Kannst du bitte prüfen, ob da nicht was anderes schief gelaufen ist? Korrekt kopiert? Habe an dem Teil im Skript nichts geändert. Aber wenn ich den anderen Fehler mit den Bedingungen korrigiert habe, kann ich mir das auch anschauen.

                                  1 Reply Last reply Reply Quote 0
                                  • G
                                    GiuseppeS last edited by

                                    @smartboart

                                    Habe den Fehler gefunden, der das Erstellen neuer Bedingungen verhindert hat:

                                    in Zeile 685 muss folgende stehen:

                                    let html = '<select class="' + selectClass + '" onchange="setOnEdit' + path + '(this.value)">';
                                    

                                    Im Original steht statt " + path + " mein fixer Pfad drin. Kannst Du bei dir manuell korrigieren.

                                    @Glasfaser
                                    Kann deinen Fehler gerade nachstellen. Erklären kann ich es mir gerade jedoch noch nicht. Suche mal weiter...

                                    Version ist aus Post 1 zunächst entfernt...

                                    smartboart 1 Reply Last reply Reply Quote 0
                                    • smartboart
                                      smartboart @GiuseppeS last edited by

                                      @GiuseppeS sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:

                                      let html = '<select class="' + selectClass + '" onchange="setOnEdit' + path + '(this.value)">';

                                      hab ich geändert danke...

                                      jetzt kommt ....
                                      Unbenannt.JPG

                                      G 1 Reply Last reply Reply Quote 0
                                      • G
                                        GiuseppeS @smartboart last edited by

                                        @smartboart

                                        Selbe Fehler wie zuvor an anderer Stelle:

                                        html += (!isBool ? '<input class="' + selectClass + '" value="' +  value + '" type="text" onchange="setOnEdit' + path + '(\'' + i + "~value~" + '\' + this.value)">' : "" )
                                        

                                        Bitte korrigieren. Bei dir steht noch "AtHomeSimul" an der Stelle, wo hier nun path genutzt wird.

                                        @Glasfaser

                                        Habe den Fehler lokalisiert bzgl. Split. Ich kann es mir absolut nicht erklären, aber die Callback-Funktion von CreateState scheint alle Variablen aus dem darüber liegenden Scope nicht zu kennen. Ging aber bisher... Werde es umstrukturieren und Update hochladen. Geht einfacher als hierbei den Fehler zu erörtern. Wollte mit dem Callback verhindern, dass ein State geschrieben wird, bevor es existiert.

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          GiuseppeS last edited by

                                          Bekannte Bugs sind behoben:

                                          • Es ließen sich keine neuen Bedingungen erstellen
                                          • Auswertung für Bool-States und NonBool-States war fehlerhaft
                                          • Split-Ansicht wieder ok. States für die HTML-Split-Ansicht werden nun früher erstellt. Somit ein Workaround für Callback innerhalb CreateState

                                          Lessons learned:
                                          Werde zukünftig meine Tests direkt mit korrekter Umgebung bzgl. path- und instance-Variable durchführen.... Man lernt nie aus.

                                          Korrigiertes Update ist im ersten Post wieder hochgeladen.

                                          smartboart 1 Reply Last reply Reply Quote 2
                                          • smartboart
                                            smartboart @GiuseppeS last edited by

                                            @GiuseppeS
                                            super hat geklappt... 👍

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            458
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            template vis
                                            47
                                            919
                                            215163
                                            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