Home
Microsoft Exchange data provider for Thunderbird Lightning
The lightning-exchange-provider addon allows you to use Microsoft Exchange calendars in Thunderbird, via Exchange’s web services. The addon works on Thunderbird 3.
This addon only works with Microsoft Exchange 2007 and above. Exchange 2003 is not supported.
Features
- Creating, modifying, deleting calendar items.
- Inviting attendees to meetings and sending meeting requests.
- Free/Busy information when inviting other Exchange users to meetings.
- Notifications for meeting requests
- Configuration autodiscovery
Installation
Releases
The latest version is 0.17. Releases are hosted on addons.mozilla.org.
To install, download the .xpi (don’t install as add-on in Firefox!), then in Thunderbird click on Tools->Add-ons->Install... and select the file you just downloaded.
Changes from v0.16 to v0.17:
Simon Schubert (2):
sendRequest: make requests persist even when a dialog is closed
release lightning-exchange-provider 0.17
Fixes bugs:
Changes from v0.15 to v0.16:
Joshua Roys (5):
Add a newline to the last line of the manifests
install.rdf: unpack the xpi
Follow upstream code for QueryInterface
Add some functions to make tb5 happy
Hackishly future-proof the compat code
Simon Schubert (1):
release lightning-exchange-provider 0.16
Fixes bugs:
Changes from v0.14 to v0.15:
Ian Martin (2):
Add NSGetFactory interface for thuderbird 5
Add component manifest for XPCOM 2
Simon Schubert (3):
install.rdf: declare em:type to avoid warning
install.rdf: we support Thunderbird 5 now
release lightning-exchange-provider 0.15
Changes from v0.13 to v0.14:
Simon Schubert (4):
install.rdf: mark compatible with Thunderbird 3.3a4pre
Revert "install.rdf: mark compatible with Thunderbird 3.3a4pre"
sendMail: fix constant conditional
release lightning-exchange-provider 0.14
Fixes bugs:
- #754519: dismissing alarm sends new invitation
- #615631: new invitation sent when accepting invitation
Changes from v0.12 to v0.13:
Simon Schubert (5):
set emacs indentation level
override User-Agent to force basic auth with TMG
bug #715120: do not hide local events/tasks
add Makefile to ease release engineering
release lightning-exchange-provider 0.13
Fixes bugs:
git
To install from git, follow these steps:
cd ~/.thunderbird/*.default/extensions
git clone git://gitorious.org/lightning-exchange-provider/lightning-exchange-provider.git
ln -s lightning-exchange-provider lightning-exchange-provider@gitorious.org
Usage and documentation
To add a new Microsoft Exchange calendar, do the following:
- Calendar / New calendar
- On the network / next
Microsoft exchange. In the location type:
https://$ADdomain\$login@auto
where $ADdomain is your active directory domain and $login is your Exchange username (Not necessarily your email address!). Basically what you enter when login into the Exchange/Outlook web access. For example, if your AD user isEXMPL\bobf, and your mail address isbob.foo@example.com, you enterEXMPL\bobf@auto.
This will use audodiscovery to find the right server address. This only works properly if you select the correct mail account in the last step of the creation dialog!If necessary, you can avoid autodiscovery, and use a direct URL like
https://$ADdomain\$login@$exchangeserver/EWS/Exchange.asmx. Only use this if you know what you are doing!
Reporting bugs
You can report bugs at the bugtracker at launchpad. Please make sure to include enough information to reproduce the problem. Follow the steps in Debugging to capture relevant client-server communication.
Not supported (yet)
- Managing meeting responses.
Various documentation states that meeting responses should be automatically processed by Exchange. In our test environment this did not occur. (Perhaps the functionality was switched off.) Nevertheless, Outlook’s “process requests and responses on arrival” e-mail tracking option will spot meeting responses in the inbox and update relevant calendar items. With Exchange’s web services, it is possible to scan the inbox for IPM.Schedule.Meeting.Resp messages, and obtain the relevant AssociatedCalendarItemId. Unfortunately it is impossible to modify the ResponseType of Attendees, despite a successful operatoin result on attempt. Perhaps there is a way to do it with Response Objects but there did not seem to be an obvious way.
- Tasks. You can always create a “task” as a calendar item though.
- A bunch of other stuff.
Errata and caveats
- Colors of categories aren’t synchronized. (Could be done via extended properties.)
- Lightning’s “chair” user isn’t hooked up, and neither Exchange’s “resources”. Perhaps these two could be mapped, though it could confuse users.
- Notify later is mapped to tentative accept. Exchange’s decline causes item to be deleted, though this doesn’t usually occur with Lightning. The view needs to be manually refreshed to show new attendence status, if changed.
- Lightning’s parser messes up with commas in Attendee names, when doing the free/busy stuff. Commas are translated into semicolons in the frontend to work around this, until Lightning is fixed
- If an invitation is accepted, the view must be refreshed prior to editing the accepted event. (Occurs when you’re looking at the day when the event will occur, when you accept the invitation, and then edit the new event.)
Contact and support
This addon was developed by Andrea Bittau and University College London. Andrea ceased development and Simon Schubert moved it to gitorious.
Development
Documentation can be found on the Development page.

