Hallo
Das attr event-on-change-reading löst aus obwohl das Reading next_text den Inhalt nicht ändert.
Nach einem set UrlaubsKalender update ändert sich das Reading next_text nicht, das notify UrlaubsKalender löts aber trozdem aus.
Woran kann das liegen?
notify UrlaubsKalender
UrlaubsKalender:next_text.* {
my $UrlaubZuhauseKalender = ReadingsVal("UrlaubsKalender","next_text","");
my $UrlaubZuhause = ReadingsVal("FeiertageBayern","state","");
if ($UrlaubZuhauseKalender =~ m/^Urlaub/ && ReadingsVal("HeizungWz_Climate","controlMode","") eq "auto" &&
$UrlaubZuhause =~ m/none/)
{fhem "set HeinzMobil send UrlaubsKalender > UrlaubZuhauseKalender: $UrlaubZuhauseKalender###### UrlaubZuhause: $UrlaubZuhause"}
elsif ($UrlaubZuhauseKalender !~ m/^Urlaub/ && $UrlaubZuhause =~ m/none/ &&
ReadingsVal("HeizungWz_Climate","controlMode","") eq "auto")
{fhem "set HeinzMobil send UrlaubsKalender > UrlaubZuhauseKalender: $UrlaubZuhauseKalender###### UrlaubZuhause: $UrlaubZuhause"}}
list
Internals:
DEF GoogleKalenderHeinz
KALENDER GoogleKalenderHeinz
NAME UrlaubsKalender
NOTIFYDEV GoogleKalenderHeinz
NR 1490
NTFY_ORDER 50-UrlaubsKalender
STATE Urlaub in 4 Tag(en)
TYPE ABFALL
.attraggr:
.attreocr:
next_text
.attrminint:
OLDREADINGS:
READINGS:
2018-12-16 14:05:10 Urlaub_date 20.12.2018
2018-12-16 14:05:10 Urlaub_days 4
2018-12-16 14:05:10 Urlaub_description
2018-12-16 14:05:10 Urlaub_location Nürnberg
2018-12-16 14:05:10 Urlaub_text Urlaub
2018-12-16 14:05:10 Urlaub_uid ogegv24eaojlsdq9vanp963fil5btlekqc8eosrcne7evavcuus41ao9t9googlecom
2018-12-16 14:05:10 Urlaub_weekday Donnerstag
2018-12-16 14:05:10 next Urlaub_4
2018-12-16 14:05:10 next_date 20.12.2018
2018-12-16 14:05:10 next_days 4
2018-12-16 14:05:10 next_description
2018-12-16 14:05:10 next_location Nürnberg
2018-12-16 14:05:10 next_text Urlaub
2018-12-16 14:05:10 next_weekday Donnerstag
2018-12-16 14:05:10 state 4
Attributes:
calendarname_praefix 0
date_style date
delimiter_reading |
delimiter_text_reading und
event-on-change-reading next_text
filter Urlaub
filter_type include
room Kalender
stateFormat next_text in next_days Tag(en)
weekday_mapping Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag
Hallo,
ich würde mal vermuten weil das Modul Abfall und nicht Urlaub heisst ;D
Aber leider ist das genau so, das Modul erzeugt für next_text Events obwohl das attr event-on-change-reading gesetzt ist.
Mein Tipp, mach es nicht mit einem extra Modul sondern direkt mit Kalender. Sieht schwieriger aus als es ist.
Zum Lesen (https://heinz-otto.blogspot.com/2018/07/kalender-in-fhem-einbinden.html)
Gruß Otto
Hallo Otto
Danke!
Das funktioniert prima :)
Grüße
Heinz
Hallo Otto
Ich habe Deinen Vorschlag https://heinz-otto.blogspot.com/2018/07/kalender-in-fhem-einbinden.html (https://heinz-otto.blogspot.com/2018/07/kalender-in-fhem-einbinden.html) eingebaut und es hat auch funktioniert.
Wenn ich jetzt untertags also um 8 Uhr Urlaub in meinen Google Kalender eintrage funktioniert es dann auch?
Oder geht es nur zum Tageswechsel 0 Uhr ?
Der Google Kalender und der Kalender View wird aktualisiert, es kommt also Urlaub an, der entsprechende dummy wird aber nicht gesetzt.
defmod n_GoogleKalenderHeinz notify GoogleKalenderHeinz:changed:.* {\
my $cmd = 'on';;\
$cmd = 'off' if ($EVTPART2 eq 'end');;\
my $actor = fhem ('get '.$NAME.' events format:custom="$S" filter:uid=="'.$EVTPART1.'" limit:count=1');;\
fhem("set $actor $cmd")}
attr n_GoogleKalenderHeinz alias n_GoogleKalenderHeinz Urlaub (notify)
attr n_GoogleKalenderHeinz disable 0
attr n_GoogleKalenderHeinz group Urlaub
attr n_GoogleKalenderHeinz room Kalender
attr n_GoogleKalenderHeinz sortby -01
defmod Urlaub dummy
attr Urlaub alias n_GoogleKalenderHeinz Urlaub (dummy)
attr Urlaub event-on-change-reading state
attr Urlaub eventMap on off
attr Urlaub group Urlaub
attr Urlaub room Kalender
attr Urlaub sortby -02
Danke und Grüße
Heinz
Hallo Heinz,
ich verstehe Deine Frage noch nicht so ganz.
Das notify wird von den changed: Events getriggert, Beispiel:
Termin von 8-16 Uhr
1. Event 08:00 Uhr - changed: .... start
2. Event 16:00 Uhr - changed: .... end
Wenn Du jetzt (12:28 Uhr) diesen Termin für heute einträgst, dann gibt es den start Event nicht, damit geht der "Aktor" nicht auf "on"
Der end Termin kommt dann schon, aber der dummy ist erstmal nicht gesetzt.
Gruß Otto
Hallo Otto
Ich hatte den Termin um 8 Uhr als Ganztagestermin eingetragen, also wird kein Event erzeugt.
Jetzt habe ich den Termin einige Zeit im voraus eingetragen und es hat funktioniert.
Grüße
Heinz