Hallo,
ich benutze seit langem eine ReadingsGroup, die mir mit Icons die An-/Abwesenheit der Personen im Haushalt anzeigt.
Hier die Definition dazu:
defmod Anwesenheit readingsGroup <%people_sensor>,<Status>\
TYPE=PRESENCE:state
attr Anwesenheit DbLogExclude .*
attr Anwesenheit alias Anwesend
attr Anwesenheit mapping %ALIAS
attr Anwesenheit notime 1
attr Anwesenheit room 10_Anwesenheit
attr Anwesenheit valueIcon { 'state.present' => 'user_available@green', 'state.absent' => 'user_away@red'}
Ich möchte hier noch gerne sehen, wann die letzte Änderung erfolgt ist.
Ein einzelnes Device dazu sieht folgendermaßen aus:
defmod HolgerAnwesend PRESENCE function {checkAllFritzMACpresent("24:XX:XX:XX:XX:XX")} 10 30
attr HolgerAnwesend DbLogExclude .*
attr HolgerAnwesend DbLogInclude presence
attr HolgerAnwesend alias Holger
attr HolgerAnwesend event-on-change-reading presence
attr HolgerAnwesend room Wohnzimmer
Wir man sehen kann, nutze ich eine function um die Anwesenheit zu erkennen (habe die MAC-Adresse anonymisiert). Das funktioniert alles ganz hervorragend und ich kann mir das sogar per Telegram-Bot zuschicken lassen.
Was ich jetzt noch bräuchte, wäre eine Info wann der Status sich von absent->present oder von present->absent geändert hat.
Leider wird das reading-timestamp immer geändert, wenn (so meine Vermutung) die function für die Abwesenheitserkennung ausgeführt wird, so dass ich - wenn ich das Timestamp in die ReadingsGroup einbaue - immer nur sehe, wann die letzte Abfrage erfolgt ist, aber nicht seit wann die Person an- oder abwesend ist.
Hat irgendjemand eine Idee, wie ich die gewünschte Aussage erreichen kann?
Viele Grüße, Holger
Habe es mit Hilfe vom Attribut timestamp-on-change-reading hinbekommen:
https://forum.fhem.de/index.php/topic,52483.15.html
das muss man auch erstmal finden...
Letzte Herausforderung: Den timestamp jetzt in der readingsGroup anzeigen. Mal sehen ob ich da etwas finde.
Viele Grüße, Holger