Customer Engagement
Customer engagement integration allows information about communications sent from an external system such as Opower to be stored in the system as customer contacts. This information includes who the communication was for, what it was about, a reference to the communication content (content path), and a unique identifier from the external system (external reference ID). The account and person defines who the communication was for, while the communication product and event type defines what the communication was about. The content path allows the user to view the content of the communication. A single customer contact is created for each external reference ID.
Receiving Communication
For a customer contact to be created, a one-to-one mapping between the communication product/event type combination and a notification event type lookup value must be defined in the Communication Product Event Type Mapping (C1-CustEngageValueMapping) extendable lookup. The system is delivered with mappings for the Opower communication products and event types. Additionally, the following must also be defined for the notification event type lookup value:
- Notification Event Type
- Notification Type
- Customer Contact Type with Contact Action set to 'Record Customer Engagement'.
Note:
An error is raised if a Notification Event Type or Notification Type is not defined. If a Customer Contact Type is not defined, the communication is skipped.
The system receives communications in two ways:
- Customer Engagement (C1-CustomerEngagement) inbound web service
- On-demand retrieval of communications for an account
The inbound web service is the primary mechanism through which communication are received. It is expected to be invoked periodically to receive communications for one or more accounts.
To enable on-demand retrieval of communications for an account, set the Enable On Demand Communication Query parameter in the Customer Engagement Integration Configuration (C1-CustEngageIntegration) extendable lookup. When enabled, recent communications for an account are retrieved from the external system in real time when the Customer Activity History zone is loaded. The on-demand retrieval is limited to communications sent after the contact date/time of the most recent customer engagement customer contact, if one exists. Otherwise, all communications for the account are retrieved. The On Demand Communication Query Interval (Minutes) parameter in the same extendable lookup determines how soon after that contact date/time the on-demand retrieval can be performed again. Set this parameter to zero to perform the on-demand retrieval each time the zone loads. The external system and outbound message type used in this process are defined in the same extendable lookup.
Error Handling
If an error occurs while processing a communication, a Customer Engagement Error (C1-CustomerEngagementError) business object instance, or error record, is created to store the communication information for later remediation and reprocessing. Only one non-final error record can exist for each communication external ID. Error records can be viewed and maintained in the Inbound Sync Request portal. An error record is created in the Error state and remains there until it is reprocessed or discarded. Communication information in the error record is reprocessed the same way as information received through the inbound web service or on-demand account communication retrieval.
Viewing Communication Content
Communication content can be viewed using the View Communication action button in the Customer Contact portal. On click of the button, a real-time outbound message is sent to the external system to retrieve a pre-authenticated resource (PAR) link for the content path stored in the customer contact. The PAR link then opens in a new window to display the communication content. The validity of the PAR link is determined by the external system. The external system and outbound message type used in this process are defined in the Customer Engagement Integration Configuration (C1-CustEngageIntegration) extendable lookup.
Parent topic: Integration