HTML Formatierung in Item State?

GUI Relevanten, PaperUI, BasicUI, HabPanel ...

Moderatoren: seppy, udo1toni

Antworten
rambuster
Beiträge: 4
Registriert: 19. Nov 2020 14:28

HTML Formatierung in Item State?

Beitrag von rambuster »

Hallo

ich bin recht neu in der openHAB Gemeinde angekommen, und bin mit meiner Installation (openHAB 2.5.10) auch schon recht weit.
Nun stehe ich gerade vor dem Problem, dass ich z.B. das Beispiel aus dem Samples-Artikel nachzuvollziehen, aber es klappt nicht (richtig).
Das Problem ist, das mir der Text <a href='xyz'>Google</a> angezeigt wird, anstatt dem Link... (es geht um die ClassicUI, ich konnte nirgendwo erkennen, dass es da spezielle UIs gibt, für die das Samples NICHT gelten würde).
Ist es mittlerweile nicht mehr möglich, den State im Item per HTML Code anzupassen? Der gesamte Text wird anscheinend "escaped" (< -> &lt;, > -> &gt;), so steht es letztlich im Quellcode.

Muss man das irgendwo aktiv erlauben, oder das escaping aktiv irgendwo ausschalten?

Viele Grüße
Olaf

Benutzeravatar
peter-pan
Beiträge: 1190
Registriert: 28. Nov 2018 12:03
Answers: 9
Wohnort: Schwäbisch Gmünd

Re: HTML Formatierung in Item State?

Beitrag von peter-pan »

Hallo Olaf,
die Doku, die du da studiert hast bezieht sich auf OH1. Da gibt es aber auch einen Link zur Version OH2 Doku. Vielleicht wirst du da ja fündig.

rambuster
Beiträge: 4
Registriert: 19. Nov 2020 14:28

Re: HTML Formatierung in Item State?

Beitrag von rambuster »

Hallo Peter

Du hast recht, aber exakt diese Seite wird aus dem Sitemap Artikel der aktuellen openHAB-Doku verlinkt...
von daher dachte ich, diese Implikation wäre zulässig...

Viele Grüße
Olaf

Benutzeravatar
peter-pan
Beiträge: 1190
Registriert: 28. Nov 2018 12:03
Answers: 9
Wohnort: Schwäbisch Gmünd

Re: HTML Formatierung in Item State?

Beitrag von peter-pan »

Ich würde dir gerne helfen, aber ich bin mir nicht ganz sicher was du meinst. Willst du eine bestimmte Internetseite anschauen ?

rambuster
Beiträge: 4
Registriert: 19. Nov 2020 14:28

Re: HTML Formatierung in Item State?

Beitrag von rambuster »

Hallo Peter

ich wollte mich mit dem geschilderten Fall nur auf ein offizielles Beispiel beziehen.
EIGENTLICH möchte ich ja gerne meine Itemstates in der ClassicUI per HTML aufhübschen (Farben, Kursiv, Fett usw.), aber es scheint als würde jeglicher HTML-Code escaped, so dass er nicht im Itemstate gerendert wird. (die Zeichen < und > werden in &lt; und &gt; umgesetzt, so dass dann im Itemstate letztich der "Quelltext" im Klartext steht...)

Ich habe bisher keinen Hinweis gefunden, dass das ausgewiesenermaßen nicht funktionieren KANN, daher frage ich mal, WIE es geht...

Viele Grüße
Olaf

Benutzeravatar
sihui
Beiträge: 1040
Registriert: 11. Apr 2018 19:03
Answers: 8

Re: HTML Formatierung in Item State?

Beitrag von sihui »

rambuster hat geschrieben: 19. Nov 2020 16:25 Ich habe bisher keinen Hinweis gefunden ...
https://community.openhab.org/t/basicui ... html/40827

Gilt auch für ClassicUI.
openHAB2 mit Zwave, Tinkerforge, Alexa, ESP8266, Logitech Harmony, Philips HUE und Xiaomi Hardware

Benutzeravatar
udo1toni
Beiträge: 4810
Registriert: 11. Apr 2018 18:05
Answers: 50
Wohnort: Darmstadt

Re: HTML Formatierung in Item State?

Beitrag von udo1toni »

Ich möchte es mal anders formulieren:

Es mag sein, dass Du mit genug Aufwand tatsächlich eine Möglichkeit findest, die Darstellung in Basic UI/Classic UI zu manipulieren. Das fällt dann aber in die Kategorie "übler Hack".
Die Basic UI ist, wie ihr Name schon sagt, Basic. Nimm sie wie sie ist oder nimm eine andere UI.
HABpanel erlaubt eine wesentlich detailliertere Konfiguration der UI (leider zu einem verhältnismäßig hohen Preis... die UI ist mindestens für jede Gerätekategorie anzupassen, eigentlich sogar für jede grafische Auflösung)
Du könntest auch Comet Visu nutzen, die auch in openHAB3 noch unterstützt wird (die Classic UI ist da nicht mehr mit an Bord), oder, wenn Du eh eigene Vorstellungen hast, wie die UI aussehen soll, baue eine komplett eigene UI und nutze die REST API als Schnittstelle. Du wärst zumindest nicht der Erste.

Wobei das natürlich auch für den üblen Hack gilt... aber das war irgendwie nie wieder ein Thema, seit es OH2 gibt, und die Entwickler nehmen sicher keine Rücksicht auf irgendwelche Hintertüren, die werden im Zweifel zugemauert und verputzt, mit Tapete überkleistert und gestrichen, bis von dem Loch nichts mehr übrig ist. Es gibt offizielle Wege, eigene UIs zu gestalten :)
Dass die Anleitungen - speziell die alten Anleitungen - nicht jedes mal vollständig auf Kompatibilität geprüft werden, sollte eigentlich auch verständlich sein. Es gibt auch noch eine Dokumentation zu einem Update-Script von mir aus OH1-Zeiten. Die Dateien sind aber nicht mehr online, nur die Beschreibung ist nach wie vor da. Entfernen kann ich sie aber auch nicht (oder ich hab mich bisher zu dumm angestellt, das kann auch sein... mit github hab ich immer wieder mal zu kämpfen... ;) )

rambuster
Beiträge: 4
Registriert: 19. Nov 2020 14:28

Re: HTML Formatierung in Item State?

Beitrag von rambuster »

Hallo Udo (oder ist es Toni?)

Danke die Erläuterung. Ich habe mich deswegen so auf die ClassicUI versteift, weil sie ja anscheinend in der iOS openHAB App verwendet wird.
Kann man die App auch mit dem HABPanel "beschicken"?

Nebenbei bemerkt: Das HABPanel verweigert mir auf identische Art und Weise die Zusammenarbeit (alles was ich da an HTML Code angebe, wird identisch an den Widgets ausgegeben, von Bold (<b>) oder Farbe (<p style="color:red">) weit und breit nichts zu sehen...
Muss ich da auf "Benutzerdefinierte Widgets" setzen?

Grüße
Olaf

Benutzeravatar
peter-pan
Beiträge: 1190
Registriert: 28. Nov 2018 12:03
Answers: 9
Wohnort: Schwäbisch Gmünd

Re: HTML Formatierung in Item State?

Beitrag von peter-pan »

Hallo Olaf,

Udo und sihui haben dir hier ja schon das Wesentliche zu deiner Thematik beschrieben. Das Einzige was ich dazu beitragen kann ist, dass du mit Farbe in der Sitemap arbeiten kannst und das auch in Abhängigkeit von bestimmten Kriterien.

Hier ein paar Beispiele aus meinem SetUp:

Code: Alles auswählen

Text item=CurrentTime2  valuecolor=["green"] labelcolor=["green"]

Default item=localHourlyForecastWindchill_00     valuecolor=[>=90="fuchsia",>=25="red",>=18="orange",>=12="blue",>=8="green",>=4="teal",<4="silver"]
                                                 labelcolor=[>=90="fuchsia",>=25="red",>=18="orange",>=12="blue",>=8="green",>=4="teal",<4="silver"]
                                                 label="Windfrösteln aktuell"

Default item=RPi3b_temperature      visibility=[Pi3b_online==ON]
                                    valuecolor=[>=60="red",>=50="orange",>=40="green",>=30="lime",>=20="orange",<4="red"]
                                    labelcolor=[>=60="red",>=50="orange",>=40="green",>=30="lime",>=20="orange",<4="red"]
Text item=Pi3b_online               visibility=[Pi3b_online==OFF]
Details hierzu findest du in der Doku.

Antworten