Sync Metadata to Calabrio ONE
You can define which Cisco Webex Contact Center (CWCC) metadata values are synced with CWCC contacts into Calabrio ONE. Metadata can be collected from CWCC's global variable fields or standard fields returned in API endpoint responses. From there, the metadata must be correctly formatted before it can be added to Calabrio ONE. Configuration is complete once the CWCC metadata is added to Calabrio ONE and mapped to a Calabrio ONE metadata label.
This topic details the procedures for collecting and formatting metadata from CWCC API responses, the Calabrio ONE mapping procedure, and examples. After successfully mapped, metadata can be used to add a variety of trackable information to a contact in Calabrio ONE. Metadata fields can be found in the Contact Information tab on the Media Player page (Interactions tab > select a contact). You can view, edit, or delete a metadata field from your system.
Global variables are custom fields created by Cisco. More information on global variables is available within your CWCC Administrator page. Standard custom metadata fields stem from /search endpoints in CWCC. See Cisco documentation for more information, https://developer.webex-cx.com/documentation/search/v1/search-tasks. The following code is a sample /search API response.
{
"data": {
"task": {
"tasks": [
{
"endedTime": 1630380960406,
"captureRequested": true,
"isActive": false,
"queue": [
{
"id": "e434a654-df4c-42dc-908b-3d9d0206a616",
"name": "cb_outdial_queue"
}
],
"status": "ended",
"owner": {
"name": "callbackorg2user1 callbackorg2user1",
"id": "74ab6507-a32a-479c-bda7-15ff0b6c6c3c"
},
"createdTime": 1629450000000,
"id": "fb53f6d1-5535-4ac8-b081-53834e17d6f5",
"channelType": "telephony"
}
]
}
}
}
Prerequisites
- Cisco Webex Contact Center 2.0 must be configured as an ACD in Calabrio ONE.
-
A metadata label must first be created in Metadata Manager in Calabrio ONE (located at Application Management > QM > QM Configuration > Metadata Manager) for each CWCC metadata field you want to map to a Calabrio ONE metadata label.
You must select Text from the Metadata Type drop-down list on the Metadata Manager page for the metadata to map.
Ensure the ACD Data drop-down list is blank on the Metadata Manager page. All other fields on the Metadata Manager page can be configured as desired.
Page Location
Application Management > Global > System Configuration > ACD Configuration > Cisco Webex Contact Center 2.0
Procedures
These procedures details how to collect and format appropriate metadata from CWCC API response endpoints. All metadata must conform to these formats. There are two available formats depending on if standard fields or global variable fields are used. Fields are case sensitive, and do not include any spaces between text.
You can reference to the sample API request below when formatting metadata.
{
taskDetails (
from: 1631192040000
to: 1654515806364
filter: {
and: [
{ channelType: { equals: telephony } }
]
}
) {
tasks {
id
stringGlobalVariables(name: "Global_VoiceName") {
name
value
}
}
}
}
- Standard metadata fields must be formatted as
<task or taskDetails>.<fieldName>
- Global variable metadata fields must be formatted as
<task or taskDetails>.<GlobalVariableName>:<Data Type>
Collect and format CWCC standard metadata fields
-
Select the appropriate prefix based on the CWCC API response. The endpoints fall into two categories; they are <
taskDetails
> and <task
>.Use the text,
taskDetails
, as a prefix for all taskDetails responses.Use the text,
task
, as a prefix for all task responses.EXAMPLE You decide you want to collect metadata on "channelType". In the sample API request, "channelType" falls in the taskDetails category. Therefore you use the text
taskDetails
-
Add a period. Do not add any spacing.
EXAMPLE
taskDetails.
-
If there are no hierarchy levels in the metadata you are collecting, add the field name and format the metadata value as follows. Fields are case sensitive, and do not include any spaces between text.
<task or taskDetails>.<fieldName>
EXAMPLE
taskDetails.channelType
-
If there are hierarchy levels in the metadata you are collecting, format the metadata value as follows, with no spaces between the text. Your CWCC 2.0 metadata is now ready to be mapped to Calabrio ONE metadata labels.
<task or taskDetails>.<level-one-fieldName>.<level-two-fieldName>
Collect and format CWCC global variable metadata fields
Global variables contain the text GlobalVariables
in the API response.
-
Select the appropriate prefix based on the CWCC API response. The endpoint prefixes fall into two categories; they are <
taskDetails
> and <task
>.Use the text,
taskDetails
, as a prefix for all taskDetails responses.Use the text,
task
, as a prefix for all task responses.EXAMPLE You decide you want to collect metadata on "Global_VoiceName". In the sample API request, "Global_VoiceName" name falls in the tasks category. Therefore you use the text
task
-
Add a period after the prefix.
EXAMPLE
task.
-
Find and copy the global variable name as it appears in the API response and then add it to your formatted text.
EXAMPLE
task.Global_VoiceName
-
Add a colon.
EXAMPLE
task.Global_VoiceName:
-
Find the data type located in the same line as the global variable name. Capitalize the first letter of the data type.
Below, is a list of all supported Cisco global variables and data types.
integerGlobalVariables
— where <Integer> is the data type.stringGlobalVariables
— where <String> is the data type.longGlobalVariables
— where <Long> is the data type.doubleGlobalVariables
— where <Double> is the data type.booleanGlobalVariables
— where <Boolean> is the data type.
EXAMPLE The data type in this example is string. The first letter of the data type must be capitalized. Therefore, use
String
and add it to your formatted text.task.Global_VoiceName:String
-
Ensure your formatted text is in the following format. Fields are case sensitive, and do not include any spaces between text. Your CWCC 2.0 metadata is now ready to be mapped to Calabrio ONE metadata labels.
<task or taskDetails>.<GlobalVariableName>:<Data Type>
Map CWCC metadata in Calabrio ONE
- Navigate to the Cisco Webex Contact Center 2.0 ACD configuration page.
- Within the Metadata Mapping section, click Add Mapping.
- In the text box under ACD Metadata Name, enter a CWCC metadata value that is properly formatted.
- Click the drop-down list under the Metadata Label column, and select a metadata label from the list of options.
-
Click the check icon to save the metadata mapping.
- (Optional) Click Add Mapping to add additional metadata mappings and repeat as desired.
- Click Save in the top-right corner of the page.
Metadata options from sample requests
The following shows the available metadata options for task.
{
task(
from: 1631111190000
to: 1634123120000
filter: {
and: [
{ channelType: { equals: telephony } }
]
}
) {
tasks {
id
status
channelType
createdTime
endedTime
origin
destination
contactReason
direction
owner { id name }
entryPoint { id name }
terminationType
channelSubType
customer { name phoneNumber email }
isActive
isCallback
channelMetaData { email { subject metaData } }
callbackData {
callbackRequestTime
callbackConnectTime
callbackNumber
callbackStatus
callbackOrigin
callbackType
}
recordingLocation
lastWrapupCodeName
lastQueue { id name }
lastSite { id name }
lastTeam { id name }
lastEntryPoint { id name }
totalDuration
csatScore
blindTransferCount
conferenceCount
conferenceDuration
consultCount
consultDuration
holdCount
holdDuration
selfserviceCount
selfserviceDuration
connectedCount
connectedDuration
consultToQueueCount
consultToQueueDuration
transferCount
wrapupDuration
ringingDuration
queueDuration
queueCount
captureRequested
}
}
}
The following shows the available metadata options for taskDetails.
taskDetails metadata options in a sample request
{
taskDetails(
from: 1631192040000
to: 1634648040000
filter: {
and: [
{ channelType: { equals: telephony } }
]
}
) {
tasks {
id
status
channelType
createdTime
endedTime
origin
destination
contactReason
direction
owner { id name }
entryPoint { id name }
terminationType
channelSubType
customer { name phoneNumber email }
isActive
isCallback
channelMetaData { email { subject metaData } }
callbackData {
callbackRequestTime
callbackConnectTime
callbackNumber
callbackStatus
callbackOrigin
callbackType
}
recordingLocation
lastWrapupCodeName
lastQueue { id name }
lastSite { id name }
lastTeam { id name }
lastEntryPoint { id name }
totalDuration
csatScore
blindTransferCount
conferenceCount
conferenceDuration
consultCount
consultDuration
holdCount
holdDuration
selfserviceCount
selfserviceDuration
connectedCount
connectedDuration
consultToQueueCount
consultToQueueDuration
transferCount
wrapupDuration
ringingDuration
queueDuration
queueCount
captureRequested
}
}
}
Unsupported arrays
Lists and arrays are not supported for custom metadata. The following table specifies which arrays are not supported .
Unsupported arrays | Description |
---|---|
queues | Queue Information. |
sites | ID, name of the physical contact center location to which the task was distributed. |
teams | ID, name of the team to which the call was distributed. |
contributors | Agents who have handled the task. |
entryPoints | ID, name of the initial landing place of a contact in CWCC. |