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.
    • 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
                    • Glasfaser
                      Glasfaser @smartboart last edited by Glasfaser

                      @GiuseppeS

                      @smartboart sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
                      @GiuseppeS
                      super hat geklappt... 👍

                      Dito ..

                      @smartboart
                      Na vom Schwimmwen zurück 😁

                      Kannst du mal bei dir nachschauen , ob bei diesem Widget
                      die CSS hinterlegt sind ....!??

                      mdui-select noSwipe
                      

                      xxxxxxxxxxxx.JPG

                      weil ... eigenlich sollte der Pfeil so aussehen :

                      444.JPG

                      .
                      Bei mir greift die CSS auch nicht ,
                      wie sieht es bei dir aus .... finde auch den Fehler nicht .
                      Neues Projekt erstellt usw.

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

                        @Glasfaser
                        ja hab mich abgekühlt..

                        Also bei mir ist es hinterlegt...Hab auch nochmal die Editor View importiert...da passt es auch...
                        Unbenannt.JPG

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

                          Unbenannt.JPG

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

                            @smartboart

                            OK sieht genau aus wie bei mir ...
                            sieht aber nicht so aus , wie bei GiuseppeS ...

                            .
                            444.JPG

                            das ist das komisch daran !?

                            der Pfeil ist gemeint !!! ohne den Kasten drumrum ....

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

                              @Glasfaser ah ok das meinst du...ist mir garnicht aufgefallen...
                              finde das Rechteckige ganz schick..hab bei mir eigentlich alles eckig und versuche gerade die Bedingungen auch auf eckig zu trimmen.

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

                                @smartboart
                                In Zeile 709 "border radius" anpassen

                                Hatte ursprünglich die CSS inkl Skript außerhalb der HTML Tabelle frei im Editor mit eigenem HTML widget platziert, damit es übersichtlicher ist und leichter angepasst werden kann. Leider gab es negative Auswirkungen auf den kompletten IoBroker Editor. Daher nun im Skript integriert.

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

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

                                  @smartboart
                                  In Zeile 709 "border radius" anpassen

                                  super da war ich gerade ....

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

                                    auch witzig
                                    Unbenannt.JPG

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

                                      @smartboart

                                      sieht ja geil aus 😀

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

                                        @smartboart
                                        Schaut gut aus. Da würde ich die gegenüberliegenden Radien sogar vergrößern um den Effekt zu verstärken.

                                        P.S.:
                                        Wenn öfters Bedarf besteht solche Optiken anzupassen, kann ich die CSS Styles auch nach oben in den Bereich der Variablen schieben; natürlich wieder als Option. Somit können Updates einfacher übernommen werden.

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

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

                                          @smartboart
                                          Schaut gut aus. Da würde ich die gegenüberliegenden Radien sogar vergrößern um den Effekt zu verstärken.

                                          P.S.:
                                          Wenn öfters Bedarf besteht solche Optiken anzupassen, kann ich die CSS Styles auch nach oben in den Bereich der Variablen schieben; natürlich wieder als Option. Somit können Updates einfacher übernommen werden.

                                          Das ist ne gute Idee....

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

                                            @smartboart
                                            Dann notiere ich mir das für das nächste Update.

                                            smartboart 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            803
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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