Linux::debian::SyncEvolution
On Thu, 2011-10-20 at 20:39 +0200, Patrick Ohly wrote: > That is indeed the case. Use the same sync URL as for the > SyncEvolution client and the "addressbook", "calendar", "todo", "memo" > names as URIs.
$ syncevolution --configure --template SyncEvolution_Client \
--sync-property remoteDeviceId=9123456789ABC-123456789ABCDEF \ --sync-property username=david \ --sync-property password="123" \ --sync-property uri=addressbook \ galaxys2
ERROR: '--sync-property uri=addressbook': no such property
I tried again without the uri property and the command was accepted.
I can now successfully sync my phone contacts, calendar and todos. I had to change the default server paths in Synthesis to match the the URIs you listed, but it all works now.
Thank you very much for the help.
> Should there be a third HOWTO covering the "phone <-> SyncEvolution > HTTP SyncML server with Evolution" case or can you think of some > changes to the existing HOWTOs which avoids the need for such a third > one?
The steps are very similar, but I've tried the wording a couple of different ways and it keeps getting awkward. Mostly because you have actual command line examples for the two syncevolution case, and I can only come up with a broad waving of hands on how to configure the phone client. (Unless I tailor it specifically for the Synthesis android client and then readers can extrapolate to their own devices.) Perhaps one page with two sets of steps on it? I've attached some text below.
David
Synchronizing Directly to Evolution via HTTP HOWTO
SyncEvolution makes it easy to keep two instances of Evolution in sync, or to keep an android phone in sync with Evolution. This lets you share the data between a desktop and a laptop or phone without requiring any internet intermediary. Setting up SyncEvolution as such an intermediary on an Internet server is explained in another HOWTO.
Requirements
* Two instances of Evolution (or one instance and an android device) on machines which can reach one another over the network. One host will act as the server (call this box "sauce") and the other will be the client (call this box "cheese"). The names, of course, do not matter. * syncevo-http-server installed on the server
Steps for two computers
* Start syncevo-http-server on the server: syncevo-http-server http://localhost:9000/syncevolution NB: this listens on all interfaces, NOT localhost as it appears. * Configure a peer on the client to point to the server (you'll need to fill in the right IP or hostname): syncevolution --configure --template SyncEvolution \ syncURL=http://sauce:9000/syncevolution sauce * Run the sync on the client. This will fail, but will output the client device ID, which we need: syncevolution sauce On the server side, you should see something like: [ERROR] sync: no configuration found for deviceID (some long string of chars) Save that string, you need it for the next step. * On the server, configure a peer for the client: syncevolution --configure --template SyncEvolution_Client \ --sync-property remoteDeviceId=<paste in the string> \ --sync-property username= \ --sync-property password= \ --sync-property uri= \ cheese * On the client, kick off the sync process: syncevolution sauce
Steps for a computer and a phone
* Start syncevo-http-server on the server: syncevo-http-server http://localhost:9000/syncevolution NB: this listens on all interfaces, NOT localhost as it appears. * Configure the phone to point to the server (you'll need to fill in the right IP or hostname) For example on the Synthesis server settings page, set the Server URL to: http://sauce:9000/syncevolution * Run the sync on the client. This will fail, but will output the client device ID, which we need. On the server side, you should see something like: [ERROR] sync: no configuration found for deviceID (some long string of chars) Save that string, you need it for the next step. * On the server, configure a peer for the client: syncevolution --configure --template SyncEvolution_Client \ --sync-property remoteDeviceId=<paste in the string> \ --sync-property username= \ --sync-property password= \ cheese * On the client, configure the server path for each item you would like to synchronize. The paths used by evolution are addressbook", "calendar", "todo", "memo".
* On the client, kick off the sync process.
This will give you a setup that syncs the addressbook, calendar, memo,
and todo sources. calendar+todo defaults to disabled; leave it, you
don't need it for this kind of setup.