Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Automatischer View-Wechsel u. Slideshow

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    260

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

[Vorlage] Automatischer View-Wechsel u. Slideshow

Scheduled Pinned Locked Moved JavaScript
143 Posts 22 Posters 25.0k Views 48 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Andre R.
    wrote on last edited by
    #51

    Bei deinem stürzt die VIS ab

    GlasfaserG 1 Reply Last reply
    0
    • A Andre R.

      Bei deinem stürzt die VIS ab

      GlasfaserG Offline
      GlasfaserG Offline
      Glasfaser
      wrote on last edited by Glasfaser
      #52

      @Andre-R

      Sehr komisch ?!

      Nimm mal das:

      // *******************************************************************************************************
      
      
      
      //
      
      
      
      // Seitenwechsel-Script
      
      
      
      // Autor: Peoples
      
      
      
      //
      
      
      
      //
      
      
      
      // Funktionen:  1. Bei Viewwechsel wird geprüft ob eine andere View als Home gewählt ist
      
      
      
      //                 wenn das der Fall ist wird ein Timer gesetzt nach dessen Ablauf wieder zurück
      
      
      
      //                 auf Home gewechselt wird.
      
      
      
      //              2. Wenn die Alarmanlage eingeschalten ist wird die PinEingabeView angezeigt.
      
      
      
      //              3. Bei SystemView läuft kein Timer
      
      
      
      //
      
      
      
      //
      
      
      
      // v2.0.0 - 30.09.2018  Neue Version - Grundaufbau geändert
      
      
      
      // v2.0.1 - 09.03.2019  Slideshow aller gewünschen Views integriert
      
      
      
      // v2.0.2 - 23.03.2019  Zusatzfunktion zum steuern der Sonderdatenpunkte eingebaut
      
      
      
      // v2.0.3 - 28.03.2019  Zahlenwerte durch parseInt konvertiert
      
      
      
      // *******************************************************************************************************
      
      
      
      
      
      
      
      // -----------------------------------------------------------------------------
      
      
      
      // allgemeine Variablen
      
      
      
      // -----------------------------------------------------------------------------
      
      
      
      var logging = true;                                        // Logging on/off
      
      
      
      var instanz = 'javascript.0';   instanz = instanz + '.';    // 
      
      
      
                                                                 //
      
      
      
      var pfad0 =   'System.Iobroker';      pfad0 = pfad0 + '.';  // Pfad innerhalb der Instanz 
      
      
      
      var timerTout;
      
      
      
      var timerAutoSV;
      
      
      
      var DefaultView = 'Home';                                   // Standard-View
      
      
      
      
      
      // Aus Datenpunkt vis.0.control.data entnehmen 
      
      
      
      // der Teil vor dem Slash ist der Projektname:
      
      
      
      // "Wandtablet/Home"
      
      
      
      var project = "main";     project = project + '/';    // Name des Vis-Projekts
      
      
      
      
      
      
      
      var DisplayTime = '25';    // Darstellungszeit der Views bei Autowechsel
      
      
      
      var startView = 1;  // Startview bei Autowechsel
      
      
      
      
      
      
      
      //Alle vorhandenen Views
      
      
      
      var VisViews = [
      
      
      
         
      
      
      
             /* View Name */                  /* Anzeigezeit */   /* In Slideshow anzeigen? */
      
      
      
      
      
         {'view':'Spotify',                      'SWSec':60,             'ShowIAV':'yes'},
      
         
      
         {'view':'Musik',                        'SWSec':60,             'ShowIAV':'yes'},
      
         
      
         {'view':'Sonos_Bad',                      'SWSec':60,              'ShowIAV':'yes'},
      
      
      
         {'view':'Sonos_Schlaf',                   'SWSec':60,            'ShowIAV':'yes'},
      
       
      
         {'view':'3_NAS_stats',                           'SWSec':0,            'ShowIAV':'no'}
      
      
      
      ];
      
      
      
      // -----------------------------------------------------------------------------
      
      
      
      // Objekte
      
      
      
      // -----------------------------------------------------------------------------
      
      
      
      // Objekt für Alle Automatischen Abläufe
      
      
      
      createState(pfad0 + 'Timer_View_Switch',  {def: '0',type: 'number',name: 'Timer für Wechsel auf DefaultView'});
      
      
      
      createState(pfad0 + 'Auto_Switch_View',  {def: 'true',type: 'boolean',name: 'Alle Views durchlaufen lassen'});
      
      
      
      
      
      
      
      
      
      
      
      if(logging)log("Total "+Object.keys(VisViews).length+" entries");
      
      
      
      
      
      
      
      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      
      
      
      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      
      
      
      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      
      
      
      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      
      
      
      
      
      
      
      // #############################################################################
      
      
      
      // #                                                                           #
      
      
      
      // #  Funktion zum automatischen Viewwechsel nach Timerablauf                  #
      
      
      
      // #                                                                           #
      
      
      
      // #############################################################################
      
      
      
      
      
      
      
      function switchToHomeView() {
      
      
      
             timerTout = setTimeout(function () {
      
      
      
                 var timer = parseInt(getState(pfad0 + 'Timer_View_Switch').val, 10);
      
      
      
                 if (timer > 1) {
      
      
      
                     setState(pfad0 + 'Timer_View_Switch',timer - 1);
      
      
      
                     switchToHomeView();
      
      
      
                 }
      
      
      
                 else{
      
      
      
                     setState(pfad0 + 'Timer_View_Switch', 0);
      
      
      
                     setState('vis.0.control.instance', 'FFFFFFFF'); //getState("vis.0.control.instance").val/*Control vis*/);
      
      
      
                     setState('vis.0.control.data', project + DefaultView);
      
      
      
                     setState('vis.0.control.command', 'changeView');
      
      
      
                 }
      
      
      
             }, 1000);
      
      
      
      }
      
      
      
      
      
      
      
      // #############################################################################
      
      
      
      // #                                                                           #
      
      
      
      // #  Funktion zum automatisch umlaufenden Viewwechsel                         #
      
      
      
      // #                                                                           #
      
      
      
      // #############################################################################
      
      
      
      
      
      
      
      function autoSwitchView(dspTime,i) {
      
      
      
             if(i === '') i = 0;
      
      
      
             log(i);
      
      
      
             if(i < Object.keys(VisViews).length){
      
      
      
                 if(VisViews[i].ShowIAV == 'yes'){
      
      
      
                     timerAutoSV = setTimeout(function () {
      
      
      
                         var timer = parseInt(getState(pfad0 + 'Timer_View_Switch').val, 10);
      
      
      
                         if (timer > 1) {
      
      
      
                             setState(pfad0 + 'Timer_View_Switch', timer - 1);
      
      
      
                             autoSwitchView(dspTime, i);
      
      
      
                         }
      
      
      
                         else{
      
      
      
                                 setState(pfad0 + 'Timer_View_Switch', 0);
      
      
      
                                 if(getState(pfad0 + 'Auto_Switch_View').val === true) switchView(project+VisViews[i].view);
      
      
      
                                 startAutoSwitchView(dspTime,(i+1));
      
      
      
                         }
      
      
      
                     }, 1000);
      
      
      
                 }
      
      
      
                 else{
      
      
      
                     startAutoSwitchView(dspTime,(i+1));
      
      
      
                 }
      
      
      
             }
      
      
      
             else{
      
      
      
                startAutoSwitchView(dspTime,startView); 
      
      
      
             }
      
      
      
      }
      
      
      
      
      
      
      
      // #############################################################################
      
      
      
      // #                                                                           #
      
      
      
      // #  Funktion zum Starten und Stoppen des automatischen Viewwechsel           #
      
      
      
      // #                                                                           #
      
      
      
      // #############################################################################
      
      
      
      function startAutoSwitchView(dspTime,i){
      
      
      
         if(getState(pfad0 + 'Auto_Switch_View').val === true){
      
      
      
             if(dspTime !== ''){
      
      
      
                 setState(pfad0 + 'Timer_View_Switch',parseInt(dspTime, 10));
      
      
      
             }
      
      
      
             else{
      
      
      
                 setState(pfad0 + 'Timer_View_Switch',15);
      
      
      
             }
      
      
      
             autoSwitchView(dspTime,i);
      
      
      
         } 
      
      
      
         else{
      
      
      
             if(timerTout) clearTimeout(timerTout);
      
      
      
             switchView(project + DefaultView);
      
      
      
             setStateDelayed(pfad0 + 'Timer_View_Switch',0,2000);
      
      
      
         }
      
      
      
      }
      
      
      
      //
      
      
      
      // Beobachten des View Datenpunktes
      
      
      
      on({id:"javascript.0.System.Iobroker.Auto_Switch_View", change: "ne"}, function (dp) {
      
      
      
         startAutoSwitchView(DisplayTime,startView);
      
      
      
      });
      
      
      
      
      
      
      
      // #############################################################################
      
      
      
      // #                                                                           #
      
      
      
      // #  Funktion zum Scriptbasierten Viewwechsel                                 #
      
      
      
      // #                                                                           #
      
      
      
      // #############################################################################
      
      
      
      
      
      
      
      function switchView(view){
      
      
      
         setState('vis.0.control.instance', 'FFFFFFFF');
      
      
      
         setState('vis.0.control.data', view);
      
      
      
         setState('vis.0.control.command', 'changeView');
      
      
      
      }
      
      
      
      
      
      
      
      // #############################################################################
      
      
      
      // #                                                                           #
      
      
      
      // #  Funktion zum Prüfen der Wunsch View und zum auslesen der Darstellzeit    #
      
      
      
      // #                                                                           #
      
      
      
      // #############################################################################
      
      
      
      
      
      
      
      function checkView(wishView){
      
      
      
         if(logging) log('View to check:'+wishView);
      
      
      
         if(getState(pfad0 + 'Auto_Switch_View').val === false ){
      
      
      
             for(var i = 0; i < Object.keys(VisViews).length; i++) {  
      
      
      
                 if(project+VisViews[i].view == wishView) {
      
      
      
                     if(logging) log('View found in:' + i);
      
      
      
                     if(timerTout) clearTimeout(timerTout);
      
      
      
                     setState(pfad0 + 'Timer_View_Switch', 0);
      
      
      
                     if(VisViews[i].SWSec !== 0){
      
      
      
                         setState(pfad0 + 'Timer_View_Switch', VisViews[i].SWSec);
      
      
      
                         switchToHomeView();
      
      
      
                     }
      
      
      
                 }
      
      
      
             }
      
      
      
         }
      
      
      
      }
      
      
      
      
      
      
      
      // Beobachten des View Datenpunktes für Auswertung
      
      
      
      on({id:"vis.0.control.data", change: "ne"}, function (dp) {
      
      
      
         checkView(dp.state.val);
      
      
      
      });
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      //Bei Bewegung auf Kamerabild umschalten
      
      
      
      on({id:"hm-rpc.0.xxxxxxxxx.1.MOTION"/*Bewegungsmelder.xxxxxxxxxx:1.MOTION*/, change: 'any'}, function (dp) {
      
      
      
          if(getState("javascript.0.Alarmanlage.Status.Status").val != 2 || getState("javascript.0.Alarmanlage.Status.Status").val != '2'){
      
      
      
             checkView('Kamera_Garage');
      
      
      
          }
      
      
      
          else{
      
      
      
             checkView('Alarmanlage_code');
      
      
      
         }
      
      
      
      });
      
      
      

      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

      1 Reply Last reply
      0
      • A Offline
        A Offline
        Andre R.
        wrote on last edited by
        #53

        stürzt nicht mehr ab. komisch ist das du die NAS_Stats im Script hast er zeigt mir aber die Proxmox_Stats

        GlasfaserG 1 Reply Last reply
        0
        • A Andre R.

          stürzt nicht mehr ab. komisch ist das du die NAS_Stats im Script hast er zeigt mir aber die Proxmox_Stats

          GlasfaserG Offline
          GlasfaserG Offline
          Glasfaser
          wrote on last edited by
          #54

          @Andre-R

          Das erste war meins was auf deine Daten geändert wurde , komisch das es bei dir abschmiert.
          Ich habe nun jetzt dein Script genommen und mit den vorhandenen Views gekürzt .
          Irgendwo liegt da der Fehler bei dir, mit den Viewnamen .

          Mal was anderes, ich hoffe Du hast nur ein View als Default angegeben.

          44444444444444444444444444444.JPG

          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

          1 Reply Last reply
          0
          • A Offline
            A Offline
            Andre R.
            wrote on last edited by
            #55

            ne, was passiert denn wenn man mehrere hat

            GlasfaserG 1 Reply Last reply
            0
            • A Andre R.

              ne, was passiert denn wenn man mehrere hat

              GlasfaserG Offline
              GlasfaserG Offline
              Glasfaser
              wrote on last edited by
              #56

              @Andre-R

              Bitte nur ein Default Startseite !!!!

              Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

              1 Reply Last reply
              0
              • A Offline
                A Offline
                Andre R.
                wrote on last edited by
                #57

                ok ändere ich

                GlasfaserG 1 Reply Last reply
                0
                • A Andre R.

                  ok ändere ich

                  GlasfaserG Offline
                  GlasfaserG Offline
                  Glasfaser
                  wrote on last edited by
                  #58

                  @Andre-R

                  Nur die " Home " auf Default setzten !!!!!!!!!!!!!!

                  Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    Andre R.
                    wrote on last edited by
                    #59

                    hab ich :+1: :+1: :+1:

                    GlasfaserG 1 Reply Last reply
                    0
                    • A Andre R.

                      hab ich :+1: :+1: :+1:

                      GlasfaserG Offline
                      GlasfaserG Offline
                      Glasfaser
                      wrote on last edited by
                      #60

                      @Andre-R

                      Und was heißen die Daumen ?
                      Läuft es jetzt !?

                      Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                      A 1 Reply Last reply
                      0
                      • GlasfaserG Glasfaser

                        @Andre-R

                        Und was heißen die Daumen ?
                        Läuft es jetzt !?

                        A Offline
                        A Offline
                        Andre R.
                        wrote on last edited by
                        #61

                        @Glasfaser ja läuft bis auf das Proxmox Fenster zeigt es mir die Sachen die auf "no" sind nicht mehr an. werde Die Proxmox View mal löschen und neu machen.

                        Danke nochmal für deine Geduld

                        GlasfaserG 1 Reply Last reply
                        0
                        • A Andre R.

                          @Glasfaser ja läuft bis auf das Proxmox Fenster zeigt es mir die Sachen die auf "no" sind nicht mehr an. werde Die Proxmox View mal löschen und neu machen.

                          Danke nochmal für deine Geduld

                          GlasfaserG Offline
                          GlasfaserG Offline
                          Glasfaser
                          wrote on last edited by Glasfaser
                          #62

                          @Andre-R
                          freut mich das es läuft …. war auch eine harte Nuss :anguished:

                          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                          1 Reply Last reply
                          1
                          • A Offline
                            A Offline
                            Andre R.
                            wrote on last edited by
                            #63

                            Hab leider schlechte Nachrichten, jetzt hats bei mir auch alle Views durcheinander gewürfelt. Schade

                            PeoplesP GlasfaserG 2 Replies Last reply
                            0
                            • A Andre R.

                              Hab leider schlechte Nachrichten, jetzt hats bei mir auch alle Views durcheinander gewürfelt. Schade

                              PeoplesP Offline
                              PeoplesP Offline
                              Peoples
                              wrote on last edited by Peoples
                              #64

                              @Andre-R
                              Was heißt "alle Views durcheinander gewürfelt"?
                              Die Views werden nicht in der richtigen Reihenfolge dargestellt?
                              Die Views werden übereinander gelegt?

                              Mein Script macht ja nichts anderes als die im Kopf eingetragenen "View-Namen" in den IoBroker Datenpunkt zu schreiben und dann den Befehl zum wechseln zu senden.

                              Was verwendest du denn für Hardware, Iobroker, Anzeigegerät?
                              Welche Version hat dein Vis und dein JS-Adapter.

                              Ich beantworte keine Fragen zu Themen via PN

                              1 Reply Last reply
                              0
                              • A Andre R.

                                Hab leider schlechte Nachrichten, jetzt hats bei mir auch alle Views durcheinander gewürfelt. Schade

                                GlasfaserG Offline
                                GlasfaserG Offline
                                Glasfaser
                                wrote on last edited by
                                #65

                                @Andre-R sagte in [Vorlage] Automatischer View-Wechsel u. Slideshow:

                                ....................... alle Views durcheinander gewürfelt. Schade

                                Das heißt :question:

                                Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                1 Reply Last reply
                                0
                                • A Offline
                                  A Offline
                                  Andre R.
                                  wrote on last edited by
                                  #66

                                  die views werden übereinander gelegt und Widgets nicht angezeigt.

                                  Ich habe einen Nuc mit Proxmox und IOBroker VM ein Samsung Tab 10.1 von 2014 und das Fire Tab 7"

                                  IOBroker 3.6.4
                                  VIS 1.2.0
                                  JS 4.1.14

                                  PeoplesP 1 Reply Last reply
                                  0
                                  • A Andre R.

                                    die views werden übereinander gelegt und Widgets nicht angezeigt.

                                    Ich habe einen Nuc mit Proxmox und IOBroker VM ein Samsung Tab 10.1 von 2014 und das Fire Tab 7"

                                    IOBroker 3.6.4
                                    VIS 1.2.0
                                    JS 4.1.14

                                    PeoplesP Offline
                                    PeoplesP Offline
                                    Peoples
                                    wrote on last edited by
                                    #67

                                    @Andre-R sagte in [Vorlage] Automatischer View-Wechsel u. Slideshow:

                                    die views werden übereinander gelegt und Widgets nicht angezeigt.

                                    Ich habe einen Nuc mit Proxmox und IOBroker VM ein Samsung Tab 10.1 von 2014 und das Fire Tab 7"

                                    IOBroker 3.6.4
                                    VIS 1.2.0
                                    JS 4.1.14

                                    Identisch zu mir bis auf das Tablet, An der Performace der Hardware kann es somit nicht liegen. Das Phänomen dass Iobroker die Views Übereinander legt hatten wir hier schon mal, wenn ich nicht irre war damals die Problemlösung den ganzen IoB einfach neu zu starten.
                                    Das Problem war damals schon dass ich das nicht replizieren kann, ich vermute jedoch dass es wohl am IoB selber liegt.

                                    Wenn du das noch nicht getan hast starte den IoB mal neu, ist ja dank Proxmox ein Kinderspiel.

                                    Ich beantworte keine Fragen zu Themen via PN

                                    1 Reply Last reply
                                    0
                                    • A Offline
                                      A Offline
                                      Andre R.
                                      wrote on last edited by
                                      #68

                                      werde ich probieren. kann ich denn die Vis sichern das ich nachher nicht wieder alles einstellen muss

                                      crunchipC 1 Reply Last reply
                                      0
                                      • A Andre R.

                                        werde ich probieren. kann ich denn die Vis sichern das ich nachher nicht wieder alles einstellen muss

                                        crunchipC Offline
                                        crunchipC Offline
                                        crunchip
                                        Forum Testing Most Active
                                        wrote on last edited by
                                        #69

                                        @Andre-R mach doch einfach direkt vorher nen snapshot

                                        umgestiegen von Proxmox auf Unraid

                                        1 Reply Last reply
                                        0
                                        • PeoplesP Offline
                                          PeoplesP Offline
                                          Peoples
                                          wrote on last edited by Peoples
                                          #70

                                          Alternativ backitup nutzen und das System sichern da ist vis mit dabei

                                          Ich beantworte keine Fragen zu Themen via PN

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          599

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe