Dovecot CalDAV server

Robert Schetterer rs at
Fri Sep 11 15:55:12 UTC 2015

Am 10.09.2015 um 23:43 schrieb Timo Sirainen:
> I've been once in a while over the years thinking about implementing CalDAV (and CardDAV) to Dovecot. It might be time to start that soon. Does anyone have any suggestions? So far my main goals would be:
>  - scalable, of course
>  - configurable storage (object storage, regular fs, maybe some key-value dbs, maybe storing as emails)
>  - efficient indexes (potentially using key-value dbs? or maybe just local files. not sure yet what kind of indexing is needed)
>  - have it work with dsync (= replication & migration)
> Some things I wonder about:
>  - Maybe there is already some code out there that could be used to implement it faster?
>  - Maybe even use something else besides C to implement it.. Then again that makes integration to Dovecot more difficult.
>  - Is anybody interested in helping to develop this? :) I think I still have too much other work that I won't spend a lot of time coding it..
> One thing that makes this easier is that Open-Xchange has already implemented a CalDAV server, so they can help to avoid the biggest design mistakes. (There are a couple of reasons why they'd want to replace that.)

Hi Timo, caldav / carddav in dovecot will be an ultimate nice feature.

I remember Kolab with imap file storage backend, storing vcard, ics in
imap folders. ( which should be hidden )

There was a thunderbird plugin for this, but i had no good performance.
Advantage of this solution might be the exist imap acl system can be
used for all kind of addressbook , kalendar sharing. Perhaps public
addressbooks and calendars are possible too this way ( and at last
anonymous read only ones ).

All other servers i know use some db backend. I  guess you will have
hard times with clients, cause there are all kind of known bugs.

Specially serial appointment with/and different timezones over
summertime and wintertime changes seems difficult to code. Best way all
in UTC and let the client convert it in its local timezone.

Also there are two ways of invitations notices via mail , let the client
send it, or the server has to do it ( or perhaps combinate ).

So resources calenders are needed too ,for auto booking calenders you
need some kind of scripting. For the first releases mark as higly beta ,
its very bad for user if they trust in calenders which might have bugs.

the new thunderbird carddav addressbook seems to stuck
since years

Of course i am willing to test your code and report.

Best Regards
MfG Robert Schetterer

[*] sys4 AG, +49 (89) 30 90 46 64
Franziskanerstraße 15, 81669 München

Sitz der Gesellschaft: München, Amtsgericht München: HRB 199263
Vorstand: Patrick Ben Koetter, Marc Schiffbauer
Aufsichtsratsvorsitzender: Florian Kirstein

More information about the dovecot mailing list