[Kolab-devel] [issue3870] Remote Microsoft Exchange freebusy fetching in Kolab_Freebusy

Mathieu Parent issues at kolab.org
Mon Sep 21 13:11:15 CEST 2009

New submission from Mathieu Parent <mathieuparent at users.sourceforge.net>:


Currently, retrieving freebusy information only works for users
present in the LDAP directory and having an IMAP folder following
Kolab XML format and annotations. I need to extend this to get
freebusy data from Exchange 2007 servers which shares the same mail
domain as our Kolab servers. This is a very specific request, but it
is covered by two more general features :
- retrieve freebusy information from servers outside the Kolab "cluster"
- retrieve freebusy information from other formats

Proposed implementation :
- add an "Outlook Web Access" format in Kolab_Format for freebusy
information (probably in lib/Horde/Kolab/Format/OWA.php, inheriting
Horde_Kolab_Format_XML or not). More info on the format [owa-format]
- change  Horde_Kolab_FreeBusy_Access::_process to allow fallback when
no user is found in LDAP and a hook is defined. The hook will return a
freebusyserver and a freebusyservertype (owa for MS exchange, ifb for
remote, imap for local) based on uid/mail
- change Horde_Kolab_FreeBusy_Access::fetchRemote to redirect only if
freebusyservertype is ifb, error only if freebusyserver is not set.
- change Freebusy/Cache.php to use Horde_Kolab_FreeBusy_xx class (Imap
or OWA) depending on freebusyservertype
- create Horde_Kolab_FreeBusy_OWA class, using Horde_Kolab_Format_OWA

With this proposal it will be possible in the future to add connectors
for other mail servers.

As this changes a lot of the existing code, I first need to know if
the proposal is ok or if there is a better solution (I'm mostly asking
Gunnar as the main developer of those horde parts).

Mathieu Parent



assignedto: wrobel
keyword: freebusy, server
messages: 21741
nosy: martin, mathieu.parent, opensides, thomas, wilde, wrobel
priority: feature
status: unread
title: Remote Microsoft Exchange freebusy fetching in Kolab_Freebusy

Kolab issue tracker <issues at kolab.org>

More information about the devel mailing list