|
<Context>
|
Object
|
Context data to set. Each context data type is a unique set of input data.Valid **Context** data objects:
- `activeCall`
- `activeConversation`
- `idleState`
- `offerContext`
- `searchTargetList`
|
|
activeCall
|
Array of Objects
|
Context details about an active call. Each object represents an ongoing active call.```
"activeCall": [
{
"callbackContext": {Object},
"currentParticipant": {Object},
"customPayload: {Object},
"direction": "String",
"externalId": "String",
"nowRecordId": "String",
"nowRecordTable": "String",
"participants": [Array],
"type": "String"
}
]
```
|
|
activeCall.callbackContext
|
Object
|
Only used if the **activeCall.type** property is `callback`. Callback context information for the ongoing callback component.```
"callbackContext": {
"callAttemptedByAgent": Boolean,
"callbackNumbers": [Array],
"closeInEndTime": "String",
"customerName": "String",
"dialInEndTime": "String"
}
```
|
|
activeCall.callbackContext.callAttemptedByAgent
|
Boolean
|
Flag that indicates whether callback was attempted by a customer service agent.Valid values:
- true: The callback was attempted by a customer service agent. If true, set **closeInEndTime**.
- false: The callback wasn’t attempted by a customer service agent. If false, set **dialInEndTime**.
Default: False
|
|
activeCall.callbackContext.callbackNumbers
|
Array
|
List of phone numbers provided as strings.
|
|
activeCall.callbackContext.closeInEndTime
|
String
|
Set only if **callAttemptedByAgent** is true. End time for callback in UTC format.
|
|
activeCall.callbackContext.customerName
|
String
|
Name of the customer.
|
|
activeCall.callbackContext.dialInEndTime
|
String
|
Set only if **callAttemptedByAgent** is false and the type of callback is auto-dial. Dial-in end time for callback in UTC format.
|
|
activeCall.currentParticipant
|
Object
|
Required. Details about the current participant's call capabilities and call status.```
"currentParticipant": {
"actor": "String",
"callStartTime": "String",
"capabilities": {Object},
"connectedTime": "String",
"custom-capability-state-1": Boolean,
"flagged": Boolean,
"held": Boolean,
"id": "String",
"muted": Boolean,
"name": "String",
"paused": Boolean,
"recording": "String",
"state": "String",
"wrapUP": {Object}
}
```
|
|
activeCall.currentParticipant.actor
|
String
|
Type of participant on the call.Valid values:
- agent
**Note:** Other participant types to be added in the future.
|
|
activeCall.currentParticipant.callStartTime
|
String
|
Date and time that the call started.Time standard: UTC
Format: RSS - "<day of week>, dd mmm yyyy hh:MM:ss GMT". For example: "Wed, 17 Dec 2024 05:23:41 GMT"
|
|
activeCall.currentParticipant.capabilities
|
Object
|
Details about the capabilities that the current \(agent\) participant can perform during a call. The associated icons appear in the Active call component for the capabilities that are enabled.\[Omitted image "OF-active\_call-capabilities.png"\] Alt text: Screen shot of Active call component with capabilities icons
```
"capabilities": {
"callbackTransferStatus": "String",
"cancelCallbackTransferEligible": Boolean,
"closeCallback": Boolean,
"dtmf": Boolean,
"endCall": Boolean,
"flag": Boolean,
"hold": Boolean,
"initiateCall": Boolean,
"leaveAndTransfer": Boolean,
"mergeCall": Boolean,
"mute": Boolean,
"resumeRecording": Boolean,
"pauseRecording": Boolean,
"startRecording": Boolean,
"stopRecording": Boolean,
"transfer": Boolean
}
```
|
|
activeCall.currentParticipant.capabilities.callbackTransferStatus
|
String
|
CCaaS \(Contact Center as a Service\) callback transfer status.Possible values:
- Failed
- Empty string \(default\)
|
|
activeCall.currentParticipant.capabilities.cancelCallbackTransferEligible
|
Boolean
|
Flag that indicates if the cancel callback transfer option is enabled.Valid values:
- true: Cancel callback transfer option is enabled.
- false: Cancel callback transfer option is disabled.
Default: false
|
|
activeCall.currentParticipant.capabilities.closeCallback
|
Boolean
|
Flag that indicates whether the close callback button is enabled.Valid values:
- true: Close callback button is enabled.
- false: Close callback button is disabled.
Default: false
|
|
activeCall.currentParticipant.capabilities.dtmf
|
Boolean
|
Flag that indicates whether the agent has dual tone multi-frequency \(DTMF\) capability for the current call.Valid values:
- true: Participant has DTMF capability.
- false: Participant doesn't have DTMF capability.
Default: false
|
|
activeCall.currentParticipant.capabilities.endCall
|
Boolean
|
Flag that indicates whether the associated participant can end the call.Valid values:
- true: Participant can end the call. The end call button is enabled in the UI.
- false: Participant can't end the call. The end call button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.flag
|
Boolean
|
Flag that indicates whether the participant can flag the call for quality issues, such as voice quality problems.Valid values:
- true: Participant can flag problem calls.
- false: Participant can't flag problem calls.
Default: false
|
|
activeCall.currentParticipant.capabilities.hold
|
Boolean
|
Flag that indicates whether the participant can put the call on hold.Valid values:
- true: Participant can put the call on hold. The hold button is enabled in the UI.
- false: Participant can't put the call on hold. The hold button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.initiateCall
|
Boolean
|
Flag that indicates whether the associated participant can start the call.Valid values:
- true: Participant can start the call. The initiate call button is enabled in the UI.
- false: Participant can't start the call. The initiate call button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.leaveAndTransfer
|
Boolean
|
Flag that indicates whether the participant can transfer the call to another agent and then drop off the call. Enable this capability for actions such as consult transfers, where the user who is consulted is not the owner of the call.Valid values:
- true: Participant can transfer and drop off the call.
- false: Participant can't transfer and drop off the call.
Default: false
|
|
activeCall.currentParticipant.capabilities.mergeCall
|
Boolean
|
Flag that indicates whether the participant can merge the call. Use this capability when the participant's call legs are capable of merging.Valid values:
- true: Participant can merge the call. The merge button is enabled in the UI.
- false: Participant can't merge the call. The merge button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.mute
|
Boolean
|
Flag that indicates whether the participant can mute the call.Valid values:
- true: Participant can mute the call. The mute button is enabled in the UI.
- false: Participant can't mute the call. The mute button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.pauseRecording
|
Boolean
|
Flag that indicates whether the participant can pause recording the call.Valid values:
- true: Participant can pause recording the call. The pause recording button is enabled in the UI.
- false: Participant can't pause recording the call. The pause recording button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.resumeRecording
|
Boolean
|
Flag that indicates whether the participant can resume recording the call.Valid values:
- true: Participant can resume recording the call. The pause recording button is enabled in the UI.
- false: Participant can't resume recording the call. The pause recording button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.startRecording
|
Boolean
|
Flag that indicates whether the participant can start recording the call.Valid values:
- true: Participant can start recording the call. The recording button is enabled in the UI.
- false: Participant can't start recording the call. The recording button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.stopRecording
|
Boolean
|
Flag that indicates whether the participant can stop recording the call.Valid values:
- true: Participant can stop recording the call. The stop recording button is enabled in the UI.
- false: Participant can't stop recording the call. The stop recording button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.capabilities.transfer
|
Boolean
|
Flag that indicates whether the participant can transfer the call.Valid values:
- true: Participant can transfer the call. The transfer button is enabled in the UI.
- false: Participant can't transfer the call. The transfer button is disabled in the UI.
Default: false
|
|
activeCall.currentParticipant.connectedTime
|
String
|
Date and time that the call initially connected.Time base: UTC
Format: RSS - "<day of week>, dd mmm yyyy hh:MM:ss GMT". For example: "Wed, 17 Dec 2024 05:23:41 GMT"
|
|
activeCall.currentParticipant.custom-capability-state-1
|
Boolean
|
Flag that indicates whether there are any current participants on the call.Valid values:
- true: Current participants on the call.
- false: No current participants on the call.
Default: false
|
|
activeCall.currentParticipant.flagged
|
Boolean
|
Flag that indicates whether the call is flagged for an issue, such as a voice quality issue.Valid values:
- true: Call has been flagged for an issue.
- false: Call hasn't been flagged for an issue.
Default: false
|
|
activeCall.currentParticipant.held
|
Boolean
|
Flag that indicates the participant’s held state.Valid values:
- true: Participant is on-hold.
- false: Participant isn't on-hold.
Default: false
|
|
activeCall.currentParticipant.id
|
String
|
Required. Sys\_id of the associated participant record, such as the sys\_id of the agent.Table: User \[sys\_user\]
|
|
activeCall.currentParticipant.muted
|
Boolean
|
Flag that indicates the participant’s muted state.Valid values:
- true: Participant is muted.
- false: Participant isn't muted.
Default: false
|
|
activeCall.currentParticipant.name
|
String
|
Participant's name.
|
|
activeCall.currentParticipant.paused
|
Boolean
|
Flag that indicates the participant’s paused state.Valid values:
- true: Participant is paused.
- false: Participant isn't paused.
Default: false
|
|
activeCall.currentParticipant.recording
|
String
|
Current recording state of the call.Valid values:
- in\_progress
- none
|
|
activeCall.currentParticipant.wrapUP
|
Object
|
Future use.
|
|
activeCall.customPayload
|
Object
|
Custom payload to pass to OpenFrame as part of OpenFrame events. This is a free-form object and can contain any data needed to customize the active call component, such as adding buttons or text.
|
|
activeCall.direction
|
String
|
Direction of the call for the associated participant.Valid values:
- inbound
- outbound
|
|
activeCall.externalId
|
|
Required. Unique value that identifies the current active call on the associated external system.
|
|
activeCall.nowRecordId
|
String
|
Required. Sys\_id of the active call record.Table: Interaction \[interaction\] Only supported option for base system.
|
|
activeCall.nowRecordTable
|
String
|
Required. Table to which the active call belongs. Table: Interaction \[interaction\] Only supported option for base system.
|
|
activeCall.participants
|
Array of Objects
|
Required. List of the additional participants on the call. A participant can be an agent, a customer, an external person who is not an agent or a customer, or a queue.```
"participants": [
{
"actor": "String",
"ani": "String",
"address": "String",
"capabilities": {Object},
"callStartTime" "String",
"connectedTime": "String",
"customPayload": {Object},
"dnis": "String",
"held": Boolean,
"heldAtTime": "String",
"id": "String",
"muted": Boolean,
"name": "String",
"requestACW": Boolean,
"requireWrapup": Boolean,
"state": "String"
}
]
```
|
|
activeCall.participants.actor
|
String
|
Type of actor for the associated participant. For example:
- agent
- customer
- external
- queue
|
|
activeCall.participants.address
|
String
|
Participant's telephone number.
|
|
activeCall.participants.ani
|
|
Automatic number identification. Telephone number to display to the receiver of the phone call.
|
|
activeCall.participants.capabilities
|
Object
|
Details about the type of capabilities that the participant has for the associated call.```
"capabilities": {
"endCall": Boolean,
"hold": Boolean,
"mute": Boolean
}
```
|
|
activeCall.participants.capabilities.endCall
|
Boolean
|
Flag that indicates whether the associated participant can end the call.Valid values:
- true: Participant can end the call. The end call button is enabled in the UI.
- false: Participant can't end the call. The end call button is disabled in the UI.
Default: false
|
|
activeCall.participants.capabilities.hold
|
Boolean
|
Flag that indicates whether the participant can put the call on hold.Valid values:
- true: Participant can put the call on hold. The hold button is enabled in the UI.
- false: Participant can't put the call on hold. The hold button is disabled in the UI.
Default: false
|
|
activeCall.participants.capabilities.mute
|
Boolean
|
Flag that indicates whether the participant can mute the call.Valid values:
- true: Participant can mute the call. The mute button is enabled in the UI.
- false: Participant can't mute the call. The mute button is disabled in the UI.
Default: false
|
|
activeCall.participants.connectedTime
|
String
|
Required. Date and time that the participant initially connected to the call.Time standard: UTC
Format: RSS - "<day of week>, dd mmm yyyy hh:MM:ss GMT". For example: "Wed, 17 Dec 2024 05:23:41 GMT"
|
|
activeCall.participants.customPayload
|
Object
|
Custom payload to pass to OpenFrame as part of Open Frame custom events. This is a free-form object and can contain any data needed to customize the Active call component, such as adding buttons or text.
|
|
activeCall.participants.dnis
|
String
|
Dialed Number Identification Service. Telephone number the participant dialed.
|
|
activeCall.participants.held
|
Boolean
|
Flag that indicates the participant’s held state.Valid values:
- true: Participant is on-hold.
- false: Participant isn't on-hold.
Default: false
|
|
activeCall.participants.heldAtTime
|
String
|
Date and time that the participant's connection to the call was put on hold.Time base: UTC
Format: RSS - "<day of week>, dd mmm yyyy hh:MM:ss GMT". For example: "Wed, 17 Dec 2024 05:23:41 GMT"
|
|
activeCall.participants.id
|
String
|
Required. Participant's unique ID from the Contact Center as a Service \(CCaaS\) system.
|
|
activeCall.participants.muted
|
Boolean
|
Flag that indicates the participant’s mute state.Valid values:
- true: Participant is muted.
- false: Participant isn't muted.
Default: false
|
|
activeCall.participants.name
|
String
|
Name of the participant.
|
|
activeCall.participants.requestACW
|
Boolean
|
For agent use case only - only valid when the **activeCall.currentParticipant.actor** is "agent".Flag that indicates whether the participant is to follow up with the customer.
Valid values:
- true: Follow-up required.
- false: No follow-up required.
Default: false
|
|
activeCall.participants.requireWrapup
|
Boolean
|
For agent use case only - only valid when the **activeCall.currentParticipant.actor** is "agent".Flag that indicates whether to display the **Wrap up** component once the call is complete.
\[Omitted image "OF-active\_call-wrapup.png"\] Alt text: Screen shot of Wrap up component
Valid values:
- true: Display the **Wrap up** component at call completion.
- false: Don't display the **Wrap up** component at call completion.
Default: false
|
|
activeCall.participants.state
|
String
|
State of the participant's call leg. Appears beneath the phone number in the **Active call** component.\[Omitted image "OF-active\_call-state.png"\] Alt text: Active call window showing state
This can be any meaningful text, such as:
- Alerting
- Connected
- Ringing
|
|
activeCall.type
|
String
|
Type of call.Valid values:
- call
- callback
**Note:** If set, you must include the **activeCall.callbackContext** object details.
- voicemail
|
|
activeConversation
|
Array of Objects
|
Context details about an active conversation. Each object represents an ongoing messaging interaction.
```
"activeConversation": [
{
"externalId": "String",
"nowRecordId": "String",
"nowRecordTable": "String",
"wrapUpRequired": Boolean
}
]
```
|
|
activeConversation.nowRecordId
|
String
|
Required. Sys\_id of the active call record.Table: Interaction \[interaction\] Only supported option for base system.
|
|
activeConversation.nowRecordTable
|
String
|
Required. Table to which the active call belongs.Table: Interaction \[interaction\] Only supported option for base system.
|
|
activeConversation.wrapupRequired
|
Boolean
|
Flag that indicates whether to display the **Wrap up** component once the agent leaves the chat.Valid values:
- true: Display the Wrap up component once agent leaves the chat.
- false: Don't display the Wrap up component while agent leaving the chat.
Default: false
|
|
agentSettings.outboundQueue
|
Object
|
Container for all outbound queue selection data and available queue options.```
"outboundQueue": {
"currentSelectedQueue": {Object},
"targets": {Object}
}
```
|
|
agentSettings.outboundQueue.currentSelectedQueue
|
Object
|
Represents the queue currently selected by the agent. Stores the agent's active queue choice.```
"currentSelectedQueue": {
"label": "String",
"id": "String"
}
```
|
|
agentSettings.outboundQueue.currentSelectedQueue.id
|
String
|
Unique identifier for the currently selected queue. For example: `"queueId1"`.
|
|
agentSettings.outboundQueue.currentSelectedQueue.label
|
String
|
Display name of the currently selected queue. For example: `"Account Support"`.
|
|
agentSettings.outboundQueue.targets
|
Array of Objects
|
Array of queue objects representing all available queue options the agent can select from.```
"targets": [
{
"label": "String",
"id": "String"
}
]
```
|
|
agentSettings.outboundQueue.targets.id
|
String
|
Unique identifier for the queue option. For example: `"queueId2"`.
|
|
agentSettings.outboundQueue.targets.label
|
String
|
Display name of the queue option. For example: `"Billing Support"`.
|
|
idleState
|
Object
|
Describes the idle state context of the agent. This context data determines the information that appears on the dial pad when an agent is waiting for a call and the capabilities they have through this dial pad.```
idleState {
"capability": {Object},
"currentInboundId": "String",
"dialpadInfoMessage": {Object},
"enableState": {Object}
}
```
|
|
idleState.capability
|
Object
|
Description of the current user's idle state capabilities.```
"capability": {
"globalContactSearch": Boolean,
"logOut": Boolean,
"outBoundCall": Boolean,
"phoneDirectory": Boolean,
"outboundQueueSelection": Boolean,
}
```
|
|
idleState.capability.globalContactSerarch
|
Boolean
|
Flag that indicates whether to display the global contact list while in the idle state.Valid values:
- true: Display the global contact list.
- false: Don't display the global contact list.
Default: false
|
|
idleState.capability.logOut
|
Boolean
|
Flag that indicates whether the user can logout while in the idle state.Valid values:
- true: User can log out when the call is idle. The log out button appears on the dial pad.
- false: User can't log out when the call is idle.
Default: false
|
|
idleState.capability.outBoundCall
|
Boolean
|
Flag that indicates whether the user can make an outbound call while in the idle state.Valid values:
- true: User can make an outbound call when the call is idle.
- false: User can't make an outbound call when the call is idle.
Default: false
|
|
idleState.capability.outboundQueueSelection
|
Boolean
|
Flag that indicates whether the outbound queue selection field should be enabled.Valid values:
- true: Display the outbound queue selection field while in the idle state.
- false: Don't display the outbound queue selection field while in the idle state.
Default: false
|
|
idleState.capability.phoneDirectory
|
Boolean
|
Flag that indicates whether the phone directory button should be enabled.Valid values:
- true: Display the phone directory button while in the idle state.
- false: Don't display the phone directory button while in the idle state.
Default: false
|
|
idleState.currentInboundId
|
String
|
Inbound identifier of the provider application used to create the outbound call interaction.Table: Located in the id field of the Provider Channel Identities \[sys\_cs\_provider\_application\] table.
Default: Base system provider application
|
|
idleState.dialpadInfoMessage
|
Object
|
Details about the information message to display on the user's dial pad, such as the currently selected queue.```
"dialpadInfoMessage": {
"label": "String",
"value": "String"
}
```
In the following example, the **label** is **Selected queue:** and the **value** is **Customer Inquiries**. You can also just use either the **label** or the **value** parameter with **Selected queue: Customer Inquiries**.
\[Omitted image "OF-dialpadInfoMessage.png"\] Alt text: Screen shot of dial pad with information message
|
|
idleState.dialpadInfoMessage.label
|
String
|
Free-form label to display on the dial pad.
|
|
idleState.dialpadInfoMessage.value
|
String
|
Free-form message text to display after the label on the dial pad.
|
|
idleState.enableState
|
Object
|
Details about the enable state of the buttons on the dial pad.```
"enableState": {
"logOut": Boolean,
"outBoundCall": Boolean,
"outboundQueueSelection": Boolean
}
```
|
|
idleState.enableState.logOut
|
Boolean
|
Flag that indicates whether to enable the logout button in the UI while in the idle state.Valid values:
- true: Display the logout button while in the idle state.
- false: Don't display the logout button while in the idle state.
Default: false
|
|
idleState.enableState.outBoundCall
|
Boolean
|
Flag that indicates whether to enable the outbound call button in the UI while in the idle state.Valid values:
- true: Display the outbound call button while in the idle state.
- false: Don't display the outbound call button while in the idle state.
Default: false
|
|
idleState.enableState.outboundQueueSelection
|
Boolean
|
Flag that indicates whether the outbound queue selection field should be enabled.Valid values:
- true: Display the outbound queue selection field while in the idle state.
- false: Don't display the outbound queue selection field while in the idle state.
Default: false
|
|
idleState.enableState.phoneDirectory
|
Boolean
|
Flag that indicates the phone directory button should be enabled.Valid values:
- true: Display the phone directory button while in the idle state.
- false: Don't display the phone directory button while in the idle state.
Default: false
|
|
offerContext
|
Object
|
Details about the current participant's offer context for resiliency.```
{
"assignment": {Object},
"creationTime": "String",
"description": "String",
"displayContent": {Object},
"externalId": "String",
"externalSegmentId": "String",
"isResilient": Boolean,
"metadata": {Object},
"nowRecordId": "String",
"nowRecordTable": "String",
"providerAppInboundId": "String",
"queueId": "String",
"requesterId": "String",
"transferContent": {Object},
"type": "String"
}
```
|
|
offerContext.assignment
|
Object
|
Details about the agent assignment.```
"assignment": {
"allowedToDecline": Boolean,
"enableAutoAssign": Boolean,
"offeredOn": "String",
"timeout": "String"
}
```
|
|
offerContext.assignment. allowedToDecline
|
Boolean
|
Required. Flag that indicates whether the agent is allowed to decline the assignment.Valid values:
- true: The agent is allowed to decline the assignment.
- false: The agent is not allowed to decline the assignment.
Default: false
|
|
offerContext.assignment. enableAutoAssign
|
Boolean
|
Required. Flag that indicates whether an agent receive the assignment automatically.Valid values:
- true: An agent can receive the assignment automatically.
- false: An agent can not receive the assignment automatically.
Default: false
|
|
offerContext.assignment. offeredOn
|
String
|
Date at which the offer was made in UTC format \(Www, dd Mmm yyyy HH:mm:ss GMT\).
|
|
offerContext.assignment. timeout
|
String
|
Time in milliseconds to assign to an agent before timeout.
|
|
offerContext.creationTime
|
String
|
Optional. Call creation date and time in UTC format \(YYYY-MM-DDTHH:MM:SS\).
|
|
offerContext.description
|
String
|
Optional. Description of the offer.
|
|
offerContext.displayContent
|
Object
|
Optional. Unique JSON payload values representing values displayed on screen.
|
|
offerContext.externalId
|
String
|
Unique value that identifies the current active call on the associated external system.
|
|
offerContext.isResilient
|
Boolean
|
Optional. Flag that indicates whether the offer context is resilient.Valid values:
- true: The offer context is resilient.
- false: The offer context is not resilient.
Default: true
|
|
offerContext.metadata
|
Object
|
Optional. Free-form custom JSON payload values.
|
|
offerContext.nowRecordId
|
String
|
Required. Sys\_id of the active call record.Table: Interaction \[interaction\] Only supported option for base system.
|
|
offerContext.nowRecordTable
|
String
|
Optional. Use this property to set the work item and segment for transfers.
|
|
offerContext. providerAppInboundId
|
String
|
Optional. Unique ID from the inbound third-party provider.
|
|
offerContext.queueId
|
String
|
Required for regular \(non-transfer\) assignments. Unique ID representing the assignment queue. Use the **transferContent.targetId** property for transfer assignments.
|
|
offerContext.requesterId
|
String
|
Required. Unique ID of the offer requester. For voice, this value can be the phone number of the user.
|
|
offerContext.transferContent
|
Object
|
Details required for transfer assignments.```
"transferContent": {
"sourceQueueId": "String",
"targetId": "String",
"targetType": "String",
"transferType": "String"
}
```
|
|
offerContext.transferContent. sourceQueueId
|
String
|
The sys\_id or external ID of the assignment queue.
|
|
offerContext.transferContent. targetId
|
String
|
The sys\_id or external ID of the queue transfer.
|
|
offerContext.transferContent. targetType
|
String
|
Type of transfer target.Valid values:
- agent
- queue
|
|
offerContext.transferContent. transferType
|
String
|
Type of transfer.Valid values:
- blind
- consult
|
|
offerContext.type
|
String
|
Type of call.Valid values:
- call
- callback request
- voicemail
|
|
searchTargetList
|
Array of Objects
|
Context details of the transfer related data for a ServiceNow table.```
"searchTargetList": [
{
"externalId": "String",
"nowRecordId": "String",
"nowRecordTable": "String",
"participantID": "String",
"quickStats": [Array],
"targets": [Array],
"targetTypes": [Array]
}
]
```
|
|
searchTargetList.externalId
|
String
|
Unique identifier of the associated call on the CCaaS system.
|
|
searchTargetList.nowRecordId
|
String
|
Required. Sys\_id of the record to which the searchTargetList belongs. **Note:** Only records in the Interaction \[interaction\] table are currently supported.
|
|
searchTargetList.nowRecordTable
|
String
|
Required. ServiceNow table to which the searchTargetList belongs.Table: Only valid value - `"interaction"`
|
|
searchTargetList.participantID
|
String
|
Unique identifier for the participant from the CCaaS system.
|
|
searchTargetList.quickStats
|
Array of Objects
|
Optional. Applies only to agent entries. A list of status descriptors displayed inline in the agent row for providing agent status information.```
"quickStats": [
{
"label": "String",
"value": "String"
}
]
```
Example rendering: `Available | On Call 1`
|
|
searchTargetList.quickStats.label
|
String
|
Status label displayed in the agent row.
|
|
searchTargetList.quickStats.value
|
String
|
Optional value appended to the label.
|
|
searchTargetList.targets
|
Array of Objects
|
Details about the agents, external users, and/or queues to whom the call can be transferred.```
"targets": [
{
"payload": {Object},
"transferSubtypes": [Array],
"type": "String"
}
]
```
|
|
searchTargetList.targets.payload
|
Object
|
Details about the information to display in the transfer call control.The following is an example of a **Transfer call** control that contains a list of agents that the call can be transferred to. The screen shot shows what elements of the UI that each parameter in the **list.payload** controls.
\[Omitted image "OF-search\_payload\_parms.png"\] Alt text: Screen shot of Transfer call window showing parameter association
```
"payload": {
"list": [Array]
}
```
This example shows an agent payload \(`"searchTargetList.targets.type": "agent"`\).
```
"payload": {
"list": [
{
"name": "Alice Anderson",
"id": "agent1Id",
"hasStats": true,
"presence": "available",
"moreInfo": [
{
"label": "Skill",
"value": "CRM certified"
}
]
}
]
}
```
The following shows an example of a queue payload \(`"searchTargetList.targets.type": "queue"`\).
```
"payload": {
"list": [
{
"name": "Product Support Queue",
"id": "queue1Id",
"hasStats": true,
"moreInfo": [
{
"label": "Skill",
"value": "10sec"
},
{
"label": "Queue Skill",
"value": "German"
}
]
},
{
"name": "Billing Queue",
"id": "queue2Id",
"hasStats": true,
"moreInfo": [
{
"label": "Skill",
"value": "10sec"
}
]
}
]
}
```
|
|
searchTargetList.targets.payload.list
|
Array of Objects
|
Details about the payload for each type of target.```
"list": [
{
"hasStats": Boolean,
"id": "String",
"moreInfo": [Array],
"name": "String",
"presence": "String"
}
]
```
|
|
searchTargetList.targets.payload.list.hasStats
|
Boolean
|
Flag that indicates whether the associated target has additional statistics such as a wait-time for a queue.Valid values:
- true: Target has additional statistics. An information icon appears next to the agent name or queue.
- false: Target doesn't have additional statistics.
Default: false
|
|
searchTargetList.targets.payload.list.id
|
String
|
Unique identifier of the agent or queue in the CCaaS system.
|
|
searchTargetList.targets.payload.list.moreInfo
|
Array of Objects
|
Required if **searchTargetList.targets.payload.list.hasStats** is set to `"true"`. List of skills that the agent or queue has. This information appears in a pop-up window when the user selects the information icon at the end of the entities name.```
"moreInfo": [
{
"label": "String",
"value": "String"
}
]
```
|
|
searchTargetList.targets.payload.list.moreInfo.label
|
String
|
Free-form label for the information to display in the pop-up window, such as a **Skill** or **Language**.
|
|
searchTargetList.targets.payload.list.moreInfo.value
|
String
|
Text to display in the pop-up window after the label, such as **CRM certified** or **German**.
|
|
searchTargetList.targets.payload.list.name
|
String
|
Name of the agent, external user, or queue. Located in the CCaaS system.
|
|
searchTargetList.targets.payload.list.presence
|
String
|
Presence state of the associated agent. This parameter is only valid for a**searchTargetList.targets.type** of `"agent"`.Valid values:
- available
- away
- busy
- offline
|
|
searchTargetList.targets.transferSubtypes
|
Array of Objects
|
Details about the type of transfer supported for the specified **searchTargetList.targets.type**. This information appears when the user clicks the ellipse next to the target's name in the UI.
\[Omitted image "OF-transferSuptypes.png"\] Alt text: Transfer call component showing transfer types
For example, if only a consult type is supported for the current target type, say queue, this array will contain one object to denote the consult type of transfer.
```
"transferSubtypes": [
{
"id": "String",
"label": "String"
}
]
```
|
|
searchTargetList.targets.transferSubtypes.id
|
String
|
Identifier of the transfer subtype.Valid values:
- blind: Agent directly transfers the customer call to another agent or queue without first speaking to the agent.
- consult: Agent contacts the agent to whom they want to consult, then merges the customer into the call with the consulting agent.
This must correspond to the value in **searchTargetList.targets.transferSubtypes.label**.
|
|
searchTargetList.targets.transferSubtypes.label
|
String
|
Label of the transfer subtype. If you don't pass a label, nothing appears in the UI for transfer subtype.Valid values:
- Blind
- Consult
This must correspond to the value in **searchTargetList.targets.transferSubtypes.id**.
|
|
searchTargetList.targets.type
|
String
|
Type of target.Valid values:
- agent
- external
- queue
|
|
searchTargetList.targetTypes
|
Array of Strings
|
Optional. Specifies which tabs to display in the Phone Directory component based on the given interaction.```
targetTypes: ["String", "String", "String"]
```
Accepted values:
- agent
- queue
- external
Default: All three tabs are displayed.
|
|
Type
|
String
|
Type of context data to set. Valid values:
- activeCall: Sets the context for the ongoing Active call component. When you pass this context type, you must also pass the `activeCall[]` **Context** parameter.
- idleState: Sets the idle state capabilities for the current user. When this type is set, the idle state UI \(dial pad\) appears in OpenFrame. When you pass this context type, you must also pass the `{}` JSON as the **Context** parameter.
- offerContext: Sets the current participant's offer context for resiliency. When you pass this context type, you must also pass the `offerContext{}` JSON as the **Context** parameter.
- searchTargetList: Sets the telephone directory context. When this type is set, it enables **Transfer call** on the Active call component. When you pass this context type, you must also pass the `searchTargetList[]` JSON as the **Context** parameter.
|