Synchronization process flow

The service application performs both synchronization in and out.

Synchronization out

During synchronization out, the application connects to Service Management via IDO Web Service and reads from the user calendar and Service calendar. The Sync Process Background Task then connects to the Exchange server via EWS and performs these tasks:

  • Identifies new user and Service calendar items from Service Management and adds them to Exchange.

    The Exchange Object ID and Change Keys for the newly created object are then stored in Service Management against each calendar item. A Service Management record without an Exchange Object ID and Change Key is considered a new item.

  • Identifies modified items and updates the Exchange object using the Exchange Object ID. The Service Management Client Key is used to identify modified records.
  • Identifies deleted items and deletes them from Exchange using the Exchange Object ID. Private calendar events are not deleted from Exchange.

    A separate delete log is maintained to store deleted records from the user and Service calendars. Records without an Exchange Object ID are not moved into the delete log, when deleted from the source table.

Synchronization in

During synchronization in, the application reads the Exchange change log and performs these tasks based on the event:

  • If the event is Delete, then the application deletes the Service Management record for the corresponding Exchange Object ID.
  • If the event is Create, then the record is added to the Service Management calendar. The Exchange Object ID and Change Key are added to the record. If a matching record already exists, an update is performed.
  • If the event is Update, then the Service Management record is updated, when the Change Key is different from the Exchange Change Key.