Media Connector
This section contains Media 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/connector/media/media_connector.proto
MediaConnectorCommand
Command to be executed by the Media Connector.
| Field | Type | Description |
|---|---|---|
| One of connector_command: | ||
| start_record_command | StartRecordCommand | Mandatory. Instructs the Media Connector to start a recording. |
| stop_record_command | StopRecordCommand | Mandatory. Instructs the Media Connector to stop a recording. |
| pause_record_command | PauseRecordCommand | Mandatory. Instructs the Media Connector to pause a recording. |
| resume_record_command | ResumeRecordCommand | Mandatory. Instructs the Media Connector to resume a paused recording. |
MediaConnectorCommandResponse
The command response executed by the Media Connector.
| Field | Type | Description |
|---|---|---|
| One of connector_command_response: | ||
| start_record_command_response | StartRecordCommandResponse | Mandatory. The response for a StartRecordCommand. |
| stop_record_command_response | StopRecordCommandResponse | Mandatory. The response for a StopRecordCommand. |
| pause_record_command_response | PauseRecordCommandResponse | Mandatory. The response for a PauseRecordCommand. |
| resume_record_command_response | ResumeRecordCommandResponse | Mandatory. The response for a ResumeRecordCommand. |
PauseRecordCommand
Pause record command message.
| Field | Type | Description |
|---|---|---|
| recording_id | string | Mandatory. The recording ID associated with the recording. |
PauseRecordCommandResponse
The response for a PauseRecordCommand.
ResumeRecordCommand
Resume record command message.
| Field | Type | Description |
|---|---|---|
| recording_id | string | Mandatory. The recording ID associated with the recording. |
| recording_control_attributes | repeated ResumeRecordCommand.RecordingControlAttributesEntry | Optional. e.g.: recording_control_attributes can be used by Media connector when it needs to instruct OVS RCC connector to filter the RTP traffic. |
ResumeRecordCommand.RecordingControlAttributesEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
ResumeRecordCommandResponse
The response for a ResumeRecordCommand.
StartRecordCommand
Start record command message.
| Field | Type | Description |
|---|---|---|
| recording_profile | string | Optional. The recording profile to be used for this recording. Must be defined in the Media Connector. |
| call_identifier | nuance.mediamanager.connector.v1.CallIdentifier | Mandatory. The call identifier to be used for the recording. |
| recording_side | RecordingSide | The side to be recorded |
| agent_info | nuance.mediamanager.connector.v1.AgentInfo | Optional. The agent information to be used for the recording. |
| rcc_address | string | Optional. Represents the Recorder Connector address that the Media Connector shall use to sends a recorder command. The address must be in the format of “dns://host:port” or “static://ipv4-address:port” |
| media_coordination_info | nuance.mediamanager.connector.v1.MediaCoordinationInfo | Optional. MediaCoordinationInfo used by Media Manager to identify which Media Connector to send the recording command when present. |
| recording_control_attributes | repeated StartRecordCommand.RecordingControlAttributesEntry | Optional. e.g.: recording_control_attributes can be used by Media connector when it needs to instruct OVS RCC connector to filter the RTP traffic. |
StartRecordCommand.RecordingControlAttributesEntry
| Field | Type | Description |
|---|---|---|
| key | string | |
| value | string |
StartRecordCommandResponse
The response for a StartRecordCommand.
| Field | Type | Description |
|---|---|---|
| recording_id | string | Mandatory. The unique ID associated with the recording. |
| media_urn | string | Mandatory. The Media URN for the recording that can be used to access the media. |
StopRecordCommand
Stop record command message.
| Field | Type | Description |
|---|---|---|
| recording_id | string | Mandatory. The recording ID associated with the recording. |
StopRecordCommandResponse
The response for a StopRecordCommand.
RecordingSide
Listing of the possible recording sides. The side 1 could be the caller, and side 2 could be the agent, or vice versa, which depends on the configuration in the recorder.
| Name | Number | Description |
|---|---|---|
| RECORDING_SIDE_UNSPECIFIED | 0 | |
| RECORDING_SIDE_1 | 1 | |
| RECORDING_SIDE_2 | 2 | |
| RECORDING_SIDE_ALL | 10 |
mediamanager/connector/media/media_service.proto
MediaService
This service allows a connector to create a stream media to Media Manager.
gRPC method definitions
| Method Name | Request Type | Response Type | Description |
|---|---|---|---|
| CreateMedia | CreateMedia Request |
CreateMedia Response |
Creates a media entity to be used for streaming media. |
| StreamMedia | StreamMedia Request stream |
StreamMedia Response |
Streams media to Media Manager. Used by the Media Connector to stream a live recording. |
ALaw
Input message defining ALaw audio format. G.711 audio formats are set to 8kHz.
AudioFormat
Input message containing the audio format of the media.
| Field | Type | Description |
|---|---|---|
| One of audio_format: | One of the following audio formats. |
|
| pcm | PCM | Signed 16-bit little endian PCM. |
| alaw | ALaw | G.711 A-law, 8kHz. |
| ulaw | ULaw | G.711 Mu-law, 8kHz. |
| g729 | G729 | G729/G729A |
| num_channels | uint32 | Number of channels. i.e. mono audios have one channel, while stereo audios usually have 2 channels. |
CreateMediaRequest
Input message that defines parameters for CreateMedia.
| Field | Type | Description |
|---|---|---|
| realm_id | string | Mandatory. The realm ID of the media. |
CreateMediaResponse
Output message that defines parameters returned by CreateMedia.
| Field | Type | Description |
|---|---|---|
| status | nuance.rpc.Status | General operation status. |
| media_urn | string | The Media URN of the created media entity. |
EndOfStreamRequest
Message indicating the end of stream.
| Field | Type | Description |
|---|---|---|
| diagnostic_details | repeated nuance.rpc.DiagnosticDetail | Optional. Provides detailed diagnostic info in case of a failure processing a request. |
G729
Input message defining G729/G729A audio format. G.729/G.729A audio format is set to 8kHz.
MediaChunkRequest
Message containing a media chunk.
| Field | Type | Description |
|---|---|---|
| data | bytes | Mandatory. Media chunk data |
| chunk_duration | google.protobuf.Duration | Optional. The duration of the media chunk. |
| chunk_timestamp | google.protobuf.Duration | Optional. The timestamp of the media chunk relative to the start of the stream. The timestamp should start with 0. |
MediaInfoRequest
Message containing the information about the media.
| Field | Type | Description |
|---|---|---|
| audio_format | AudioFormat | Mandatory. The audio format of the media stream. |
MediaPausedRequest
Message indicating that the stream is paused.
MediaResumedRequest
Message indicating that the stream is resumed.
PCM
Input message defining PCM audio format.
| Field | Type | Description |
|---|---|---|
| sample_rate_hz | uint32 | Audio sample rate. Default 0, meaning 8000. |
StreamMediaRequest
Input message that defines parameters for StreamMedia.
| Field | Type | Description |
|---|---|---|
| realm_id | string | Optional. The realm ID of the media. Ignored if media_urn is in version 2 format. |
| media_urn | string | Mandatory. The URN of the media to be streamed. |
| One of stream_media_request: | ||
| media_info_request | MediaInfoRequest | Message containing the information about the media. Must be the first message in the stream. |
| media_chunk_request | MediaChunkRequest | Message containing a media chunk. |
| end_of_stream_request | EndOfStreamRequest | Message indicating the end of stream. Must be the last message in the stream. |
| media_paused_request | MediaPausedRequest | Message indicating that the stream is paused. Must be sent periodically (once per second). |
| media_resumed_request | MediaResumedRequest | Message indicating that the stream is resumed. Must be followed by a MediaChunkRequest or EndOfStreamRequest. |
StreamMediaResponse
Output message that defines parameters returned by StreamMedia.
| Field | Type | Description |
|---|---|---|
| status | nuance.rpc.Status | General operation status. |
ULaw
Input message defining ULaw audio format. G.711 audio formats are set to 8kHz.
mediamanager/media/media_resources.proto
ALaw
Input message defining ALaw audio format. G.711 audio formats are set to 8kHz.
AudioChannelSelector
Message defining audio selector
| Field | Type | Description |
|---|---|---|
| channel | uint32 | The channel to select. When channel=0 or not specified, all channels will be returned. |
AudioFormat
Message defining the audio format.
| Field | Type | Description |
|---|---|---|
| One of audio_format: | One of the following audio formats. |
|
| pcm | PCM | Signed 16-bit little endian PCM. |
| alaw | ALaw | G.711 A-law, 8kHz. |
| ulaw | ULaw | G.711 Mu-law, 8kHz. |
| mp3 | Mp3 | Mp3. |
| g729 | G729 | G729/G729A |
| num_channels | uint32 | Number of channels. i.e. mono audios have one channel, while stereo audios usually have 2 channels. |
AudioInfo
Provides information about the audio.
| Field | Type | Description |
|---|---|---|
| audio_type | AudioType | Audio type. |
| channels | uint32 | Number of channels. |
| sample_rate_hz | uint32 | Audio sample rate. |
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. |
G729
Input message defining G729/G729A audio format. G.729/G.729A audio format is set to 8kHz.
MediaFormat
Message defining the media format used for transcoding.
| Field | Type | Description |
|---|---|---|
| container | Container | Required. Media container. |
| audio_format | AudioFormat | Optional. Specifies the audio format. If not provided, the original audio format will be returned. |
MediaInfo
Provides information about the media.
| Field | Type | Description |
|---|---|---|
| container | Container | Media container. |
| audio_info | AudioInfo | Audio information. |
MediaSelector
Input message specifying the channel if only one channel of a stereo media is needed.
| Field | Type | Description |
|---|---|---|
| One of media: | ||
| audioChannelSelector | AudioChannelSelector | Audio selector.Future: Video |
Mp3
Input message defining the Mp3 audio format and the transcoding instructions.
| Field | Type | Description |
|---|---|---|
| target | Mp3.Target | Optional. Optimize for quality or bitrate. If not specified, default is TARGET_QUALITY. |
| bitrate | uint32 | Optional. Bitrate in kbit/sec (Only valid if target is bitrate, for CBR one of 8, 16, 24, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256 or 320). If not specified, default is 128. |
| cbr | bool | Optional. Enforce constant bitrate encoding (Only valid if target is bitrate). Default is false. |
| quality | float | Optional. VBR Quality from 0 to 10, 0 being the best (Only valid if target is quality). If not specified, default is 4. |
| mono | bool | Optional. Enforce mono encoding. Default is false. |
| encoding_engine_quality | Mp3.EncodingEngineQuality | Optional. Quality/speed of the encoding engine, this does not affect the bitrate. |
PCM
Input message defining PCM sample rate.
| Field | Type | Description |
|---|---|---|
| sample_rate_hz | uint32 | Audio sample rate. Minimum 8000. If not specified, the original sample rate will be returned. |
ULaw
Input message defining ULaw audio format. G.711 audio formats are set to 8kHz.
AudioType
Audio type
| Name | Number | Description |
|---|---|---|
| AUDIO_TYPE_UNSPECIFIED | 0 | Audio type not specified. |
| AUDIO_TYPE_PCM | 1 | PCM audio type. |
| AUDIO_TYPE_ULAW | 2 | ULAW audio type. |
| AUDIO_TYPE_ALAW | 3 | ALAW audio type. |
| AUDIO_TYPE_MP3 | 4 | Mp3 audio type. |
| AUDIO_TYPE_G729 | 5 | G729/G729A audio type. |
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. |
Container
Media container type.
| Name | Number | Description |
|---|---|---|
| CONTAINER_UNSPECIFIED | 0 | Media container not specified. |
| CONTAINER_RAW | 1 | Raw media with no container. |
| CONTAINER_WAV | 2 | WAV container. |
| CONTAINER_MP3 | 3 | MP3 audio. |
Mp3.EncodingEngineQuality
Encoding engine quality.
| Name | Number | Description |
|---|---|---|
| ENCODING_ENGINE_QUALITY_UNSPECIFIED | 0 | Encoding engine quality is not specified |
| ENCODING_ENGINE_QUALITY_FAST | 1 | Lower quality, but faster encoding speed. |
| ENCODING_ENGINE_QUALITY_STANDARD | 2 | Standard quality. |
| ENCODING_ENGINE_QUALITY_HIGH | 3 | High quality, but slower encoding speed. |
Mp3.Target
| Name | Number | Description |
|---|---|---|
| TARGET_UNSPECIFIED | 0 | Target is unspecified. |
| TARGET_QUALITY | 1 | Target is quality. |
| TARGET_BITRATE | 2 | Target is bitrate. |