Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    UNSOLVED [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit

    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      weimaraner last edited by weimaraner

      Hallo,
      villeicht kann mir jemand kurz auf die Sprünge helfen. Ich möchte, daß nach einer bestimmten Zeit Inaktivität meine Vis-Anzeige wieder auf den Hauptview wechselt. Dazu habe ich diesen Beitrag gefunden: https://forum.iobroker.net/topic/2175/gelöst-zurück-zum-homeview/14
      Irgendwie blicke ich auf Grund der neuen Formatierung aber nicht mehr durch, wer was zitiert und sehe nicht, was nun zu tun ist.

      Ich denke, daß ich ein widget auf jede einzelne view packen muß, welches eine Toucheingabe registriert.

      Dann muß ich noch ein skript laufen lassen, welches das auswertet bzw. zur Hauptview zurückschaltet. Welches Skript ist das und wo passe ich es an?

      Welches die "Hauptview" ist lege ich doch mit default fest, oder?
      ![Bild Text](vis Hauptseite.JPG Bild Link)

      Danke und Grüße Andreas

      1 Reply Last reply Reply Quote 0
      • S
        Supermicha last edited by

        Hallo, hilft zwar nicht direkt bei deinem Problem aber vielleicht trotzdem interessant.

        Ich habe mein VIS anders aufgebaut... da ich immer Probleme hatte, das das Menü zuverlässig auf allen Seiten angezeigt wurde...

        Ich habe eine einzelne "Hauptseite" mit Menüs und allen statischen Elementen und wechsel die Inhalte mit einem View-in-Widget-Widget... da die Anzeige dort über einen Datenpunkt gesteuert wird, kann ich dort ganz einfach auswerten, wann der Wert zuletzt geändert wurde und setze ihn nach 2 Minuten Inaktivität wieder auf den Wert für meine Standardansicht zurück...

        1 Reply Last reply Reply Quote 0
        • W
          weimaraner last edited by

          ☺

          1 Reply Last reply Reply Quote 0
          • B
            Balu1973 last edited by

            Hallo Andreas,

            wie man auf Inaktivität prüft kann ich Dir nicht sagen. Ich schalte meine Views immer nach einer bestimmten Zeit zurück.
            Dazu nutze ich folgendes Script:

            on(
                {id: "vis.0.control.data"} ,
                    function (obj){
                       // Nach 60 Sekunden, zeige wieder index View
                       setTimeout(function () {
                                setState("vis.0.control.command", '{"instance": "FFFFFFFF", "command": "changeView", "data": "index"}');
                       }, 300000);
            });
            

            Zur Erklärung:
            Ich prüfe mit den "on" Befehl ob sich die Variable vis.0.control.data geändert hat. Dort wird gespeichert welcher View gerade angezeigt wird.
            Nach 60 Sekunden wird dann mit dem setState Befehl die Variable vis.0.control.command neu gesetzt. Dabei bezieht sich die "instance" mit FFFFFF auf alle Instanzen/Geräte auf denen eine Visualisierung läuft. Der Befehl "command" mit "changeView" ist denke ich klar. Mit "data" wird dann der anzuzeigende View genannt. Bei mir "index" Bei Dir "Flur_Hauptseite".

            Grüße,
            Balu

            1 Reply Last reply Reply Quote 2
            • W
              weimaraner last edited by

              @Balu1973
              Danke schön. Das werde ich mal probieren. Ich muß mir erst nochmal anschauen, wad das mit den Instanzen, hier den FFFFFF auf sich hat. So ganz ist mir das noch nicht klar. Wo stellt man eigentlich die 60 Sekunden ein? Ich würde die Zeit gern höher setzen.
              Sorry für die doofen Fragen. Ich bin Skript-Analphabet. 😉
              Grüße Andreas

              Peoples 1 Reply Last reply Reply Quote 0
              • Peoples
                Peoples @weimaraner last edited by

                @weimaraner sagte in [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit:

                @Balu1973
                Danke schön. Das werde ich mal probieren. Ich muß mir erst nochmal anschauen, wad das mit den Instanzen, hier den FFFFFF auf sich hat.....

                Wenn du mit einem Gerät eine Vis-View betrachtest hat dieses Gerät im Normalfall eine "vis-Instanz" die du abfragen, auswerten oder was auch immer könntest. Wenn du das FFFFFF nutzt wechseln alle Instanzen auf denen Vis läuft zurück auf die eingestellte Seite.

                Die Zeit änderst du in dem Codeschnipsel wenn du die 300000 änderst da die Zeit hier in Millisekunden angegeben wird.

                1 Reply Last reply Reply Quote 2
                • B
                  Balu1973 last edited by

                  Da war mir eine Minute wohl auch zu kurz. 300000ms sind ja 5 Minuten und nicht 60s. Da hab ich meinen Kommentar offenbar nicht angepasst.

                  Grüße,
                  Balu

                  W Negalein 2 Replies Last reply Reply Quote 0
                  • W
                    weimaraner @Balu1973 last edited by

                    @Balu1973
                    Alles klar. 😂 ich konnte mir denken, daß die 300000 was damit zu tun haben, konnte mir aber die "Umrechnung" in 60 Sekunden nicht erschließen.
                    Danke dir.
                    Grüße Andreas

                    1 Reply Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator @Balu1973 last edited by Negalein

                      @Balu1973 sagte in [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit:

                      Da war mir eine Minute wohl auch zu kurz. 300000ms sind ja 5 Minuten und nicht 60s. Da hab ich meinen Kommentar offenbar nicht angepasst.

                      Hallo Balu!

                      Danke für dein Script.
                      Ich hab es für mich angepasst, aber er schaltet mal nach 15s, mal nach 7s, 1m, usw. ganz willkürlich zurück.

                      Eingestellt hätte ich 300000ms, also 5 Minuten.

                      An was könnte das liegen?

                      on(
                          {id: "vis.0.control.data"} ,
                              function (obj){
                                 // Nach 5 Minuten, zeige wieder index View
                                 setTimeout(function () {
                                          setState("vis.0.control.command", '{"instance": "FFFFFFFF", "command": "changeView", "data": "001_Home"}');
                                 }, 300000);
                      });
                      

                      Ich habe gerade bemerkt, dass sich vis.0.control.data auch dann ändert und einen neuen Wert schreibt, wenn die View auch schon auf 001_Home steht.

                      Kann man das im VIS-Editor auch irgendwo einstellen?

                      1 Reply Last reply Reply Quote 0
                      • S
                        stimezo Forum Testing last edited by

                        @Negalein said in [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit:

                        000

                        ungetestet, aber setze doch beim Trigger die Bedingung das der Wert nicht dem alten entspricht.

                        Gruß
                        Christian

                        var timeout;
                        
                        on(
                            {id: "vis.0.control.data", change: "ne"} ,
                                function (obj){
                                   // Nach 5 Minuten, zeige wieder index View
                            (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                            timeout = setTimeout(function () {
                              setState("vis.0.control.command", '{"instance": "FFFFFFFF", "command": "changeView", "data": "001_Home"}');
                            }, 300000);
                            
                        
                        });
                        
                        Negalein Nashra 2 Replies Last reply Reply Quote 2
                        • Negalein
                          Negalein Global Moderator @stimezo last edited by

                          @stimezo sagte in [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit:

                          ungetestet, aber setze doch beim Trigger die Bedingung das der Wert nicht dem alten entspricht.

                          Danke, funktioniert!
                          Hab es mehrmals getestet. Schaltet jetzt brav nach 5 Minuten zurück!

                          1 Reply Last reply Reply Quote 0
                          • Nashra
                            Nashra Most Active Forum Testing @stimezo last edited by

                            @stimezo sagte in [Frage] Skript zum Wechsel auf Hauptview nach bestimmter Zeit:

                            ungetestet, aber setze doch beim Trigger die Bedingung das der Wert nicht dem alten entspricht.

                            Gruß
                            Christian

                            Habe es jetzt auch drin und funktioniert 1A, vielen Dank 👍

                            1 Reply Last reply Reply Quote 0
                            • A
                              Andre R. last edited by Andre R.

                              ich hab dieses Script einfach bei der Home view in Scripte eingefügt

                              function checkHome() {
                              if (vis.actualView !== 'Start') {
                              if (window.____timeout) clearTimeout(window.____timeout);
                              window.____timeout = setTimeout(function () {
                              window.____timeout = null;
                              vis.changeView('Home');
                              }, 60000);
                              }
                              }
                              if (!vis.editMode && !window.___installed) {
                              window.___installed = true;
                              $(document).on('click touchstart',checkHome);
                              checkHome(); // start timer
                              }

                              1 Reply Last reply Reply Quote 0
                              • W
                                weimaraner last edited by weimaraner

                                @Andre-R
                                Erfüllt das dann den gleichen Zweck wie das skript von @stimezo und ist nur ein anderer Weg oder ist hier noch eine weitere Funktion drin? Ich bin leider skrip-Analphabet und kann mit dem Code nichts anfangen. Muß ich dann nur in Zeile 6 "Home" durch meinen view-Namen ersetzen?
                                Danke und Grüße
                                Andreas

                                1 Reply Last reply Reply Quote 0
                                • liv-in-sky
                                  liv-in-sky last edited by

                                  einmal ein beispiel mit blockly - falls dir das besser liegt - kommt eine whatsapp - wird die vis umgeschaltet - habe ich diese am handy oder in der vis gelesen wird wieder zurückgeschalten

                                  whatsappcheck ist der steuerpunkt für das ganze

                                  Image 4.png

                                  W 1 Reply Last reply Reply Quote 2
                                  • W
                                    weimaraner @liv-in-sky last edited by

                                    @liv-in-sky Ah, cool! Blockly ist eher "lesbar" für mich. Danke schön!

                                    1 Reply Last reply Reply Quote 0
                                    • liv-in-sky
                                      liv-in-sky last edited by

                                      war der post davor - der mich dazu animiert hat 🙂

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      892
                                      Online

                                      31.9k
                                      Users

                                      80.1k
                                      Topics

                                      1.3m
                                      Posts

                                      vis
                                      9
                                      17
                                      2497
                                      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