# Administrating calendar events
This system supports a limited subset of [iCalendar] and [CalDAV] standards,
and is tested to work with Apple and Mozilla clients.
The CalDAV service uses [Radicale].
[CalDAV]: https://en.wikipedia.org/wiki/CalDAV
"CalDAV - Internet standard allowing a client to access scheduling information on a remote server"
[Radicale]: https://radicale.org/
"Radicale - Free and Open-Source CalDAV and CardDAV Server"
[iCalendar]: https://en.wikipedia.org/wiki/ICalendar
"iCalendar - media type which allows users to store and exchange calendaring and scheduling information"
## Recurrences
Recurring events can be too complex to handle for some CalDAV applications.
Recurrence rules are stored in iCalendar field [RRULES].
Locating which events may be cause of problem is tricky,
because recurrence rules may exist not only directly tied to the event
but also embedded in timezone objects for the event
(which is commonly not problematic for applications).
Quick'n'dirty locating events containing recurrence rules,
except (most likely) summertime rules:
grep -rP 'RRULE:FREQ=(?!YEARLY(;UNTIL=19430919T000000Z)?;(BYMONTH=(2|3|4|9|10|11);BYDAY=(-1|1|2|3)SU|BYDAY=(-1|1|2|3)SU;BYMONTH=(2|3|4|9|10|11)))'
[RRULES]:
"RRULES - iCalendar data field to express recurrence rules"
## Scheduling
Scheduling of events is currently *not* processed -
invitation and FreeBusy/Availability hints are ignored.
Calendaring applications may request invitations for events,
but this is currently ignored in the CalDAV service
(technically this is CalDAV extensions [iTIP] and [iMIP]).
Calendaring applications may query for FreeBusy or Availability of resources,
but this is currently rejected by the CalDAV service
(technically this may involve CalDAV extensions [VFREEBUSY] or [VAVAILABILITY]).
[iTIP]:
"iTIP - specification on handling participant invites for CalDAV events"
[iMIP]:
"iMIP - specification on distributing iTIP invites via email"
[VFREEBUSY]:
"VFREEBUSY - specification on sharing free/busy time of resources"
[VAVAILABILITY]:
"VAVAILABILITY - specification on sharing (potentially) available time of resources"