readingsHistory mapping und mehrere Readings eines Devices

Begonnen von holle75, 20 September 2023, 12:38:09

Vorheriges Thema - Nächstes Thema

holle75

Bin im Wiki und in der commandref im Detail nicht fündig geworden.

define LastMessagesXtender readingsHistory Studer485_Gateway:Last_Message_Info Studer485_Gateway:Last_Message_Device
attr LastMessagesXtender group Xtender
attr LastMessagesXtender mapping {"Last_Message_Device" => "Device:", "Last_Message_Info" => "Info:"}
attr LastMessagesXtender room Xtender
attr LastMessagesXtender rows 5
attr LastMessagesXtender sortby 1
attr LastMessagesXtender timestampFormat %a - %d.%m.%Y - %T

habe ich und Frage ist sowohl die DEF als auch das MAPPING um simpel von zwei Readings in einer Zeile den entsprechenden Content anzuzeigen.

Ich hätte gerne

Mi - 20.09.2023 - 12:21:12  Device: XXXXX Info: YYYYY

bekomme aber nur Teilcontent und den KreuzundRüben. Ist die syntax des Define so richtig? Mapping finde ich überhaupt keine Infos und das ist jetzt irgendwie erdacht.

Ideen wie es richtig geht?

Danke und Gruss!

frank

hier mal auf die schnelle ein bsp von mir:

defmod rh_unreachable readingsHistory TYPE=CUL_HM:(state|powerOn|Activity|sabotageAttack_ErrIoAttack_cnt)
attr rh_unreachable alwaysTrigger 1
attr rh_unreachable mapping %DEVICE
attr rh_unreachable room 01_ALARM
attr rh_unreachable rows 50
attr rh_unreachable timestampFormat %d-%b %T
attr rh_unreachable valueFormat {if($READING eq "state"){(($VALUE eq 'RESPONSE TIMEOUT:RegisterRead' || $VALUE eq 'CMDs_done_Errors:1' || $VALUE eq 'MISSING ACK' || $VALUE eq 'unreachable') && $DEVICE!~m/^Ventil\..*/)?"%s":undef}}
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

holle75

#2
Danke Frank, das geht für mich in die richtige Richtung, trotzdem bekomme ich die einzelnen Readings nicht in eine Zeile gemappt. Ist vielleicht auch ein bißchen viel gewollt ;)

so ist es noch am reduziertesten:

defmod LastMessagesXtender readingsHistory Studer485_Gateway:(Last_Message_Device|Last_Message_Info)
attr LastMessagesXtender group Xtender
attr LastMessagesXtender mapping {"Studer485_Gateway" => ""}
attr LastMessagesXtender room Xtender
attr LastMessagesXtender rows 5
attr LastMessagesXtender sortby 1
attr LastMessagesXtender timestampFormat %a - %d.%m.%Y - %T

aber ja, zwei Zeilen für eine eigentlich zusammengehörige Info ...

frank

readingshistory ist ja quasi ein kleiner eventmonitor.
mehrere events/readings in einer zeile kann eigemtlich nicht funktionieren.

du könntest aber zb userreadings selber erzeugen, die mehrere werte enthalten.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

holle75

Jo, wollte es einfach und übersichtlich halten. Ist jetzt auch kein Beinbruch. Mich hat einfach eine theoretische Lösung interessiert.

Danke dir!