Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Nach Timeout bestimmte View aufrufen

    NEWS

    • Amazon Alexa - ioBroker Skill läuft aus ?

    • Monatsrückblick – September 2025

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

    Nach Timeout bestimmte View aufrufen

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

      @pix:

      Hallo oberstel,

      das gab es hier schon mal: http://forum.iobroker.net/viewtopic.php … 123#p22037

      Habe ich auch in Benutzung und läuft sehr gut.

      Suchbegriffe für andere, die sowas in der Zukunft suchen: Timer VIS View Home :idea:

      Gruß

      Pix

      EDIT: Mit einem HTML Widget kannst du natürlich auch HTML-Code verwenden. Denke daran, die Viewbezeichnung der Zielview nach der Raute einzufügen (hier #Home):
      Hier wird nach 30s die Home-View geladen. Der oben verlinkte Code ist intelligenter und zählt die Zeit ab der letzten Eingabe. `

      Hallo pix!

      Also ich probier das jetzt seit gut zwei Stunden hin zu bekommen, aber leider :?

      Hab ein HTML Widget auf einem View. dort den HTML Code eingefügt, Pfad angepasst.

      Aber es tut sich nichts, egal was ich probiere. :?: :?: :?:

      1 Reply Last reply Reply Quote 0
      • P
        pix last edited by

        Hallo,

        hast du den Thread denn ganz gelesen?

        http://forum.iobroker.net/viewtopic.php … 123#p22138

        Importiere mal diese Widget

        [{"tpl":"tplHtml","data":{"visibility-cond":"==","visibility-val":1,
        "refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0,"html":
        " "},"style":{"left":"721px","top":"59px"},"widgetSet":"basic"}]
        

        auf eine View, die nach 10s weggeschaltet werden kann. Dann ändere im Widget noch DemoView auf den Namen der Zielview (zB Home)

        Dann neu laden und dann sollte, nachdem du auf diese View navigiert hast und 10s keine weitere Eingabe auf dieser View machst, der Viewwechsel auf die Zielvie starten.

        Pix

        1 Reply Last reply Reply Quote 0
        • bahnuhr
          bahnuhr Forum Testing Most Active last edited by

          Hallo,

          bei mir läuft ein einfaches Script:

          // View wechseln - alle 15 Min. 
          
          schedule("0,15,30,45 * * * *", function () {
              var Zeit1 = isTimeInRange('06:05:00', '23:05:00');
              if (Zeit1 === true) {
                  setState("vis.0.control.instance", 'FFFFFFFF');
                  setState("vis.0.control.data", 'Titel');
                  setState("vis.0.control.command", 'changeView');
                  log ("View auf 'Titel' gewechselt.");
              } else {
                  setState("vis.0.control.instance", 'FFFFFFFF');
                  setState("vis.0.control.data", 'Uhr');
                  setState("vis.0.control.command", 'changeView');
                  log ("View auf 'Uhr' gewechselt.");
              }
          });
          
          

          Erklärung:

          Nachts soll die View "Uhr" eingeblendet werden.

          Tagsüber "Titel"

          Und das Script "isTimeInRange" ist das Standard Script aus der iobroker Seite.

          Funktioniert seit Jahren korrekt.

          mfg

          1 Reply Last reply Reply Quote 0
          • P
            PapaChriLo last edited by

            @pix:

            Hallo,

            hast du den Thread denn ganz gelesen?

            http://forum.iobroker.net/viewtopic.php … 123#p22138

            Importiere mal diese Widget

            [{"tpl":"tplHtml","data":{"visibility-cond":"==","visibility-val":1,
            "refreshInterval":"0","gestures-offsetX":0,"gestures-offsetY":0,"html":
            " "},"style":{"left":"721px","top":"59px"},"widgetSet":"basic"}]
            

            auf eine View, die nach 10s weggeschaltet werden kann. Dann ändere im Widget noch DemoView auf den Namen der Zielview (zB Home)

            Dann neu laden und dann sollte, nachdem du auf diese View navigiert hast und 10s keine weitere Eingabe auf dieser View machst, der Viewwechsel auf die Zielvie starten.

            Pix `

            Danke funktioniert einwandfrei.

            1 Reply Last reply Reply Quote 0
            • P
              PapaChriLo last edited by

              @bahnuhr:

              Hallo,

              bei mir läuft ein einfaches Script:

              // View wechseln - alle 15 Min. 
              
              schedule("0,15,30,45 * * * *", function () {
                  var Zeit1 = isTimeInRange('06:05:00', '23:05:00');
                  if (Zeit1 === true) {
                      setState("vis.0.control.instance", 'FFFFFFFF');
                      setState("vis.0.control.data", 'Titel');
                      setState("vis.0.control.command", 'changeView');
                      log ("View auf 'Titel' gewechselt.");
                  } else {
                      setState("vis.0.control.instance", 'FFFFFFFF');
                      setState("vis.0.control.data", 'Uhr');
                      setState("vis.0.control.command", 'changeView');
                      log ("View auf 'Uhr' gewechselt.");
                  }
              });
              
              

              Erklärung:

              Nachts soll die View "Uhr" eingeblendet werden.

              Tagsüber "Titel"

              Und das Script "isTimeInRange" ist das Standard Script aus der iobroker Seite.

              Funktioniert seit Jahren korrekt.

              mfg `

              Hallo bahnuhr!

              Hab dein Script ausprobiert.

              Allerdings bekomme ich eine Fehlermeldung mit der ich nichts anfange

              11:53:32.438 [info] javascript.0 Stop script script.js.Auto_View_Wechsel

              11:53:37.910 [info] javascript.0 Start javascript script.js.Auto_View_Wechsel

              11:53:37.911 [info] javascript.0 script.js.Auto_View_Wechsel: registered 0 subscriptions and 1 schedule

              12:00:00.947 [error] javascript.0 at Object. (script.js.Auto_View_Wechsel:6:17)

              Kannst du mir weiterhelfen.

              Danke

              1 Reply Last reply Reply Quote 0
              • P
                pix last edited by

                Hallo,

                das Skript von Bahnuhr zeigt, wie man aus JavaScript die View wechseln kann. Allerdings nimmt das Skript keine Rücksicht auf die letzte Eingabe.

                Wenn man also um 14h44min45s ans Tablet tritt und etwas macht, schaltet trotzdem 15s später die View um. Das kann unter Umständen nerven.

                @PapaChriLo Hast du den Namen „Titel“ auf deinen Zielview Namen geändert?

                Pix

                1 Reply Last reply Reply Quote 0
                • P
                  PapaChriLo last edited by

                  @pix:

                  Hallo,

                  @PapaChriLo Hast du den Namen „Titel“ auf deinen Zielview Namen geändert?

                  Pix `

                  Ja hab ich.

                  1 Reply Last reply Reply Quote 0
                  • bahnuhr
                    bahnuhr Forum Testing Most Active last edited by

                    Hast du das Script von der iobroker Seite als global hinterlegt?

                    function currentDate() {
                        var d = new Date();
                        return new Date(d.getFullYear(), d.getMonth(), d.getDate());
                    }
                    function addTime(strTime) {
                        var time = strTime.split(':');
                        var d = currentDate();
                        d.setHours(time[0]);
                        d.setMinutes(time[1]);
                        d.setSeconds(time[2]);
                        return d;
                    }
                    function isTimeInRange(strLower, strUpper) {
                        var now = new Date();
                        var lower = addTime(strLower);
                        var upper = addTime(strUpper);
                        var inRange = false;
                        if (upper > lower) {
                            // opens and closes in same day
                            inRange = (now >= lower && now <= upper) ? true : false;
                        } else {
                            // closes in the following day
                            inRange = (now >= upper && now <= lower) ? false : true;
                        }
                        return inRange;
                    }
                    
                    

                    mfg

                    1 Reply Last reply Reply Quote 0
                    • P
                      PapaChriLo last edited by

                      Nein hab ich nicht werd's dann später mal ausprobieren.

                      Danke jedenfalls.

                      1 Reply Last reply Reply Quote 0
                      • P
                        PapaChriLo last edited by

                        @pix

                        Hab die Sache nun seit gestern am laufen.

                        Habe die Zeit von deinem Beispiel auf eine Minute verlängert.

                        Allerdings wird nicht berücksichtigt wenn ich im aktuellen View gerade etwas mache,

                        er wechselt jetzt immer nach einer Minute in das Home View auch wenn ich gerade etwas im aktuellen View mache.

                        Hab ich da noch was übersehen?

                        1 Reply Last reply Reply Quote 0
                        • P
                          pix last edited by

                          Zeig bitte mal dein Script

                          Pix

                          1 Reply Last reply Reply Quote 0
                          • P
                            PapaChriLo last edited by

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            562
                            Online

                            32.3k
                            Users

                            80.9k
                            Topics

                            1.3m
                            Posts

                            4
                            14
                            2062
                            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