stateFormat mit Werten & Zeitstempel - ODER geht, UND nicht?

Begonnen von Pfriemler, 09 Oktober 2017, 21:54:44

Vorheriges Thema - Nächstes Thema

Pfriemler

Ich möchte mir von einem Windsensor seine Werte und den letzten Zeitstempel als State anzeigen lassen. Dafür, so dachte ich, gibt es das Attribut stateFormat.
Letzte Meldung: [$name:wind:t]
ergibt Letzte Meldung: 2017-10-09 18:48:09. Prima. Hier wird "wind" nicht durch das Reading ersetzt.
Wind: wind km/h,  Richtung: wind_direction °
ergibt Wind: 4.3 km/h, Richtung: 355 °. Wunderbar.
Jetzt also die Kombination:
Wind: wind km/h,  Richtung: wind_direction °, letzte Meldung: [$name:wind:t]
ergibt Wind: wind km/h, Richtung: wind_direction °, letzte Meldung: 2017-10-09 18:48:09

Ähm .... ???

Ersetze ich im Code das $name durch den Namen des Gerätes:
Wind: wind km/h,  Richtung: wind_direction °, letzte Meldung: ["CUL_WS_37":wind:t]
bekomme ich als Ausgabe Wind: 4.3 km/h, Richtung: 355 °, letzte Meldung: ["CUL_WS_37":4.3:t]

Ah ja, die Anführungszeichen sind falsch. Wenn ich sie aber weglasse, entspricht die Ausgabe dem zweiten Ergebnis.

Das ist dann wieder einer der Momente, wo man nach fast drei Jahren FHEM sich wieder wie ein besch...eidener Anfänger fühlt. Gibt es eine halbwegs plausible Erklärung dafür warum FHEM hier mal das eine, mal das andere, aber nicht beides gleichzeitig ersetzt - und wie kann man es besser machen?
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Thorsten Pferdekaemper

Hi,
ich würde mal annehmen, dass man entweder überall die []-Syntax verwendet oder überall nicht. D.h. das hier müsste eigentlich funktionieren:

Wind: [$name:wind] km/h,  Richtung: [$name:wind_direction] °, letzte Meldung: [$name:wind:t]

Gruß,
   Thorsten
FUIP

Pfriemler

Richtig angenommen. Auf die Syntax bin ich auch erst im Forum gekommen. Zitat commandref:
ZitatSonst werden alle Wörter im Wert des Attributes durch das entsprechende Reading des Gerätes ersetzt (soweit vorhanden). ...Die hier beschriebene "set magic" wird auch angewendet.
Nein, nicht auch, sondern entweder-oder. "set magic" musste ich auch erst einmal nachschlagen und kam mir dann aus meinen DOIFS gleich bekannt vor...
Danke für die Augenöffung, jetzt tut es.

"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."