From c18ec5b14c7662536187334d50cd0b342c08c067 Mon Sep 17 00:00:00 2001 From: borisneubert <> Date: Sun, 6 Apr 2014 06:18:22 +0000 Subject: [PATCH] small update to the documentation of recurring events in 57_Calendar.pm git-svn-id: https://svn.fhem.de/fhem/trunk@5451 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/CHANGED | 9 ++++++--- fhem/FHEM/57_Calendar.pm | 15 ++++++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/fhem/CHANGED b/fhem/CHANGED index 4adcc462b..215cabd41 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,10 +1,13 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. - SVN - - bugfix: PRESENCE: fixing wrong presence state fÃor mode lan-ping + - changed: small update to the documentation of recurring events in + 57_Calendar.pm + - bugfix: PRESENCE: fixing wrong presence state for mode lan-ping when device is unreachable - feature: 10_EnOcean: new EEP profiles: D2-01-00 - D2-01-11 (VLD) - - changed: 00_TCM/10_EnOcean: learning mode (teach-in / teach-out) changed and extended + - changed: 00_TCM/10_EnOcean: learning mode (teach-in / teach-out) changed + and extended - added: new module 10_UNIRoll.pm (c-herrmann) - feature: cloneDummy: new attribut cloneIgnore - feature: cloneDummy: new optional parameter [reading] @@ -16,7 +19,7 @@ module 23_WEBTHERM.pm moved to contrib - change: module 98_PID.pm moved to contrib as preparation for next major replace. Replaced by 98_PID20.pm (John/betateilchen) - - change: openweathermap: added set command „clear“ + - change: openweathermap: added set command "clear" - change: MAX: interpret SetTemperature command from WT to HT - feature: MAX: retry packets 3 times if missing an ack - feature: new module 98_cloneDummy.pm added (Joachim) diff --git a/fhem/FHEM/57_Calendar.pm b/fhem/FHEM/57_Calendar.pm index 0d884a8b8..242a1ab8d 100644 --- a/fhem/FHEM/57_Calendar.pm +++ b/fhem/FHEM/57_Calendar.pm @@ -361,7 +361,7 @@ sub fromVEvent { my @rrparts= split(";", $rrule); my %r= map { split("=", $_); } @rrparts; - my @keywords= qw(FREQ INTERVAL UNTIL COUNT BYMONTHDAY BYDAY BYMONTH); + my @keywords= qw(FREQ INTERVAL UNTIL COUNT BYMONTHDAY BYDAY BYMONTH WKST); foreach my $k (keys %r) { if(not($k ~~ @keywords)) { main::Log3 undef, 2, "Calendar: RRULE $rrule is not supported"; @@ -376,6 +376,7 @@ sub fromVEvent { $self->{bymonthday} = $r{"BYMONTHDAY"} if(exists($r{"BYMONTHDAY"})); # stored but ignored $self->{byday} = $r{"BYDAY"} if(exists($r{"BYDAY"})); # stored but ignored $self->{bymonth} = $r{"BYMONTH"} if(exists($r{"BYMONTH"})); # stored but ignored + $self->{wkst} = $r{"WKST"} if(exists($r{"WKST"})); # stored but ignored # advanceToNextOccurance until we are in the future my $t = time(); @@ -1120,8 +1121,16 @@ sub Calendar_Undef($$) { A calendar is a set of calendar events. A calendar event has a summary (usually the title shown in a visual representation of the source calendar), a start time, an end time, and zero, one or more alarm times. The calendar events are - fetched from the source calendar at the given URL. In case of multiple alarm times for a calendar event, only the - earliest alarm time is kept. Recurring calendar events are currently not supported.

+ fetched from the source calendar at the given URL.

+ + In case of multiple alarm times for a calendar event, only the + earliest alarm time is kept.

+ + Recurring calendar events are currently supported to an extent: + FREQ INTERVAL UNTIL COUNT are interpreted, BYMONTHDAY BYDAY BYMONTH WKST + are recognized but not interpreted. The module will get it most likely wrong + if you have recurring calendar events with unrecognized or uninterpreted keywords. +

A calendar event is identified by its UID. The UID is taken from the source calendar. All non-alphanumerical characters are stripped off the UID to make your life easier.