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 GiuseppeS

      Hallo Leute, habe mir speziell für die Rollladen Steuerung ein Skript erstellt.
      Screenshot_20200525_134410.jpg

      Es ist möglich über eine einzige Sollwert Vorgabe mehrere Geräte zu steuern.
      Wie immer ist das Skript generisch gestaltet. D.h. über die Angabe einer Aufzählung im oberen Skript Bereich wird die html Tabelle erstellt. Es können somit auch andere Geräte oder Eigenschaften, wie z.B. Dimmer-Werte mehrerer Lampen angegeben werden.

      Es kann statt eine Aufzählung auch eine Liste von Objekt-IDs (als Array) angegeben werden. Könnte das auch in den Standard Timer einbringen falls gewünscht.
      Aktivieren bzw Deaktivieren der einzelnen Einträge in Tabelle über einen Klick/Touch auf die Zeile. Istwerte werden rein informativ dargestellt.

      In VIS wird ein html Widget für die Tabelle verwendet. Für die Sollwert Vorgabe kann nach eigenem Geschmack ein Widget genutzt werden. Sollwert Vorgabe sollte in das neue State "SetValue" geschrieben werden.
      Ist das State "DeviceList" kann die Reihenfolge innerhalb der Tabelle manipuliert werden. Hier einfach Geräte untereinander tauschen, wenn gewünscht.

      Viel Spaß

      ControlAll.zip

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

        @GiuseppeS

        Nur zur Info :
        Schöne Idee , aber ..... da würde z.B. bei vielen gleichzeitigen Befehlen die CCU Homematic (Raspberrymatic ) der DutyCycle explodieren . bzw. die Befehle sich im Sendeprotokoll überschneiden .

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

          @Glasfaser
          Okay, da hast du recht. Bei 7 Rollläden über WLAN habe ich keine Probleme. Aber andere Protokolle sind anfälliger. Allerdings, wenn der Bedarf der allgemeinen Nutzung besteht:
          Die Sollwerte der einzelnen Geräte werden ja innerhalb einer Schleife im Skript abgearbeitet; eine einstellbare Zeitverzögerung würde das Problem beheben. So wie es beim Scene Adapter auch möglich ist.

          Das gute ist: hier ist sehr viel Recycling von der Zeitsteuerung drin. War in 2/3 Stündchen erledigt 😁

          1 Reply Last reply Reply Quote 0
          • M
            micklafisch last edited by

            Hallo, ich bin gerade dabei das ganze von der Version 15.09.2019 auf die aktuelle Version umzustellen (im Grunde aufgrund der unzähligen Anpassungen und Änderungen einmal das alte bisherige umbenennen und einmal komplett neuer Import aller Anhänge und Anpassung der Variablen und meiner VIS).

            Was ich nun aufgrund der "oneclick" bzw. "doubleclick"-Aktion nicht mehr schaffe ist, dass mein Edit-Popup ein anders ist. Die Variable "DlgWidget" hab ich geändert (Widget ist materialdesign - dialog view). Ich habe das Widget permanent angezeigt. Bei der Auswahl eines Timers kann ich damit auch die View korrekt öffnen, aber bei einem doppelklick öffnet er weiterhin das alte Widget "jqui container button".

            Woran kann das noch hängen?

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

              @micklafisch

              Die Zuweisung zu diesem Button ( Dialog View ) erfolgt über diesen Eintrag :

              // Eine Aufzählung für States der Bedingungen:
              var deviceCond = "enum.functions.timerconditions";
              
              // Widget-Nummer für Widget "EDIT" (View in Dialog)
              var DlgWidget = 'w00561'
              
              
              /* ####################################################################### */
              

              ob Click oder Doppelclick wird im Script die Variable DlgWidget angesprochen .
              Hast du dort die Widgetnummer richtig eingetragen von deinem Widget !?

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

                @Glasfaser
                ja wie geschrieben hab ich bereits die Variable "DlgWidget" editiert.

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

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

                  öffnet er weiterhin das alte Widget "jqui container button".

                  Wenn er dieses öffnet , dann muß diese Widget in deiner View vorhanden sein , sonst würde es nicht dazu kommen einen Geisterview zu öffnen !

                  Schau mal in die Liste von den Widgets in deiner View !?

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

                    @Glasfaser
                    hab was gefunden, durch falschen z-index war der originale Button im Hintergrund. Hab ihn jetzt gelöscht, jetzt geht das per Klick auf die Uhrzeit gar nicht mehr. Im Skript steht die korrekte WidgetID für das DialogView.

                    Manuel auf Edit kann ich auch klicken nur nicht per Klick auf die Uhrzeit 😕

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

                      @micklafisch
                      Was hast du grundsätzlich eingestellt: onclick oder doubleclick?

                      Probiere mal Doppel-Klick auf die Uhrzeit. Evtl ist es nur ein Konfig-Thema.

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

                        @GiuseppeS
                        hab oneclick eingestellt. Testweise jetzt auf doublecklick: da passiert ebenfalls nichts. Die Buttons "add" und "del" werden eingeblendet - er merkt quasi schon was ich mache aber das Popup kommt nicht.

                        Wenn ich manuel auf Edit klicke, dann hat er im Popup die passenden Werte eingelesen.

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

                          @GiuseppeS

                          @micklafisch sagte in [Vorlage] Variable Zeitsteuerung mit VIS Editor:
                          Widget ist materialdesign - dialog view

                          Kann das sein , das dieses Widget anders getriggert werden muß .

                          if (btnSource == "dev"){ // Edit-Dialog öffnen bei Doppelklick Geräte-Button
                                      setState("vis.0.control.data"/*Data for control vis*/, DlgWidget);
                                      setState('vis.0.control.instance'/*Control vis*/, "FFFFFFFF");
                                      setState("vis.0.control.command"/*Command for vis*/, 'dialog');
                                      delFocusOnTimer(false); // Auswahl des Timers nicht automatisch zurücksetzen!
                          

                          Kann gerade nicht testen ... bin auf der Arbeit .

                          @micklafisch

                          Wenn ich manuel auf Edit klicke, dann hat er im Popup die passenden Werte eingelesen.

                          Wie meinst du das -- Popup ist leer und dann wird es gefüllt

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

                            @Glasfaser

                            Wenn ich manuel auf Edit klicke, dann hat er im Popup die passenden Werte eingelesen.

                            Wie meinst du das -- Popup ist leer und dann wird es gefüllt

                            Genau, das Popup wird mit den entsprechenden Werten in den Dropdowns gefüllt und z.B. die Bedingungen zum gewählten Datensatz korrekt eingelesen.

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

                              @micklafisch
                              Ok. Kannst du vorübergehend bitte das original Widget verwenden und dessen Widget Nummer

                              Kannst du bitte das Standard Widget inkl realer PopUp Funktionalität verwenden, um zu sehen ob das funktioniert wie es soll?
                              Im Nachgang können wir über deine individuellen Anpassungen diskutieren.

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

                                @GiuseppeS
                                ja, damit klappt alles wie vorgesehen.

                                "jqui container button" öffnet das popup korrekt (widget-id im skript hinterlegt) - wenn ich jetzt den Button gegen "materialdesign dialog view" tausche und im Skript die Widget-ID ändere funktioniert es nicht mehr.

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

                                  @micklafisch
                                  Ok, dann ist das schonmal ein guter Hinweis.

                                  Du hattest geschrieben, dass dein Widget dauerhaft angezeigt wird. Bedeutet es, dass das von dir verwendete Widget nicht als PopUp fungiert, sondern immer dargestellt wird?
                                  Dann könntest du die PopUp Funktionalität komplett entfernen.
                                  Falls du aber eine PopUp Funktion nutzen möchtest, dafür aber das Material Design Widget vorsiehst,dann kann es sein, dass der Aufruf (wie von @Glasfaser erwähnt) anders aussehen muss.

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

                                    @GiuseppeS
                                    achso, nein ich meinte das Widget "Edit" (quasi den Button der früher eingeblendet war und jetzt durch den oneclick arbeitslos wurde) lasse ich mir zum testen dauerhaft anzeigen.

                                    Das Popup selbst soll auch als Popup bleiben - eben nicht mit jqui sondern mit materialdesign.

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

                                      @micklafisch
                                      @GiuseppeS
                                      Kann erst heute Abend es mit dem Widget testen ... warum es so ist !?

                                      Gegenfrage ... warum willst du denn den "materialdesign dialog view" nutzen , hat das ein Hintergrund !?

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

                                        @micklafisch
                                        Das mit dem dauerhaft angezeigten Edit Button macht kein Sinn. Nur wenn du mit Klick/Doppeklick das PopUp öffnest, werden Daten hinterlegt. Ein dauerhaft angezeigter Button könnte dazu verleiten, darüber das PopUp zu öffnen, dort werden dann Werte ohne Timer-Bezug angezeigt. Wenn dann das PopUp mit "Übernehmen/Ok" geschlossen wird, führt es zu Fehlern.

                                        Material Design Widgets habe ich nicht installiert. Ich empfehle, das Öffnen des PopUps separat in einem Skript zu testen. Diese Befehle müssten dann im Timer Skript angegeben werden.

                                        Da das PopUp nur für das Editieren verwendet wird, wäre es eine Überlegung Wert das Standard Widget zu nutzen.

                                        Evtl kann @Glasfaser unterstützen, wenn er auch das Widget Paket nutzt.

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

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

                                          könnte dazu verleiten, darüber das PopUp zu öffnen, dort werden dann Werte ohne Timer-Bezug angezeigt.

                                          .... und das wird es sein !

                                          Habe Material Design ....

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

                                            @Glasfaser

                                            Gegenfrage ... warum willst du denn den "materialdesign dialog view" nutzen , hat das ein Hintergrund !?

                                            Im Grund hätte ich gerne alles aus einem Guss (optisch wie technisch) - mit dem materialdesign kann ich persönlich mehr/angenehmer konfigurieren und habe z.B. auch nicht das olle "x" zum schließen rechts oben im Popup.

                                            @GiuseppeS
                                            das dauerhafte anzeigen war wie gesagt nur zum testen/fehlersuchen, da ich nicht nachvollziehen kann warum das Popup nicht beim klicken sich öffnet. Anfangs dachte ich noch es wäre ein fehlerhafter Viewbezug.

                                            Ich will nicht wirklich für immer den Edit Button sehen, war alles nur zum analysieren. Die neue Version mit dem klick auf den Datensatz ist schon wirklich super.

                                            Dachte ich kann "mal eben" die View anpassen, aber bevor das überhand nimmt werde ich doch das jqui widget verwenden und dabei belassen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            628
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

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