NEWS
Datenpunkt von Sekunden in Stunden umrechnen
-
Hallo.
Ich habe den Adapter tuya und lese dort meinen Saugroboter aus.
Die Laufzeit wird im Datenpunkt in Sekunden angezeigt.
An welcher Stelle kann ich die Berechnung in Stunden coden?LG
Chris -
@chris47803 einen neuen Alias anlegen und mittels der Konvertierfunktion umrechnen
-
Den Adapter habe ich jetzt installiert und einen Alias angelegt.
Nun komme ich leider nicht weiter, wie ich konvertieren kann. -
@chris47803 du brauchst keinen Adapter installieren. Ich würde ihn sogar wieder deinstallieren- du legst einfach einen Datenpunkt unter alias.0 an und verweist auf deinen originalen Datenpunkt. Du kannst wenn du die Stunden nur als Zahl willst, den Wert einfach durch 3600 teilen oder dir eine formatierte Textausgabe anzeigen lassen. Ich mach dir gleich ein Beispiel
Bleibt also so als Zahl mit dieser Konvertierung
val/3600
so auch und wird zum nächsten Integer gerundet:
Math.round(val/3600)
so erhälst Du als Zahl richtig gerundete Kommastellen.
Math.round(val/3600*10)/10
so wird es zum String aber auf Deine Kommastellen gerundet aber nicht formatiert
(val/3600).toPrecision(3)
Number.parseFloat(val/3600).toFixed(2);
als String in deutscher Schreibweise und einer Nachkommastelle:
Number.parseFloat(val/3600).toLocaleString('de-DE',{maximumFractionDigits: 1})
oder so:
Number.parseInt(val/3600) + ' Stunden ' + Number.parseInt(val%3600/60) + ' Minuten'
-
die Dokumentation zu dem von @mickym vorgebrachten Vorschlag:
https://www.iobroker.net/#de/documentation/basics/alias.md
EDIT:
Danke wusste nicht, dass das so einfach ist, mache das immer per ScriptJetzt nicht mehr
-
@mickym sagte in Datenpunkt von Sekunden in Stunden umrechnen:
(val/3600).toPrecision(3)
Hallo.
Dank deiner MEGA Anleitung funktioniert es.
Ich mache es aber weiterhing mit dem Alias Adapter.LG
Chris