Computer Telephony Integration Connector
This section contains Computer Telephony Integration (CTI) Connector proto files.
Notes:
- To download Media Manager proto files, click download Media Manager proto files.
- Default values are determined by the gRPC specification. For more information, go to protocol buffers language guide .
mediamanager/event/event_service.proto
EventService
This service allows to publish events to be consumed by subscribed consumers. Event consumers can be both internal and external Media Manager clients.
gRPC method definitions
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| CreateEvent | CreateEvent Request |
CreateEvent Response |
Creates an event and publishes it. |
Methods with HTTP bindings
Notes:
-
REST API responses use the camel case naming convention, such as gkPersonId, but the REST API requests can either use the camel case or snake case naming convention, such as gk_person_id.
-
The following example displays root prefix and endpoint to build a complete URL, such as
https://gatekeeper.api.nuance.com/v1/audios/upload-url:- Root prefix for API:
https://gatekeeper.api.nuance.com - Endpoint:
/v1/audios/upload-url
To know more about root prefixes for API that can be used for different geographies, go to Sites.
- Root prefix for API:
CreateEvent
CreateEventRequest
Input message that defines parameters for CreateEvent.
| Field | Type | Description |
|---|---|---|
| event_stream_id | string | Optional and deprecated. Unique ID of the event stream used to publish events to. |
| event | Event | Mandatory. The event to publish. |
CreateEventResponse
Output message that defines parameters returned by CreateEvent.
| Field | Type | Description |
|---|---|---|
| status | nuance.rpc.Status | General operation status. |
| event_id | string | Unique ID identifying the created event. |
mediamanager/connector/cti/cti_connector.proto
CtiConnectorCommand
Command to be executed by the CTI Connector.
| Field | Type | Description |
|---|---|---|
| One of connector_command: | ||
| start_monitor_command | StartMonitorCommand | Mandatory. Instructs the CTI Connector to start monitoring an agent extension. A connector could receive multiple start monitor command for the same agent extension, but with different subscriptions. The connector must create events for each subscription even though it’s for the same agent extension. |
| stop_monitor_command | StopMonitorCommand | Mandatory. Instructs the CTI Connector to stop monitoring an agent extension for a specific subscription. |
| update_call_data_command | UpdateCallDataCommand | Mandatory. Instructs the CTI Connector to update the data of a call for a specific subscription. |
| get_agent_current_calls_command | GetAgentCurrentCallsCommand | Mandatory. Instructs the CTI Connector to get the current calls for a specific subscription. |
CtiConnectorCommandResponse
The command response executed by the CTI Connector.
| Field | Type | Description |
|---|---|---|
| One of connector_command_response: | ||
| start_monitor_command_response | StartMonitorCommandResponse | Mandatory. The response for a StartMonitorCommand. |
| stop_monitor_command_response | StopMonitorCommandResponse | Mandatory. The response for a StopMonitorCommand. |
| update_call_data_command_response | UpdateCallDataCommandResponse | Mandatory. The response for a UpdateCallDataCommand. |
| get_agent_current_calls_command_response | GetAgentCurrentCallsCommandResponse | Mandatory. The response for a GetAgentCurrentCallsCommandResponse. |
GetAgentCurrentCallsCommand
Update call data monitor command message.
| Field | Type | Description |
|---|---|---|
| agent_info | nuance.mediamanager.connector.v1.AgentInfo | Optional. Identifies the agent. |
| subscription_id | string | Mandatory. Unique ID identifying the subscription. |
GetAgentCurrentCallsCommandResponse
The response for a GetAgentCurrentCallsCommand.
| Field | Type | Description |
|---|---|---|
| call_details | repeated nuance.mediamanager.event.v1.CallDetails | Mandatory, Note: An agent can be on multiple calls. |
StartMonitorCommand
Start monitor command message.
| Field | Type | Description |
|---|---|---|
| subscription_id | string | Mandatory. Unique ID identifying the subscription. |
| event_stream_id | string | Mandatory. Unique ID of the event stream used to create events. |
| metadata | repeated StartMonitorCommand.MetadataEntry | Optional. Metadata provided when a subscription is created. Metadata could be used to implement specific connector behaviour. |
| One of monitor_info: | ||
| agent_info | nuance.mediamanager.connector.v1.AgentInfo | Mandatory. Identifies the agent. |
StartMonitorCommand.MetadataEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
StartMonitorCommandResponse
The response for a StartMonitorCommand.
StopMonitorCommand
Stop monitor command message.
| Field | Type | Description |
|---|---|---|
| subscription_id | string | Mandatory. Unique ID identifying the subscription. |
StopMonitorCommandResponse
The response for a StopMonitorCommand.
UpdateCallDataCommand
Update call data monitor command message.
| Field | Type | Description |
|---|---|---|
| call_identifier | nuance.mediamanager.connector.v1.CallIdentifier | Mandatory. Unique call ID created by the telephony system.Required. Call identifier. |
| agent_info | nuance.mediamanager.connector.v1.AgentInfo | Deprecated. Identifies the agent. |
| call_data | repeated UpdateCallDataCommand.CallDataEntry | Mandatory. Call data to update in the form of key-value pairs. |
| subscription_id | string | Mandatory. Unique ID identifying the subscription. |
UpdateCallDataCommand.CallDataEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
UpdateCallDataCommandResponse
The response for a UpdateCallDataCommand.
mediamanager/event/event_resources.proto
AgentEvent
Information associated to an agent.
| Field | Type | Description |
|---|---|---|
| agent_info | AgentInfo | Mandatory. Identifies the agent. |
| agent_event_type | AgentEventType | Mandatory. Identifies the agent event type. |
AgentInfo
The information associated to a logged in agent.
| Field | Type | Description |
|---|---|---|
| agent_id | string | Optional. Agent ID. |
| extension | string | Mandatory. Telephony extension. |
CallDetails
| Field | Type | Description |
|---|---|---|
| call_id | string | Mandatory |
CallEvent
Data related to a call event.
| Field | Type | Description |
|---|---|---|
| event_type | CallEventType | Mandatory. Identifies the type of call event such as CALL_STARTED, CALL_HOLD and CALL_CONFERENCE. |
| call_id | string | Mandatory. Unique call ID created by the telephony system. |
| call_type | CallType | Mandatory. Identifies the type of the call such as CALL_TYPE_INBOUND and CALL_TYPE_INTERNAL. |
| call_metadata | CallMetadata | Mandatory. Call info |
| agent_info | AgentInfo | Mandatory. The information associated to the agent. |
| call_attributes | repeated CallEvent.CallAttributesEntry | Optional. Attributes associated to a call or call session. Attributes in the map should be specific to the underlying CTI or call API used. |
| custom_data | repeated CallEvent.CustomDataEntry | Optional. Free-form key-value pairs containing custom data. Can be used to pass data that is not supported by the underlying CTI or call API. |
| recording_id | string | Optional. Unique recording ID used as correlation ID with SIPREC. This field is only required when correlation_attributes need to be correlated with this CallEvent. |
CallEvent.CallAttributesEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
CallEvent.CustomDataEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
CallIdentifier
Unique call ID created by the telephony system.
| Field | Type | Description |
|---|---|---|
| call_id | string | Mandatory. The call ID. |
CallMetadata
Provides attributes used to track a call.
| Field | Type | Description |
|---|---|---|
| ani | string | Optional. ANI |
| dnis | string | Optional. DNIS |
DiagnosticTrace
Provides diagnostic information information about request processing steps.
| Field | Type | Description |
|---|---|---|
| connector_type | ConnectorType | Mandatory. The type of connector involved in the request processing. |
| connector_id | string | Mandatory. The ID of the connector involved in the request processing. |
| external_connector_id | string | Mandatory. The ID of the specific connector instance involved in the request processing. |
Event
Top level container for an event.
| Field | Type | Description |
|---|---|---|
| event_id | string | Optional. Unique ID that is generated at the creation of the event. |
| realm_id | string | Mandatory. Tenant’s realm ID associated to the event. |
| subscription_id | string | Mandatory. Subscription ID for which the event is destined to. |
| event_time | google.protobuf.Timestamp | Optional. Date and time of the event to create. |
| correlation_attributes | repeated Event.CorrelationAttributesEntry | Optional. Map of attributes will be attached if matching correlation id is found in Call Start CTI event. |
| One of event: | ||
| call_event | CallEvent | A call event. |
| agent_event | AgentEvent | An agent event. |
| subscription_event | SubscriptionEvent | A subscription event. |
Event.CorrelationAttributesEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
SubscriptionEvent
Provides information about an event that happened concerning a subscription.
| Field | Type | Description |
|---|---|---|
| subscription_event_type | SubscriptionEventType | Identifies the event type or action that occurred. |
| event_reason | string | Provides contextual information about the event. Used for debugging purposes only. |
| agent_info | AgentInfo | The agent information associated to the event. |
| diagnostic_trace | DiagnosticTrace | Optional. Provides information used for tracing. |
AgentEventType
Identifies the event type or action associated to a subscription.
| Name | Number | Description |
|---|---|---|
| AGENT_EVENT_TYPE_UNSPECIFIED | 0 | Unknown on unspecified event type. |
| AGENT_LOGOUT | 1 | The agent logged out from the phone. |
CallEventType
Identifies the type of a call event. Included in CallEvent.
| Name | Number | Description |
|---|---|---|
| CALL_EVENT_UNSPECIFIED | 0 | Unknown on unspecified call event type. |
| CALL_STARTED | 1 | The call has started. |
| CALL_ENDED | 2 | The call has ended. |
| CALL_HELD | 3 | The call was put on hold (pause). |
| CALL_RESUMED | 4 | The call was retrieved / resumed from pause. |
| CALL_PARTY_ADDED | 5 | Another party has been added to the call conference. |
| CALL_PARTY_DELETED | 6 | Another party has been removed from the call conference. |
| CALL_DATA_UPDATED | 7 | Call data changed. This event type is only required if a CallEvent contains attached data. |
| AUDIO_CHANNEL_CHANGED | 8 | The audio channel information has changed. This event type is optional if recording information is not contained within the CallEvent. |
CallType
Identifies the type of a call. Included in CallEvent.
| Name | Number | Description |
|---|---|---|
| CALL_TYPE_UNSPECIFIED | 0 | Unknown call type. |
| CALL_TYPE_INBOUND | 1 | Incoming call from an external party (customer) to an agent. |
| CALL_TYPE_OUTBOUND | 2 | Outgoing call from an agent to an external party (customer) |
| CALL_TYPE_EXTERNAL | 3 | Call occurring with an external party (customer) and an agent but we are not able to differentiate between inbound and outbound calls. |
| CALL_TYPE_INTERNAL | 4 | Call with between 2 agents. |
| CALL_TYPE_CONSULT | 5 | Internal call occurring with 2 agents. Another call in progress was put on hold. |
| CALL_TYPE_TRANSFER | 6 | Call in progress with an external party that has been transferred to another agent. |
| CALL_TYPE_CONFERENCE | 7 | Call occurring with 2 or more persons, usually agents. |
ConnectorType
Listing of valid connector types.
| Name | Number | Description |
|---|---|---|
| CONNECTOR_TYPE_UNSPECIFIED | 0 | Unspecified connector type. |
| CONNECTOR_TYPE_MEDIA | 1 | Media connector. |
| CONNECTOR_TYPE_CTI | 2 | CTI connector. |
| CONNECTOR_TYPE_SIPREC | 3 | SIPREC connector. Deprecated. |
| CONNECTOR_TYPE_GENERIC | 4 | Generic connector. |
| CONNECTOR_TYPE_RCC | 5 | Recording controller connector. |
SubscriptionEventType
Identifies the event type or action associated to a subscription.
| Name | Number | Description |
|---|---|---|
| SUBSCRIPTION_EVENT_TYPE_UNSPECIFIED | 0 | Unknown on unspecified event type. |
| SUBSCRIPTION_SUSPENDED | 1 | Temporary event. An issue happened with the subscription, which may cause the subscription to be out of service. |
| SUBSCRIPTION_RESTARTED | 2 | The subscription that was out of service has been recovered. |
| SUBSCRIPTION_DELETED | 3 | The issue with the subscription was unrecoverable so it was terminated. |