Timestamp eines bestimmten Readings bei readingsGroup anzeigen

Begonnen von ThomasMagnum, 29 September 2020, 10:00:27

Vorheriges Thema - Nächstes Thema

ThomasMagnum

Hallo,

ich habe aktuell ein Problem in einer readingsGroup den Timestamp einer bestimmten Readings angezeigt zu bekommen.
Folgende Readingsgrpup möchte ich anzeigen:
defmod WostehtmeinAuto readingsGroup <Gerät>,<Auto>,<Standort>,<Letzte Änderung>\
Notizen:postme02Name,postme02Cont,{ReadingsTimestamp($DEVICE,"postme02Cont","")}\
Notizen:postme03Name,postme03Cont,{ReadingsTimestamp($DEVICE,"postme03Cont","")}\
Notizen:postme04Name,postme04Cont,{ReadingsTimestamp($DEVICE,"postme04Cont","")}
attr WostehtmeinAuto mapping %ALIAS
attr WostehtmeinAuto nameStyle style="color:blue;;font-weight:bold"
attr WostehtmeinAuto room 00-Test->Test
attr WostehtmeinAuto timestampStyle style="color:blue;;font-weight:bold"


Es handelt sich um Daten aus dem PostMe Modul und ich möchte am Ende der Zeile den Timestamp des Readings z.B. "postme02Cont" angezeigt bekommen.
Den verwendeten Code hatte ich hier im Forum gefunden.
Die Erklärungen in der Wiki bzw. im Commandref verwirren mich mehr als sie mir helfen  :-\

Kann mir jemand erklären wie ich den Timestamp angezeigt bekomme?
Vielen Dank

Otto123

#1
Hi,

ich bin nicht sicher ob ich Deine Frage / Dein Problem richtig verstanden habe, ich versuch es aber mal.

In Erklärungen, Beispielcode usw. ist es üblich, Parameter / Elemente die vom Anwender eingetragen werden müssen in spitze und eckige Klammern zu setzen.

Also <name> ist kein gültiger Code sondern dieses Element muss von Dir so ersetzt werden, wie es in Deiner Umgebung/Anwendung einen Sinn macht.
Dabei steht noch die Betonung auf muss! Es ist ein Pflicht Element. Beispiel <name> steht im Beispielcode, Du ersetzt durch  willi

Steht das Ganze in eckigen Klammern [otpional] ist dieser Teil ein optionaler Parameter, man kann ihn auch weglassen. Häufig wird dann ein default dafür genommen.
Siehe Beispiel Zeile von readingsGroup define <name> readingsGroup <device>[:regex] [<device-2>[:regex-2]] ... [<device-n>[:regex-n]]

Das betrifft Erklärungen! Im Code selbst können sehr wohl jede Art von Klammern vorkommen!

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

xenos1984

@Otto123:

Wenn ich mich richtig erinnere, gehören die spitzen Klammern bei readingsGroup zur Syntax, um feste Zeichenketten z.B. als Überschrift einzubauen:

http://wiki.fhem.de/wiki/ReadingsGroup#Ausgabestil_.28hier_rechtsb.C3.BCndig.29

Otto123

#3
@xenos1984 Ja ok, da lag ich wohl in "zweiter Linie" daneben https://fhem.de/commandref_DE.html#readingsGroup
Er hat ja auch nicht wirklich geschrieben, was jetzt nicht funktioniert / das Problem ist.

Dann versuch ich mal weiter: Es müsste ein Device Notizen geben? Kommt denn da ein Wert zurück (FHEM Kommandozeile?
{ReadingsTimestamp("Notizen","postme02Cont","")}

Oder lieg ich immer noch daneben?

Edit: Ich gebe die Tests auf, bei mir wird mit diesem Code FHEM auf nimmer Wiedersehen beendet  :-[

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

ThomasMagnum

Also, ich habs gelöst. Ich habe in der Tat die < und > vergessen, nun wird alles korrekt angezeigt.
<Gerät>,<Auto>,<Standort>,<Letzte Änderung>
Notizen:postme02Name,postme02Cont,<{ReadingsTimestamp($DEVICE,"postme02Cont","")}@reading>
Notizen:postme03Name,postme03Cont,<{ReadingsTimestamp($DEVICE,"postme03Cont","")}@reading>
Notizen:postme04Name,postme04Cont,<{ReadingsTimestamp($DEVICE,"postme04Cont","")}@reading>

Ergibt dann die beigefügte rg

Vielen Dank für Eure Nühe.