FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Ralf9 am 23 März 2026, 14:54:17

Titel: Frage zu stateFormat
Beitrag von: Ralf9 am 23 März 2026, 14:54:17
Hallo,

ich bin gerade am basteln.
Ich möchte, dass wenn ich das Licht mit ontime einschalte, in der DeviceOverview und room Ansicht hinter dem Lampen Icon das reading time angezeigt wird.

Mit "stateFormat [$name:state] t:[$name:time]" wird nur das Lampenicon angezeigt.
Mit "stateFormat s:[$name:state] t:[$name:time]" wird "s:on_time t:s7" angezeigt.

Gruß Ralf
Titel: Aw: Frage zu stateFormat
Beitrag von: Guybrush am 23 März 2026, 14:58:32
das t: ist doch ein suffix?! das muss doch hinten dran in der eckigen klammer stehen?
Titel: Aw: Frage zu stateFormat
Beitrag von: Ralf9 am 23 März 2026, 22:09:51
Ich hab mal einiges getestet:
mit "stateFormat on 12" wird nur das Lampen Icon angezeigt, wenn das vordere als Icon angezeigt wird, dann wird das hintere ignoriert.
Ist demnach das was ich möchte mit stateFormat nicht machbar?
Titel: Aw: Frage zu stateFormat
Beitrag von: TomLee am 23 März 2026, 22:44:17
Mit einer mit Geduld gewienerten Glaskugel:

Evtl. mit einem Zeilenumbruch zw. den zwei Set Magic Angaben?

attr bla stateFormat [$name:state]\
[$name:time:t]
Titel: Aw: Frage zu stateFormat
Beitrag von: Guybrush am 23 März 2026, 23:09:50
machs doch sonst einfach mit perlcode in stateformat?

stateFormat { "s: ".ReadingsVal($name, 'state', '')." t: ".ReadingsVal($name, 'time', '') }
Titel: Aw: Frage zu stateFormat
Beitrag von: TomLee am 23 März 2026, 23:38:21
Wenn das die Aufgabe war:

attr bla stateFormat s:\
state\
t:\
time
Titel: Aw: Frage zu stateFormat
Beitrag von: Ralf9 am 25 März 2026, 00:03:15
Habs hinbekommen, damit funktionierts
stateFormat {ReadingsVal($name,'state','')."\n".ReadingsVal($name,'time','')}
Titel: Aw: Frage zu stateFormat
Beitrag von: TomLee am 25 März 2026, 18:42:09
Hi,

warum in Perl, das versteh ich bis jetzt noch nicht?

attr bla stateFormat state\
time
Titel: Aw: Frage zu stateFormat
Beitrag von: Ralf9 am 25 März 2026, 18:57:39
Dass der 2.Wert (time) hinter dem icon (state) angezeigt wird, funktioniert nur wenn ich beide mit "\n" trenne.
Mir ist nicht klar wie ich ohne Perl zwischen state und time ein "\n" eingeben kann
Titel: Aw: Frage zu stateFormat
Beitrag von: TomLee am 25 März 2026, 19:19:15
Mir ist nicht klar wie ich ohne Perl zwischen state und time ein "\n" eingeben kann
Im Attribut stateFormat ist textField-long default aktiviert. Nach Klick in das Textfeld bei attr devicename stateFomat öffnet sich ein "Editorfeld", dort nach state einfach einen Zeilenumbruch machen und in die zweite Zeile time schreiben.

Oder einfach "bla" durch deinen Devicenamen ersetzen:

attr bla stateFormat state\
time

und über das Plus oben links neben der Kommandozeile (nur im f18-Style) das Attribut ergänzen.

Oder "bla" ersetzen, in irgendeinem Device in Fhem unten den Raw-Editor öffnen, alles markieren und durch den Code ersetzen, Execute command klicken.
Titel: Aw: Frage zu stateFormat
Beitrag von: Ralf9 am 25 März 2026, 21:24:41
Ich habe den f18-Style, nach Klick in das Textfeld bei attr stateFomat öffnet sich bei mir kein "Editorfeld".
Ich habs mal bei ein paar anderen devices getestet, da hat sich überall beim attr stateFormat das Editorfeld geöffnet.
Nur bei Homematic wired devices öffnet sich beim attr stateFormat kein Editorfeld.

Damit hats funktioniert
Zitatüber das Plus oben links neben der Kommandozeile (nur im f18-Style) das Attribut ergänzen.

Titel: Aw: Frage zu stateFormat
Beitrag von: TomLee am 25 März 2026, 21:34:08
Nur mal kurz geschaut macht es mir den Eindruck das man textField-long in stateFormat als Modulautor aktivieren muss, evtl. teilst Du das dem mit, das wäre nur eine kleine Änderung im Code.
Titel: Aw: Frage zu stateFormat
Beitrag von: Ralf9 am 25 März 2026, 22:01:01
Danke, ja das wars.
Ich habe es im Modul bei der AttrList ergänzt: "stateFormat:textField-long"
Nun öffnet sich beim stateformat das Editorfenster.