Hi Patrick,
that's an interesting topic! Just a few comments:
On Apr 3, 2010, at 17:34 , Patrick Ohly wrote:
[...] For synchronization via wireless, there are two
options:
* ad-hoc direct between device and PC: would work without any
additional hardware, but uncommon
* devices log into the same W-LAN: that's how devices typically
connect to the Internet, but they won't know about each other,
so direct sync without manual configuration becomes harder
One possible solution for the second problem is DNS Service Discovery,
as used by Apple Bonjour and Avahi on Linux:
http://www.dns-sd.org/
Just to say - I took a tiny first step into that direction with our iPhone apps, as
Bonjour is readily available there. The server side annouces itself via Bonjour, and the
URL entry field in the client has a Bonjour browser so in a iPhone to iPhone sync the user
can just select the other iphone from a list.
Of course, it's a long way to go from here to real select-and-use. Due to the lack of
a standardized SyncML service description, I have to announce the SyncML server as a web
server (_http._tcp), and the browser part has to show any web server (which often includes
config webpages of network printers etc.). And it's only the URL.
I checked, so far no-one has bother to add OMA DS/SyncML to the list
of
services which can be discovered like that. There are several
proprietary sync services listed, though.
There are several data items which would have to be "discoverable":
* IP address of host
* port
* path (for HTTP POST)
* unique SyncML device ID (to distinguish multiple servers)
* information about URIs
IP address, port and path is something also used by existing services.
The SyncML specific parts are those that we have to define in more
detail. For example, how do we describe that URI "addressbook" is for
"contacts"? How do we describe multiple address books, for example one
for private use and company?
This kind of self-description is not part of SyncML, leading to the
current complexity involved in configuring clients and servers
correctly.
Just food for thought... I'm not ready to suggest a specific solution,
but wanted to write down my thoughts so far.
I wonder if it might be possible for "us" (Intel, Nokia, Synthesis :-) to define
such a spec for Bonjour-based SyncML service discovery and try to have it standardized?
Right now, I don't have the slightest idea if this could be feasible, and what
standardisation body we'd need to address, and if that would be someting only OMA
itself can do or could be added "from outside" etc.
But as the complex config IMHO is the single most important reason for the niche existence
SyncML still has after all these years, it would make a lot of sense to join any forces
available. With the open key=value structure of the dns-sd I see no reason prohibiting
inclusion of the complete config required for successful sync.
Given that there's also a wide area version of Bonjour/dns-sd, that could be huge for
non local HTTP as well. I guess none of the internet SyncML service providers would
hesitate a second to add some extra DNS records to help their users to setup sync...
Lukas Zeller (luz(a)synthesis.ch)
-
Synthesis AG, SyncML Solutions & Sustainable Software Concepts
info(a)synthesis.ch,
http://www.synthesis.ch