FHEM Forum

FHEM => Frontends => fronthem / smartVISU => Thema gestartet von: drdownload am 17 Januar 2017, 21:40:19

Titel: Dynamische Elemente
Beitrag von: drdownload am 17 Januar 2017, 21:40:19
Hi,

nachdem ich gerade hin- und herüberlege wie ich am besten das neue Snapcast Modul in meine Smartvisu integriere.

Nachdem sowohl die Anzahl als auch der Name der Streams und Clients ändern können wäre es super, wenn man zb basic.dual dynamisch ein- und ausblenden könnte je nach dem wie viele man braucht, bzw auch passend beschriften.
Titel: Antw:Dynamische Elemente
Beitrag von: dev0 am 18 Januar 2017, 08:53:19
Du kannst zB. eine for Schleife benutzen um aus allen Elementen eines Arrays angepasste Widgets generieren zu lassen.
Quelle widget_ddtlabs_sonos.html (https://github.com/ddtlabs/smartvisu-widgets/blob/master/sonos/widget_ddtlabs_sonos.html):

            {% for neighbor in neighbors%}
              <tr>
              <td id="text">{{ basic.value(id~prefix~neighbor~roomName, prefix~neighbor~roomName, '', '') }}</td>
              <td id="slider">{{ ddtlabs_int_sonos.slider(id~prefix~neighbor~'volumePop', prefix~neighbor~volume, 0, 100, 1, '') }}</td  >
              </tr>
            {% endfor %}


Wenn Du Elemente aus einem Reading beziehen möchtest, dann kannst Du Dir das Selectmenü (https://github.com/ddtlabs/smartvisu-widgets/blob/master/sonos/widget_ddtlabs_sonos.html) / SonosList-Konverter (https://github.com/ddtlabs/smartvisu-widgets/blob/master/sonos/99_fronthemSonosUtils.pm) im Sonos Widget ansehen, dass raman beigesteuert hat.
Titel: Antw:Dynamische Elemente
Beitrag von: drdownload am 18 Januar 2017, 12:53:27
Ah danke, cool, das Sonos ist eh mein Vorbild ;)

Eine Frage noch, geht ohne Konverter-Modul folgendes:

Ich hätte gerne eine Reihe von Tasten um die Audio-Zonen zuschalten zu können beim Player. Ich hätte an basic.dual in einer controllgroup gedacht die folgende Farben annehmen können:

Rot: Offline, Grün: Aktiv, Grau: Verfügbar

Da das aus 2 verschiedenen Readings kommen kann (offline/verfügbar) bzw. welcher Stream gerade in der Zone läuft wird es wohl nicht ohne Converter gehen. Damit verbundene Frage:

Kann ich strings zu button states mappen? zB wenn der Player im Modus Play ist den Play-Button grün machen?
Titel: Antw:Dynamische Elemente
Beitrag von: dev0 am 18 Januar 2017, 13:05:14
Zitat von: drdownload am 18 Januar 2017, 12:53:27
Da das aus 2 verschiedenen Readings kommen kann (offline/verfügbar)
Dann bau Dir ein 3. Reading, dass dann das darstellt, was Du möchtest.

Zitat von: drdownload am 18 Januar 2017, 12:53:27
Kann ich strings zu button states mappen? zB wenn der Player im Modus Play ist den Play-Button grün machen?
Ist das nicht die Grundfunktion von z.B. basic.dual?
Titel: Antw:Dynamische Elemente
Beitrag von: drdownload am 18 Januar 2017, 13:12:37
Stimmt, das mit einem neuen Reading habe ich schon länger nicht gemacht, aber ich habe ja eines, dass den Stromverbrauch je nach Dimlevel anpasst und rechnet. Da sollte das auch gehen.

@basic.dual: natürlich geht das wenn man nicht so doof ist und basic.dual ansieht (das nimmt nur on/off values aber keinen 3.) und statt-dessen basic-Multistate nimmt ;)

edit: leider nimmt multistate zwar mehr werte aber kann dafür kein Einfärben ;) (außer upstream)
Titel: Antw:Dynamische Elemente
Beitrag von: dev0 am 18 Januar 2017, 13:18:57
Zitat von: drdownload am 18 Januar 2017, 13:12:37
@basic.dual: natürlich geht das wenn man nicht so doof ist und basic.dual ansieht (das nimmt nur 0/1) und statt-dessen basic-Multistate nimmt ;)
Wie kommst Du darauf, das basic.dual nur 0/1 darstellen und senden kann?
Titel: Antw:Dynamische Elemente
Beitrag von: drdownload am 18 Januar 2017, 14:00:12
Ich hab das Post oben dazwischen angepasst, dass ich damit meine, dass es nur 2 Zustände kann und nicht 3.