Conversation polling
One of the main features of the Genesys Cloud integration is the ability to automatically schedule surveys after a conversation ends in the Genesys Cloud environment. Mindful Feedback can do this because it monitors the conversation history in Genesys Cloud every minute and matches each conversation with pre-configured survey mappings to determine if a survey needs to be scheduled or updated.
What is a Conversation Variable?
Genesys Cloud creates conversation objects, accessible via API, containing variables associated with each conversation. These conversation variables are separated by participant (Customer, Agent, or IVR) in the conversation.
We recommend you review your own Genesys Cloud conversation objects to see the attributes present for the "agent" and "customer" participants. You can view conversation objects in the Genesys Cloud API Explorer using the Get conversation resource endpoint (/api/v2/conversations/{conversationId}).
It is important to understand the attributes available in your Genesys Cloud conversation objects in order to get the most out of your survey mappings.
Example Conversation Variables
Below you will find excerpts of a conversation object taken from a call made through the following simple call flow:
In this example call flow, when the call is received by the agent, they interacted with the agent script and set a value on an "output variable" called "SDXSurvey".
Below is an excerpt from the resulting Genesys Cloud conversation object. The excerpt shows the data for two of the participants on the call (Agent and Customer).
{
"id": "ff89636b-840a-4a18-b571-08af4afd4736",
"startTime": "2020-04-10T07:18:50.744Z",
"endTime": "2020-04-10T07:19:56.664Z",
"address": "tel:+13172794452",
"participants": [
{
"id": "9e080162-1c8c-47c3-8411-ae6b8b9521b2",
"startTime": "2020-04-10T07:18:50.744Z",
"endTime": "2020-04-10T07:19:49.785Z",
"connectedTime": "2020-04-10T07:18:50.816Z",
"externalContactId": "ed0c5d4e-3f5d-4dd9-8060-28454d51c385",
"queueId": "5b5c6ffb-a4c0-49b9-b4ed-6d5da7db757b",
"queueName": "Acme Service",
"purpose": "customer",
"participantType": "External",
"ani": "tel:+61404873642",
"attributes": {
"SurveyType": "websms",
"ProductPurchased": "Widget101",
"CustomerName": "Alasdair"
},
...
{
"id": "4232efba-a616-4ba0-ae53-e524fc87c855",
"startTime": "2020-04-10T07:18:58.162Z",
"endTime": "2020-04-10T07:19:49.783Z",
"connectedTime": "2020-04-10T07:19:01.802Z",
"userId": "6e3afecd-49a7-4ef7-ad14-386c3028e684",
"queueId": "5b5c6ffb-a4c0-49b9-b4ed-6d5da7db757b",
"queueName": "Acme Service",
"purpose": "agent",
"wrapup": {
"code": "19580f08-20cc-4eef-9762-b09e3a8bea7c",
"name": "Billing Enquiry",
"notes": "",
"tags": [],
"durationSeconds": 6881,
"endTime": "2020-04-10T07:19:56.664Z"
},
"attributes": {
"SurveyTag": "",
"SDXSurvey": "1"
},
...
Mindful Feedback pulls this object apart and creates conversation variables that can be assessed in the survey mapping conditions.
In the above excerpt, you can see the attributes property of the customer participant, which includes CustomerName, ProductPurchased, and SurveyType. These can be accessed in a survey mapping by name. You can also see the attributes property of the agent participant, which includes SDXSurvey. This attribute be accessed in a survey mapping by prefixing the name with "agent" (for example, agent.SDXSurvey).
When creating a survey mapping, you are not limited to the list of conversation variables presented in the dropdown menus. You can also use any attribute from the attributes property of the Customer, IVR, or Agent participants.