On 10/09/2015 22:43, Timo Sirainen wrote:
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: a simple method for handling calender permissions. ie, private calenders, public calenders, and limited access calenders radical is easy to install, but working out permissions for editing/viewing I found less than simple. having permissions, or at least login tied with dovecot reduces password admin.
- scalable, of course
- configurable storage (object storage, regular fs, maybe some key-value dbs, maybe storing as emails) It may be able to be implemented in a text file or sql table, but I'm not sure how the mua's handle adding entries/calenders/changing permissions etc. If it would work for thunderbird and ms outlook, it would cover a large section of the local userbase that may use it, and working with squirrelmail and roundcube would cover most of the webmail based users
- 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.)