Hello, Developers,
Ralf proposed to announce this issue again in the “international” portion of the mailing list, so here we go. Main plot ist that eGW currenty fails to sync with any newer Sony Ericsson Phone via syncml. The serverside logs tell us that “Version 1.2” is not supported at the moment. The phone itself claims a failed sync session, so no sync at all happens.
Since I am a also an owner of SE cellphone I did some investigations on that:
Every single SE cellphone that is capable of SyncML 1.2 does also support 1.1. In my special case (k800i) this can be verified by the whitepaper of the phone(page 41). So, theoretically it should work but practically it unfortunately does not. The main problems seems to be the way the handshake takes place. SE cell phones first try SyncML1.2. There is no way to tell the phone to use 1.1 directly. But: There is a certain fallback mecahnism that should be triggered by the egw-syncml code when 1.2 request comes in that tells the client that 1.1 should be used instead. Here you can find some SE-developers coping with the same problem.
Their solution looks like this:
Ask the server provider of your service to change the returned status code (in the SyncML package) to 513 (or 505). Then a Sony Ericsson SyncML 1.2 non-UIQ device will switch back to OMA SyncML DS 1.1 automatically.
[/quote]
The Horde-implementation of SyncML seems not to be able to send such a status code. I digged around in the sources in the hope to find somewhere kind of a state machine that handles syncml but I gave up on dozens of files spread over several paths. Maybe someone who has a deeper understanding of the syncml code can verify the idea, perhaps it is not so difficult, at least it seems so to me if you read these other guys’ proposals.
Thanks for your time