Data Sync Workflows Reference#
The workflows below form part of the set of workflows that are carried out when When adding a new CUCM cluster. The name and description of each calling workflow is indicated, as well as the corresponding information for called or included workflows.
UserCucmSyncAdd
include PWF: UserCucmSyncAdd_ValidateData: Validate the CUCM user before any work is done. If errors are found the CUCM user will be purged again and transaction will exit.
include PWF: UserDiscoverApps : Discover all user apps (fn.user_discover_apps pwf.username)
Initialize minimum user input: user_input_role_selfservice, pwf.user_detail.is_cucm_user, entitlement_profile
Add a new Local User if it does not exist using just the username as input and role as selfservice
Update Local User if it exists
Discover all user apps again after user add
include PWF UserMoveCucmUsingFilter: Move the CUCM user if it matches a filter
include PWF UserUpdateApps: Update data on all apps where data is mapped using the latest user data as input
include PWF UserCucmOverbuild: Move CUCM User if configured in Global Flow-Through-Provisioning settings
include PWF UserCucmFlowThroughProvisioning: Flow Through Provision User if configured in Site Defaults Doc settings
UserCucmSyncUpdate
Workflow to update a User from CUCM sync.
include PWF UserHandleUserNameChange: Handle CUCM username change if the username changed (this also has its own call to UserDiscoverApps inside it).
Update User if it exists
If VOSS-user aka Local User aka data/User does NOT exist, then CREATE it at the same node as cucm/User, using just the username as input and role as selfservice
include PWF: UserDiscoverApps : Discover all user apps
include PWF: UserUpdateApps : Update data on all apps where data is mapped using the latest user data as input
UserCucmSyncRemove
Workflow to remove a User from CUCM sync.
build a list of associated Device Objects
build a list of associated Device Profile Objects
include PWF UserDiscoverApps: Discover all user apps
include PWF RemoveDeviceObjectFromCucmPWF: REMOVE each Phone (cucm/Phone) via [RemoveDeviceObjectFromCucmPWF]
include PWF RemoveDeviceObjectFromCucmPWF: REMOVE each cucm/DeviceProfile via workflow [RemoveDeviceObjectFromCucmPWF]
Remove Voicemail Account (device/cuc/User) if retain Voicemail is set to false and the removed User had an associated Voicemail Account
Remove User only if its new sync source is LOCAL/CUC/WEBEX_TEAMS user AND retain Voicemail / Webex Teams are set to false AND User does not have other services
HcsAddUpdateCucmPhoneDsPWF
include PWF HcsAddUpdateCucmPhoneForeachUserPWF: (lines_removed)
include PWF LineDeletion_after_DeviceUpdate_PWF: INCLUDE sub-pwf to CLEANUP all associated cucm/Line instances , depending on Line Delete Preferences
LineDeletion_PhoneDataSync_PWF
Shared PWF, used typically by data-syncs, to maintain/delete cucm/Lines and INI after the sync detected that e.g. device was removed
SET var [pwf.deletedDeviceDat]: if the calling/parent PWF had already defined this var, then use that pre-defined value, else default to use first [previous] or else [input] if previous is not available
SET pwf VARS: unique CUCM line, deviceOwner, allowLineDeletion, allowLineUpdate, lineUpdateCft, lineHn, lines_removed
include PWF LineDeletionWrapperProcessLinesListPWF: If either of the LineDeletion-prefs are being used / have been set, then proceed with: ForEach line, run the line cleanup/maintainance workflow
LineDeletion_after_DeviceUpdate_PWF
To maintain/delete cucm/Lines and INI after the sync detected that e.g. device was removed
If either of the LineDeletion-prefs are being used / have been set, then proceed with: ForEach line, run the line cleanup/maintainance workflow:
Includes LineDeletionWrapperProcessLinesListPWF - If either of the LineDeletion-prefs are being used / have been set, then proceed with this line of workflows.
For each line, run the line cleanup/maintainance workflow = LineDeletion_ProcessLine_PWF (remove device/cucm/Line)
Includes RemoveAgentLineRelPWF” (Remove Agent Line Relation will fire if it is not an update via Sync or if it is an Sync update and lines have been removed.)
Remove relation/HcsCucmCcTagREL
HcsPreSyncSipGwSiptrunkUpdatePWF
This workflow will update SipTrunk field in SIP Gateway if siptrunk name changes.
Includes: HcsPreSyncUpdateSipGwPWF
This workflow will update SipTrunk field in SIP Gateway if siptrunk fields (ipAddress, port) changes.
PWF_HcsPostSyncSipGwSiptrunkDeletePWF
This workflow will delete SIP GW which is using this SIP trunk
Includes: HcsPostSyncDeleteSipGwPWF
Removes relation/HcsSipGwREL where name = input.sipgw.name