Activity History

From Genesys Documentation
Jump to: navigation, search

Activity history entries are created by Gplus Adapter in Salesforce at the end of a call, chat, SMS, email, open media interaction, or an outbound campaign call.

Gplus Adapter can save different types of interactions to a Salesforce activity history entry. Use the following options in Agent Setup to enable or disable the creation of activity logs:

  • Use the Voice Activity Log option to specify whether or not to create an activity task for the following call types:
    • Inbound
    • Outbound
    • Internal
    • Consult
  • Use the Chat Activity Log option to specify whether or not to create an activity task for the following chat types (including SMS):
    • Inbound
    • Consult
    Adapter integration of SMS is the same as chat with only minor differences as described in this document. For SMS, the Activity task is created only for an unassigned contact in the Agent Workspace Communication tab. For SMS, the only UserData that can be transferred by SMS are the from and to phone numbers and the text of the SMS.
  • Use the Open Media Activity option to specify whether or not to create an activity task for the following media types:
    • Inbound

Task and activity creation by Gplus Adapter in Salesforce

Gplus Adapter creates activity logs in Salesforce for every interaction handled by an agent. When the agent completes an interaction, Gplus Adapter searches for a corresponding contact in Salesforce and creates a task/activity for the interaction and associates it with the Salesforce object.

The rule that Gplus Adapter uses to select the correct record for activity log creation is the same as for screen pop record. The ANI phone value is used as the search main criterion. Additionally, if the call data contains a key name that is prefixed with cti_ or other optionally defined prefix, it includes those key values in the search request using OR logic.

You must ensure that all the Activity Log fields in Salesforce exist. If one or more fields do not exist in Salesforce, an error will occur when Gplus Adapter tries to update the activity.

Gplus Adapter can also create Activity Tasks in Salesforce when the screen pop is displayed. Gplus Adapter then modifies logged activity when the interaction is completed. Activity on screen pop is created for voice, chat, email, and open media (workitems) interactions. Any changes in Comments field before the interaction is completed are overwritten by Gplus Adapter. Select the Activity Log on Screen Pop setting in Agent Setup to enable this feature. This feature is overridden by Salesforce Object Search and Salesforce Open Record. When an agent creates an email, Gplus Adapter creates an activity task. If the agent deletes the email without sending it, the activity task is not updated.

Activity Task display

When an agent completes an interaction, Gplus Adapter displays the Activity Task it created or updated in Salesforce, as shown in the figure.

Displayed Salesforce activity task next to Agent Workspace.

To configure this feature, in the Agent Annex or Agent Group Annex, create the salesforce.activity-log.display-on-creation key in the crm-adapter section and set the value to true.

Activity Task association by Gplus Adapter in Salesforce

Gplus Adapter provides different ways that Salesforce Activity Tasks can be associated to Salesforce objects:

Task Association based on Salesforce Search

By default, when an activity is created, Gplus Adapter searches for records in Salesforce using Genesys interaction data to associate a created Activity Task to a Salesforce object. During object search, the following task association scenarios are possible:

  • Salesforce search returns a unique object: Gplus Adapter automatically associates the Activity Task with the Salesforce object.
  • Salesforce search returns no objects: Gplus Adapter saves the Activity Task in the Salesforce Task list.
  • Salesforce search returns multiple objects:
    • Gplus Adapter saves the Activity Task in the Salesforce Task list if Gplus Adapter is not able to determine which object to associate the Task with because the objects have matching values.
    • Gplus Adapter associates the Activity Task to one of the multiple search results Salesforce objects if that object is opened by the agent and remains open when the interaction is completed.

For Gplus Adapter to automatically associate as many Activity Tasks as possible with a specific Salesforce object during the handling of the interaction, Genesys recommends that you ensure most, if not all, Salesforce object searches return a unique record.

If the Salesforce object is a Case and you want to associate the Activity Task to the Case, the Case must include a searchable phone number. See the following Salesforce Help documents for information about configuring searchable field in a Salesforce Case:

If an agent initiates an outbound call by using Click-To-Dial to dial a phone number from the Salesforce Case, Contact, or other object, the Adapter obtains the Salesforce Object ID then creates and associates an activity log record with the object from which the call was dialed.

By default Salesforce Search is enabled.

Task Association based on Salesforce Open Record

You can configure the Salesforce Activity Task association behavior so that Gplus Adapter associates the Activity Task with the active Salesforce record that is open in Salesforce when the agent completes an interaction.

To enable this feature, set the Auto Activity Log Association option in Agent Setup to Salesforce Open Record.

Gplus Adapter Object Association UI

Gplus Adapter can be configured to display the Object Association table which lists the Salesforce objects that are opened by an agent during the handling of an interaction. While the interaction is active, each time a Salesforce object is opened Gplus Adapter adds the object as a new row in the Object Association table.

To associate an object with the Activity Task, the agent can select a row in the Object Association table before the agent completes the interaction. If the agent does not select a Salesforce object from the table, Gplus Adapter associates the Activity Task to the object search result or to the currently open and active record, depending on configuration.

Gplus 900 Object Association tab.png

Use the UI Activity Log Association option in Agent Setup to specify whether Gplus Adapter displays the Object Association table in the Interaction view in Gplus Adapter.

Important
If you navigate to a Salesforce object with a customized API Name, this object will not be added to the Object Association list.

Activity notifications

For troubleshooting purposes, you can configure Gplus Adapter to display confirmation messages in Agent Workspace when the following Salesforce Activity Task events are successful:

  • Activity Task is created.
  • Activity Task is associated to a Salesforce object on Salesforce Screen pop.
  • Activity task is updated.
  • Activity Task is associated to a Salesforce object when an interaction is completed.

Select the Notifications setting in Agent Setup to enable this feature.

To troubleshoot saveLog() method errors, see expanded troubleshooting notifications.

Activity History fields

By default, Adapter updates certain Salesforce activity fields when it saves an activity history entry. The Salesforce activity fields table details the correspondence between the Salesforce Activity fields and Gplus Adapter fields. The annotated screen shot below the table shows where the information comes from to populate the fields in Salesforce.

You can also create custom activity fields to store additional values as part of activity creation. See Customizing Activity Fields for more details.

Salesforce Activity Field label Salesforce Internal Field name Genesys Data
Call Duration CallDurationInSeconds Interaction duration in seconds, from Workspace Web Edition.
Call Object Identifier CallObject Interaction Id from interaction data.
Call Result CallDisposition Disposition data added by the agent in Workspace Web Edition.
Call Type CallType Type of call, such as inbound, outbound, or internal.
Comments Description Text integrating information from the following:
  • Subject field
  • Case data from Workspace Web Edition
  • Note added by an agent in Workspace Web Edition
  • The content of a Chat, SMS, or Email interaction, if appropriate
Due Date ActivityDate Activity Date from interaction data.
Name WhoId Salesforce Object to which this Activity is linked. This field represents an activity task association. This value is not provided automatically by Gplus Adapter.
Priority Priority These values are preset in the Salesforce configuration.
Related To WhatId Salesforce Case that the activity history is associated with. This field represents an activity task association. This value is not provided automatically by Gplus Adapter.
Status Status Values are preset in the Salesforce configuration, one of them can be chosen with Salesforce Activity Log Status, default value is Completed
Subject Subject Text including the type of interaction, direction, and so on. Format of this field can be customized, refer to Configuring Subject fields.
Type Type Type of interaction from the interaction data, such as Call or Chat.
Annotated screen shot showing the correspondence between Salesforce Activity fields and Gplus Adapter fields.

Customizing activity fields

Gplus Adapter also allows you to create your own custom activity fields, and populate those fields with data specific to your organization. For example, you can create custom activity fields that can populate call, chat, SMS, or email related data in your Salesforce reports. You can also create a custom field for storing chat transcripts (including SMS).

The first step is to create a custom activity field in Salesforce as described in the Salesforce documentation.

Once you create a custom activity field in Salesforce, ensure that you define a mapping between the custom activity field and Genesys UserData keys so that the new custom field is populated with relevant data when Adapter saves an activity history.

UserData is structured as a list of data items described as key-value pairs, where the key stands for a parameter name and the value represents the current value of that parameter. Each key-value pair may contain information about only one parameter, whose value data type can be an integer, character string, binary, or unicode. User data is delivered to Gplus Adapter with the interaction and it can be accessed during mapping.

You must ensure that all the fields in the UserData you want to map exist in Salesforce and that the UserData types match the data types of the corresponding fields in Salesforce. If one or more fields do not exist in Salesforce or data types are mismatched, an error will occur when Adapter tries to update the activity.

Mapping custom activity fields

Once you create a custom activity field, ensure that you define a mapping between the custom activity field and Genesys UserData keys so that the new custom field is populated with relevant data when Adapter saves an activity history.

Define the mapping in the Activity Log Field Mapping option in Agent Setup.

Here's an example of how to configure the mapping. In this example, "Firstname" and "Lastname" represent key names from the interaction UserData (replace these with key names from interaction UserData in your environment), and "Firstname__c" and "Lastname__c" represent the custom field names in Salesforce to which you want to map the UserData value (replace these with custom field names in your environment).

This screenshot shows you the relationship between the interaction userData key name and the Salesforce Field Name. Use this data to configure field mapping in the Activity Log Field Mapping option in Agent Setup.

Gplus 900 Activity Task related to Activity Log Field Mapping.png

Important
If you change the value of Activity Log Field Mapping, make sure to validate the change by confirming that Salesforce tasks are created correctly.

Custom Status

Prerequisite: Create custom values for the Status selection drop-down list in Salesforce. Refer to Add Custom Task Types and Customize Tasks in the Salesforce Help.

Next, you can define an activity log custom status to by applied by Gplus Adapter when an interaction is ending, such as Completed, Answered, and others that fit your business needs by specifying custom statuses as values of the Salesforce Activity Log Status option.

Configuring Subject field

You can configure what Adapter saves for the Subject field in the Salesforce activity by using custom templates with the Gplus Adapter for Salesforce options option, where, <interaction type> is either Inbound-Voice, Internal-Voice, Outbound-Voice, Transfer-Voice, Chat (including SMS), Email, or OpenMedia.

The value is a string that contains any text, along with template variables wrapped in the reserved "{" and "}" characters.

You can use as many instances of this option as you need to handle multiple interactions types. For example, your configuration could include options for each of the supported interaction types:

  • Templates Salesforce Inbound-Voice Subject
  • Templates Salesforce Internal-Voice Subject
  • Templates Salesforce Outbound-Voice Subject
  • Templates Salesforce Transfer-Voice Subject
  • Templates Salesforce Chat Subject
  • Templates Salesforce Email Subject
  • Templates Salesforce OpenMedia Subject


Gplus Adapter supports only the following templating variables:

Variable Description
interaction.ani The number that originated the call. This variable identifies the caller for inbound calls and is best used in inbound templates.
interaction.callType The type of call (inbound/outbound).
interaction.caseId The unique ID of the related case.
interaction.contact The first and last name of contact.
interaction.dnis The last call dialed (useful for call transfer). This variable identifies the outbound location for outbound calls and is best used in outbound templates.
interaction.endDate The date and time when interaction ended.
interaction.isConsultation This is true if the interaction is a consultation.
interaction.startDate The date and time when the interaction started.
userData.<key> This can be any UserData key available for the interaction. You might also find some of the following UserData keys useful (they're included by default by Workspace Web Edition on transfers):
  • userData.GCS_TransferringAgentName — The name of the transferring agent.
  • userData.GCS_TransferringDate — The date and time of transfer.
  • userData.GCS_TransferringEmployeeId — The ID of the transferring employee.
  • userData.GCS_TransferringReason — The reason for the transfer. This is an empty string if no reason exists.
contact.EmailAddresses A list of email addresses associated with the contact.
contact.PhoneNumbers A list of phone numbers associated with the contact.

For example, you might want the activity for all inbound voice calls to have details about the customer's name and phone number. In this case, here's how you would configure the option:

Gplus Adapter for Salesforce options = Customer: {interaction.contact}, Phone Number: {interaction.ani}

If a call comes in from Willard Clinton at 123-456-7890, when the call ends Adapter creates the related activity in Salesforce with following subject field: Customer: Willard Clinton, Phone Number: 123-456-7890

Another common use case might be to include information from UserData for all inbound calls. This could come from your own UserData keys or from UserData provided by Workspace Web Edition (see the table above). For example, you want the activity history's subject to include information from your own UserData key, PurposeOfCall, and the contact's name. Here's how you should configure the option:

Gplus Adapter for Salesforce options = Call from {interaction.contact} about {userData.PurposeOfCall}

In this scenario, if Willard Clinton calls into the contact center and chooses the Technical Support option in the IVR, that information is saved in the PurposeOfCall UserData key. When the call ends, Adapter creates the related activity in Salesforce with the following subject field: Call from Willard Clinton about Technical Support

Saving Chat Transcripts

Gplus Adapter can save chat transcript text either as part of the activity description in Salesforce or it can save the text to a custom field name in Salesforce. See Customizing activity fields for more information on how to create a custom chat transcript field.

By default, Adapter saves the transcript as part of the description, but you can turn off this functionality with the Chat Include Transcript in Description option. You might want to do this if the transcript and case data are too large for the description field, which has a maximum size of 32K. In this case, you can set the Chat Transcript Custom Field Name option to the name of a custom field you defined in Salesforce — Adapter will save chat transcripts to this field instead.

Important
If you change the value of Chat Transcript Custom Field Name, make sure to validate the change by confirming that Salesforce tasks are created correctly.

Storing email content in Activity History

The body of an email can be stored as a text version in the Email Content field in the Comments block of an Activity History in Salesforce. You can turn on or off this feature by using the Email Include in Activity Description option.

Open Media Activity History

Open Media items are documents (for example, faxes or PDFs) that might be directed to agents for handling while they are working on interactions of another type, such as email. For the Open Media interactions, the activity type is updated as inbound in the Subject and the Call Type fields of an Activity History. Other fields are updated as explained in the Salesforce activity fields table.

Use the Open Media Activity Log option in Agent Setup to specify whether activity histories are created in Salesforce for Inbound open media workitems.

Interaction History in Genesys Universal Contact Server (UCS)

Agents can view and manage their previous interactions with a Genesys UCS contact from the Agent Workspace My History tab.

Comments or questions about this documentation? Contact us for support!