Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG]: Repeating events ignored if started 140 days previously #167

Open
NiccyB opened this issue Sep 19, 2023 · 5 comments
Open

[BUG]: Repeating events ignored if started 140 days previously #167

NiccyB opened this issue Sep 19, 2023 · 5 comments
Assignees
Labels
bug Something isn't working

Comments

@NiccyB
Copy link

NiccyB commented Sep 19, 2023

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:

  1. Create a calendar entry and set it to repeat daily.
  2. Wait
  3. 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:
image
NodeRed showing that no trigger will occur until Saturday 23rd, ignoring the repeated entries in the calendar
image

**node-red-contrib-ical-events

  • Version 02.2.5
  • node-red 3.02
  • nodejs version16.20.2
  • CalDAV (radicale)
@NiccyB NiccyB added the bug Something isn't working label Sep 19, 2023
@naimo84
Copy link
Owner

naimo84 commented Sep 20, 2023

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]


image

image
image

image

@NiccyB
Copy link
Author

NiccyB commented Sep 22, 2023

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

@NiccyB
Copy link
Author

NiccyB commented Sep 22, 2023

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

@NiccyB
Copy link
Author

NiccyB commented Jan 30, 2024

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:

Screenshot 2024-01-30 074306

Screenshot 2024-01-30 074357

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...

Screenshot 2024-01-30 075712

I can send the ics files separately if required.

@NiccyB
Copy link
Author

NiccyB commented Dec 9, 2024

I have investigated this some more.

If I create a recurring event on day 1, then on day 101 node-red-contrib-ical-events fails to 'see' the event and therefore doesn't trigger on it any more.

This is the case for iCal (Radicale) and CalDAV (Nextcloud) servers.

e.g. Create an event that runs 31/08/24 1500 to 1600 and repeats daily. The event will trigger at 1500 and 1600 on 08/12/24 as expected, but no longer triggers from 09/12/24 onwards.

It looks like node-red-contrib-ical-events is grabbing the last 100 days of events by date created.

This means for repeating events, I can only create three months at a time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants