FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Albi am 14 Dezember 2022, 19:59:47

Titel: <gelöst> stateFormat - nur Zahlen aus einem Reading
Beitrag von: Albi am 14 Dezember 2022, 19:59:47
Hallo,

ich möchte in stateFormat mehrere Wertet aus den Readings meines Device anzeigen lassen.

Bislang habe ich folgende Syntax:

temperature Eingestellt: desired-temp Battery: battery

das gibt folgende Werte aus

17.0 C (measured) Eingestellt: 16.0 C Battery: 40 %


Wie schaffe ich es, dieses "(measured)" da weg zu bekommen. Sprich das bei temperature eben nur die Zahlen angezeigt werden?

die Ausgabe sollte dann eben

17.0 Eingestellt: 16.0 C Battery: 40%



sein.


Vielen Dank für Eure Hilfe

Titel: Antw:stateFormat - nur Zahlen aus einem Reading
Beitrag von: Otto123 am 14 Dezember 2022, 20:20:07
Hi,
Sowas geht z.B. statt nur temperature
[$name:temperature:d]
ZitatstateFormat
Ändert den Gerätestatus, dies ist z.Bsp. in der Ausgabe des list Kommandos zu sehen, oder in der Raumübersicht von FHEMWEB. Falls nicht gesetzt, dann wird das state Reading übernommen. Sonst werden alle Wörter im Wert des Attributes durch das entsprechende Reading des Gerätes ersetzt (soweit vorhanden). Falls der Wert in {} eingeschlossen ist, dann wird es als Perl Ausdruck ausgewertet. Die Auswertung passiert bei jeder Änderung eines Readings.
Die hier beschriebene "set magic" wird auch angewendet.
Hinweis: Manche Module aktualisieren STATE ganz oder teilweise direkt. In diesen Fällen kann es zu abweichenden Anzeigen kommen.

Gruß Otto
Titel: Antw:stateFormat - nur Zahlen aus einem Reading
Beitrag von: Albi am 15 Dezember 2022, 10:56:53
Danke.

hat geklappt.

das StateFormat sieht jetzt so aus

attr hz_Ankleide stateFormat Ist: [hz_Ankleide:temperature:d]C Soll: [hz_Ankleide:desired-temp:d]C Bat:[hz_Ankleide:battery:d]% Boost:[hz_Ankleide:boostactive]

Ergibt die Ausgabe

Ist: 16.5C Soll: 7.5C Bat:40% Boost:no


Super. So soll es sein. Danke!
Titel: Antw:<gelöst> stateFormat - nur Zahlen aus einem Reading
Beitrag von: Otto123 am 15 Dezember 2022, 11:05:15
mit $name funktioniert das bei Dir nicht?  ??? Ich hatte das eigentlich getestet.
Hat den Vorteil, dass das Attribute universell ist und direkt kopiert werden kann. bzw. könnte man es auf mehrere Geräte gleichzeitig setzen:
attr hz_.* stateFormat Ist: [$name:temperature:d]C Soll: [$name:desired-temp:d]C Bat:[$name:battery:d]% Boost:[$name:boostactive]
Titel: Antw:<gelöst> stateFormat - nur Zahlen aus einem Reading
Beitrag von: Albi am 15 Dezember 2022, 12:32:46
Hallo $name war nur als "dummy" Name gesetzt. Muss natürlich das richtige Device sein

Also so zb:

attr hz_Ankleide stateFormat t Ist: [hz_Ankleide:temperature:d]C Soll: [hz_Ankleide:desired-temp:d]C Bat:[hz_Ankleide:battery:d]% Boost:[hz_Ankleide:boostactive]
Titel: Antw:<gelöst> stateFormat - nur Zahlen aus einem Reading
Beitrag von: Otto123 am 15 Dezember 2022, 13:18:55
nein - wir reden aneinander vorbei?: $name wird auch im Attribute stateFormat vom Device aufgelöst! Also im Device hz_Ankleide wird $name in hz_Ankleide aufgelöst - glaubs mir und versuch es einfach  ;)