Data sync types#
Overview#
Automate provides the following data sync types:
Data sync type |
Description |
|---|---|
Pull from device |
Available to all device types.
|
Purge local resources |
Available to all device types.
|
Push to device |
Available only to Cisco UCM devices
|
Change notification sync |
Available only to Cisco UCM devices |
Note
A quick import option is available to fetch only summary data that is contained in a list operation response and not the data for all instances/fields. See Data Sync Overview in the Core Guide for details.
Generally, for all sync types, Automate builds up the lists of entities from both Automate and the device, and compares them, using the key for the device entity. The key is typically the unique identifier (ID) for the record in the device we’re syncing with. For example, for Cisco UCM, the ID is the pkid, which is the internal Cisco UCM database ID.
For users, a sync builds up the list of device/cucm/Users
in Automate and then requests from the Cisco UCM the lists of users it currently has
for the comparison. Differences in the lists are handled according to each sync type.
Related topics
Pull from device#
For sync type Pull from Device, the Automate resource is updated where the same key is present in both lists. In this case, the device data is the master and the Automate system model data is updated with the device data.
For example, let’s say new data is added to the Cisco UCM, so that the Automate system data
state for a Cisco UCM device/cucm/User does not show instances that are shown on the Cisco UCM.
In this case, a pull data sync synchronizes the system data with the
Cisco UCM data. For example, a user’s Department may be updated on the
Cisco UCM, but the update only shows on the system after a Pull from Device sync.
If a user resource is created in Cisco UCM but not in Automate, this adds the
device/cucm/User instance into Automate at the level the pull sync was run from,
for example, at the customer level.
When deleting a Automate resource from the device, so that the key is in the
Automate list but not in the device list, a pull sync removes the resource
in Automate. For example, if the resource is a user in Automate but not in
Cisco UCM, the pull sync removes the device/cucm/User record in Automate.
To restrict the number of records removed in Automate, ensure you have the following named macro at the hierarchy where the sync takes place:
PULL_SYNC_DELETE_THRESHOLD_<device_type>
For details, see Pull Sync Delete Threshold.
When pulling device data, for example LDAP users from an LDAP device, the results returned to Automate depend on the LDAP server configuration. For example, if the returned results exceed the LDAP server configured maximum, and if the server does not support paging, an appropriate error message is returned.
For Microsoft 365 syncs, a Max page size (default 1000) setting can be adjusted if the error “Template output exceeded memory limit” is shown.
For details, see Configure Microsoft Tenant Connection Parameters.Push to Device#
Sync type Push to Device is available only to Cisco UCM device types.
In a Push to Device sync type, devices are synchronized with the Automate system data state, which is the primary data state.
When deleting device data from Automate so that the key is in the device list but not in the Automate list (for example, delete user in Automate), the user is removed from Cisco UCM. The user will not exist on the device or on Automate.
When adding new device data to Automate so that the resource shows instances that are not shown on the device, a push data sync synchronizes the device data with the Automate data. For example, adding a
device/cucm/Userinstance to Automate and running a Push to Device sync adds the user record to Cisco UCM.
Keys found in both lists are ignored. Existing records are not updated in either direction.
In the device/cucm/User example, if the same user exists on both Automate
and on Cisco UCM, no update occurs in either direction. Detailed settings
may still not match after a Push to Device sync.
Important
When performing a push sync, it is important to consider data dependencies between different models.
For example, data dependencies may exist between users and phones in the Cisco UCM. In this case, if a user is associated to a phone (via the associated devices on the user), you can’t add the user if the phone does not yet exist in in Cisco UCM.
On the other hand, for ownerID on the phone, pushing the phone first will fail since the user isn’t in place.
This might mean running the push sync multiple times so it loads in the required order, or you may need to modify data (such as removing device association) to allow the push sync to succeed.
Note
The keys list sync logic described in this topic implies that in case of a reversion of the Cisco UCM to restores/inactive partitions, the end-state of the relevant pkids may differ to their state the last time Automate was in sync with Cisco UCM (before a restore), particularly if testing occurred in between. This means you may, for example, have a user with the same username in both Automate and Cisco UCM, but if that user’s pkid in Cisco UCM now differs to the one in Automate from previous syncs or interactions, they will be seen as different users even though they have the same usernames.
Change Notification Sync#
Sync type Change Notification Sync is available only to Cisco UCM device types.
A Change Notification Sync is a pull sync of changes stored in the local collection that is updated by the Change Notification Collector service.
For more details on Change Notification Sync, see the related topics in Data Sync section of the Core Feature Guide.
Purge Local Resources#
In a Purge Local Resources sync type, all resources or instances of device information that exists in the system are deleted. Entities in the device are not deleted.
Note
The default purge syncs created when adding a Cisco UCM, CUC, LDAP or CCX server type are disabled by default. To use the purge sync, the “Remove” check box must first be cleared on the “Disabled Operations” tab of the relevant sync.
This sync type is typically used when cleaning up the system. The system displays a warning before executing an enabled purge sync.
See the following sample device type syncs:
HcsPurge-{{CUCMHostname}}–{{CUCMClusterName}}-DS
HcsUserPurgeDS-{{CUCMHostname}}–{{CUCMClusterName}}
HcsPhonePurgeDS-{{CUCMHostname}}–{{CUCMClusterName}}
HcsPurge-{{CUCXHostname}}–{{CUCXClusterName}}-DS
PurgeUccx-{{UCCXHostName}}
HcsLdapUserPurge–{{UniqueID}}
PurgeSpark{{CustomerName}}