Skip to main content

Uniphore Help Center Portal

Special Purpose Dynamic Variables

X-Console uses Dynamic Variables to view and manage dynamic data created during runtime, including data brought from external sources such as databases and Natural Language Understanding (NLU) servers.

A Dynamic Variable always consists of a JSON object, enabling specific portions of its content to be accessed to suit the current data needs of a Flow.

Alongside custom Dynamic Variables created by you for local applications, X-Console also supports special-purpose Dynamic Variables that serve specific Uniphore capabilities, as described below.

'Conversation Summary' Dynamic Variable

The Conversation Summary dynamic variable stores Call Summary data submitted from Real-Time Guidance Agent's AI Agent Application.

When an Agent submits the Conversation Summary at the end of a call, the Conversation Summary variable is updated with the most recent template-based or generative AI-based Call Summary data. The data included depends on the Summary components activated in the Agent Assist Client Settings, as detailed below:

If the template-based Call Summary is activated, the Conversation Summary variable is updated with:

  • Header Summary data, specific to the Virtual Agent (VA) used

  • Intent Summary data for each call reason that was reported during the call

  • Agent Notes that were created during the call

  • Additional information, such as the call language, participant IDs, timestamps, etc.

If the generative AI-based Call Summary is activated, the Conversation Summary variable is updated with:

  • AI-generated Call Summary data at the end of the call

  • Data from the most recent call reason, whether auto-generated or manually selected by the Agent

  • Agent Notes that were created during the call

  • Additional information, such as the call language, participant IDs, timestamps, etc.

Important

In order for the Conversation Summary variable to be updated after a call, the AI Agent Assist application's Submit Summary Client Setting must be mapped to a Service Flow.

The content of the Conversation Summary dynamic variable is always overwritten with each new Customer Session.

The Conversation Summary variable data structure is shown in the following example:

Template based Summary: {
"conversationId": "e991d6c3-db73-4e6c-9d28-dba870550036",
"tenantId": "c5d45bd5-c426-4d8c-8416-e21215e17cdf",
"environment": "dev",
"header": {
"template": "\u003cp\u003eCustomer Wireless Number: \u003cspan entity-id\u003d\"91091748383194678661762774245915\" class\u003d\"uniphore-entity-value\" contenteditable\u003d\"false\"\u003e4085551212\u003c/span\u003e\u003c/p\u003e",
"timestamp": "2025-11-12T07:17:30.959186953Z",
"plainText": "Customer Wireless Number: 4085551212",
"mapEntityIdInstanceId": {
"91091748383194678661762774245915": "47876646915726514481762931850916"
}
},
"intentSummaries": [{
"intentId": "apitestexp.customer-wireless-number",
"template": "\u003cp\u003eCustomer Wireless Number: \u003cspan entity-id\u003d\"91091748383194678661762774245915\" class\u003d\"uniphore-entity-value\" contenteditable\u003d\"false\"\u003e4085551212\u003c/span\u003e\u003c/p\u003e",
"source": "AI",
"timestamp": "2025-11-12T07:17:29.620Z",
"plainText": "Customer Wireless Number: 4085551212",
"instanceId": "6c65a96e-d4e1-4910-9460-bf60ac236aa8",
"mapEntityIdInstanceId": {
"37855829235300552301762774252713": "44614949885838308631762931848528",
"72606254397038709551762774277533": "",
"62268065019170001701762774247019": "16221838972628952971762931848700",
"91091748383194678661762774245915": ""
}
}, {
"intentId": "apitestexp.customer-wireless-number",
"template": "\u003cp\u003eCustomer Wireless Number: \u003cspan entity-id\u003d\"91091748383194678661762774245915\" class\u003d\"uniphore-entity-value\" contenteditable\u003d\"false\"\u003e4085551212\u003c/span\u003e\u003c/p\u003e",
"source": "AI",
"timestamp": "2025-11-12T07:17:33.937Z",
"plainText": "Customer Wireless Number: 4085551212",
"instanceId": "a44c89a0-f45d-4f56-9da6-37744d9abee6",
"mapEntityIdInstanceId": {
"21333261989520199151762774248329": "27228193961132252371762931853993",
"87865530524238530351762774244770": "22363710377852832111762931853993",
"37855829235300552301762774252713": "75166176606475706101762931853993",
"10296770297943674821762774255060": "46337894099779882221762931853993",
"80980991309518369991762774273526": "",
"72606254397038709551762774277533": "",
"72761170302028057781762774256215": "27603145070754535771762931852855",
"91091748383194678661762774245915": "47876646915726514481762931850916",
"53158433692345294361762774290012": "",
"62268065019170001701762774247019": "6849306270743022531762931853993",
"72005121936710487931762774285948": ""
}
}],
"agentNotes": {
"timestamp": "2025-11-12T07:18:16.155524844Z"
},
"timestamp": "2025-11-12T07:18:16.671257580Z",
"participants": [{
"participantId": "Apollo",
"type": "customer"
}, {
"participantId": "auth0|642d055d444c951146a9e902",
"type": "agent",
"ctiAgentId": "uadmin@uniphore.com"
}],
"genAiSummary": {
"sections": [{
"id": "call-reasons",
"text": "\u003cdiv\u003e\u003cn\u003e • The customer is calling to check on their wireless phone upgrade options.\u003cn\u003e \u003c/div\u003e"
}, {
"id": "agent-actions",
"text": "\u003cdiv\u003e\u003cn\u003e 1. The agent verified the customer\u0027s phone number and social security number, informed the customer of their upgrade options, processed the upgrade order, and scheduled the phone to be shipped to their home address.\u003cn\u003e \u003c/div\u003e"
}, {
"id": "call-outcome",
"text": "\u003cdiv\u003eThe agent successfully processed the customer\u0027s upgrade order, and the customer was informed of the details of their new phone and the steps to activate it. \u003c/div\u003e"
}, {
"id": "customer-sentiment",
"text": "\u003cdiv\u003eThe customer was satisfied with the resolution, as they did not express any complaints or dissatisfaction throughout the conversation and thanked the agent for their time. \u003c/div\u003e"
}]
},
"experienceId": "d16095a4-d0f7-472d-8252-697289ba377e"
} 

Like any dynamic variable, the values of Conversation Summary variable can be parsed and used according to your needs.

For example, an Allocator element might send a specific Summary value to an external CRM platform to support customer service tracking. Or a Service Flow might send the entire summary in a Response element for review by an Analyst.

For details on how to parse object values from a dynamic variable, click here.

'Conversation Disposition' Dynamic Variable

The Conversation disposition dynamic variable stores AI-predicted Disposition values submitted from Real-Time Guidance Agent's AI Agent Application.

When an Agent submits the Conversation Summary at the end of a call, the Conversation Disposition variable is updated with the AI-predicted Disposition values if it is enabled in the Agent Assist Client Settings.

The content of the Conversation Disposition dynamic variable is always overwritten with each new Customer Session.

The Conversation Disposition variable data structure is shown in the following example:

Conversation Disposition: { 
"id": "af06313f-1894-4908-ab64-89edc3fe25cd"
"version": "1.0"
"ai_result": "General"
"ai_result": "General - Account Management"
"ai_result": "No relevant disposition"
"user_id": "uadmin@uniphore.com"
"conversation_id": "503080e2-994f-4a8f-ac77-4cbee65ce7c5"
"tenant_id": "c5d45bd5-c426-4d8c-8416-e21215e17cdf"
"environment": "dev"
}

Like any dynamic variable, the values of Conversation Disposition variables can be parsed and used according to your needs.

For example, an Allocator element might send a specific Disposition value to an external CRM platform to support customer service tracking. Or a Service Flow might send the entire summary in a Response element for review by an Analyst.

'Session Context' Dynamic Variable

Whenever you use the Intelligent Assistant to work with an NLP Engine, a dedicated dynamic variable called Session Context is used to collect and store all runtime data generated by an Intent Flow and NLP engine during a specific chatbot session.

The Session Context variable can be parsed and updated like any other dynamic variable, according to the needs of your Flow. For details on how to parse object values from a dynamic variable click here.

You can view the contents of the Session Context variable at any time when testing an Intent Flow in the chatbot simulator via the Context panel. For detailed information, click here.