I synchronize the entries between MS Outlook and Nextcloud with the program gSyncit. If there are appointments with a reminder time of 0 minutes, the calendar can not be displayed in Nextcloud - it will be loaded forever.
In an exported ics file, these reminders are specified with TRIGGER: P0D. If a different reminder time (e.g., 5 minutes) is set, everything will work perfectly.
The problem I have both with version 10.0.1 as well as with 11.0.0.
cc @georgehrke @raghunayyar
Just a forwarding of a bug report I got via email.
possibly an upstream issue
@MorrisJobke I tried creating an event with a reminder 0 minutes before the event starts, but it loads just fine. I don't have outlook at hand.
Could you please ask them to provide an example ics file?
@MorrisJobke I tried creating an event with a reminder 0 minutes before the event starts, but it loads just fine. I don't have outlook at hand.
I asked him ;)
Hello!
I am the user who originally reported the problem. Thanks to '_MorrisJobke_' for the set.
I created a new calendar in Outlook and entered an appointment for the 5th of January at 12 o'clock. A reminder with 0 minutes - that is, at 12 o'clock.
After that, I created a new calendar in Nextcloud and configured gSyncit to synchronize these two calendars.
After synchronization, the calendar could not be loaded in Nextcloud. I have exported the test calendar from Nextcloud. The ics file looks like this:
BEGIN:VCALENDAR
VERSION:2.0
CALSCALE:GREGORIAN
PRODID:-//SabreDAV//SabreDAV//EN
X-WR-CALNAME:Test
X-APPLE-CALENDAR-COLOR:#c274e7
BEGIN:VEVENT
CLASS:PUBLIC
DESCRIPTION:
DTEND;TZID=Europe/Berlin:20170105T130000
DTSTART;TZID=Europe/Berlin:20170105T120000
DTSTAMP:20170103T150245Z
LAST-MODIFIED:20170103T150246Z
PRIORITY:5
SEQUENCE:1
SUMMARY:Test
TRANSP:OPAQUE
UID:348acb0f-b02f-4800-9fde-202a0717c5b5
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:Reminder
TRIGGER:P
END:VALARM
END:VEVENT
END:VCALENDAR
The developer of gSyncit thinks that the error is certainly not with his software but with Nextcloud or Owncloud. I hope this helps to eliminate the problem.
regards
WaJoWi
Oh, it's only TRIGGER:P not TRIGGER:P0D. Will check the calendar standard. Not sure if that's even valid.
When gSyncit syncs with Google Calendar and then exports the Google Calendar, the ics file contains TRIGGER:P0D. In Nextcloud only TRIGGER:P.
Either Google corrects the entry, or gSyncit synchronizes with Google other data than with CalDav. With other CalDav programs there are no problems, so I suspect a bug in Nextcloud.
Can you export the ics directly in Outlook?
My interpretation of the ABNF for duration is that TRIGGER:P is not valid.
https://tools.ietf.org/html/rfc5545#page-34
We can definitely make the calendar app fault tolerant here, but it should be fixed in the original software nevertheless.
In Outlook I can only export a csv file. Since I use the German version, the entries are in German. Here the file:
"Betreff","Beginnt am","Beginnt um","Endet am","Endet um","Ganztägiges Ereignis","Erinnerung Ein/Aus","Erinnerung am","Erinnerung um","Besprechungsplanung","Erforderliche Teilnehmer","Optionale Teilnehmer","Besprechungsressourcen","Abrechnungsinformationen","Beschreibung","Kategorien","Ort","Priorität","Privat","Reisekilometer","Vertraulichkeit","Zeitspanne zeigen als"
"Test","5.1.2017","12:00:00","5.1.2017","13:00:00","Aus","Ein","5.1.2017","12:00:00",,,,,,"
",,"","Normal","Aus",,"Normal","2"
I can write the developer again, but it would certainly be advantageous if Nextcloud would be more fault tolerant ...
I can write the developer again
Yes, please write them and tell them that Trigger:P, most certainly created by their application, is not valid according to RFC 5545.
but it would certainly be advantageous if Nextcloud would be more fault tolerant ...
Yes, we will make the Nextcloud calendar fault-tolerant against this issue :)
As P is just supposed to be at the time of the event, we can simple replace it with P0D
I wrote to the developer and referred him to this thread. Great that it will work in future versions.
"Replace Trigger: P with Tripper: P0D" -> Tripper! :-D
"Replace Trigger: P with Tripper: P0D" -> Tripper! :-D
Jesus Christ 🙈