2.5.12.5 Protocol-Specific Details

Using remote operations (ROPs)

Synchronizing items by using ROPs

Figure 33: Synchronizing items by using ROPs

Note The ROPs are sent via RPC or MAPI extensions for HTTP. Several ROPs can be batched into a single request, as described in [MS-OXCROPS].

  1. The client opens the specified folder per the use case described in section 2.5.9.

  2. The client issues a RopSynchronizationConfigure ROP request ([MS-OXCROPS] section 2.2.13.1) by using the handle to the folder to initiate the synchronization.

  3. The Exchange server responds with a handle to the synchronization.

  4. The client uses a series of RopSynchronizationUploadStateStreamBegin ([MS-OXCROPS] section 2.2.13.9), RopSynchronizationUploadStateStreamContinue ([MS-OXCROPS] section 2.2.13.10), and RopSynchronizationUploadStateStreamEnd ([MS-OXCROPS] section 2.2.13.11) ROP requests to upload the client's Incremental Change Synchronization (ICS) state, as described in [MS-OXCFXICS], to the Exchange server, which prepares the list of changed items for the client to download based on the uploaded ICS state.

  5. The client issues a RopFastTransferSourceGetBuffer ROP request ([MS-OXCROPS] section 2.2.12.4) to obtain the list of changes from the Exchange server.

  6. The Exchange server responds to the request with the full list of changes as well as the new ICS state.

  7. The client applies the changes to the folder items and saves the new ICS state for subsequent synchronizations.

Using Exchange ActiveSync

Synchronizing items by using Exchange ActiveSync

Figure 34: Synchronizing items by using Exchange ActiveSync

  1. The client issues a Sync command request, as described in [MS-ASCMD] section 2.2.1.21, with a GetChanges element, as described in [MS-ASCMD] section 2.2.3.84, to the Exchange server requesting a list of all changes that have occurred in the specified collection (folder) since the last successful synchronization.

  2. The Exchange server responds with a series of Sync command responses, as described in [MS-ASCMD] section 2.2.1.21, that the client processes to synchronize with the Exchange server.

Using Exchange Web Services

Synchronizing items by using Exchange Web Services

Figure 35: Synchronizing items by using Exchange Web Services

  1. The client uses the HTTPS/SOAP SyncFolderItemsSoapIn request message, as described in [MS-OXWSSYNC] section 3.1.4.2.1.1, to synchronize the changes to items in the folder specified in the SyncFolderId element. The SyncState element provides the state of the last synchronization and acts as a starting marker for synchronizing new changes.

  2. The Exchange Client Access server responds with a SyncFolderItemsSoapOut response message, as described in [MS-OXWSSYNC] section 3.1.4.2.1.2, which includes a ResponseCode element, a new SyncState marker, and a list of changes.

  3. The client applies changes to the folder by using information in the SyncFolderItemsSoapOut response, and saves the SyncState value that was returned in the SyncFolderItemsSoapOut response.