node-red-contrib-ical-events
node-red-contrib-ical-events copied to clipboard
[BUG]: Repeating events ignored if started 140 days previously
Describe the bug A repeating event is ignored if the original calendar entry is 140 days old or older. For example, on 1st May create an event that repeats every weekday forever. On September 18th, that calendar entry no longer triggers.
To Reproduce Steps to reproduce the behaviour:
- Create a calendar entry and set it to repeat daily.
- Wait
- 140 days later, the calendar event no longer triggers daily.
Expected behaviour Calendar entries set to repeat should trigger on every occurrence of the repeated entry
Screenshots
Calendar showing repeated entries:
NodeRed showing that no trigger will occur until Saturday 23rd, ignoring the repeated entries in the calendar
**node-red-contrib-ical-events
- Version 02.2.5
- node-red 3.02
- nodejs version16.20.2
- CalDAV (radicale)
Hey @NiccyB ,
I tried to reproduce your issue, as you can see below. But unfortunately it seems to work on my machine.... Can you please provide me some more informations? The content of the ics would be interesting. Perhaps privately per email [email protected]
Hi,
I'll post it below - there's nothing confidential in it. I have replaced the "Water" events in the calendar, but left the "Heat" ones in. In the following iCal, the first event listed (daily, M-F) stopped working on either the 17th or 18th September (i.e. the last time it triggered was either on the 16th or 17th), but the second event (Weekly, S-S) is still triggering.
I have tried the obvious stop/start/reboot.
BEGIN:VCALENDAR
PRODID:-//Mozilla.org/NONSGML Mozilla Calendar V1.1//EN
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Europe/London
BEGIN:DAYLIGHT
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
TZNAME:BST
DTSTART:19700329T010000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
TZNAME:GMT
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
CREATED:20230508T125045Z
LAST-MODIFIED:20230508T125131Z
DTSTAMP:20230508T125131Z
UID:04ad6587-57af-4440-9a67-b6fc8fb39316
SUMMARY:Heat
RRULE:FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR
DTSTART;TZID=Europe/London:20230501T053000
DTEND;TZID=Europe/London:20230501T063000
SEQUENCE:1
TRANSP:OPAQUE
X-MOZ-GENERATION:2
END:VEVENT
BEGIN:VEVENT
CREATED:20230508T130920Z
LAST-MODIFIED:20230508T130954Z
DTSTAMP:20230508T130954Z
UID:daf56b71-9b88-435f-be44-74f395785f50
SUMMARY:Heat
RRULE:FREQ=WEEKLY;BYDAY=SA,SU
DTSTART;TZID=Europe/London:20230506T070000
DTEND;TZID=Europe/London:20230506T080000
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
The above is what Thunderbird dumps the calendar as. This is what Radicale presents:
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//PYVOBJECT//NONSGML Version 1//EN
X-WR-CALDESC;VALUE=TEXT:Heating
X-WR-CALNAME;VALUE=TEXT:Heating
BEGIN:VTIMEZONE
TZID:Europe/London
BEGIN:STANDARD
DTSTART:19701025T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
TZNAME:GMT
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:19700329T010000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
TZNAME:BST
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:04ad6587-57af-4440-9a67-b6fc8fb39316
DTSTART;TZID=Europe/London:20230501T053000
DTEND;TZID=Europe/London:20230501T063000
CREATED:20230508T125045Z
DTSTAMP:20230508T125131Z
LAST-MODIFIED:20230508T125131Z
RRULE:FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR
SEQUENCE:1
SUMMARY:Heat
TRANSP:OPAQUE
X-MOZ-GENERATION:2
END:VEVENT
BEGIN:VEVENT
UID:044b2ce2-9a9e-42ba-ab21-270e9a55207f
DTSTART;TZID=Europe/London:20230922T101500
DTEND;TZID=Europe/London:20230922T104500
CREATED:20230922T082039Z
DTSTAMP:20230922T082042Z
LAST-MODIFIED:20230922T082042Z
SUMMARY:Heat
TRANSP:OPAQUE
X-MOZ-GENERATION:1
END:VEVENT
BEGIN:VEVENT
UID:daf56b71-9b88-435f-be44-74f395785f50
DTSTART;TZID=Europe/London:20230506T070000
DTEND;TZID=Europe/London:20230506T080000
CREATED:20230508T130920Z
DTSTAMP:20230508T130954Z
LAST-MODIFIED:20230508T130954Z
RRULE:FREQ=WEEKLY;BYDAY=SA,SU
SUMMARY:Heat
TRANSP:OPAQUE
END:VEVENT
END:VCALENDAR
Found another problem this morning when the house heating didn't turn on. There are repeating calendar entries which have been ignored for several days:
As you can see, the next trigger for 'Heating' and 'Water' are set for February 1st - both of these ignore the 30th and 31st January's repeats.
Note that the 'Heat' entry for today at 1000 was created today and the node has picked this up...
I can send the ics files separately if required.