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 last edited by

      @Danny-0
      Ich meinte es anders. Deine Aufzählungen heißen "enum. functions.1" und "enum.blinds.1". Die 1 zum Schluß gehört anscheinend zum Namen. Muss daher mit genannt werden.

      Bevor du das machst, am Besten die bereits erstellten Objekte löschen.

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

        @GiuseppeS

        Danke für die Hinweise. Ein Rollo ist schon mal hoch und runter gefahren 🙂

        • Der erste Fehler war tatsächlich der Pfad java.js... geht scheinbar nicht. Als ich auf javascript.0... umgestellt habe lief es schon mal besser.
        • Dann habe ich alle Geräte noch mal komplett raus gelöscht weil er immer wieder hing

        Jetzt läuft es 🙂

        Kann ich wegen Optimierungen melden ?!

        VG und besten dank!

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

          @Danny-0
          Optimierungen können gerne vorgeschlagen werden.

          Zum Pfad:
          JavaScript kann nur unter javascript.x States erstellen. Mehr Berechtigungen sind nicht drin. Ist eine Einschränkung vom Adapter. Aber wenn du in Javascript eine andere Instanz nutzen möchtest dann musst du nur die 0 mit deiner Instanz ersetzen, bei "javascript.0.blabla".

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

            Habe noch schnell ein Update hinterher geschoben.

            Auch hier wurden keine neuen Variablen eingeführt. Bedeutet, dass ein manuelles Upgrade aus der letzten Version durchgeführt werden kann, indem man die Code-Zeilen ab Nr. 66 durch die Neuen ersetzt.

            Danke @Glasfaser für den Hinweis bzgl. "manuelles Löschen".

            Changelog 29.03.2020

            • Einzelne Aktive Background-Timer aus "Timer merken" können vorzeitig über Doppelklick auf die Bedingungszahl gelöscht werden
            • Das Löschen aller aktiven Background-Timer kann über ein Doppelklick auf Tabellen-Überschrift "Bed" oder separat über das neue State "javascript.0.Timer.Devices.ResetBackgroundTimers" durchgeführt werden.

            EDIT:

            Habe direkt eine weitere Version hochgeladen. Individuelle Mappings der Sollwerte können nun einfacher durchgeführt werden. Aufgrund der vorbefüllten Variablen, sollte ein Anpassen oder Ergänzen hoffentlich einfach sein.

            Changelog 29.03.2020 v2

            • Sollwerte können über Variablen-Feld oben einfacher angepasst werden
            • Zusätzlich zwei Variablen im oberen Feld: "sollDropDownBool" und "sollWertMapping"

            Für ein manuelles Update aus letzter Version müssen nun gemäß Changelog die zwei neuen Variablen im oberen "Variablen-Bereich" übernommen werden. Des Weiteren auch hier wieder den Code-Bereich ab

            /*
            * Weitere Infos: https://forum.iobroker.net/topic/23346/vorlage-variable-zeitsteuerung-mit-vis-editor
            * Autor: Giuseppe Sicilia (Forum: GiuseppeS)
            

            kopieren und bei euch integrieren.

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

              Habe nun noch schnell die Version hochgeladen, in der die Mappings bzgl. individueller Sollwerte einfacher möglich ist. Schaut nun so aus:

              var sollDropDown = "0;5;10;15;20;30;40;50;60;70;80;90;100;Auf;Ab";
              // Soll-Werte für Bool-States true/false (werden automatisch erkannt)
              var sollDropDownBool = "An;Aus";
              // Falls Soll-Werte individualisiert wurden, bitte nachfolgend die realen Werte hinterlegen/anpassen
              var sollWertMapping = {"Auf": 100, "Ab": 0, "An": true, "Aus": false}
              

              Wenn in sollDropDown oder sollDropDownBool etwas bzgl. ausgeschriebener Sollwerte geändert wird, müssen deren "Übersetzungen" (Mappings) im unteren JSON sollWertMapping eingetragen werden.
              Beispiel:
              Wenn das Skript für Rollläden genutzt wird, könnte in sollDropDown der String "mitte" hinzugefügt werden. Im JSON könnte dann eingetragen werden: "mitte": 50.
              Wenn in diesen drei Variablen etwas geändert werden sollte: Bitte achtet darauf, dass die Einzelwerte durch ; oder , getrennt werden.

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

                @GiuseppeS

                Danke ... bin gerade am Erweitern 😊

                Im htlm Code
                ( z.b. javascript.0.Timer.RollladenEG.HTML_Rollladenaktor Wohnzimmer.LEVEL )
                ist eine 0 reingerutscht !
                .

                <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>
                0<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 Wohnzimmer.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 Wohnzimmer.LEVEL~1~time"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">20:13</button></td>
                <td>täglich</td>
                <td>Ab</td>
                <td>dusk</td>
                <td>- 20</td>
                <td>± 15</td>
                </tr>
                
                <tr>
                <td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Wohnzimmer.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 Wohnzimmer.LEVEL~2~time"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">07:34</button></td>
                <td>täglich</td>
                <td>Auf</td>
                <td>goldenHourEnd</td>
                <td>- 15</td>
                <td>± 15</td>
                </tr>
                
                <tr>
                <td><button style="border:none; background-color:transparent; color:white; font-size:1.0em; text-align:left" value="Rollladenaktor Wohnzimmer.LEVEL~3~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 Wohnzimmer.LEVEL~3~time"onclick="setOnClickRollladenEG(this.value)"ondblclick="setOnDblClickRollladenEG(this.value)">07:55</button></td>
                <td>täglich</td>
                <td>Auf</td>
                <td>goldenHourEnd</td>
                <td>- 15</td>
                <td>± 15</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>
                


                .
                2.JPG
                .
                1.JPG

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

                  @Glasfaser
                  Oh, wo kommt die her. Schaue ich mir direkt mal an. Bin gerade zufällig daheim 😆

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

                    @Glasfaser
                    In Zeile 1461 ist ein einzelnes Plus-Zeichen. Das kannst du bei dir entfernen. Habe es eben auch im Master entfernt und gerade hochgeladen

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

                      @GiuseppeS

                      Das ist mal ein schneller Service 🙂

                      1.JPG

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

                        @Glasfaser
                        Sag mal, was hast du eigentlich für eine Schriftart oder wo hast du die eingestellt? Global oder pro View?

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

                          @GiuseppeS
                          im View ( Widget ) eingestellt

                          Jura-DemiBold
                          
                          1 Reply Last reply Reply Quote 1
                          • Stratos Gkrekidis
                            Stratos Gkrekidis @GiuseppeS last edited by

                            @GiuseppeS
                            Danke ... für das neue update (sollwert Mapping)

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

                              @GiuseppeS

                              Nur zur Info !

                              Nach dem einspielen des Updates v2 am 29.03 , hatte ich das Phänomen , das die Scrips später kurz in Pause gegangen sind ( gelb ) und dannach lief alles .( viel später als die neuen State´s erstellt wurden )
                              Habe mir nichts dabei gedacht , es lief ja alles ...

                              Wegen arbeiten an meiner Synology habe ich gestern sie mal neu Rebootet .
                              Heute ohne Grund sind keine Rollladen hochgefahren , beide Scrips sind jetzt ganz in Dauerpause .
                              Habe das System danach neu Rebootet .......
                              .
                              1.png

                              .
                              Ich werde es beobachten , nur ist nichts im Log .

                              G 1 Reply Last reply Reply Quote 0
                              • Stratos Gkrekidis
                                Stratos Gkrekidis last edited by

                                bei mir läuft es wie geschmiert seit heute morgen.

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

                                  @Glasfaser
                                  Hast du nach dem Einspielen der letzten Version die zwei neuen Variablen oben erstellt?

                                  Wenn das Skript auf gelb geht, müssten Fehler im Log angezeigt werden. Wenn das wiederholt vorkommt, bitte im Skript oben Debug-Ausgabe aktivieren.

                                  Edit:
                                  Eben erst gelesen, dass anscheinend nichts im Log angezeigt wird 🙇

                                  Glasfaser 1 Reply Last reply Reply Quote 1
                                  • Stratos Gkrekidis
                                    Stratos Gkrekidis last edited by

                                    das sind mein Änderungen

                                    var sollDropDown = "0;5;10;15;20;30;40;50;60;70;80;90;100;Up;Down;Eco;Normal";

                                    var sollWertMapping = {"Up": 100, "Down": 0, "On": true, "Off": false, "Eco": "Eco", "Normal": "Normal"}

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

                                      @GiuseppeS

                                      Vorher den Zusatz/Erweiterung eingetragen und dann den Rest erneuert , dann das Script gestartet . Die Pause kam viele später ....

                                      Edit:
                                      Eben erst gelesen, dass anscheinend nichts im Log angezeigt wird

                                      Keine Panik ... ( habe selber nicht mehr daran gedacht ))
                                      Die große Debug-Ausgabe nimm ich dann mal im Betrieb ,habe Sie aus gehabt !!!

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

                                        @Stratos-Gkrekidis
                                        Das scheint bei dir ja gut zu passen 👍

                                        @Glasfaser
                                        Es spricht dafür, dass der Fehler erst auftritt, wenn ein Timer ausgeführt wird. Evtl könntest du einen regulären Timer testweise auf 15 Uhr o.ä. stellen, um den Fehlerfall früher zu reproduzieren.

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

                                          @GiuseppeS

                                          Kann ich machen .... das ich mehere früher einstelle .

                                          Nur habe ich bestimmt gestern über 20 mal es sowieso in anspruch genommen , wo ich die Ausgabentabelle /Timer merken getestet habe , damit ich es im View einbauen kann .
                                          Und spät Abend´s führen auch alle Rollläden runter .

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

                                            @GiuseppeS
                                            Hallo, und ersteinmal Danke für die tolle Zeitsteuerung, Nutze sie zur Steuerung von RGBW Beleuchtung, perfekt
                                            Was ich leider nicht hinbekomme ist das Aktiv/Inaktiv schalten per Doppelklick, generell klappt das schon(per Maus), allerdings ist ein Doppelklick am Touchscreen eher blöd 😉 Habe schon den 'EDIT' Button aktiviert.. das klappt soweit... jetzt würde ich nur noch gerne im EDIT Fenster auch den Aktiv/Inaktiv Status setzen können... Für eine Hilfestellung wäre ich sehr dankbar.

                                            Mfg. Ulrich

                                            G Glasfaser 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            941
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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