Spalten zusammenfassen in einzelnen Zeilen einer Readingsgroup

Begonnen von Invers, 19 August 2024, 06:43:44

Vorheriges Thema - Nächstes Thema

Invers

Ist es grundsätzlich überhaupt möglich, die unten im Screenshot gezeigte Tabelle in einer rg darzustellen?
Das Problem ist hier in Zeile 3. Als html-Code geht das.

<table border="1">
  <tr>
    <td>Spalte 1</td>
    <td>Spalte 2</td>
    <td>Spalte 3</td>
    <td>Spalte 4</td>
    <td>Spalte 5</td>
  </tr>
  <tr>
    <td>Spalte 1</td>
    <td>Spalte 2</td>
    <td>Spalte 3</td>
    <td>Spalte 4</td>
    <td>Spalte 5</td>
  </tr>
  <tr>
    <td>Spalte 1</td>
    <td colspan="3">Zusammengeführte Spalten 2, 3 und 4</td>
    <td>Spalte 5</td>
  </tr>
  <tr>
    <td colspan="5">Nur eine Spalte</td>
  </tr>
  <tr>
    <td colspan="5">Nur eine Spalte</td>
  </tr>
  <tr>
    <td colspan="5">Nur eine Spalte</td>
  </tr>
</table>

Meine rg kann das mit dem Attribut valueColumns nicht abbilden. 
attr rg_Yamaha valueColumns { "Sender" => 'colspan="5"', \
  "Titel_Demnaechst" => 'colspan="5"',\
  "Titel_Gerade" => 'colspan="5"', \
  "DI_Sender_DAB" => 'colspan="3"', }


Hier noch der Code der rg:

defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DU_leiser:state,state@DI_Sender_DAB,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle { 'r:4,c:1'=>'style="color:yellow" ',\
'r:5,c:1'=>'style="color:lime" ',\
'r:6,c:1'=>'style="color:lightgray" ' }
attr rg_Yamaha fp_Schalter 515,167,0,
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style='text-align:center'
attr rg_Yamaha valueColumns { "Sender" => 'colspan="5"', \
  "Titel_Demnaechst" => 'colspan="5"',\
  "Titel_Gerade" => 'colspan="5"', \
  "DI_Sender_DAB" => 'colspan="3"', }
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

#1
hi,

ja.....


defmod rg.ESP51.Heizung readingsGroup FV:<Fernwärme>,<Heizung>,<Warmwasser>\
FV:<Vorlauf>,<Rücklauf>,<Vorlauf>,<Rücklauf>,<Vorlauf>,<Rücklauf>\
FV:state@FV,state@FR,state@HV,state@HR,state@WV,state@WR\
FV:<Wasserwasser>,<>,<Pumpe>\
FV:<Wasser>,<Speicher>,<Zirkulation>,<>,<Wasser>,<Heizung>\
FV:state@WW,state@WS,state@WZ,<>,state@WP,state@HP
attr rg.ESP51.Heizung alias Fernwärme
attr rg.ESP51.Heizung cellStyle {"r:1" => 'style="text-align:center;;;; color:#FFA500;;;;"', "r:2" => 'style="text-align:center;;;; color:#FFA500;;;;"',\
 "r:4" => 'style="text-align:center;;;; color:#FFA500;;;;"', "r:5" => 'style="text-align:center;;;; color:#FFA500;;;;"',\
 "r:6,c:5" => 'style="text-align:center;;;; color:#FFA500;;;;"',\
 "r:6,c:6" => 'style="text-align:center;;;; color:#FFA500;;;;"',\
 \
 }
attr rg.ESP51.Heizung noheading 1
attr rg.ESP51.Heizung nonames 1
attr rg.ESP51.Heizung notime 1
attr rg.ESP51.Heizung room heizung,readingsGroup
attr rg.ESP51.Heizung style style="border:0px;;;;background:none;;;;box-shadow:none;;;;color:#FFA500;;;;"
attr rg.ESP51.Heizung valueColumns { "r:1,c:1" => 'colspan="2"', "r:1,c:2" => 'colspan="2"', "r:1,c:3" => 'colspan="2"',\
  "r:4,c:1" => 'colspan="3"', "r:4,c:3" => 'colspan="2"' }
attr rg.ESP51.Heizung valueIcon { state => '%devStateIcon'}

valueColumns { "r:1,c:1" => 'colspan="2"', "r:1,c:2" => 'colspan="2"', "r:1,c:3" => 'colspan="2"',\
  "r:4,c:1" => 'colspan="3"', "r:4,c:3" => 'colspan="2"' }

hier ist das mittlere Feld 3 Zellen breit: (Wetter RG)

{ "Wetter" => 'colspan="3"', "direction" => 'colspan="3"' }
gruss
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

eisman

hi,

oder so....

defmod rg_Yamaha readingsGroup rg_Yamaha:!A1,!A2,!A3,!A4,!A5\
rg_Yamaha:!B1,!B2,!B3,!B4,!B5\
rg_Yamaha:!C1,!C2,!C3\
rg_Yamaha:!D1\
rg_Yamaha:!E1\
rg_Yamaha:!F1
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
"r:4" => 'style="text-align:center;; color:yellow;;    font-size:10px;; font-weight:bold;;"',\
"r:5" => 'style="text-align:center;; color:lime;;      font-size:10px;; font-weight:bold;;"',\
"r:6" => 'style="text-align:center;; color:lightgray;; font-size:10px;; font-weight:bold;;"'\
}
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "C2" => 'colspan="3"', \
  "D1" => 'colspan="5"',\
  "E1" => 'colspan="5"', \
  "F1" => 'colspan="5"' }
attr rg_Yamaha valueFormat { "A1" => "TV", "A2" => "YTube" , "A3" => "Netflix", "A4" => "Radio", "A5" => "Power",\
  "C1" => "Hallo","C2" => ReadingsVal("rg_Yamaha","state","AAAA"), "C3" => "Hallo1",\
  "D1" => "das ist das Wetter von Heute",\
  "E1" => "das ist das Wetter von Morgen",\
  "F1" => "Und Das ist kein wetter"}
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}

gruss
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

Vielen Dank. Du hast dir echt viel Mühe gegeben, aber es will bei mir einfach nicht funktionieren. Ich sehe, dass es in deinem Beispielcode geht, aber da sind auch nur Texte drinnen. Vielleicht gibt es ja Probleme mit Schaltflächen.

Wenn ich dein Beispiel mit der Syntax
"r:4,c:1" => 'colspan="3"'versuche, geht es gar nicht. Die rg sieht dann  aus, wie unten im Bild dargestellt.
Falls du einen Moment Zeit hast, würdest du dann gelegentlich mal in meinen Code gucken? Ich fürchte, Scheuklappen auf zu haben. Ich probiere seit heute Morgen alle möglichen Varianten, die mir einfallen.

Ich danke dir herzlich im Voraus.


defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DU_leiser:state,state@DI_Sender_DAB,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
"r:4" => 'style="text-align:center;; color:yellow;;    font-size:18px;;',\
"r:5" => 'style="text-align:center;; color:lime;;      font-size:18px;;',\
"r:6" => 'style="text-align:center;; color:lightgray;; font-size:18px;;"'\
}
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "r:3,c:2" => 'colspan="3"',"r:4,c:1" => 'colspan="5"',"r:5,c:1" => 'colspan="5"',"r:6,c:1" => 'colspan="5"' }
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

#4
hi,

ja ich schaue mal, eins ist schon "state@DI_Sender_DAB" wird nicht gehen,


defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DU_leiser:state,!C2,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
"r:4" => 'style="text-align:center;; color:yellow;;    font-size:18px;;',\
"r:5" => 'style="text-align:center;; color:lime;;      font-size:18px;;',\
"r:6" => 'style="text-align:center;; color:lightgray;; font-size:18px;;"'\
}
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "C2" => 'colspan="3"',"r:4,c:1" => 'colspan="5"',"r:5,c:1" => 'colspan="5"',"r:6,c:1" => 'colspan="5"' }
attr rg_Yamaha valueFormat { "C2" => ReadingsVal("DI_Sender_DAB","state","----")}
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}

valueColumns geht nicht mit "r:4,c:1" => 'colspan="5"'..

deswegen !C2 als platzhalter
und befüllen mit

valueFormat { "C2" => ReadingsVal("DI_Sender_DAB","state","----")}
gruss

PS: Schaltflächen gehen auch anders : (auswahl Box)

      commands { "desired-temp" => "desired-temp:"}
      der rest ist eigendlich kein problem
oder
 du meintest sowas siehe bild
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

Danke. Ja, da hast du Recht. Das hatte ich gestern schon probiert, aber das ging/geht auch nicht.
Bemerkenswert ist auch, dass die Sender und Titel auch so nicht mehr funktionieren.
Deshalb hatte ich gefragt, ob das überhaupt möglich ist.
Siehe neues Bild unten.

Scheint so, als müsste ich mich von meiner Idee verabschieden.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

#6
doch es geht kleinen Moment...

meintest du so?
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

Kein Problem, bin sehr geduldig. Hier mal das DOIF, aus dem ich des Listenfeld entnehme:


defmod DI_Sender_DAB DOIF ##
attr DI_Sender_DAB alias Auswahl Sender
attr DI_Sender_DAB group Multimedia
attr DI_Sender_DAB room 1_Info,YAMAHA
attr DI_Sender_DAB uiState {package ui_Table}|" "||widget ([DI_Sender_DAB:Auswahl],"01 Absolut TOP,02 Absolut BELLA,03 Absolut OLDIE,04 RTL RADIO,05 105.5 SPREERADIO")

setstate DI_Sender_DAB initialize
setstate DI_Sender_DAB 2024-08-19 15:59:18 Auswahl 02 Absolut BELLA
setstate DI_Sender_DAB 2024-08-17 16:18:55 Senderliste 66 105
setstate DI_Sender_DAB 2024-08-17 14:43:07 Speicherplatz 0
setstate DI_Sender_DAB 2024-08-18 09:15:30 mode enabled
setstate DI_Sender_DAB 2024-08-18 09:15:30 state initialize
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

Invers

Zitat von: eisman am 19 August 2024, 18:50:54doch es geht kleinen Moment...

meintest du so?
Ja, fast. Links vom Feld soll ein Icon leiser und rechts neben dem Feld soll Icon lauter rein (s. Code.
In Zewile 2, also darüber, sollen 5 icons.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

#9
Hi,

außer die eine Änderung, mit Fernseher benannt, bleibt alles so wies ist....

es wird auch keine liste aus meinem DAB-Radio Angezeigt, geht auch nur mit einem dummy

gruss

defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DU_leiser:state,programm@Fernseher,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
"r:4" => 'style="text-align:center;; color:yellow;;    font-size:18px;;',\
"r:5" => 'style="text-align:center;; color:lime;;      font-size:18px;;',\
"r:6" => 'style="text-align:center;; color:lightgray;; font-size:18px;;"'\
}
attr rg_Yamaha commands { "programm" => "programm:" }
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "programm" => 'colspan="3"',"r:4,c:1" => 'colspan="5"',"r:5,c:1" => 'colspan="5"',"r:6,c:1" => 'colspan="5"' }
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}

defmod Fernseher dummy
attr Fernseher alexaName Fernseher
attr Fernseher alias Fernseher
attr Fernseher devStateIcon on:it_television@#00FF00:off \
off:it_television@#8C8C8C:on\
.*:it_television@#FF0000:off
attr Fernseher devStateStyle style="text-align:center;; font-weight:bold;; font-size:10px;;"
attr Fernseher genericDeviceType switch
attr Fernseher group switch
attr Fernseher homebridgeMapping Mute=mute,cmd=mute,ValueOn=on,ValueOff=off,cmdOn=mute+on,cmdOff=mute+off\
ChannelController:reading=channel,cmd=channel
attr Fernseher icon hue_filled_outlet@#00FF00
attr Fernseher readingList state mute channel channelName volume programm
attr Fernseher room Wohnzimmer,amazon,multimedia
attr Fernseher setList state:on,off on off subwoofer-ein:07:00,08:00,09:00,10:00 subwoofer-aus:20:00,21:00,22:00,23:00,00:00 samsung:on,off yamaha:on,off kathrein:on,off subwoofer:aus,ein mute:on,off channel volume programm:ARD,ARDalpha,arte,BR,ComedyCentral,DMAX,HR,kabel1,NDR,MDR,one,pro7,pro7maxx,RBB,RTL,rtl2,RTLup,NITRO,superRTL,sat1,sat1gold,3sat,SWR,SR,servusTV,sixx,tele5,WDR,vox,ZDF,zdfNEO,ZDFinfo,N24doku,kabel1doku,phönix,tagesschau,n-tv,welt
attr Fernseher useSetExtensions 1
attr Fernseher webCmd programm

das programm wird dann peer notify an das TVdevice weitergegeben
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

OK, nochmals vielen Dank, probiere ich aus und melde mich morgen mit dem Ergebnis.

Danke für den Aufwand, weiss ich zu würdigen.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

Okay,

defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DI_Sender_DAB:state,uiState@DI_Sender_DAB,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
"r:4" => 'style="text-align:center;; color:yellow;;    font-size:18px;;',\
"r:5" => 'style="text-align:center;; color:lime;;      font-size:18px;;',\
"r:6" => 'style="text-align:center;; color:lightgray;; font-size:18px;;"'\
}
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "uiState" => 'colspan="3"', "r:3,c:2" => 'colspan="3"',"r:4,c:1" => 'colspan="5"',\
"r:5,c:1" => 'colspan="5"',"r:6,c:1" => 'colspan="5"' }
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}

valueColumns ohne funktion, aber eine anzeige


gruss
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

Anzeige schon, aber nicht über 3 Spalten. :-)

Ich habe rg und Dummy bereits übernommen. Sieht gut aus. Nun muss ich nur nich die Sender und Titel auf 5 Spalten setzen. Geht aber, hatte ich ja schon.

Nochmals danke.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

eisman

hi,

bitte,

defmod rg_Yamaha readingsGroup UM7100PLB:!A1,!A2,!A3,!A4,!A5\
UM7100PLB:!B1,!B2,!B3,!B4,!B5\
UM7100PLB:!C1,programm@Fernseher,!C3\
UM7100PLB:channelName\
UM7100PLB:channelCurrentTitle\
UM7100PLB:channelNextTitle
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
 "r:1"                 => 'style="text-align:center;; color:lime;;      font-size:12px;;',\
 "channelName"         => 'style="text-align:left;;   color:yellow;;    font-size:12px;;',\
 "channelCurrentTitle" => 'style="text-align:left;;   color:lime;;      font-size:12px;;',\
 "channelNextTitle"    => 'style="text-align:left;;   color:lightgray;; font-size:12px;;"'\
}
attr rg_Yamaha commands { \
"B1"       => "set UM7100PLB launchApp TV", \
"B2"       => "set UM7100PLB launchApp YouTube",\
"B3"       => "set UM7100PLB input HDMI_1", \
"B4"       => "set UM7100PLB input HDMI_2",\
"B5.on"    => "set Fernseher off",       \
"B5.off"   => "set Fernseher on",\
"C1"       => "set UM7100PLB volumeDown",   \
"C3"       => "set UM7100PLB volumeUp",\
"programm" => "programm:"\
}
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "programm" => 'colspan="3"', "channelName" => 'colspan="5"',\
"channelCurrentTitle" => 'colspan="5"',"channelNextTitle" => 'colspan="5"' }
attr rg_Yamaha valueFormat {\
if   ($READING eq "A1") {$VALUE = "TV"}\
elsif($READING eq "A2") {$VALUE = "YouTube"}\
elsif($READING eq "A3") {$VALUE = "HDMI 1"}\
elsif($READING eq "A4") {$VALUE = "HDMI 2"}\
elsif($READING eq "A5") {$VALUE = "Power"}\
\
elsif($READING eq "B1") {$VALUE = ReadingsVal("UM7100PLB","launchApp","-")}\
elsif($READING eq "B2") {$VALUE = ReadingsVal("UM7100PLB","launchApp","-")}\
elsif($READING eq "B3") {$VALUE = ReadingsVal("UM7100PLB","input","-")}\
elsif($READING eq "B4") {$VALUE = ReadingsVal("UM7100PLB","input","-")}\
elsif($READING eq "B5") {$VALUE = ReadingsVal("Fernseher","state","off")}\
}
attr rg_Yamaha valueIcon {\
'B1.TV'      => "rc_TV2@#00FF00",        'B1.YouTube' => "rc_TV2@#8C8C8C",   'B1.-' => "rc_TV2@#8C8C8C",\
'B2.YouTube' => "rc_TV2@#00FF00",        'B2.TV'      => "rc_TV2@#8C8C8C",   'B2.-' => "rc_TV2@#8C8C8C",\
'B3.HDMI_1'  => "rc_VIDEO@#00FF00",      'B3.HDMI_2'  => "rc_VIDEO@#8C8C8C", 'B3.-' => "rc_VIDEO@#8C8C8C",\
'B4.HDMI_2'  => "rc_VIDEO@#00FF00",      'B4.HDMI_1'  => "rc_VIDEO@#8C8C8C", 'B4.-' => "rc_VIDEO@#8C8C8C",\
'B5.on'      => "it_television@#00FF00", 'B5.off' => "it_television@#8C8C8C",\
\
'C1' => 'rc_VOLMINUS@lightgreen', 'C3' => 'rc_VOLPLUS@lightgreen'\
}

damit der Abend nicht langweilig wird.

mit befehle
gruss
1x FHEM Debian, Homematic,ZigBee,FS20 / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian, Homematic,ZigBee         / 1X Raspberry, ConBee / 5x ESP
1x FHEM Debian,MQTT                               / 1X Raspberry, i2c,onewire,gpio
1x auf Windows 2012 Hyper-V-S

Invers

Ich hatte heute Morgen schon einmal geantwortet, aber der Beitrag scheint weg zu sein.

Ich habe mich entschieden und den Code übernommen und angepasst.
Die Darstellung funktioniert und auch der Abruf der Sender. Bin voll auch zufrieden.

Was soll ich sagen? eisman ist cool :-) (Sorry, musste jetzt sein).
Du bist echt der absolute Profi. Vielen Dank nochmals.

Ich zeige hier mal den Code, wie ich ihn nun verwende. Vieles habe und hatte ich bereits in der myUtils geregelt. RG und Dummy von dir habe ich nach kleinen Anpassungen übernommen.

Falls jemand an meinen laienhaften Routinen Interesse hat, bitte hier melden.
Mein Yamaha stellt kein HTML zur Verfügung. Ich muss also über die zum Glück gelieferte API alle Befehle realisieren.

defmod rg_Yamaha readingsGroup <TV>,<YTube>,<Netflix>,<Radio>,<Power>\
DU_TV:state,state@DU_YouTube,state@DU_Netflix,state@DU_Radio,state@Yamaha\
DU_leiser:state,programm@DU_Senderliste,state@DU_lauter\
DI_SenderTitel:Sender\
DI_SenderTitel:Titel_Gerade\
DI_SenderTitel:Titel_Demnaechst
attr rg_Yamaha alias Yamaha Szenen
attr rg_Yamaha cellStyle {\
  "r:1" => 'style="text-align:center;;"',\
  "r:4" => 'style="text-align:center;; color:yellow;;    font-size:18px;;"',\
  "r:5" => 'style="text-align:center;; color:lime;;      font-size:18px;;"',\
  "r:6" => 'style="text-align:center;; color:lightgray;; font-size:18px;;"'\
}
attr rg_Yamaha commands { "programm" => "programm:" }
attr rg_Yamaha fp_Schalter 515,167,0,
attr rg_Yamaha nonames 1
attr rg_Yamaha notime 1
attr rg_Yamaha room 1_Info,Wohnung->Wohnzimmer,YAMAHA
attr rg_Yamaha style style="border:0px;;;;background:none;;;;box-shadow:none;;;;"
attr rg_Yamaha valueColumns { "programm" => 'colspan="3"',"Sender" => 'colspan="5"',"Titel_Gerade" => 'colspan="5"',"Titel_Demnaechst" => 'colspan="5"' }
attr rg_Yamaha valueIcon { state => '%devStateIcon' }
attr rg_Yamaha valueStyle {'style="text-align:center"'}

Dummy

defmod DU_Senderliste dummy
attr DU_Senderliste group Multimedia
attr DU_Senderliste readingList programm
attr DU_Senderliste room YAMAHA
attr DU_Senderliste setList programm:01_Absolut_TOP,02_Absolut_BELLA,03_Absolut_OLDIE,04_RTL_RADIO,05_105.5_SPREERADIO
attr DU_Senderliste webCmd programm

Den Dummy DU_Senderliste setList  befülle ich automatisch über myUtils, falls ich neue Sender abspeichere. Senderaufruf auf Yamaha erfolgt dann per DOIF.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2