Nur so am Rande: Man kann die Konfiguration in einzelnen Zeilen schreiben, üblich ist aber die Formatierung in einer Zeile pro Item.
Hier im Forum wäre, egal welches Format, die Markierung als Code immer sehr wünschenswert. Sieht dann so aus:
Code: Alles auswählen
Group:Number:AVG gRolladen "Rolladen Buero" <rollershutter> (DG_RolladenBuero)
Number DG_RolladenBuero_Signalstaerke "Rolladen Fenster Signalstärke [%d]" <qualityofservice> (gRolladen, gSignalstaerke) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:0#SIGNAL_STRENTH"}
Rollershutter DG_RolladenBuero "Rolladen Fenster [SCALE(Rolladen.scale):%d]" <rollershutter> (gRolladen) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:1#LEVEL"}
Allerdings hast Du hier einen Zirkelbezug angelegt. Dass dieser keine Ausworkungen hat, liegt nur daran, dass DG_RolladenBuero nicht als Group Item definiert ist. aber auch sonst ist die Definition mindestens unglücklich.
Es gibt verschiedene Itemtypen. Das Rollershutter Item ist für Rollläden zuständig (Ach was...

) und zwar uneingeschränkt. Wenn Du also ein Group Item für Rollershutter definieren möchtest, dann solltest Du dieses ebenfalls als Group:Rollershutter definieren (wenn Du überhaupt den exakten Typen setzt). Natürlich dürfen in dieser Gruppe dann nur Rollershutter Items Gruppenmitglieder sein.
AVG als Funktion berechnet den Durchschnitt aller Status aller Gruppenmitglieder. Deshalb ist die Definition oben gleich in mehrfacher Hinsicht seltsam. Was bringt eine Gruppe, die den Mittelwert zwischen Behanghöhe und Empfangsqualität bildet?
Also sollte die Itemdefinition eher so aussehen:
Code: Alles auswählen
Group:Rollershutter:AVG gRolladen "Rolladen Buero"
Number DG_RolladenBuero_Signalstaerke "Rolladen Fenster Signalstärke [%d]" <qualityofservice> (gSignalstaerke) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:0#SIGNAL_STRENTH"}
Rollershutter DG_RolladenBuero "Rolladen Fenster [SCALE(Rolladen.scale):%d]" (gRolladen) {channel="homematic:HM-LC-Bl1PBU-FM:{...}:1#LEVEL"}
Icons müssen in diesem Fall für Rollershutter nicht gesetzt werden, da durch den Itemtyp als Default vorgegeben.
Eine Gruppe kann unterschiedliche Zwecke erfüllen, z.B. den Mittelwert bilden, Status aufaddieren, eine Unterseite in der Sitemap bilden, die Persistence steuern... deshalb können Items in beliebig vielen Gruppen gleichzeitig Member sein. Man könnte also eine eigene Gruppe (ohne Itemtyp und ohne Aggregation der Werte) gRollDGBuero anlegen und in dieser Gruppe alle Items der Rollläden des Raums zusammenfassen. Dieser Gruppe kann man dann alle Items entnehmen, wenn man in VSCode Sitemaps oder Rules erstellt (dort werden die Items nämlich gruppiert dargestellt).
Auch in Sitemaps ist die Definition eines Widgets über mehrere Zeilen eher unüblich. Also eher so:
Code: Alles auswählen
Text item=DG_RolladenBuero label="Rolladen [Mittelwert: %.1f %%]" {
Switch item=DG_RolladenBuero
}
Natürlich wird auch hier das default Icon verwendet, genau wie das Label aus der Itemdefinition. Dass es zwei Stellen gibt, an denen Label und Icon definiert werden können, liegt darin begründet, dass man das selbe Item beliebig oft innerhalb einer Sitemap einsetzen kann. So kann man z.B. eine Unterseite für alle Rollläden erstellen, in dieser ist es wichtig, den genauen Raum pro Rollladen angezeigt zu bekommen. In einer weiteren Unterseite, die für einen einzelnen Raum angelegt ist, ist der Raumname aber überflüssig. Ebenso könnte es sein, dass man an unterschiedlichen Stellen unterschiedliche Icons verwenden möchte.
Für das Bearbeiten der textkonfiguration bietet sich der offiziell unterstützte Editor VSCode an (man kann ein openHAB Plugin aus dem Editor heraus installieren und konfigurieren). Der Editor bietet eine Ansicht aller Items und Things an (dynamisch), aus diesen Listen heraus kann man per Kontextmenü verschiedene Aktionene ausführen, unter anderem automatisch ein passendes Item für einen Channel erstellen, wahlweise auch für alle Channel eines Things auf einen Schlag. Diese Items werden dann in der aktuell ausgewählten *.items Datei erstellt, so dass man sie bequem eigenen Bedürfnissen anpassen kann. Die Links zum Channel werden dabei automatisch gesetzt.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet