Direct Push

Now a days I'm exploring the Windows Mobile , so some interesting work which i'm doing is related to Direct Push. In this blog post I will be discussing about the ways to implement Direct Push......

Using SMS (this was used when there were no real direct push available)  

The triggers are sent from the server as SMTP Message to the SMTP front end at the mobile Operator and they send SMS messages to the device. So it keeps device Always Up To Date notification feature (AUTD).

Limitations

1. SMTP to SMS conversion latency.

2. Reliability.

 

Using Direct Push

In Direct Push client opens the HTTP connection with the server and keeps it alive for a X amount of time known as heartbeat interval. The server looks for the changes till the heartbeat interval elapses and sends notifications about new items over this connection.

How Direct Push works

Device issues a PING command and sends it as a part of the POST request from the device. EAS server receives a PING command and subscribes to notifications for the folders using SUBSCRIBE command for DAV subscriptions.  EAS checks for changes and if a notification arrives within the heartbeat interval it notifies changes to the client to sync by issuing a response to the PING command with a Status of 2. If there are no changes within the heartbeat interval, the EAS server waits for the notifications from the mailbox server. After the heartbeat interval elapses, the server uses UNSUBSCRIBE command to delete the DAV subscription and then it will return a response to PING command with a status of 1 indicating no changes.