What server-initiated synchronization does

MobiLink server-initiated synchronization allows you to initiate synchronization from a consolidated database. You can send push notifications to remote databases, and cause remote databases to update the consolidated database. This MobiLink component provides programmable options for detecting changes in the consolidated database to initiate synchronization, selecting devices to send push notifications to, and determining how devices react to those push notifications.

Example

A trucking organization issues mobile devices to their drivers. Each device runs a database that contains routes and delivery locations. When a driver submits a notice of a traffic disruption, the report is sent to a consolidated database. A server-side MobiLink component called a Notifier detects the report and sends a push notification to other drivers whose routes are affected by the disruption. This push notification causes the remote databases to synchronize so that the drivers can use an alternate route.

The server-initiated synchronization process

In the following illustration, the Notifier checks a consolidated database for changes. The Notifier sends a push notification to a device, resulting in the remote database being synchronized with the consolidated database.

The process of server-initiated synchronization.

During the server-initiated synchronization process, the following steps occur:

  1. Using a query based on business logic, the Notifier checks a consolidated database for changes that need to be synchronized with the remote database.

  2. When a change is detected, the Notifier prepares a push notification to send to the device.

  3. The Notifier sends the push notification. Push notifications can be sent through a Device Tracker, UDP, SMTP, or SYNC gateway.

  4. The Listener compares the subject, content, or sender against a message filter.

  5. If the filter conditions are met, an action is initiated. For example, in a typical implementation, an action could run the MobiLink client or launch an UltraLite application.