Jetzt wird mir in der Sitemap das auch soweit angezeigt, nur sind es bei 577980s nicht 16h 33min, sondern 160h und xx min.
Wie bekomme ich das hin dass die Stunden 3stellig angezeigt werden?
Ok, probiere ich aus.
Wo muss der Code hin?
Hab eine Datei SecToDHMS.js mit dem Code erstellt und erhalte aber nun folgenden Fehler:
Failed transforming the state '577980 s' on item 'LandroidTotalTime' with pattern 'JS(config:js:SecToDHMS):%s': Could not get script for UID 'config:js:SecToDHMS'.
Ich mache es über die UI. Dort die Transformation mit dem Namen SecToDHMS anlegen. Wenn du das über Files machst is die state description etwas anders siehe https://next.openhab.org/docs/configura ... ns.html#JS aber da hab nicht so viel plan da ich nur die UI nutze
openHAB4.1.2 in einem Docker Container auf RPI4b-4GB, AVM: Fritz!Box 7590 - DECT301 - Comet, DECT210, DECT200, DECT440, Alexa, Shelly, Tasmota, ESP Easy, WLED
Stimmt, ist bei mir auch so. Hab ich noch nie bemerkt. ich nutze da hauptsächlich die UI um das anzuschauen.
Da muss ich erst mal schauen. Da hab ich gerade keine Ahnung warum das so ist.
hab das auch mal mit [%s] versucht aber das zeigt mir das auch falsch an.
Vielleicht hat da noch jemand einen Tipp
openHAB4.1.2 in einem Docker Container auf RPI4b-4GB, AVM: Fritz!Box 7590 - DECT301 - Comet, DECT210, DECT200, DECT440, Alexa, Shelly, Tasmota, ESP Easy, WLED
Ich habe diesen Beitrag nun gefunden der das Problem beschreibt. Dein Ansatz passt also.
Wenn ich es in der Sitemap so definiere, dann funktioniert es.
Moin,
ja, Transformation nutzen. Ist oben und in dem von Dir verlinktem Beitrag beschrieben. Wenn diese über die UI (Settings/Transformation/+/JS) angelgt wurde funktioniert es bei mir nach diesem Schema
Text item=FritzBox_64_Uptime label="Uptime [JS(config:js:secs2dhms:de):%d]"
%1$td liefert nur bis 31 Tage aus. Wir hatten mal noch "%1$tj-1d %1$tH:%1$tM" oder "Tag %1$tj %1$tH:%1$tM". Auch da wird prinzipbedingt immer 1 Tag zu viel angezeigt.
TomW80 hat geschrieben: ↑22. Apr 2024 20:06
habe erst jetzt gesehen dass es in der Sitemap nun einen Tag mehr anzeigt.
Was leicht erklärbar ist, denn es handelt sich nicht um eine angezeigte Zeitspanne, sondern um ein Datum (also einen Zeitpunkt) was da angezeigt wird. Ein Zeitpunkt wird als Kombination aus Datum und Uhrzeit angegeben, im Datum gibt es keinen Tag 0. 0 Sekunden Länge werden als 01.01.1970 0:00:00 Uhr dargestellt (weil Unix-Zeitstempel).
Am ehesten wird man wie von Harka beschrieben mit einer Transformation per Script weiterkommen. Das Script kann wahlweise nur die Anzeige beeinflussen oder den Wert direkt im Item speichern (dann muss das Item aber vom Typ String sein - die Transformation wird dann im Link zwischen Channel und Item eingerichtet).
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.2.2, LXC), mit openHABian eingerichtet