Overview¶
This synchronization process is defined in the pipeline batch Salesforce Campaign Members Sync Pipeline Batch.
The campaign members synchronization process involves the following steps:
- Reset campaigns assigned to existing xDB contacts.
Note
For more information on why campaign membership is reset, see About Reset Campaign Members.
Read campaigns from Salesforce.
Loop through the campaigns from Salesforce. For each campaign:
- Get the Sitecore item that corresponds to the Salesforce campaign if one exists, otherwise create a new Sitecore item.
- Apply value mappings by reading values from the Salesforce campaign and writing those values to the Sitecore item.
- Save the Sitecore item.
- Read the contacts associated with the campaign from Salesforce.
- Loop through the campaign members from Salesforce. For each campaign member:
- Get the xDB contact that corresponds to the Salesforce campaign member if one exists, otherwise create a new xDB contact.
- Get the contact entry from the work queue that corresponds to the xDB contact if one exists, otherwise create a new work queue entry.
- Apply value mappings by reading values from the Salesforce campaign member and writing those values to the work queue contact.
Read contacts from work queue.
Create a known contact set for the xDB bulk contact update API.
Loop through the contacts from the work queue. For each contact:
- Add the contact to the known contact set.
- Submit the known contact set.