How to configure a device to sync with Horde 3.1 (HEAD)
Syncing is currently developer-level code - you need to be able to at least read logfiles! Testing is welcome; please report to the sync list (sync@lists.horde.org), but please keep in mind that the code is still in heavy development.
- The sync URL is http(s)://pathtoyourhordeinstall/rpc.php
- Username/password: your Horde account data
- Databases (sometimes called remote settings) must be calendar, tasks, notes, or contacts.
- For debug output create dir /tmp/sync and make it writeable by web server
- Set log level to PEAR_LOG_DEBUG in Administration:Horde Setup_Logging. It may be helpful to filter the logs as follows:
tail -f /tmp/horde.log | grep "SyncML:"
- For sync4j outlook syncing, use at least SyncClient PIM Outlook version 1.3.9 available from http://sync4j.org/ (v 2.2). The device ID must be sc-pim-outlook or anything containing sync4j so that the Horde backend can identify the connector.
- For devices using WBXML (P800/P900 and Sync4j don't, most others do) you need a recent (>=0.9) version of the wbxml2 library installed. See http://libwbxml.aymerick.com/.
Sync clients being used succesfully:
Synthesis client (v2.5.0.30) -> PDA -> USB serial cable -> Powerbook G4 running The Missing Sync (http://www.markspace.com/missingsync_palmos.php) -> Horde test installation
Cleaning up when testing
DO NOT USE THIS IN PRODUCTION!
If you're debugging and want to clean out data between sync attempts, you can try this set of commands if you use mysql (or adjust appropriately for other backends):
delete from kronolith_events where calendar_id='YOUR CALENDAR';
delete from horde_datatree where group_uid='syncml';
delete from horde_datatree_attributes using
horde_datatree_attributes left join horde_datatree on
horde_datatree_attributes.datatree_id=horde_datatree.datatree_id where
horde_datatree.datatree_id IS NULL;
You can clear all session files (assuming the default backend) with rm -f /tmp/sess_*.
You'll have a lot of entries in the datatree with a group_uid of 'horde.history'. You will lose information from more than syncing by clearing them out, but you can do so. It is also useful to clear out horde.log and /tmp/sync to get a better feel for what is from the current sync attempt and what is not.
Using a Palm simulator to test the Synthesis client
- Download Palm simulator (for version 5.4) from http://www.palmos.com/dev/tools/simulator/ (free registration required).
- Unzip somewhere, start debug/PalmSim_54_dbg.exe, select a suitable ROM (included in debug dir)
- Right-click on Simulator and click Settings > Communications > Redirect SocketLib Calls to Host TCP/IP
- Download and unzip synthesis client for PalmOS from http://www.synthesis.ch/
- Install simulator by dragging the enclosed .rpc file into the simulator window.
- Start & configure the Synthesis client. Start a sync run.
Links
SyncMLDevicesFileFormats
SyncRoadMap