Evolution : MAPI Provider for MS Exchange connectivity
Almost over a month back we started writing a MAPI based provider in Evolution for MS Exchange connectivity. libmapi from OpenChange.org which provides APIs for native MAPI calls, is the base library for this provider. Currently we are using libmapi 0.6.
Advantage of this provider among others are
- works with MS Exchange 2007 servers. (this is the main motivation behind this work )
- has compatibility with older exchange servers (*this is not tested yet!*)
- Simple implementation in EDS/Camel. (No exchange-storage process to manage. This will be similar to Groupwise provider architecture.)
Most of the common code (servers/mapi) is almost completed. And we have started working on the backends for all the components. All the components have some basic working code which will evolve into a solid provider. Currently ,
- Calendars can fetch and display appointment/meetings.
- Contacts can fetch/display/modify/create items.
- Mailer currently has some hacky code running which can fetch folder list / mails. More work to be done in handling cache.
MAPI Provider is planned to be merged into trunk by end of March. There are some challenges :
- libmapi depends on some samba4 libraries (ndr, ldb, talloc, samba-config, dcerpc, dcerpc_samr and some more) which are under heavy development.
- libmapi itself is under heavy development. libmapi 0.7 (PHASER) is scheduled to be released soon.
Currently all work is going on in these branches :
Meanwhile we are planning to do incremental releases of this provider as a plugin RPM (RPMs for the distributions supported by OBS) using OpenSuSE Build Service. I have a placeholder for this in my Build Service Repo.
Lot of learning / Fun wrt to Camel for me ! Yipee !