2.8. Groupware Calendar

Calendar entries are stored in the users IMAP sub folder "Calendar" (German "Kalender") on the Kolab server. Physically they are represented as multi-part MIME emails with the information stored in vCal format encapsulated in a MIME part. See the appendix for the exact file format and examples.

Group calendar entries are stored just like personal events in the same IMAP sub folder on the Kolab server. The difference between private and group calendar events is simply a matter of the vCal information being part of several users calendars. They are shared via exchanging multi-part MIME emails and have to be accepted by the attendees and therewith put it into their respective calendar folders. The individual free-busy lists consist of a compacted subsets of the vCal data covering a user definable time range into the future. They are published to a shared ressource on the Kolab server. The free-busy lists are referenced via URLs and are retrievable by all registered clients from the Kolab server via HTTPS and optionally via HTTP. The free-busy lists are named as <username>.vcf and follow the vCal file format.

The KDE clients store and lookup free-busy lists using HTTPS on the Kolab server.

Windows Clients must store their free-busy lists via anonymous FTP on the server, for historical reasons. For lookup of the free-busy lists, HTTP is used by the Outlook/Bynari Clients. In this project we look not further into this drawback. Instead, a so-called legacy mode is provided on the Kolab server. Using this compatibility mode the dedicated storage area for free-busy lists on the Kolab server is also accessible via anonymous FTP (upload own free-busy list) and HTTP (retrieving all free-busy lists). This is an optional setting that will be disabled by default.

The logic behind the calendar events and their handling is entirely done by the client applications. The server mainly acts as a network storage device in this regard.

An exception to this rule is the dealing with automatic shared ressources (rooms, technical equipement, cars, etc.).