Quote:
Originally Posted by jjzhuang No, there's nothing the server can do when the client is not "Pinging" the server in succession.
Some clients, like RoadSync which does have an S60 version that works on E61, does support 5 minute interval in addition to push. However RoadSync is not free software. |
Thing is it DOES ping. Literally, but thats all it does, as per my code block in my first post. It pings every 2 minutes if I set the retry time to that, but the server doesnt react to it at all.
Here's a proper sync:
(sorry didnt put this in code blocks because it makes it hard to read long lines
2007-05-28 00:30:10,705 INFO [http-80-Processor99] [] sync - OPTIONS Microsoft-Server-ActiveSync?User=harmony-mobile.com%5Ckchase&DeviceId=IMEI004400711633461&D eviceType=IMEI004400711633461
2007-05-28 00:30:10,710 INFO [http-80-Processor99] [] sync - HTTP/1.1 200 OK
2007-05-28 00:30:11,723 INFO [http-80-Processor99] [] sync - POST Microsoft-Server-ActiveSync?User=harmony-mobile.com%5Ckchase&DeviceId=IMEI004400711633461&D eviceType=IMEI004400711633461&Cmd=Sync
2007-05-28 00:30:12,201 DEBUG [http-80-Processor99] [mid=3;name=harmony-mobile.com\kchase;DeviceId=IMEI004400711633461;Dev iceType=IMEI004400711633461;SyncCmd=Sync;class=Cal endar;] sync -
here's one when its set to Always On (yes the 401 Unauth and 200 Ok lines arent shown in the logs for some reason):
2007-05-24 22:40:45,806 DEBUG [http-80-Processor97] [mid=3;name=harmony-mobile.com\kchase;DeviceId=IMEI004400711633461;Dev iceType=IMEI004400711633461;SyncCmd=Ping;] sync -
<?xml version="1.0" encoding="utf-8"?>
<Ping xmlns="Ping">
<Status>1</Status>
</Ping>
2007-05-24 22:40:45,806 INFO [http-80-Processor97] [mid=3;name=harmony-mobile.com\kchase;DeviceId=IMEI004400711633461;Dev iceType=IMEI004400711633461;SyncCmd=Ping;] sync - HTTP/1.1 200 OK
2007-05-24 22:40:47,544 INFO [http-80-Processor97] [] sync - POST Microsoft-Server-ActiveSync?User=harmony-mobile.com%5Ckchase&DeviceId=IMEI004400711633461&D eviceType=IMEI004400711633461&Cmd=Ping
as you can see, the phone seems to be sending a totally different message when it goes to sync - Ping vs Sync - you can see the server sees the syncCmd as 'Sync' instead of 'Ping' as well. Interesting that its only 'Calendar' when it does the sync, though it continues onto other sync types (email, contacts) if there's something to update.
Im wondering if I cant proxy the tcp stream through a perl script or otherwise, and change the cmd sent by the phone from ping to sync - im wondering if this is a statefull or stateless protocol - if the phone will accept more than a ping responce when it thinks its only sent ping.
Anyone else's help on this would be appreciated (any Zimbra devels got some comments?)
I guess I need to look at the exchange mobile protocol now
Either nokia or zimbra should be fixing this.
/kc