This pipeline enables an xDB contact to be resolved from a Salesforce object identified by a particular query string parameter in the page request URL.
This can be useful to identify xDB contacts that are coming from an external system such as Salesforce Marketing Cloud that have not been identified originally through the S4S save action on a form. The Salesforce Marketing Cloud campaign would have a click thorough in the sent email which contains a query string parameter that uniquely identifies the associated Salesforce object such as a Contact or Lead. The pipeline then performs the following steps:
When the previous steps have been completed the Sitecore content will personalize based on the xDB and the associated S4S facet data.
Note: This pipeline can use several Salesforce API calls to find the associated Salesforce object, determine if the link between the xDB contact and the Salesforce object is present, create the link if not present, get the field mapping for personalization and populate the S4S facet from those fields. Consider an alternative solution if you frequently dispatch large email campaigns and your current API consumption is high. |
The pipeline consists of a number of processors that need to be configured. In addition, there are processors that can be commented out if not required e.g. if you only ever need to find the associated Salesforce Contact then the processors to find Salesforce Leads and resolve the xDB contact from a Salesforce Lead can be commented out.
This pipeline is disabled by default. To enable the pipeline uncomment the startTracking pipeline in the S4SAnalytics.config configuration file.
<startTracking> <processor type="FuseIT.S4S.WebToSalesforce.Pipelines.StartTracking.ResolveXdbContactFromSalesforce, FuseIT.S4S.WebToSalesforce" patch:after="processor[@type='Sitecore.Analytics.Pipelines.StartTracking.TrackerInitialized, Sitecore.Analytics']"> </processor> </startTracking> |