Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. jarvis v2.2.0 - just another remarkable vis

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

jarvis v2.2.0 - just another remarkable vis

Geplant Angeheftet Gesperrt Verschoben Tester
jarvismaterialmaterial uimaterialdesignvisvisualisierungvisualization
6.1k Beiträge 316 Kommentatoren 4.2m Aufrufe 273 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • VukoV Vuko

    @Zefau wirklich coole Weiterentwicklung die Du da mit Jarvis hingelegt hast, vielen Dank dafür!

    Aktuell bin ich grad dabei meine VIS-basierte Visualisierung auf Jarvis umzubauen, d.h. ich hab viele meiner selbstgebauten VIS-Views (die meisten mit Materialdesign Widgets) über iFrame eingebunden.

    Aktuelle Beispiele:
    JarvisHome.jpg
    JarvisWohnzimmer.jpg

    Wofür ich bisher noch keine Lösung gefunden hab, ist die Skalierung der Rollladen Slider. Ich verwende Zwave2 und die Zwave-Aktoren haben alle eine Range von 0-99. Wenn man 100 hinschickt tun sie nix. Deshalb hab ich diese Geräete unter Datenpunkt-Eigenschaften mit {"min":0,"max":99} konfiguriert, damit funktionieren sie auch, allerdings erzeugt die Schrittweite (Anzahl Markierungen) 10 danach Kommazahlen bei der Beschriftung. Bei 0-100 stehen diese bei 10,20,30 usw.

    Aber eigentlich sind 0-100 genau 101 Werte, damit müsste der erste Marker bei 10,1, der zweite bei 20,2 usw. stehen. 0-99 hingegen wären genau 100 Werte. Würde man diese jetzt korrekt durch 10 dividieren wäre es 9, 19, 29 usw. Schaut auch nicht gut aus.

    Gibt es eine Möglichkeit 0-99 als 1-100 darzustellen, mit korrekten Unterteilern bei 10, 20, 30, usw? In den Datenpunkt müsste dann trotzdem 0-99 rein. Mir ist klar, dass ich das über ein Skript lösen könnte, dachte nur es gibt vielleicht eine Möglichkeit das über die JSON-Config schneller zu machen. Danke!

    T Offline
    T Offline
    Torrid
    schrieb am zuletzt editiert von
    #2226

    @Vuko
    könntest du uns noch ein paar Screenshots deiner Visu zeigen?
    Ich glaube da würde mir einiges von deinen Lösungen als Inspiration dienen:+1:

    VukoV 1 Antwort Letzte Antwort
    1
    • T Torrid

      @Vuko
      könntest du uns noch ein paar Screenshots deiner Visu zeigen?
      Ich glaube da würde mir einiges von deinen Lösungen als Inspiration dienen:+1:

      VukoV Offline
      VukoV Offline
      Vuko
      schrieb am zuletzt editiert von
      #2227

      @Torrid mehr gibts noch nicht auf Basis Jarvis ;-) , die VIS hab ich früher auf einer Seite untergebracht, da gabs noch zusätzlich ein Widget, das die Fensterzustände kompakt zusammenfasst und ein weiteres das den Betriebszustand der Haushaltsgeräte zusammenfasst. Ist aber alles work in progress, da ich aktuell zur Miete wohne und da nicht viel verändern kann, wir ziehen aber in ca. 1 Jahr in ein neues Haus und darauf bau ich grad die Visu hin. Alles was ich bisher automatisiert hab, hab ich in die Page Wohnzimmer reingepackt, da die Test-Zwave-Aktoren alle im Wohnzimmer eingebaut sind.

      Mein nächster Schritt ist mittels des Smart Control Adapters im Objekt-Tree unter der Test-Section alle zukünftigen Räume, Geräte, Messpunkte etc. anzulegen. Diese abstrahier ich dann über smartcontrol, was wiederum alle steuerbaren Geräte unter targetDevices accessible macht. Auf diese bau ich dann die Visualiserung auf. Dadurch kann ich quasi auf noch nicht vorhandene (aber im Plan geplante) Geräte meine Visu fertig bauen und muss dann bei der Übersiedlung nur noch die richtigen Geräte anlernen und in Smartcontrol austauschen. Die Visu bleibt komplett gleich.

      Wenn ich die weiteren Räume auf Jarvis-Basis hab stell ich sie nat. gerne hier rein.

      Was ich auch gerne machen kann ist, mehr Infos bereitstellen, wie ich die einzelnen Widgets gelöst hab und welche Features sie bieten...

      1 Antwort Letzte Antwort
      0
      • VukoV Vuko

        @Zefau wirklich coole Weiterentwicklung die Du da mit Jarvis hingelegt hast, vielen Dank dafür!

        Aktuell bin ich grad dabei meine VIS-basierte Visualisierung auf Jarvis umzubauen, d.h. ich hab viele meiner selbstgebauten VIS-Views (die meisten mit Materialdesign Widgets) über iFrame eingebunden.

        Aktuelle Beispiele:
        JarvisHome.jpg
        JarvisWohnzimmer.jpg

        Wofür ich bisher noch keine Lösung gefunden hab, ist die Skalierung der Rollladen Slider. Ich verwende Zwave2 und die Zwave-Aktoren haben alle eine Range von 0-99. Wenn man 100 hinschickt tun sie nix. Deshalb hab ich diese Geräete unter Datenpunkt-Eigenschaften mit {"min":0,"max":99} konfiguriert, damit funktionieren sie auch, allerdings erzeugt die Schrittweite (Anzahl Markierungen) 10 danach Kommazahlen bei der Beschriftung. Bei 0-100 stehen diese bei 10,20,30 usw.

        Aber eigentlich sind 0-100 genau 101 Werte, damit müsste der erste Marker bei 10,1, der zweite bei 20,2 usw. stehen. 0-99 hingegen wären genau 100 Werte. Würde man diese jetzt korrekt durch 10 dividieren wäre es 9, 19, 29 usw. Schaut auch nicht gut aus.

        Gibt es eine Möglichkeit 0-99 als 1-100 darzustellen, mit korrekten Unterteilern bei 10, 20, 30, usw? In den Datenpunkt müsste dann trotzdem 0-99 rein. Mir ist klar, dass ich das über ein Skript lösen könnte, dachte nur es gibt vielleicht eine Möglichkeit das über die JSON-Config schneller zu machen. Danke!

        Z Offline
        Z Offline
        Zuki
        schrieb am zuletzt editiert von
        #2228

        @Vuko
        Wirklich sehr schick.
        Wäre super wenn du vielleicht das Multiroom Audio Widget genauer präsentieren könntest :-)

        VukoV 1 Antwort Letzte Antwort
        0
        • Z Zuki

          @Vuko
          Wirklich sehr schick.
          Wäre super wenn du vielleicht das Multiroom Audio Widget genauer präsentieren könntest :-)

          VukoV Offline
          VukoV Offline
          Vuko
          schrieb am zuletzt editiert von
          #2229

          @Zuki gerne!

          Das Multiroom-Audio basiert auf jede Menge Amazon Echos, konkret 2 x Echo Studio, 2 x Echo Show und 2 x Echo Spot (die NSA freut sich über so viele Daten ;-) ).

          Die Lautsprecher sind in Multiroom-Gruppen zusammengefasst, die kriegen dann eine eigene Device-ID im Alexa-Adapter. In jeder dieser Gruppen gibt es eine eigene Player-Section. D.h. wenn zwei Gruppen existieren, deren Lautsprecher sich nicht überschneiden, kann man mit den Echos auch zwei unterschiedliche Wiedergaben fahren. Wenn eine Wiedergabe läuft und ein Lautsprecher in zwei Gruppen drinnen ist und man aktiviert die zweite Gruppe, stoppt die Wiedergabe der ersten Gruppe.

          Bei mir gibts aktuell folgende Gruppen:

          • Überall - is klar ;-)
          • Cockpit - ist ein einzelner Echo Show
          • Wohnzimmer - sind alle Echos im Erdgeschoss (2 x Studio, 1 x Show, 1 x Spot)
          • Büro - ist ein einzelner Echo Show
          • Heimkino - sind die beiden Studios in Heimkino-Konfig. Damit war ich nicht so zufrieden, deshalb derzeit deaktiviert

          MultiroomAudio.jpg

          Das Konzept ist einfach: Das Widget steuert immer den gerade ausgewählten Player und zeigt die Daten und den Fortschritt dieses Players an.

          Das mache ich über eigene Datenpunkte

          userdata_multiroom.jpg

          Die Datenpunkte beschreiben immer den Status des aktuellen Players, diesen wähle ich über die Buttons links aus.

          Dazu gibt es ein elendslanges Skript im Hintergrund (ein programmiertechnisches Desaster, weil ganz viel redundanter Code), das für jede Gruppe auf jeden relevanten Datenpunkt (Miniart Url, Playerstatus, Zufallswiedergabe etc) einen Listener anlegt und wenn der Player gerade aktiv ist, dann die Änderungen an die userdata-Datenpunkte weitergibt.

          Der Listener fürs Roomswitching

          var deviceID="Unknown Device ID";
          
          on({id: '0_userdata.0.multiroom.Alexa_Player'/*Alexa Player*/, change: "ne"}, function (obj) {
          
            var value = obj.state.val;
            var oldValue = obj.oldState.val;
          
            console.log("Player Value is: "+value)
          
            switch (value) {
                case 0: //Überall
                     deviceID = "yourDeviceId";
                     break;
                case 1: //Cockpit
                     deviceID = "yourDeviceId";
                     break;
                case 2: //Wohnzimmer
                     deviceID = "yourDeviceId";
                     break;
                case 3: //Büro
                     deviceID = "yourDeviceId";
                     break;
                case 4: //Heimkino
                     deviceID = "yourDeviceId";
                     break;
                default: 
                     break;
            }
          
            setState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/, deviceID);
          });
          

          Beispiele für die Eventlistener für die einzelnen Felder...

          // Miniart
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.miniArtUrl'/*current mini Art*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl'/*Alexa Player Actual MiniartUrl*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.imageURL'/*current mini Art*/).val);
           }
          
          });
          
          ..
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Percentage'/*Alexa Player Actual Percentage*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent').val);
           }
          
          });
          
          ...
          
          // Album
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum'/*current album*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Album', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum').val);
           }
          
          });
          
          ..
          
          // Artist
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist'/*current artist*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Artist', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist').val);
           }
          
          });
          
          ..
          
          // Title
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle'/*current title*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Title', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle').val);
           }
          
          });
          
          ..
          
          // Actual Playing
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentState'/*currentState*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Playing', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentState').val);
           }
          
          });
          
          ..
          
          // Actual Volume
          
          on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.volume','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
           
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId" &&
               getState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume').val != getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val) {
               setState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val);
           }
          
          });
          
          
          
          

          Wie man sieht muss man Listener für jede DeviceId, die beteiligt ist (YourDeviceId durch Deine jeweilige DeviceId ersetzen) anlegen, damit die Infos in die zentralen States übernommen werden.

          Für die Volumeregelung braucht es eine Reverseregelung, die nicht durch direkten Zugriff möglich ist:

          //Reverse Volume
          
          
          on({id: ['0_userdata.0.multiroom.Alexa_Player_Actual_Volume'], change: "ne"}, function (obj) {
          
           var value = obj.state.val;
           var oldValue = obj.oldState.val;
          
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                 setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
               }
               
           }
          
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                 setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
               }
               
           }
          
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                 setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
               }
               
           }
          
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                 setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
               }
               
           }
          
           if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
               if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                 setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
               }
               
           }
          
          });
          

          Für jede zu steuernde Device ID braucht es in dem Skript einen Eintrag.

          So nun zum Widget. Das Widget zeigt die meisten Datenpunkte direkt aus dem Player an indem einfach der Pfad zum Player-State manipuliert wird. Also z. B. alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause

          In der Leiste unten sind die wichtigsten Sender hinterlegt, sowie zwei Amazon Music Playlists. Durch Klick werden diese in der gerade selektierten Gruppe gestartet. Aktuell kann ich also nur diese Radiosender und die zwei Playlists über das Widget starten. Der Player zeigt aber natürlich auch alles was über die Alexa-App oder über Sprachsteuerung auf der jeweiligen Gruppe gestartet wurde.

          Als Startpunkt hier noch der Export des VIS-Views für das Widget:

          {
           "settings": {
             "style": {
               "background_class": ""
             },
             "theme": "redmond",
             "sizex": "",
             "sizey": "",
             "gridSize": "",
             "useBackground": false,
             "snapType": null
           },
           "widgets": {
             "e00001": {
               "tpl": "tplImage",
               "data": {
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "refreshInterval": "0",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "src": "{0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl}",
                 "stretch": false,
                 "refreshOnWakeUp": true,
                 "refreshOnViewChange": true,
                 "allowUserInteractions": false,
                 "refreshWithNoQuery": true
               },
               "style": {
                 "left": "31%",
                 "top": "0px",
                 "width": "69%",
                 "height": "150px",
                 "z-index": 0
               },
               "widgetSet": "basic"
             },
             "e00002": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s8514",
                 "image": "https://cdn-radiotime-logos.tunein.com/s8514q.png",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "-5px",
                 "top": "279px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00003": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s8007",
                 "image": "https://cdn-radiotime-logos.tunein.com/s8007q.png",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "40px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00004": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s253666",
                 "image": "https://cdn-profiles.tunein.com/s253666/images/logoq.png?t=1",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "85px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00005": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s296257",
                 "image": "https://cdn-profiles.tunein.com/s296257/images/logoq.png",
                 "iconHeight": "40",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "red",
                 "lockFilterGrayscale": "30",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1"
               },
               "style": {
                 "left": "130px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00006": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s8235",
                 "image": "https://cdn-radiotime-logos.tunein.com/s8235q.png",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "176px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00007": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "s9211",
                 "image": "https://cdn-profiles.tunein.com/s9211/images/logoq.png?t=155067",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "221px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px",
                 "z-index": 1
               },
               "widgetSet": "materialdesign"
             },
             "e00008": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "Nicole",
                 "image": "/vis.0/main/img/Nicole.png",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "266px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px"
               },
               "widgetSet": "materialdesign"
             },
             "e00009": {
               "tpl": "tplVis-materialdesign-Icon-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "vibrateOnMobilDevices": "50",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "Vuko",
                 "image": "/vis.0/main/img/Vuko.png",
                 "iconHeight": "40",
                 "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                 "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                 "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                 "autoLockAfter": "10",
                 "lockIconTop": "45",
                 "lockIconLeft": "55",
                 "lockIconSize": "20",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                 "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                 "lockBackgroundSizeFactor": "1",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "311px",
                 "top": "278px",
                 "width": "67px",
                 "height": "66px"
               },
               "widgetSet": "materialdesign"
             },
             "e00010": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlShuffle",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "raised",
                 "toggleType": "boolean",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "colorBgFalse": "#6b665e",
                 "colorBgTrue": "#b7a98b",
                 "image": "/icons-mfd-png/audio_shuffle.png",
                 "iconHeight": "50",
                 "labelWidth": "0",
                 "valueOff": "false",
                 "valueOn": "true",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "g_lock": false,
                 "autoLockAfter": "10",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "lockFilterGrayscale": "30",
                 "labelColorTrue": "",
                 "colorPress": "#b7a98b"
               },
               "style": {
                 "left": "77%",
                 "top": "160px",
                 "width": "22%",
                 "height": "40px",
                 "z-index": "20",
                 "position": ""
               },
               "widgetSet": "materialdesign"
             },
             "e00011": {
               "tpl": "tplVis-materialdesign-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlNext",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": true,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "unelevated",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "true",
                 "colorPress": "#b7a98b",
                 "image": "/icons-mfd-png/audio_ff.png",
                 "iconHeight": "55",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "autoLockAfter": "10",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "54%",
                 "top": "160px",
                 "width": "22%",
                 "height": "40px",
                 "background-color": "#b7a98b",
                 "z-index": 21,
                 "background": "#6b665e"
               },
               "widgetSet": "materialdesign"
             },
             "e00012": {
               "tpl": "tplValueString",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Title",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "html_prepend": "",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false
               },
               "style": {
                 "left": "10px",
                 "top": "256px",
                 "width": "100%",
                 "height": "42px",
                 "color": "#c9c9c9",
                 "z-index": 0,
                 "font-size": "large",
                 "text-align": "left"
               },
               "widgetSet": "basic"
             },
             "e00013": {
               "tpl": "tplValueString",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Artist",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "html_prepend": "",
                 "html_append": "    {0_userdata.0.multiroom.Alexa_Player_Actual_Album}"
               },
               "style": {
                 "left": "10px",
                 "top": "220px",
                 "width": "100%",
                 "height": "36px",
                 "color": "#c9c9c9",
                 "z-index": "4",
                 "font-size": "small"
               },
               "widgetSet": "basic"
             },
             "e00014": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "text",
                 "toggleType": "value",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "valueOn": "2",
                 "buttontext": "Wohnzimmer",
                 "colorBgFalse": "",
                 "colorBgTrue": "#b7a98b",
                 "autoLockAfter": "10",
                 "lockFilterGrayscale": "30",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "labelColorTrue": "#FFFFFF"
               },
               "style": {
                 "left": "0px",
                 "top": "60px",
                 "width": "29%",
                 "height": "30px",
                 "text-align": "left",
                 "z-index": 31,
                 "color": "#c9c9c9"
               },
               "widgetSet": "materialdesign"
             },
             "e00015": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "text",
                 "toggleType": "value",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "valueOn": "1",
                 "buttontext": "Cockpit",
                 "colorBgFalse": "",
                 "colorBgTrue": "#b7a98b",
                 "autoLockAfter": "10",
                 "lockFilterGrayscale": "30",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "labelColorTrue": "#FFFFFF"
               },
               "style": {
                 "left": "0px",
                 "top": "30px",
                 "width": "29%",
                 "height": "30px",
                 "text-align": "left",
                 "z-index": 31,
                 "color": "#c9c9c9"
               },
               "widgetSet": "materialdesign"
             },
             "e00016": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "text",
                 "toggleType": "value",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "valueOn": "0",
                 "buttontext": "Überall",
                 "colorBgFalse": "",
                 "colorBgTrue": "#b7a98b",
                 "autoLockAfter": "10",
                 "lockFilterGrayscale": "30",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "labelColorTrue": "#FFFFFF"
               },
               "style": {
                 "left": "0px",
                 "top": "0px",
                 "width": "29%",
                 "height": "30px",
                 "text-align": "left",
                 "z-index": 31,
                 "color": "#c9c9c9"
               },
               "widgetSet": "materialdesign"
             },
             "e00017": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "text",
                 "toggleType": "value",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "valueOn": "3",
                 "buttontext": "Büro",
                 "colorBgFalse": "",
                 "colorBgTrue": "#b7a98b",
                 "autoLockAfter": "10",
                 "lockFilterGrayscale": "30",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "labelColorTrue": "#FFFFFF"
               },
               "style": {
                 "left": "0px",
                 "top": "90px",
                 "width": "29%",
                 "height": "30px",
                 "text-align": "left",
                 "z-index": 31,
                 "color": "#c9c9c9"
               },
               "widgetSet": "materialdesign"
             },
             "e00018": {
               "tpl": "tplVis-materialdesign-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPlay",
                 "g_fixed": false,
                 "g_visibility": true,
                 "g_css_font_text": false,
                 "g_css_background": true,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": "false",
                 "visibility-groups-action": "hide",
                 "buttonStyle": "unelevated",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "true",
                 "colorPress": "#b7a98b",
                 "image": "/icons-mfd-png/audio_play.png",
                 "iconHeight": "55",
                 "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "autoLockAfter": "10",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "31%",
                 "top": "160px",
                 "width": "22%",
                 "height": "40px",
                 "background-color": "#b7a98b",
                 "z-index": 11,
                 "background": "#6b665e"
               },
               "widgetSet": "materialdesign"
             },
             "e00019": {
               "tpl": "tplVis-materialdesign-Button-State",
               "data": {
                 "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause",
                 "g_fixed": false,
                 "g_visibility": true,
                 "g_css_font_text": false,
                 "g_css_background": true,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": "true",
                 "visibility-groups-action": "hide",
                 "buttonStyle": "unelevated",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "value": "true",
                 "colorPress": "#b7a98b",
                 "image": "/icons-mfd-png/audio_pause.png",
                 "iconHeight": "55",
                 "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "autoLockAfter": "10",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "lockFilterGrayscale": "30"
               },
               "style": {
                 "left": "31%",
                 "top": "160px",
                 "width": "22%",
                 "height": "40px",
                 "background-color": "#b7a98b",
                 "z-index": 11,
                 "background": "#b7a98b"
               },
               "widgetSet": "materialdesign"
             },
             "e00020": {
               "tpl": "tplVis-materialdesign-Progress",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Percentage",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "showValueLabel": false,
                 "valuePosition": "inside",
                 "valueLabelWidth": "25",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "min": "0",
                 "max": "100",
                 "colorProgress": "#b7a98b",
                 "progressRounded": "true",
                 "colorProgressBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_background;dark:vis-materialdesign.0.colors.dark.progress.track_background; mode === \"true\" ? dark : light}",
                 "colorOne": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition1;dark:vis-materialdesign.0.colors.dark.progress.track_condition1; mode === \"true\" ? dark : light}",
                 "colorTwo": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition2;dark:vis-materialdesign.0.colors.dark.progress.track_condition2; mode === \"true\" ? dark : light}",
                 "valueLabelStyle": "progressPercent",
                 "textColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.text;dark:vis-materialdesign.0.colors.dark.progress.text; mode === \"true\" ? dark : light}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.progress.text}",
                 "textFontFamily": "{vis-materialdesign.0.fonts.progress.text}",
                 "textAlign": "end"
               },
               "style": {
                 "left": "31%",
                 "top": "146px",
                 "width": "69%",
                 "height": "5px",
                 "z-index": "55",
                 "overflow-x": ""
               },
               "widgetSet": "materialdesign"
             },
             "e00021": {
               "tpl": "tplVis-materialdesign-Button-Toggle",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": true,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "buttonStyle": "text",
                 "toggleType": "value",
                 "stateIfNotTrueValue": "off",
                 "vibrateOnMobilDevices": "50",
                 "iconPosition": "left",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "valueOn": "4",
                 "buttontext": "Heimkino",
                 "colorBgFalse": "",
                 "colorBgTrue": "#b7a98b",
                 "autoLockAfter": "10",
                 "lockFilterGrayscale": "30",
                 "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                 "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                 "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                 "labelColorTrue": "#FFFFFF"
               },
               "style": {
                 "left": "0px",
                 "top": "120px",
                 "width": "29%",
                 "height": "30px",
                 "text-align": "left",
                 "z-index": 31,
                 "color": "#c9c9c9"
               },
               "widgetSet": "materialdesign"
             },
             "e00022": {
               "tpl": "tplVis-materialdesign-Vuetify-Slider",
               "data": {
                 "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Volume",
                 "g_fixed": false,
                 "g_visibility": false,
                 "g_css_font_text": false,
                 "g_css_background": false,
                 "g_css_shadow_padding": false,
                 "g_css_border": false,
                 "g_gestures": false,
                 "g_signals": false,
                 "g_last_change": false,
                 "visibility-cond": "==",
                 "visibility-val": 1,
                 "visibility-groups-action": "hide",
                 "orientation": "horizontal",
                 "knobSize": "knobSmall",
                 "step": "1",
                 "vibrateOnMobilDevices": "50",
                 "showTicks": "no",
                 "tickTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick;dark:vis-materialdesign.0.colors.dark.slider.tick; mode === \"true\" ? dark : light}",
                 "tickFontFamily": "{vis-materialdesign.0.fonts.slider.ticks}",
                 "tickFontSize": "{vis-materialdesign.0.fontSizes.slider.ticks}",
                 "tickColorBefore": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_before;dark:vis-materialdesign.0.colors.dark.slider.tick_before; mode === \"true\" ? dark : light}",
                 "tickColorAfter": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_after;dark:vis-materialdesign.0.colors.dark.slider.tick_after; mode === \"true\" ? dark : light}",
                 "colorBeforeThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_before;dark:vis-materialdesign.0.colors.dark.slider.control_before; mode === \"true\" ? dark : light}",
                 "colorThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control;dark:vis-materialdesign.0.colors.dark.slider.control; mode === \"true\" ? dark : light}",
                 "colorAfterThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_behind;dark:vis-materialdesign.0.colors.dark.slider.control_behind; mode === \"true\" ? dark : light}",
                 "prepandTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text_prepand;dark:vis-materialdesign.0.colors.dark.slider.text_prepand; mode === \"true\" ? dark : light}",
                 "prepandTextFontSize": "{vis-materialdesign.0.fontSizes.slider.prepand}",
                 "prepandTextFontFamily": "{vis-materialdesign.0.fonts.slider.prepand}",
                 "showValueLabel": "true",
                 "valueLabelStyle": "sliderValue",
                 "valueFontFamily": "{vis-materialdesign.0.fonts.slider.value}",
                 "valueFontSize": "{vis-materialdesign.0.fontSizes.slider.value}",
                 "valueLabelColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text;dark:vis-materialdesign.0.colors.dark.slider.text; mode === \"true\" ? dark : light}",
                 "valueLabelWidth": "50",
                 "showThumbLabel": "no",
                 "thumbBackgroundColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_background;dark:vis-materialdesign.0.colors.dark.slider.control_background; mode === \"true\" ? dark : light}",
                 "thumbFontColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_text;dark:vis-materialdesign.0.colors.dark.slider.control_text; mode === \"true\" ? dark : light}",
                 "thumbFontSize": "{vis-materialdesign.0.fontSizes.slider.control}",
                 "thumbFontFamily": "{vis-materialdesign.0.fonts.slider.control}",
                 "signals-cond-0": "==",
                 "signals-val-0": true,
                 "signals-icon-0": "/vis/signals/lowbattery.png",
                 "signals-icon-size-0": 0,
                 "signals-blink-0": false,
                 "signals-horz-0": 0,
                 "signals-vert-0": 0,
                 "signals-hide-edit-0": false,
                 "signals-cond-1": "==",
                 "signals-val-1": true,
                 "signals-icon-1": "/vis/signals/lowbattery.png",
                 "signals-icon-size-1": 0,
                 "signals-blink-1": false,
                 "signals-horz-1": 0,
                 "signals-vert-1": 0,
                 "signals-hide-edit-1": false,
                 "signals-cond-2": "==",
                 "signals-val-2": true,
                 "signals-icon-2": "/vis/signals/lowbattery.png",
                 "signals-icon-size-2": 0,
                 "signals-blink-2": false,
                 "signals-horz-2": 0,
                 "signals-vert-2": 0,
                 "signals-hide-edit-2": false,
                 "lc-type": "last-change",
                 "lc-is-interval": true,
                 "lc-is-moment": false,
                 "lc-format": "",
                 "lc-position-vert": "top",
                 "lc-position-horz": "right",
                 "lc-offset-vert": 0,
                 "lc-offset-horz": 0,
                 "lc-font-size": "12px",
                 "lc-font-family": "",
                 "lc-font-style": "",
                 "lc-bkg-color": "",
                 "lc-color": "",
                 "lc-border-width": "0",
                 "lc-border-style": "",
                 "lc-border-color": "",
                 "lc-border-radius": 10,
                 "lc-zindex": 0,
                 "oid-working": "",
                 "min": "1",
                 "max": "100",
                 "prepandText": ""
               },
               "style": {
                 "left": "10px",
                 "top": "160px",
                 "width": "29%",
                 "height": "30px"
               },
               "widgetSet": "materialdesign"
             }
           },
           "name": "jarvis_card_multiroom",
           "filterList": []
          }
          

          Und zum Abschluss noch das Widget eingebunden in Jarvis (könntest Du im Expertenmodus einfügen)...

                           {
                              "moduleConfig": {
                                 "url": "https://youriobIP:8082/vis/index.html?jarvis_cards#jarvis_card_multiroom"
                              },
                              "devices": [],
                              "module": "iFrame",
                              "title": "Multiroom Audio",
                              "icon": "music",
                              "id": "d4e0db0c-58d9-4e02-9139-eff86cc518c2",
                              "minHeight": "400",
                              "index": 0
                           }
          
          

          Um das zu verwenden müsstest Du auch die IP anpassen, sowie das richtige Projekt und den Widgetnamen anpassen, analog wie Dus im VIS genannt hast.

          Was noch etwas hatschert gelöst ist, ist der Button für Play und Pause, das sind eigentlich. zwei, die je nach State angezeigt/versteckt werden. Das geht mit einem Button vermutlich auch.

          Das VIS-Widget benötigt die materialdesign Widgets installiert.

          sigi234S T 2 Antworten Letzte Antwort
          2
          • VukoV Vuko

            @Zuki gerne!

            Das Multiroom-Audio basiert auf jede Menge Amazon Echos, konkret 2 x Echo Studio, 2 x Echo Show und 2 x Echo Spot (die NSA freut sich über so viele Daten ;-) ).

            Die Lautsprecher sind in Multiroom-Gruppen zusammengefasst, die kriegen dann eine eigene Device-ID im Alexa-Adapter. In jeder dieser Gruppen gibt es eine eigene Player-Section. D.h. wenn zwei Gruppen existieren, deren Lautsprecher sich nicht überschneiden, kann man mit den Echos auch zwei unterschiedliche Wiedergaben fahren. Wenn eine Wiedergabe läuft und ein Lautsprecher in zwei Gruppen drinnen ist und man aktiviert die zweite Gruppe, stoppt die Wiedergabe der ersten Gruppe.

            Bei mir gibts aktuell folgende Gruppen:

            • Überall - is klar ;-)
            • Cockpit - ist ein einzelner Echo Show
            • Wohnzimmer - sind alle Echos im Erdgeschoss (2 x Studio, 1 x Show, 1 x Spot)
            • Büro - ist ein einzelner Echo Show
            • Heimkino - sind die beiden Studios in Heimkino-Konfig. Damit war ich nicht so zufrieden, deshalb derzeit deaktiviert

            MultiroomAudio.jpg

            Das Konzept ist einfach: Das Widget steuert immer den gerade ausgewählten Player und zeigt die Daten und den Fortschritt dieses Players an.

            Das mache ich über eigene Datenpunkte

            userdata_multiroom.jpg

            Die Datenpunkte beschreiben immer den Status des aktuellen Players, diesen wähle ich über die Buttons links aus.

            Dazu gibt es ein elendslanges Skript im Hintergrund (ein programmiertechnisches Desaster, weil ganz viel redundanter Code), das für jede Gruppe auf jeden relevanten Datenpunkt (Miniart Url, Playerstatus, Zufallswiedergabe etc) einen Listener anlegt und wenn der Player gerade aktiv ist, dann die Änderungen an die userdata-Datenpunkte weitergibt.

            Der Listener fürs Roomswitching

            var deviceID="Unknown Device ID";
            
            on({id: '0_userdata.0.multiroom.Alexa_Player'/*Alexa Player*/, change: "ne"}, function (obj) {
            
              var value = obj.state.val;
              var oldValue = obj.oldState.val;
            
              console.log("Player Value is: "+value)
            
              switch (value) {
                  case 0: //Überall
                       deviceID = "yourDeviceId";
                       break;
                  case 1: //Cockpit
                       deviceID = "yourDeviceId";
                       break;
                  case 2: //Wohnzimmer
                       deviceID = "yourDeviceId";
                       break;
                  case 3: //Büro
                       deviceID = "yourDeviceId";
                       break;
                  case 4: //Heimkino
                       deviceID = "yourDeviceId";
                       break;
                  default: 
                       break;
              }
            
              setState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/, deviceID);
            });
            

            Beispiele für die Eventlistener für die einzelnen Felder...

            // Miniart
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.miniArtUrl'/*current mini Art*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl'/*Alexa Player Actual MiniartUrl*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.imageURL'/*current mini Art*/).val);
             }
            
            });
            
            ..
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Percentage'/*Alexa Player Actual Percentage*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent').val);
             }
            
            });
            
            ...
            
            // Album
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum'/*current album*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Album', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum').val);
             }
            
            });
            
            ..
            
            // Artist
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist'/*current artist*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Artist', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist').val);
             }
            
            });
            
            ..
            
            // Title
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle'/*current title*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Title', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle').val);
             }
            
            });
            
            ..
            
            // Actual Playing
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentState'/*currentState*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Playing', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentState').val);
             }
            
            });
            
            ..
            
            // Actual Volume
            
            on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.volume','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
             
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId" &&
                 getState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume').val != getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val) {
                 setState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val);
             }
            
            });
            
            
            
            

            Wie man sieht muss man Listener für jede DeviceId, die beteiligt ist (YourDeviceId durch Deine jeweilige DeviceId ersetzen) anlegen, damit die Infos in die zentralen States übernommen werden.

            Für die Volumeregelung braucht es eine Reverseregelung, die nicht durch direkten Zugriff möglich ist:

            //Reverse Volume
            
            
            on({id: ['0_userdata.0.multiroom.Alexa_Player_Actual_Volume'], change: "ne"}, function (obj) {
            
             var value = obj.state.val;
             var oldValue = obj.oldState.val;
            
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                   setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                 }
                 
             }
            
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                   setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                 }
                 
             }
            
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                   setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                 }
                 
             }
            
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                   setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                 }
                 
             }
            
             if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                 if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                   setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                 }
                 
             }
            
            });
            

            Für jede zu steuernde Device ID braucht es in dem Skript einen Eintrag.

            So nun zum Widget. Das Widget zeigt die meisten Datenpunkte direkt aus dem Player an indem einfach der Pfad zum Player-State manipuliert wird. Also z. B. alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause

            In der Leiste unten sind die wichtigsten Sender hinterlegt, sowie zwei Amazon Music Playlists. Durch Klick werden diese in der gerade selektierten Gruppe gestartet. Aktuell kann ich also nur diese Radiosender und die zwei Playlists über das Widget starten. Der Player zeigt aber natürlich auch alles was über die Alexa-App oder über Sprachsteuerung auf der jeweiligen Gruppe gestartet wurde.

            Als Startpunkt hier noch der Export des VIS-Views für das Widget:

            {
             "settings": {
               "style": {
                 "background_class": ""
               },
               "theme": "redmond",
               "sizex": "",
               "sizey": "",
               "gridSize": "",
               "useBackground": false,
               "snapType": null
             },
             "widgets": {
               "e00001": {
                 "tpl": "tplImage",
                 "data": {
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "refreshInterval": "0",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "src": "{0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl}",
                   "stretch": false,
                   "refreshOnWakeUp": true,
                   "refreshOnViewChange": true,
                   "allowUserInteractions": false,
                   "refreshWithNoQuery": true
                 },
                 "style": {
                   "left": "31%",
                   "top": "0px",
                   "width": "69%",
                   "height": "150px",
                   "z-index": 0
                 },
                 "widgetSet": "basic"
               },
               "e00002": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s8514",
                   "image": "https://cdn-radiotime-logos.tunein.com/s8514q.png",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "-5px",
                   "top": "279px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00003": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s8007",
                   "image": "https://cdn-radiotime-logos.tunein.com/s8007q.png",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "40px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00004": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s253666",
                   "image": "https://cdn-profiles.tunein.com/s253666/images/logoq.png?t=1",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "85px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00005": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s296257",
                   "image": "https://cdn-profiles.tunein.com/s296257/images/logoq.png",
                   "iconHeight": "40",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "red",
                   "lockFilterGrayscale": "30",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1"
                 },
                 "style": {
                   "left": "130px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00006": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s8235",
                   "image": "https://cdn-radiotime-logos.tunein.com/s8235q.png",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "176px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00007": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "s9211",
                   "image": "https://cdn-profiles.tunein.com/s9211/images/logoq.png?t=155067",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "221px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px",
                   "z-index": 1
                 },
                 "widgetSet": "materialdesign"
               },
               "e00008": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "Nicole",
                   "image": "/vis.0/main/img/Nicole.png",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "266px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00009": {
                 "tpl": "tplVis-materialdesign-Icon-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "vibrateOnMobilDevices": "50",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "Vuko",
                   "image": "/vis.0/main/img/Vuko.png",
                   "iconHeight": "40",
                   "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                   "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                   "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                   "autoLockAfter": "10",
                   "lockIconTop": "45",
                   "lockIconLeft": "55",
                   "lockIconSize": "20",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                   "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                   "lockBackgroundSizeFactor": "1",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "311px",
                   "top": "278px",
                   "width": "67px",
                   "height": "66px"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00010": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlShuffle",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "raised",
                   "toggleType": "boolean",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "colorBgFalse": "#6b665e",
                   "colorBgTrue": "#b7a98b",
                   "image": "/icons-mfd-png/audio_shuffle.png",
                   "iconHeight": "50",
                   "labelWidth": "0",
                   "valueOff": "false",
                   "valueOn": "true",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "g_lock": false,
                   "autoLockAfter": "10",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "lockFilterGrayscale": "30",
                   "labelColorTrue": "",
                   "colorPress": "#b7a98b"
                 },
                 "style": {
                   "left": "77%",
                   "top": "160px",
                   "width": "22%",
                   "height": "40px",
                   "z-index": "20",
                   "position": ""
                 },
                 "widgetSet": "materialdesign"
               },
               "e00011": {
                 "tpl": "tplVis-materialdesign-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlNext",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": true,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "unelevated",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "true",
                   "colorPress": "#b7a98b",
                   "image": "/icons-mfd-png/audio_ff.png",
                   "iconHeight": "55",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "autoLockAfter": "10",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "54%",
                   "top": "160px",
                   "width": "22%",
                   "height": "40px",
                   "background-color": "#b7a98b",
                   "z-index": 21,
                   "background": "#6b665e"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00012": {
                 "tpl": "tplValueString",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Title",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "html_prepend": "",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false
                 },
                 "style": {
                   "left": "10px",
                   "top": "256px",
                   "width": "100%",
                   "height": "42px",
                   "color": "#c9c9c9",
                   "z-index": 0,
                   "font-size": "large",
                   "text-align": "left"
                 },
                 "widgetSet": "basic"
               },
               "e00013": {
                 "tpl": "tplValueString",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Artist",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "html_prepend": "",
                   "html_append": "    {0_userdata.0.multiroom.Alexa_Player_Actual_Album}"
                 },
                 "style": {
                   "left": "10px",
                   "top": "220px",
                   "width": "100%",
                   "height": "36px",
                   "color": "#c9c9c9",
                   "z-index": "4",
                   "font-size": "small"
                 },
                 "widgetSet": "basic"
               },
               "e00014": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "text",
                   "toggleType": "value",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "valueOn": "2",
                   "buttontext": "Wohnzimmer",
                   "colorBgFalse": "",
                   "colorBgTrue": "#b7a98b",
                   "autoLockAfter": "10",
                   "lockFilterGrayscale": "30",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "labelColorTrue": "#FFFFFF"
                 },
                 "style": {
                   "left": "0px",
                   "top": "60px",
                   "width": "29%",
                   "height": "30px",
                   "text-align": "left",
                   "z-index": 31,
                   "color": "#c9c9c9"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00015": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "text",
                   "toggleType": "value",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "valueOn": "1",
                   "buttontext": "Cockpit",
                   "colorBgFalse": "",
                   "colorBgTrue": "#b7a98b",
                   "autoLockAfter": "10",
                   "lockFilterGrayscale": "30",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "labelColorTrue": "#FFFFFF"
                 },
                 "style": {
                   "left": "0px",
                   "top": "30px",
                   "width": "29%",
                   "height": "30px",
                   "text-align": "left",
                   "z-index": 31,
                   "color": "#c9c9c9"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00016": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "text",
                   "toggleType": "value",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "valueOn": "0",
                   "buttontext": "Überall",
                   "colorBgFalse": "",
                   "colorBgTrue": "#b7a98b",
                   "autoLockAfter": "10",
                   "lockFilterGrayscale": "30",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "labelColorTrue": "#FFFFFF"
                 },
                 "style": {
                   "left": "0px",
                   "top": "0px",
                   "width": "29%",
                   "height": "30px",
                   "text-align": "left",
                   "z-index": 31,
                   "color": "#c9c9c9"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00017": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "text",
                   "toggleType": "value",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "valueOn": "3",
                   "buttontext": "Büro",
                   "colorBgFalse": "",
                   "colorBgTrue": "#b7a98b",
                   "autoLockAfter": "10",
                   "lockFilterGrayscale": "30",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "labelColorTrue": "#FFFFFF"
                 },
                 "style": {
                   "left": "0px",
                   "top": "90px",
                   "width": "29%",
                   "height": "30px",
                   "text-align": "left",
                   "z-index": 31,
                   "color": "#c9c9c9"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00018": {
                 "tpl": "tplVis-materialdesign-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPlay",
                   "g_fixed": false,
                   "g_visibility": true,
                   "g_css_font_text": false,
                   "g_css_background": true,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": "false",
                   "visibility-groups-action": "hide",
                   "buttonStyle": "unelevated",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "true",
                   "colorPress": "#b7a98b",
                   "image": "/icons-mfd-png/audio_play.png",
                   "iconHeight": "55",
                   "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "autoLockAfter": "10",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "31%",
                   "top": "160px",
                   "width": "22%",
                   "height": "40px",
                   "background-color": "#b7a98b",
                   "z-index": 11,
                   "background": "#6b665e"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00019": {
                 "tpl": "tplVis-materialdesign-Button-State",
                 "data": {
                   "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause",
                   "g_fixed": false,
                   "g_visibility": true,
                   "g_css_font_text": false,
                   "g_css_background": true,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": "true",
                   "visibility-groups-action": "hide",
                   "buttonStyle": "unelevated",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "value": "true",
                   "colorPress": "#b7a98b",
                   "image": "/icons-mfd-png/audio_pause.png",
                   "iconHeight": "55",
                   "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "autoLockAfter": "10",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "lockFilterGrayscale": "30"
                 },
                 "style": {
                   "left": "31%",
                   "top": "160px",
                   "width": "22%",
                   "height": "40px",
                   "background-color": "#b7a98b",
                   "z-index": 11,
                   "background": "#b7a98b"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00020": {
                 "tpl": "tplVis-materialdesign-Progress",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Percentage",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "showValueLabel": false,
                   "valuePosition": "inside",
                   "valueLabelWidth": "25",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "min": "0",
                   "max": "100",
                   "colorProgress": "#b7a98b",
                   "progressRounded": "true",
                   "colorProgressBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_background;dark:vis-materialdesign.0.colors.dark.progress.track_background; mode === \"true\" ? dark : light}",
                   "colorOne": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition1;dark:vis-materialdesign.0.colors.dark.progress.track_condition1; mode === \"true\" ? dark : light}",
                   "colorTwo": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition2;dark:vis-materialdesign.0.colors.dark.progress.track_condition2; mode === \"true\" ? dark : light}",
                   "valueLabelStyle": "progressPercent",
                   "textColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.text;dark:vis-materialdesign.0.colors.dark.progress.text; mode === \"true\" ? dark : light}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.progress.text}",
                   "textFontFamily": "{vis-materialdesign.0.fonts.progress.text}",
                   "textAlign": "end"
                 },
                 "style": {
                   "left": "31%",
                   "top": "146px",
                   "width": "69%",
                   "height": "5px",
                   "z-index": "55",
                   "overflow-x": ""
                 },
                 "widgetSet": "materialdesign"
               },
               "e00021": {
                 "tpl": "tplVis-materialdesign-Button-Toggle",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": true,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "buttonStyle": "text",
                   "toggleType": "value",
                   "stateIfNotTrueValue": "off",
                   "vibrateOnMobilDevices": "50",
                   "iconPosition": "left",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "valueOn": "4",
                   "buttontext": "Heimkino",
                   "colorBgFalse": "",
                   "colorBgTrue": "#b7a98b",
                   "autoLockAfter": "10",
                   "lockFilterGrayscale": "30",
                   "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                   "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                   "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                   "labelColorTrue": "#FFFFFF"
                 },
                 "style": {
                   "left": "0px",
                   "top": "120px",
                   "width": "29%",
                   "height": "30px",
                   "text-align": "left",
                   "z-index": 31,
                   "color": "#c9c9c9"
                 },
                 "widgetSet": "materialdesign"
               },
               "e00022": {
                 "tpl": "tplVis-materialdesign-Vuetify-Slider",
                 "data": {
                   "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Volume",
                   "g_fixed": false,
                   "g_visibility": false,
                   "g_css_font_text": false,
                   "g_css_background": false,
                   "g_css_shadow_padding": false,
                   "g_css_border": false,
                   "g_gestures": false,
                   "g_signals": false,
                   "g_last_change": false,
                   "visibility-cond": "==",
                   "visibility-val": 1,
                   "visibility-groups-action": "hide",
                   "orientation": "horizontal",
                   "knobSize": "knobSmall",
                   "step": "1",
                   "vibrateOnMobilDevices": "50",
                   "showTicks": "no",
                   "tickTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick;dark:vis-materialdesign.0.colors.dark.slider.tick; mode === \"true\" ? dark : light}",
                   "tickFontFamily": "{vis-materialdesign.0.fonts.slider.ticks}",
                   "tickFontSize": "{vis-materialdesign.0.fontSizes.slider.ticks}",
                   "tickColorBefore": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_before;dark:vis-materialdesign.0.colors.dark.slider.tick_before; mode === \"true\" ? dark : light}",
                   "tickColorAfter": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_after;dark:vis-materialdesign.0.colors.dark.slider.tick_after; mode === \"true\" ? dark : light}",
                   "colorBeforeThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_before;dark:vis-materialdesign.0.colors.dark.slider.control_before; mode === \"true\" ? dark : light}",
                   "colorThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control;dark:vis-materialdesign.0.colors.dark.slider.control; mode === \"true\" ? dark : light}",
                   "colorAfterThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_behind;dark:vis-materialdesign.0.colors.dark.slider.control_behind; mode === \"true\" ? dark : light}",
                   "prepandTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text_prepand;dark:vis-materialdesign.0.colors.dark.slider.text_prepand; mode === \"true\" ? dark : light}",
                   "prepandTextFontSize": "{vis-materialdesign.0.fontSizes.slider.prepand}",
                   "prepandTextFontFamily": "{vis-materialdesign.0.fonts.slider.prepand}",
                   "showValueLabel": "true",
                   "valueLabelStyle": "sliderValue",
                   "valueFontFamily": "{vis-materialdesign.0.fonts.slider.value}",
                   "valueFontSize": "{vis-materialdesign.0.fontSizes.slider.value}",
                   "valueLabelColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text;dark:vis-materialdesign.0.colors.dark.slider.text; mode === \"true\" ? dark : light}",
                   "valueLabelWidth": "50",
                   "showThumbLabel": "no",
                   "thumbBackgroundColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_background;dark:vis-materialdesign.0.colors.dark.slider.control_background; mode === \"true\" ? dark : light}",
                   "thumbFontColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_text;dark:vis-materialdesign.0.colors.dark.slider.control_text; mode === \"true\" ? dark : light}",
                   "thumbFontSize": "{vis-materialdesign.0.fontSizes.slider.control}",
                   "thumbFontFamily": "{vis-materialdesign.0.fonts.slider.control}",
                   "signals-cond-0": "==",
                   "signals-val-0": true,
                   "signals-icon-0": "/vis/signals/lowbattery.png",
                   "signals-icon-size-0": 0,
                   "signals-blink-0": false,
                   "signals-horz-0": 0,
                   "signals-vert-0": 0,
                   "signals-hide-edit-0": false,
                   "signals-cond-1": "==",
                   "signals-val-1": true,
                   "signals-icon-1": "/vis/signals/lowbattery.png",
                   "signals-icon-size-1": 0,
                   "signals-blink-1": false,
                   "signals-horz-1": 0,
                   "signals-vert-1": 0,
                   "signals-hide-edit-1": false,
                   "signals-cond-2": "==",
                   "signals-val-2": true,
                   "signals-icon-2": "/vis/signals/lowbattery.png",
                   "signals-icon-size-2": 0,
                   "signals-blink-2": false,
                   "signals-horz-2": 0,
                   "signals-vert-2": 0,
                   "signals-hide-edit-2": false,
                   "lc-type": "last-change",
                   "lc-is-interval": true,
                   "lc-is-moment": false,
                   "lc-format": "",
                   "lc-position-vert": "top",
                   "lc-position-horz": "right",
                   "lc-offset-vert": 0,
                   "lc-offset-horz": 0,
                   "lc-font-size": "12px",
                   "lc-font-family": "",
                   "lc-font-style": "",
                   "lc-bkg-color": "",
                   "lc-color": "",
                   "lc-border-width": "0",
                   "lc-border-style": "",
                   "lc-border-color": "",
                   "lc-border-radius": 10,
                   "lc-zindex": 0,
                   "oid-working": "",
                   "min": "1",
                   "max": "100",
                   "prepandText": ""
                 },
                 "style": {
                   "left": "10px",
                   "top": "160px",
                   "width": "29%",
                   "height": "30px"
                 },
                 "widgetSet": "materialdesign"
               }
             },
             "name": "jarvis_card_multiroom",
             "filterList": []
            }
            

            Und zum Abschluss noch das Widget eingebunden in Jarvis (könntest Du im Expertenmodus einfügen)...

                             {
                                "moduleConfig": {
                                   "url": "https://youriobIP:8082/vis/index.html?jarvis_cards#jarvis_card_multiroom"
                                },
                                "devices": [],
                                "module": "iFrame",
                                "title": "Multiroom Audio",
                                "icon": "music",
                                "id": "d4e0db0c-58d9-4e02-9139-eff86cc518c2",
                                "minHeight": "400",
                                "index": 0
                             }
            
            

            Um das zu verwenden müsstest Du auch die IP anpassen, sowie das richtige Projekt und den Widgetnamen anpassen, analog wie Dus im VIS genannt hast.

            Was noch etwas hatschert gelöst ist, ist der Button für Play und Pause, das sind eigentlich. zwei, die je nach State angezeigt/versteckt werden. Das geht mit einem Button vermutlich auch.

            Das VIS-Widget benötigt die materialdesign Widgets installiert.

            sigi234S Online
            sigi234S Online
            sigi234
            Forum Testing Most Active
            schrieb am zuletzt editiert von
            #2230

            @Vuko sagte in jarvis v2.0.0 - just another remarkable vis:

            Das mache ich über eigene Datenpunkte

            Die man wie ich sehe erst anlegen muss.

            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
            Immer Daten sichern!

            1 Antwort Letzte Antwort
            1
            • VukoV Vuko

              @Zuki gerne!

              Das Multiroom-Audio basiert auf jede Menge Amazon Echos, konkret 2 x Echo Studio, 2 x Echo Show und 2 x Echo Spot (die NSA freut sich über so viele Daten ;-) ).

              Die Lautsprecher sind in Multiroom-Gruppen zusammengefasst, die kriegen dann eine eigene Device-ID im Alexa-Adapter. In jeder dieser Gruppen gibt es eine eigene Player-Section. D.h. wenn zwei Gruppen existieren, deren Lautsprecher sich nicht überschneiden, kann man mit den Echos auch zwei unterschiedliche Wiedergaben fahren. Wenn eine Wiedergabe läuft und ein Lautsprecher in zwei Gruppen drinnen ist und man aktiviert die zweite Gruppe, stoppt die Wiedergabe der ersten Gruppe.

              Bei mir gibts aktuell folgende Gruppen:

              • Überall - is klar ;-)
              • Cockpit - ist ein einzelner Echo Show
              • Wohnzimmer - sind alle Echos im Erdgeschoss (2 x Studio, 1 x Show, 1 x Spot)
              • Büro - ist ein einzelner Echo Show
              • Heimkino - sind die beiden Studios in Heimkino-Konfig. Damit war ich nicht so zufrieden, deshalb derzeit deaktiviert

              MultiroomAudio.jpg

              Das Konzept ist einfach: Das Widget steuert immer den gerade ausgewählten Player und zeigt die Daten und den Fortschritt dieses Players an.

              Das mache ich über eigene Datenpunkte

              userdata_multiroom.jpg

              Die Datenpunkte beschreiben immer den Status des aktuellen Players, diesen wähle ich über die Buttons links aus.

              Dazu gibt es ein elendslanges Skript im Hintergrund (ein programmiertechnisches Desaster, weil ganz viel redundanter Code), das für jede Gruppe auf jeden relevanten Datenpunkt (Miniart Url, Playerstatus, Zufallswiedergabe etc) einen Listener anlegt und wenn der Player gerade aktiv ist, dann die Änderungen an die userdata-Datenpunkte weitergibt.

              Der Listener fürs Roomswitching

              var deviceID="Unknown Device ID";
              
              on({id: '0_userdata.0.multiroom.Alexa_Player'/*Alexa Player*/, change: "ne"}, function (obj) {
              
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
              
                console.log("Player Value is: "+value)
              
                switch (value) {
                    case 0: //Überall
                         deviceID = "yourDeviceId";
                         break;
                    case 1: //Cockpit
                         deviceID = "yourDeviceId";
                         break;
                    case 2: //Wohnzimmer
                         deviceID = "yourDeviceId";
                         break;
                    case 3: //Büro
                         deviceID = "yourDeviceId";
                         break;
                    case 4: //Heimkino
                         deviceID = "yourDeviceId";
                         break;
                    default: 
                         break;
                }
              
                setState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/, deviceID);
              });
              

              Beispiele für die Eventlistener für die einzelnen Felder...

              // Miniart
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.miniArtUrl'/*current mini Art*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl'/*Alexa Player Actual MiniartUrl*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.imageURL'/*current mini Art*/).val);
               }
              
              });
              
              ..
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Percentage'/*Alexa Player Actual Percentage*/, getState('alexa2.0.Echo-Devices.YourDeviceId.Player.mediaProgressPercent').val);
               }
              
              });
              
              ...
              
              // Album
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum'/*current album*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Album', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentAlbum').val);
               }
              
              });
              
              ..
              
              // Artist
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist'/*current artist*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Artist', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentArtist').val);
               }
              
              });
              
              ..
              
              // Title
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle'/*current title*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Title', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentTitle').val);
               }
              
              });
              
              ..
              
              // Actual Playing
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.currentState'/*currentState*/,'0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Playing', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.currentState').val);
               }
              
              });
              
              ..
              
              // Actual Volume
              
              on({id: ['alexa2.0.Echo-Devices.YourDeviceId.Player.volume','0_userdata.0.multiroom.Alexa_Player_DeviceID'], change: "any"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
               
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId" &&
                   getState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume').val != getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val) {
                   setState('0_userdata.0.multiroom.Alexa_Player_Actual_Volume', getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val);
               }
              
              });
              
              
              
              

              Wie man sieht muss man Listener für jede DeviceId, die beteiligt ist (YourDeviceId durch Deine jeweilige DeviceId ersetzen) anlegen, damit die Infos in die zentralen States übernommen werden.

              Für die Volumeregelung braucht es eine Reverseregelung, die nicht durch direkten Zugriff möglich ist:

              //Reverse Volume
              
              
              on({id: ['0_userdata.0.multiroom.Alexa_Player_Actual_Volume'], change: "ne"}, function (obj) {
              
               var value = obj.state.val;
               var oldValue = obj.oldState.val;
              
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                     setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                   }
                   
               }
              
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                     setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                   }
                   
               }
              
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                     setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                   }
                   
               }
              
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                     setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                   }
                   
               }
              
               if (getState('0_userdata.0.multiroom.Alexa_Player_DeviceID'/*Alexa Player DeviceID*/).val == "YourDeviceId") {
                   if (getState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume').val != value) {
                     setState('alexa2.0.Echo-Devices.YourDeviceId.Player.volume', value);
                   }
                   
               }
              
              });
              

              Für jede zu steuernde Device ID braucht es in dem Skript einen Eintrag.

              So nun zum Widget. Das Widget zeigt die meisten Datenpunkte direkt aus dem Player an indem einfach der Pfad zum Player-State manipuliert wird. Also z. B. alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause

              In der Leiste unten sind die wichtigsten Sender hinterlegt, sowie zwei Amazon Music Playlists. Durch Klick werden diese in der gerade selektierten Gruppe gestartet. Aktuell kann ich also nur diese Radiosender und die zwei Playlists über das Widget starten. Der Player zeigt aber natürlich auch alles was über die Alexa-App oder über Sprachsteuerung auf der jeweiligen Gruppe gestartet wurde.

              Als Startpunkt hier noch der Export des VIS-Views für das Widget:

              {
               "settings": {
                 "style": {
                   "background_class": ""
                 },
                 "theme": "redmond",
                 "sizex": "",
                 "sizey": "",
                 "gridSize": "",
                 "useBackground": false,
                 "snapType": null
               },
               "widgets": {
                 "e00001": {
                   "tpl": "tplImage",
                   "data": {
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "refreshInterval": "0",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "src": "{0_userdata.0.multiroom.Alexa_Player_Actual_MiniartUrl}",
                     "stretch": false,
                     "refreshOnWakeUp": true,
                     "refreshOnViewChange": true,
                     "allowUserInteractions": false,
                     "refreshWithNoQuery": true
                   },
                   "style": {
                     "left": "31%",
                     "top": "0px",
                     "width": "69%",
                     "height": "150px",
                     "z-index": 0
                   },
                   "widgetSet": "basic"
                 },
                 "e00002": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s8514",
                     "image": "https://cdn-radiotime-logos.tunein.com/s8514q.png",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "-5px",
                     "top": "279px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00003": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s8007",
                     "image": "https://cdn-radiotime-logos.tunein.com/s8007q.png",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "40px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00004": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s253666",
                     "image": "https://cdn-profiles.tunein.com/s253666/images/logoq.png?t=1",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "85px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00005": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s296257",
                     "image": "https://cdn-profiles.tunein.com/s296257/images/logoq.png",
                     "iconHeight": "40",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "red",
                     "lockFilterGrayscale": "30",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1"
                   },
                   "style": {
                     "left": "130px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00006": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s8235",
                     "image": "https://cdn-radiotime-logos.tunein.com/s8235q.png",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "176px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00007": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.TuneIn-Station",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "s9211",
                     "image": "https://cdn-profiles.tunein.com/s9211/images/logoq.png?t=155067",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "221px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px",
                     "z-index": 1
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00008": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "Nicole",
                     "image": "/vis.0/main/img/Nicole.png",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "266px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00009": {
                   "tpl": "tplVis-materialdesign-Icon-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Music-Provider.Amazon-Music-Playlist",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "vibrateOnMobilDevices": "50",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "Vuko",
                     "image": "/vis.0/main/img/Vuko.png",
                     "iconHeight": "40",
                     "imageColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.icon_off;dark:vis-materialdesign.0.colors.dark.button.icon.icon_off; mode === \"true\" ? dark : light}",
                     "colorBgFalse": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.background_off;dark:vis-materialdesign.0.colors.dark.button.icon.background_off; mode === \"true\" ? dark : light}",
                     "colorPress": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.pressed;dark:vis-materialdesign.0.colors.dark.button.icon.pressed; mode === \"true\" ? dark : light}",
                     "autoLockAfter": "10",
                     "lockIconTop": "45",
                     "lockIconLeft": "55",
                     "lockIconSize": "20",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon; mode === \"true\" ? dark : light}",
                     "lockIconBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.icon.lock_icon_background;dark:vis-materialdesign.0.colors.dark.button.icon.lock_icon_background; mode === \"true\" ? dark : light}",
                     "lockBackgroundSizeFactor": "1",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "311px",
                     "top": "278px",
                     "width": "67px",
                     "height": "66px"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00010": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlShuffle",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "raised",
                     "toggleType": "boolean",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "colorBgFalse": "#6b665e",
                     "colorBgTrue": "#b7a98b",
                     "image": "/icons-mfd-png/audio_shuffle.png",
                     "iconHeight": "50",
                     "labelWidth": "0",
                     "valueOff": "false",
                     "valueOn": "true",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "g_lock": false,
                     "autoLockAfter": "10",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "lockFilterGrayscale": "30",
                     "labelColorTrue": "",
                     "colorPress": "#b7a98b"
                   },
                   "style": {
                     "left": "77%",
                     "top": "160px",
                     "width": "22%",
                     "height": "40px",
                     "z-index": "20",
                     "position": ""
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00011": {
                   "tpl": "tplVis-materialdesign-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlNext",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": true,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "unelevated",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "true",
                     "colorPress": "#b7a98b",
                     "image": "/icons-mfd-png/audio_ff.png",
                     "iconHeight": "55",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "autoLockAfter": "10",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "54%",
                     "top": "160px",
                     "width": "22%",
                     "height": "40px",
                     "background-color": "#b7a98b",
                     "z-index": 21,
                     "background": "#6b665e"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00012": {
                   "tpl": "tplValueString",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Title",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "html_prepend": "",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false
                   },
                   "style": {
                     "left": "10px",
                     "top": "256px",
                     "width": "100%",
                     "height": "42px",
                     "color": "#c9c9c9",
                     "z-index": 0,
                     "font-size": "large",
                     "text-align": "left"
                   },
                   "widgetSet": "basic"
                 },
                 "e00013": {
                   "tpl": "tplValueString",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Artist",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "html_prepend": "",
                     "html_append": "    {0_userdata.0.multiroom.Alexa_Player_Actual_Album}"
                   },
                   "style": {
                     "left": "10px",
                     "top": "220px",
                     "width": "100%",
                     "height": "36px",
                     "color": "#c9c9c9",
                     "z-index": "4",
                     "font-size": "small"
                   },
                   "widgetSet": "basic"
                 },
                 "e00014": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "text",
                     "toggleType": "value",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "valueOn": "2",
                     "buttontext": "Wohnzimmer",
                     "colorBgFalse": "",
                     "colorBgTrue": "#b7a98b",
                     "autoLockAfter": "10",
                     "lockFilterGrayscale": "30",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "labelColorTrue": "#FFFFFF"
                   },
                   "style": {
                     "left": "0px",
                     "top": "60px",
                     "width": "29%",
                     "height": "30px",
                     "text-align": "left",
                     "z-index": 31,
                     "color": "#c9c9c9"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00015": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "text",
                     "toggleType": "value",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "valueOn": "1",
                     "buttontext": "Cockpit",
                     "colorBgFalse": "",
                     "colorBgTrue": "#b7a98b",
                     "autoLockAfter": "10",
                     "lockFilterGrayscale": "30",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "labelColorTrue": "#FFFFFF"
                   },
                   "style": {
                     "left": "0px",
                     "top": "30px",
                     "width": "29%",
                     "height": "30px",
                     "text-align": "left",
                     "z-index": 31,
                     "color": "#c9c9c9"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00016": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "text",
                     "toggleType": "value",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "valueOn": "0",
                     "buttontext": "Überall",
                     "colorBgFalse": "",
                     "colorBgTrue": "#b7a98b",
                     "autoLockAfter": "10",
                     "lockFilterGrayscale": "30",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "labelColorTrue": "#FFFFFF"
                   },
                   "style": {
                     "left": "0px",
                     "top": "0px",
                     "width": "29%",
                     "height": "30px",
                     "text-align": "left",
                     "z-index": 31,
                     "color": "#c9c9c9"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00017": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "text",
                     "toggleType": "value",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "valueOn": "3",
                     "buttontext": "Büro",
                     "colorBgFalse": "",
                     "colorBgTrue": "#b7a98b",
                     "autoLockAfter": "10",
                     "lockFilterGrayscale": "30",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "labelColorTrue": "#FFFFFF"
                   },
                   "style": {
                     "left": "0px",
                     "top": "90px",
                     "width": "29%",
                     "height": "30px",
                     "text-align": "left",
                     "z-index": 31,
                     "color": "#c9c9c9"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00018": {
                   "tpl": "tplVis-materialdesign-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPlay",
                     "g_fixed": false,
                     "g_visibility": true,
                     "g_css_font_text": false,
                     "g_css_background": true,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": "false",
                     "visibility-groups-action": "hide",
                     "buttonStyle": "unelevated",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "true",
                     "colorPress": "#b7a98b",
                     "image": "/icons-mfd-png/audio_play.png",
                     "iconHeight": "55",
                     "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "autoLockAfter": "10",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "31%",
                     "top": "160px",
                     "width": "22%",
                     "height": "40px",
                     "background-color": "#b7a98b",
                     "z-index": 11,
                     "background": "#6b665e"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00019": {
                   "tpl": "tplVis-materialdesign-Button-State",
                   "data": {
                     "oid": "alexa2.0.Echo-Devices.{0_userdata.0.multiroom.Alexa_Player_DeviceID}.Player.controlPause",
                     "g_fixed": false,
                     "g_visibility": true,
                     "g_css_font_text": false,
                     "g_css_background": true,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": "true",
                     "visibility-groups-action": "hide",
                     "buttonStyle": "unelevated",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "value": "true",
                     "colorPress": "#b7a98b",
                     "image": "/icons-mfd-png/audio_pause.png",
                     "iconHeight": "55",
                     "visibility-oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Playing",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "autoLockAfter": "10",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "lockFilterGrayscale": "30"
                   },
                   "style": {
                     "left": "31%",
                     "top": "160px",
                     "width": "22%",
                     "height": "40px",
                     "background-color": "#b7a98b",
                     "z-index": 11,
                     "background": "#b7a98b"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00020": {
                   "tpl": "tplVis-materialdesign-Progress",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Percentage",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "showValueLabel": false,
                     "valuePosition": "inside",
                     "valueLabelWidth": "25",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "min": "0",
                     "max": "100",
                     "colorProgress": "#b7a98b",
                     "progressRounded": "true",
                     "colorProgressBackground": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_background;dark:vis-materialdesign.0.colors.dark.progress.track_background; mode === \"true\" ? dark : light}",
                     "colorOne": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition1;dark:vis-materialdesign.0.colors.dark.progress.track_condition1; mode === \"true\" ? dark : light}",
                     "colorTwo": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.track_condition2;dark:vis-materialdesign.0.colors.dark.progress.track_condition2; mode === \"true\" ? dark : light}",
                     "valueLabelStyle": "progressPercent",
                     "textColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.progress.text;dark:vis-materialdesign.0.colors.dark.progress.text; mode === \"true\" ? dark : light}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.progress.text}",
                     "textFontFamily": "{vis-materialdesign.0.fonts.progress.text}",
                     "textAlign": "end"
                   },
                   "style": {
                     "left": "31%",
                     "top": "146px",
                     "width": "69%",
                     "height": "5px",
                     "z-index": "55",
                     "overflow-x": ""
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00021": {
                   "tpl": "tplVis-materialdesign-Button-Toggle",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": true,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "buttonStyle": "text",
                     "toggleType": "value",
                     "stateIfNotTrueValue": "off",
                     "vibrateOnMobilDevices": "50",
                     "iconPosition": "left",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "valueOn": "4",
                     "buttontext": "Heimkino",
                     "colorBgFalse": "",
                     "colorBgTrue": "#b7a98b",
                     "autoLockAfter": "10",
                     "lockFilterGrayscale": "30",
                     "textFontFamily": "{vis-materialdesign.0.fonts.button.text}",
                     "textFontSize": "{vis-materialdesign.0.fontSizes.button.text}",
                     "lockIconColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.button.lock_icon;dark:vis-materialdesign.0.colors.dark.button.lock_icon; mode === \"true\" ? dark : light}",
                     "labelColorTrue": "#FFFFFF"
                   },
                   "style": {
                     "left": "0px",
                     "top": "120px",
                     "width": "29%",
                     "height": "30px",
                     "text-align": "left",
                     "z-index": 31,
                     "color": "#c9c9c9"
                   },
                   "widgetSet": "materialdesign"
                 },
                 "e00022": {
                   "tpl": "tplVis-materialdesign-Vuetify-Slider",
                   "data": {
                     "oid": "0_userdata.0.multiroom.Alexa_Player_Actual_Volume",
                     "g_fixed": false,
                     "g_visibility": false,
                     "g_css_font_text": false,
                     "g_css_background": false,
                     "g_css_shadow_padding": false,
                     "g_css_border": false,
                     "g_gestures": false,
                     "g_signals": false,
                     "g_last_change": false,
                     "visibility-cond": "==",
                     "visibility-val": 1,
                     "visibility-groups-action": "hide",
                     "orientation": "horizontal",
                     "knobSize": "knobSmall",
                     "step": "1",
                     "vibrateOnMobilDevices": "50",
                     "showTicks": "no",
                     "tickTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick;dark:vis-materialdesign.0.colors.dark.slider.tick; mode === \"true\" ? dark : light}",
                     "tickFontFamily": "{vis-materialdesign.0.fonts.slider.ticks}",
                     "tickFontSize": "{vis-materialdesign.0.fontSizes.slider.ticks}",
                     "tickColorBefore": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_before;dark:vis-materialdesign.0.colors.dark.slider.tick_before; mode === \"true\" ? dark : light}",
                     "tickColorAfter": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.tick_after;dark:vis-materialdesign.0.colors.dark.slider.tick_after; mode === \"true\" ? dark : light}",
                     "colorBeforeThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_before;dark:vis-materialdesign.0.colors.dark.slider.control_before; mode === \"true\" ? dark : light}",
                     "colorThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control;dark:vis-materialdesign.0.colors.dark.slider.control; mode === \"true\" ? dark : light}",
                     "colorAfterThumb": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_behind;dark:vis-materialdesign.0.colors.dark.slider.control_behind; mode === \"true\" ? dark : light}",
                     "prepandTextColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text_prepand;dark:vis-materialdesign.0.colors.dark.slider.text_prepand; mode === \"true\" ? dark : light}",
                     "prepandTextFontSize": "{vis-materialdesign.0.fontSizes.slider.prepand}",
                     "prepandTextFontFamily": "{vis-materialdesign.0.fonts.slider.prepand}",
                     "showValueLabel": "true",
                     "valueLabelStyle": "sliderValue",
                     "valueFontFamily": "{vis-materialdesign.0.fonts.slider.value}",
                     "valueFontSize": "{vis-materialdesign.0.fontSizes.slider.value}",
                     "valueLabelColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.text;dark:vis-materialdesign.0.colors.dark.slider.text; mode === \"true\" ? dark : light}",
                     "valueLabelWidth": "50",
                     "showThumbLabel": "no",
                     "thumbBackgroundColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_background;dark:vis-materialdesign.0.colors.dark.slider.control_background; mode === \"true\" ? dark : light}",
                     "thumbFontColor": "{mode:vis-materialdesign.0.colors.darkTheme;light:vis-materialdesign.0.colors.light.slider.control_text;dark:vis-materialdesign.0.colors.dark.slider.control_text; mode === \"true\" ? dark : light}",
                     "thumbFontSize": "{vis-materialdesign.0.fontSizes.slider.control}",
                     "thumbFontFamily": "{vis-materialdesign.0.fonts.slider.control}",
                     "signals-cond-0": "==",
                     "signals-val-0": true,
                     "signals-icon-0": "/vis/signals/lowbattery.png",
                     "signals-icon-size-0": 0,
                     "signals-blink-0": false,
                     "signals-horz-0": 0,
                     "signals-vert-0": 0,
                     "signals-hide-edit-0": false,
                     "signals-cond-1": "==",
                     "signals-val-1": true,
                     "signals-icon-1": "/vis/signals/lowbattery.png",
                     "signals-icon-size-1": 0,
                     "signals-blink-1": false,
                     "signals-horz-1": 0,
                     "signals-vert-1": 0,
                     "signals-hide-edit-1": false,
                     "signals-cond-2": "==",
                     "signals-val-2": true,
                     "signals-icon-2": "/vis/signals/lowbattery.png",
                     "signals-icon-size-2": 0,
                     "signals-blink-2": false,
                     "signals-horz-2": 0,
                     "signals-vert-2": 0,
                     "signals-hide-edit-2": false,
                     "lc-type": "last-change",
                     "lc-is-interval": true,
                     "lc-is-moment": false,
                     "lc-format": "",
                     "lc-position-vert": "top",
                     "lc-position-horz": "right",
                     "lc-offset-vert": 0,
                     "lc-offset-horz": 0,
                     "lc-font-size": "12px",
                     "lc-font-family": "",
                     "lc-font-style": "",
                     "lc-bkg-color": "",
                     "lc-color": "",
                     "lc-border-width": "0",
                     "lc-border-style": "",
                     "lc-border-color": "",
                     "lc-border-radius": 10,
                     "lc-zindex": 0,
                     "oid-working": "",
                     "min": "1",
                     "max": "100",
                     "prepandText": ""
                   },
                   "style": {
                     "left": "10px",
                     "top": "160px",
                     "width": "29%",
                     "height": "30px"
                   },
                   "widgetSet": "materialdesign"
                 }
               },
               "name": "jarvis_card_multiroom",
               "filterList": []
              }
              

              Und zum Abschluss noch das Widget eingebunden in Jarvis (könntest Du im Expertenmodus einfügen)...

                               {
                                  "moduleConfig": {
                                     "url": "https://youriobIP:8082/vis/index.html?jarvis_cards#jarvis_card_multiroom"
                                  },
                                  "devices": [],
                                  "module": "iFrame",
                                  "title": "Multiroom Audio",
                                  "icon": "music",
                                  "id": "d4e0db0c-58d9-4e02-9139-eff86cc518c2",
                                  "minHeight": "400",
                                  "index": 0
                               }
              
              

              Um das zu verwenden müsstest Du auch die IP anpassen, sowie das richtige Projekt und den Widgetnamen anpassen, analog wie Dus im VIS genannt hast.

              Was noch etwas hatschert gelöst ist, ist der Button für Play und Pause, das sind eigentlich. zwei, die je nach State angezeigt/versteckt werden. Das geht mit einem Button vermutlich auch.

              Das VIS-Widget benötigt die materialdesign Widgets installiert.

              T Offline
              T Offline
              Torrid
              schrieb am zuletzt editiert von
              #2231

              @Vuko
              Danke dir für diese sehr ausführliche Erklärung, danach hätte ich auch gefragt:grin:
              Könntest du noch ein zwei Worte zur Integration von "Bring" verlieren?:hugging_face:

              VukoV 1 Antwort Letzte Antwort
              0
              • U uwe72

                @mandragora

                zu Punkt 2. Geht schon. Muss einen Datenpunkt machen in iobroker. Dann diesen Datenpunkt in Jarvics als Gerät einbinden und als Trigger verwenden im Widget.

                Ich binde so einen Read-Only Datenpunkt ein:
                ba6a5a26-baf3-4687-9504-16ea9f270632-image.png
                Du müsstest den gleichen Datenpunkt noch unter trigger einfügen.

                zu Punkt 3:
                Ggf. mit Iframe Widget!?
                <iframe src="videos/1.mp4" width="540" height="310"></iframe>

                M Offline
                M Offline
                mandragora
                schrieb am zuletzt editiert von mandragora
                #2232

                @uwe72

                Hallo uwe72
                Das mit dem iframe hat wunderbar funktioniert.
                Aber leider startet mir das Video immer automatisch wenn ich mal einen refresh mache.
                Gibt es da eine Möglichkeit ein Video erst zu starten wenn man draufklickt ?
                Ich hab bei den ifram Einstellungen da leider nichts gefunden.

                Würde mich freuen wenn du mir das vielleicht erklären könntest.

                zu Punkt 3:
                Ggf. mit Iframe Widget!?
                <iframe src="videos/1.mp4" width="540" height="310"></iframe>
                
                
                

                Vielen Dank
                LG
                mandragora

                ioBroker auf Synology DS218+ (Docker); VIS: 2x8" Tablets; Homematic CCU2 und Komponenten; Echo DOT; Unifi Ap-Ac Pro; Landroid S; Jovision IPCams

                1 Antwort Letzte Antwort
                0
                • m4.tzeM m4.tze

                  @Zefau said in jarvis - just another remarkable vis:

                  @m4-tze sagte in jarvis - just another remarkable vis:

                  Habe ich hier irgendwo einen Denkfehler? Oder muss beim State ein anderes Format rein?

                  Du musst vor dem Style noch den Wert der Datenpunkts angeben, der formatiert werden soll, siehe https://github.com/Zefau/ioBroker.jarvis/wiki/de-Devices#datenpunkt--icon-stil

                  Alternativ geht auch { "default": ... } (... entspricht deinem Stil)

                  Perfekt! So einfach kann es manchmal sein.
                  Vielen Dank für die schnelle Hilfe :+1:

                  L Offline
                  L Offline
                  loi83
                  schrieb am zuletzt editiert von loi83
                  #2233

                  @m4-tze sagte in jarvis v2.0.0 - just another remarkable vis:

                  @Zefau said in jarvis - just another remarkable vis:

                  @m4-tze sagte in jarvis - just another remarkable vis:

                  Habe ich hier irgendwo einen Denkfehler? Oder muss beim State ein anderes Format rein?

                  Du musst vor dem Style noch den Wert der Datenpunkts angeben, der formatiert werden soll, siehe https://github.com/Zefau/ioBroker.jarvis/wiki/de-Devices#datenpunkt--icon-stil

                  Alternativ geht auch { "default": ... } (... entspricht deinem Stil)

                  Perfekt! So einfach kann es manchmal sein.
                  Vielen Dank für die schnelle Hilfe :+1:

                  @m4-tze wie hast du es nun gelöst? Wenn ich in dem Icon Stil was anpasse, ändert sich nichts.

                  Gruß Michi

                  1 Antwort Letzte Antwort
                  0
                  • ZefauZ Zefau

                    jarvis - just another remarkable vis

                    Was ist jarvis?

                    jarvis ist eine Material Design Visualisierung, die auf Material UI basiert. jarvis gibt eine Struktur und Module vor, die zur Visualisierung genutzt werden, aber sehr flexibel konfiguriert werden können.

                    jarvis ist responsive und passt sich der Größe des Screens an.

                    Das Layout ist flexibel konfigurierbar. Es können optional (beliebig viele) Tabs verwendet werden. Jeder Tab kann entweder fullscreen sein oder beliebig viele columns haben, die die einzelnen modules in flexibler Reihenfolge beinhalten.

                    Jedes Modul hat spezielle Konfigurationsmöglichkeiten (siehe Wiki je Modul).

                    Warum jarvis?

                    jarvis ist weitaus weniger flexibel als ioBroker.vis, aber bietet dafür ein standardisiertes Design, um schnell eine Visualisierung zusammenzustellen. Wer besonders spezifische Anforderungen hat, sollte (weiterhin) ioBroker.vis verwendet.

                    Mehr Informationen

                    Mehr Informationen - insbesondere zur Konfiguration - gibt es im Wiki.

                    Gestalte mit und stimme ab

                    Bitte stimmt für eure gewünschten Feature Requests ab: Nutzt dazu die Emoticon auf Github, um für eure favorisierten Feature Requests abzustimmen:

                    https://forum.iobroker.net/assets/uploads/files/1606215967286-1c3e566f-8d54-4f19-8948-eb8833c5b15f-image.png

                    Jeder Emoticon zählt gleich. Bitte stimmt nicht für alle / zu viele Feature Requests ab, sonst gibt es am Ende keine großen Unterschiede mehr.

                    Die Reihenfolge nach abgegebenen Stimmen seht ihr hier: Übersicht der Feature Requests nach Stimmen

                    Siehe https://forum.iobroker.net/post/526170


                    Impressionen

                    Die Konfiguration von Modulen kann frei angeordnet werden.
                    Nachfolgend einige Impressionen / Beispiele:

                    Users

                    @braindead: https://forum.iobroker.net/post/490283
                    @JackDaniel: https://forum.iobroker.net/post/490928
                    @Mooo: https://forum.iobroker.net/post/493843

                    Screencast / Video

                    play.png

                    Screenshots

                    Beispiel: Dashboard (3 columns)

                    Dashboard.png

                    Beispiel: Karte (Vollbild)

                    Map.png

                    Beispiel: Statistiken (2 columns)

                    Statistik.png

                    Beispiel: Status (3 columns, davon 2 leer)

                    Status.png

                    Module

                    Die folgenden Module sind aktuell (Februar 2020) verfügbar und können frei konfiguriert werden. Eine aktuelle Liste der Module ist im Wiki zu finden.

                    AdapterStatus

                    AdapterStatus

                    Chart

                    Chart

                    DateTime

                    DateTime1

                    Map

                    Map

                    StateList

                    StateList1.png
                    StateList2.png
                    StateList3.png
                    StateList4.png

                    StateListHorizontal

                    StateListHorizontal1.png


                    Konfiguration / erste Schritte

                    siehe Wiki auf Github


                    Ausblick / Roadmap

                    Ihr habt Wünsche? Bitte legt ein Issue auf Github an.

                    MEILENSTEINE / ROADMAPs

                    siehe https://github.com/Zefau/ioBroker.jarvis/milestones

                    nächste Release

                    • ROADMAP v2.1.0
                    • ROADMAP v3.0.0
                    C Offline
                    C Offline
                    CAVE_news
                    schrieb am zuletzt editiert von
                    #2234

                    @Zefau Toller Adapter. Mega VIS. Ich liebe es. Sehr schön zu konfigurieren. Ich habe ein Problem:

                    1c8935fe-92cc-40bc-a148-a35a1267b59d-image.png

                    Es steht immer "aus %" Egal welchen Wert ich einstelle. Was mache ich falsch?

                    ZefauZ 1 Antwort Letzte Antwort
                    0
                    • C CAVE_news

                      @Zefau Toller Adapter. Mega VIS. Ich liebe es. Sehr schön zu konfigurieren. Ich habe ein Problem:

                      1c8935fe-92cc-40bc-a148-a35a1267b59d-image.png

                      Es steht immer "aus %" Egal welchen Wert ich einstelle. Was mache ich falsch?

                      ZefauZ Offline
                      ZefauZ Offline
                      Zefau
                      schrieb am zuletzt editiert von
                      #2235

                      @CAVE_news kannst du einen Screenshot der Geräte Konfiguration posten?

                      Meine Adapter: https://zefau.github.io/iobroker/

                      C 1 Antwort Letzte Antwort
                      0
                      • ZefauZ Zefau

                        @CAVE_news kannst du einen Screenshot der Geräte Konfiguration posten?

                        C Offline
                        C Offline
                        CAVE_news
                        schrieb am zuletzt editiert von
                        #2236

                        @Zefau Langt der Part?

                        0852a994-b814-4a68-a937-0404a95a0186-image.png

                        ZefauZ 1 Antwort Letzte Antwort
                        0
                        • ZefauZ Zefau

                          jarvis - just another remarkable vis

                          Was ist jarvis?

                          jarvis ist eine Material Design Visualisierung, die auf Material UI basiert. jarvis gibt eine Struktur und Module vor, die zur Visualisierung genutzt werden, aber sehr flexibel konfiguriert werden können.

                          jarvis ist responsive und passt sich der Größe des Screens an.

                          Das Layout ist flexibel konfigurierbar. Es können optional (beliebig viele) Tabs verwendet werden. Jeder Tab kann entweder fullscreen sein oder beliebig viele columns haben, die die einzelnen modules in flexibler Reihenfolge beinhalten.

                          Jedes Modul hat spezielle Konfigurationsmöglichkeiten (siehe Wiki je Modul).

                          Warum jarvis?

                          jarvis ist weitaus weniger flexibel als ioBroker.vis, aber bietet dafür ein standardisiertes Design, um schnell eine Visualisierung zusammenzustellen. Wer besonders spezifische Anforderungen hat, sollte (weiterhin) ioBroker.vis verwendet.

                          Mehr Informationen

                          Mehr Informationen - insbesondere zur Konfiguration - gibt es im Wiki.

                          Gestalte mit und stimme ab

                          Bitte stimmt für eure gewünschten Feature Requests ab: Nutzt dazu die Emoticon auf Github, um für eure favorisierten Feature Requests abzustimmen:

                          https://forum.iobroker.net/assets/uploads/files/1606215967286-1c3e566f-8d54-4f19-8948-eb8833c5b15f-image.png

                          Jeder Emoticon zählt gleich. Bitte stimmt nicht für alle / zu viele Feature Requests ab, sonst gibt es am Ende keine großen Unterschiede mehr.

                          Die Reihenfolge nach abgegebenen Stimmen seht ihr hier: Übersicht der Feature Requests nach Stimmen

                          Siehe https://forum.iobroker.net/post/526170


                          Impressionen

                          Die Konfiguration von Modulen kann frei angeordnet werden.
                          Nachfolgend einige Impressionen / Beispiele:

                          Users

                          @braindead: https://forum.iobroker.net/post/490283
                          @JackDaniel: https://forum.iobroker.net/post/490928
                          @Mooo: https://forum.iobroker.net/post/493843

                          Screencast / Video

                          play.png

                          Screenshots

                          Beispiel: Dashboard (3 columns)

                          Dashboard.png

                          Beispiel: Karte (Vollbild)

                          Map.png

                          Beispiel: Statistiken (2 columns)

                          Statistik.png

                          Beispiel: Status (3 columns, davon 2 leer)

                          Status.png

                          Module

                          Die folgenden Module sind aktuell (Februar 2020) verfügbar und können frei konfiguriert werden. Eine aktuelle Liste der Module ist im Wiki zu finden.

                          AdapterStatus

                          AdapterStatus

                          Chart

                          Chart

                          DateTime

                          DateTime1

                          Map

                          Map

                          StateList

                          StateList1.png
                          StateList2.png
                          StateList3.png
                          StateList4.png

                          StateListHorizontal

                          StateListHorizontal1.png


                          Konfiguration / erste Schritte

                          siehe Wiki auf Github


                          Ausblick / Roadmap

                          Ihr habt Wünsche? Bitte legt ein Issue auf Github an.

                          MEILENSTEINE / ROADMAPs

                          siehe https://github.com/Zefau/ioBroker.jarvis/milestones

                          nächste Release

                          • ROADMAP v2.1.0
                          • ROADMAP v3.0.0
                          sigi234S Online
                          sigi234S Online
                          sigi234
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von sigi234
                          #2237

                          @Zefau

                          Hallo, kann man eigentlich Jarvis in einen anderen Host importieren?

                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Immer Daten sichern!

                          Stephan SchleichS 1 Antwort Letzte Antwort
                          0
                          • sigi234S sigi234

                            @Zefau

                            Hallo, kann man eigentlich Jarvis in einen anderen Host importieren?

                            Stephan SchleichS Offline
                            Stephan SchleichS Offline
                            Stephan Schleich
                            schrieb am zuletzt editiert von
                            #2238

                            @sigi234 Objektbaum exportieren und am anderen importieren

                            sigi234S 1 Antwort Letzte Antwort
                            0
                            • Stephan SchleichS Stephan Schleich

                              @sigi234 Objektbaum exportieren und am anderen importieren

                              sigi234S Online
                              sigi234S Online
                              sigi234
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #2239

                              @Stephan-Schleich sagte in jarvis v2.0.0 - just another remarkable vis:

                              Objektbaum

                              ?

                              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                              Immer Daten sichern!

                              K 1 Antwort Letzte Antwort
                              0
                              • sigi234S sigi234

                                @Stephan-Schleich sagte in jarvis v2.0.0 - just another remarkable vis:

                                Objektbaum

                                ?

                                K Offline
                                K Offline
                                Kueppert
                                schrieb am zuletzt editiert von
                                #2240

                                @sigi234 da lernt auch der Sigi noch was dazu hahaha.
                                PS: keine Ahnung, wie das geht ^^

                                UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

                                sigi234S 1 Antwort Letzte Antwort
                                0
                                • K Kueppert

                                  @sigi234 da lernt auch der Sigi noch was dazu hahaha.
                                  PS: keine Ahnung, wie das geht ^^

                                  sigi234S Online
                                  sigi234S Online
                                  sigi234
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von sigi234
                                  #2241

                                  @Kueppert sagte in jarvis v2.0.0 - just another remarkable vis:

                                  @sigi234 da lernt auch der Sigi noch was dazu hahaha.
                                  PS: keine Ahnung, wie das geht ^^

                                  Ja, wie wahr, man lernt nie aus. Aber bin schon drann. Denke es geht mit Backups im Adapter. :grinning:

                                  Nein geht so nicht.

                                  Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                  Immer Daten sichern!

                                  Stephan SchleichS 1 Antwort Letzte Antwort
                                  0
                                  • sigi234S sigi234

                                    @Kueppert sagte in jarvis v2.0.0 - just another remarkable vis:

                                    @sigi234 da lernt auch der Sigi noch was dazu hahaha.
                                    PS: keine Ahnung, wie das geht ^^

                                    Ja, wie wahr, man lernt nie aus. Aber bin schon drann. Denke es geht mit Backups im Adapter. :grinning:

                                    Nein geht so nicht.

                                    Stephan SchleichS Offline
                                    Stephan SchleichS Offline
                                    Stephan Schleich
                                    schrieb am zuletzt editiert von Stephan Schleich
                                    #2242

                                    @sigi234 Kannst doch den zweig in'n json speichern und dann wieder am neuen host importieren
                                    2b93dc9b-ffdf-4965-bc18-a6405c431937-image.png

                                    sigi234S 1 Antwort Letzte Antwort
                                    0
                                    • Stephan SchleichS Stephan Schleich

                                      @sigi234 Kannst doch den zweig in'n json speichern und dann wieder am neuen host importieren
                                      2b93dc9b-ffdf-4965-bc18-a6405c431937-image.png

                                      sigi234S Online
                                      sigi234S Online
                                      sigi234
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #2243

                                      @Stephan-Schleich sagte in jarvis v2.0.0 - just another remarkable vis:

                                      @sigi234 Kannst doch den zweig in'n json speichern und dann wieder am neuen host importieren
                                      2b93dc9b-ffdf-4965-bc18-a6405c431937-image.png

                                      Das funktioniert nicht.

                                      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                      Immer Daten sichern!

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        mirK
                                        schrieb am zuletzt editiert von
                                        #2244

                                        gibt es eine Möglichkeit die Farbe (hier der Gelbe Stop Button) zu ändern ? ich habe mich tot gesucht und schon alles mögliche ausprobiert :-(

                                        3b28d31a-86a2-435a-a81f-bc3a5ff65388-image.png

                                        W 1 Antwort Letzte Antwort
                                        0
                                        • M mirK

                                          gibt es eine Möglichkeit die Farbe (hier der Gelbe Stop Button) zu ändern ? ich habe mich tot gesucht und schon alles mögliche ausprobiert :-(

                                          3b28d31a-86a2-435a-a81f-bc3a5ff65388-image.png

                                          W Offline
                                          W Offline
                                          WW1983
                                          schrieb am zuletzt editiert von WW1983
                                          #2245

                                          @mirK
                                          Ja. Ist die sekundäre Farbe. Die musst du anpassen

                                          Screenshot 2020-12-15 180030.png

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          584

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe