SOGo—Open-Source Groupware

The current state of SOGo and its integration capabilities with desktop and mobile clients.


RequestHeader set "x-webobjects-server-port" "80"
RequestHeader set "x-webobjects-server-name" "localhost"
RequestHeader set "x-webobjects-server-url" "http://localhost"

Then, restart Apache and SOGo:

% /etc/init.d/apache2 restart
% /etc/init.d/sogo restart

If you want to use an IP address or a real DNS name to access SOGo, you must adjust this accordingly. The "x-webobjects-server-url" value will become the official URL to access your SOGo system. Now, from the same machine on which you performed the above steps, open your favorite Web browser and access http://localhost/SOGo. You should be able to log in with any of the three users created above.

Desktop Clients

Through the standard CalDAV and CardDAV protocols, SOGo supports desktop clients, such as Mozilla Thunderbird, Apple iCal and Apple Address Book, very well.

Mozilla Thunderbird, combined with the Lightning calendar extension, is the preferred client to use with SOGo. Version 2 and 3.1 of Thunderbird are supported. Thunderbird is the preferred desktop client as SOGo's Web interface shares most of its look and feel and functionality with Thunderbird. Moreover, two extensions can be installed together with Lightning to perfect the integration: the SOGo Connector and SOGo Integrator extensions. The former adds more capabilities to Thunderbird (such as CardDAV support, CalDAV ACL and so on), and the latter adds features that are vertical to SOGo (such as calendars, address-book sharing capabilities and automatic discovery, preferences synchronization and more).

Figure 1. SOGo Web Interface

Figure 2. Mozilla Thunderbird

Using the SOGo Integrator extension requires editing one file in the extension file subtree to specify where the SOGo server is located. This is done by hand. In an enterprise environment, this step is required only once per release, because the updates are expected to propagate automatically. Uncompress (using a ZIP or jar tool) the SOGo Integrator XPI, and locate the extensions.rdf file. This file is used for locating the extension update server and the SOGo server (let's consider those to be the same for the moment). There is a line starting with a Seq tag and with an attribute named isi:updateURL. Replace the host part of that URL with the SOGo server to which you want to connect, which again should be identical to the x-webobjects-server-url. For example, one would replace the following:

<Seq about="" 


<Seq about="" 

if the SOGo server is accessible from Once you are done modifying the configuration file, save your changes and reconstruct the XPI. As for the extension update server, it can be configured to install or uninstall Mozilla Thunderbird extensions automatically. You also can push Thunderbird settings to all your user base. Installation and configuration is documented in the “Mozilla Thunderbird—Installation and Configuration Guide”.

On Mac OS X, if you prefer Apple's closed-source applications, you easily can use Apple iCal 3 and iCal 4 with SOGo. All features will be available, including calendar sharing and delegation, due to SOGo's excellent compatibility with the CalDAV protocol and its implementation of some Apple-specific extensions. Since Mac OS X 10.6, it's also possible to use Address Book with SOGo through the CardDAV protocol in order to access your contacts. When you combine those two applications with Apple Mail, a cohesive environment is created with collaboration possibilities with other users on other platforms.

Figure 3. Apple iCal 3

The popularity gained by the CalDAV and CardDAV quickly exposed fundamental flaws in both protocols, and the Collection Synchronization for WebDAV and CalDAV Scheduling Extensions to WebDAV were created to eliminate those. The former introduces a token-based approach to DAV resources synchronization. So, instead of letting the DAV client ask for the ETag of every single item in a collection to see what has changed on the server, the client actually sends a sync token and gets in return the references of changed items from a collection. This makes the whole synchronization process of large calendars or address books very fast.

The second extension actually moves all the scheduling logic required in calendaring applications (inviting attendees, checking availabilities and so on) to the server. This avoids client-side implementation bugs and reduces client-to-server communications, which can be slow on high-latency connections.

SOGo implements those two extensions quite nicely, and Mozilla Lightning supports both while Apple iCal limits itself to CalDAV Scheduling Extensions to WebDAV.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

At last !

Jason Simmons's picture

A lot of the "open source" groupware products that run on Linux servers are designed to service primarly windows clients.

This is the first solution that I have seen that can be run in a linux server, and be consumed by windows,linux and mac clients, via a single application via Thunderbird & Lightining.

Windows users can still have their MS Outlook comfort blanket if they cant bear to part with it, without the need to install cludgy Mapi connectors.

This looks like a fantastic project, and I will be trying it out myself