Akonadi is the central point of accessing PIM data for all KDE applications. It abstracts all the different implementation details of various sources so that the mail program or calendar application does not need to know the details of how to access the sources itself. However, Akonadi does need these details, which is where its resources come into play.
Akonadi communicates with other e-mail or calendar sources via so called "resources". Currently there are resources for accessing locally stored information (mostly from older KDE installations) as well as to access IMAP folders and maildirs. But there is a huge gap when it comes to calendar data: many users store their calendars on groupware servers like Google Calendar, Apple's Calendar Server, Citadel, Open-XChange and so on; and while support wasn't perfect in KDE 3.x times, it was almost non-existent within Akonadi in KDE 4.x.
For that reason, we at credativ GmbH put two of our KDE developers to the task: Marco Nelles (mne) developed a plugin for the GroupDav protocol and Tobias König (tko) sat down to implement support for Open-XChange. In the near future, one or both plan to help with the development of a CalDav plugin, THE groupware interface for Google, Apple and the others.
Here are some Q&A regarding their work:
First things first, since we are an Open Source company: where is the code?
mne, tko: The code for both plugins can be found in the KDE svn in playground: the Open-Xchange plugin can be found in resources/openxchange, the GroupDAV plugin is called CAlgo and can be found in /pim/calgo.
What is the stage of the source? Alpha, Beta, RC?
tko: Brave people can already test the OX plugin, I would consider it as RC. Compared to its KDE 3.x equivalent it supports the same features plus some extras: display of more than one calendar or addressbook through one resource, support of contact lists and offline/caching support by Akonadi. I've developed against OX 6.14.0, but it should work well with all OX releases of the 6.x cycle.
mne: Well, the resource is in playground for a reason. It is somewhat between Alpha and Beta.
And how does the feature set compare to its KDE 3.x equivalent? Against which software was it tested?
You've said the plugins are still in playground - when will they be shipped with the KDE Software Compilation (KDE SC?
tko: The development started too late for KDE SC 4.4, but it will definitely be shipped with KDE SC 4.5.
mne: Never. Most likely, it won't leave the playground. I will concentrate on the development of a CalDav resource which seems to be more popular and is more important. Also, there is a chance that the CalDav plugin might even handle the GroupDav part as well.
And why did you develop it as an Akonadi plugin?
tko: Akonadi is the PIM framework for KDE SC 4.5 and following. It offers fundamental advantages in comparison to the old KDE 3.x KResources, and since a number of credativ employees use KDE desktops, it was a natural step to provide Akonadi plugins to the most common groupware servers.
mne: You could also ask: why did I develop for KDE? :-) To be honest, Akonadi provides a great API to quickly develop efficient plugins to arbitrary PIM data soures. What's more, in an environment where PIM data are becoming more and more important, Akonadi is just the next logical step. For me personally it was also a great opportunity to get in touch with this new KDE technology.
Thanks for your time and of course for your code, guys!