Web Client SyncML

From Kolab wiki

Jump to: navigation, search

The Kolab Web Client, based on Horde offers a SyncML-Interface. In Server Distribution 2.2.2, if the web client is installed, the URL to access the interface is

https://your.kolabserver.example.org/client/rpc.php

Also check out http://wiki.horde.org/SyncHowTo .

Events and contacts are known to work in beta quality. The quality of the service will depend on the features of the used SyncML client.

The Kolab Web Client and Horde developers welcome any help in getting more devices supported.

Contents

Compatibility List

Device / Software Connector License How To Supported Features
Microsoft Outlook 2007 Funambol Outlook Client (Version 7.2.1) AGPLv3 (How Sync Outlook 2007 via the Funambol SyncML Client) Calender, Contacts, Tasks, Notes
Mozilla Thunderbird Funambol Thunderbird Client (Version 0.9.1) GPLv2 (How Sync Thunderbird via the Funambol SyncML Client) Calendar, Contacts, Tasks
Nokia E71 Internal Synchronisation Application (How to sync Nokia E71) Calendar (incl. Tasks), Contacts, Notes; beware! and beware!
Nokia E90 Internal Syncronisations (How Sync Nokia E90) Calendar (for the moment)
Blackberry 8310 alias Curve Funambol Blackberry Client (Version 7.2) (How Sync Blackberry 8310) Calendar, Contacts
IPhone SyncML plug-in from Synthesis synthesis.ch The iPhone can synchronise calendars, contacts and todo's with Kolab 2.2.3. Didn't try shared resources yet.
IPhone kolabiphone by Stefan Zimmermann sourceforge.net The iPhone can directly use contacts on the Kolab 2.x server. Reads Kolab.xml

Known Issues

Unable to Sync Calendar / PHP Fatal error compareDateTime()

Open the file /kolab/var/kolab/www/client/kronolith/lib/Driver/kolab.php and edit according to the following lines.

Replace "if (is_null($startDate)) {" with "if (empty($startDate)) {"

and

Replace "if (is_null($endDate)) {" with "if (empty($endDate)) {"

Solution from the Kolab Mailinglist

Double Sync with SyncML when using external client

Horde is currently agnostic of external clients to the storage backend used by Horde/Kolab. For SyncML any storage changes need to get logged in order to be exchanged with the mobile clients.

Currently the Kolab drivers within Horde will create the necessary changelog. But this currently only happens after synchronization started. Which means that you need to syncronize twice in order to get changes from an external client if you did not log in via Horde after changing something with an external client.

The attached patch has been provided by Univention but needs some cleanup to go in upstream. We mainly need a clean library call in the Horde application libraries that will be called for synchronization.

Double Sync Patch

Solution from the Intevation Mailinglist

Clearing the SyncML info

It could be nececery to clear all de sync info. F.e. if you cleared your phone and want to resync all the info. In my case the synchronisation went wrong and clearing the syncml info in the database helped. So how to do on a openpkg kolab 2.2.2 installation.
Warning You CAN destroy all info allthough Kolab info should be untouched
These instructions delete ALL syncml data for ALL phones

  • Become root
  • go to the right folder: cd /kolab/var/kolab/www/client/storage
  • open the database: /kolab/bin/sqlite horde.db
  • delete all info from horde_syncml_anchors: delete from horde_syncml_anchors;
  • delete all info from horde_syncml_map: delete from horde_syncml_map;
  • quit the database: .quit
Personal tools