FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: FrauHolle am 03 Januar 2017, 20:18:47

Titel: Variable für aktuelle Uhrzeit korrekt füllen
Beitrag von: FrauHolle am 03 Januar 2017, 20:18:47
Hi,

ich möchte diese Variable text.txt mit der Uhrzeit füllen (also "17:01" z.B.)
Zitattext.txt="XXXXX"


Diese funktionieren:
ZitatW1.txt="[Wetter:fc1_day_of_week]";
p0.pic={(MapWeatherToNextionIcon(ReadingsVal("Wetter","fc1_code",100)))};
t0.txt="Temp: [Wetter:fc1_low_c]-[Wetter:fc1_high_c]°C";
t0b.txt="[Wetter:condition]";
t0c.txt="Regen: [WetterProPlanta:fc0_chOfRainDay] /[WetterProPlanta:fc0_chOfRainNight]% Tag/N8";

Ziel ist es das Nextion Diplay mit grober Uhrzeit zu versorgen.

Die oberen Werte stammen aus dem ProPlanta Modul, aber für die Uhrzeit habe ich schone eine Menge probiert, leider ohne Erfolg.
Daher freue ich mich über jeden Hinweis, vor allem habe ich noch nicht verstanden wie man "so etwas" direkt auf der Konsole testen kann.
Titel: Antw:Variable für aktuelle Uhrzeit korrekt füllen
Beitrag von: viegener am 03 Januar 2017, 22:46:41
Perl/FHEM stellt bereits eine Funktion FmtTime bereit für die Uhrzeit mit Sekunden, das nur noch etwas gekürzt

text.txt={(substr(FmtTime(time()),0,5) )}


Titel: Antw:Variable für aktuelle Uhrzeit korrekt füllen
Beitrag von: FrauHolle am 04 Januar 2017, 09:21:08
Danke, das sieht auf der Konsole gut aus.

Zitatodroid@odroid:~$ telnet localhost 7072
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
{(substr(FmtTime(time()),0,5)) }
09:15

Aber als Eintrag in der Konfigdatei passiert nichts bei mir. (Genauso wie bei falschen Einträgen)
Aber so erhalte ich ein Ergebnis: text.txt="01:23"
Muss da evtl. noch der Variablentyp umformatiert werden in Richtung String oder so ?
Titel: Antw:Variable für aktuelle Uhrzeit korrekt füllen
Beitrag von: viegener am 04 Januar 2017, 10:23:05
Der Ausdruck ist richtig, aber für das Nextion muss er in Anführungsstriche gesetzt werden, wie die anderen Ausdrücke mit Text bei Dir auch, also:

text.txt="{(substr(FmtTime(time()),0,5) )}"

Und wenn es nicht die letzte Zeile ist auch noch ein Semikolon am Ende
Titel: Antw:Variable für aktuelle Uhrzeit korrekt füllen
Beitrag von: FrauHolle am 04 Januar 2017, 15:53:51
Danke Dir. Ich schätze so hatte ich das, jedoch in der letzten Zeile auch einen ";".

Nun läuft es erst mal, ich muss nur wegen der Aktualisierung noch etwas justieren...