Skip to content

Port OPS + Recording changes to GA5 #34514

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 34 commits into
base: main
Choose a base branch
from
Draft
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
3477ecb
added ga5
fhaghbin-msft Mar 10, 2025
8c1cab1
rename
fhaghbin-msft Mar 11, 2025
6f0ccc0
fix
fhaghbin-msft Mar 11, 2025
d761b8d
fix
fhaghbin-msft Mar 11, 2025
705996e
add GA
fhaghbin-msft Mar 11, 2025
ed9db5a
fix
fhaghbin-msft Mar 11, 2025
c759b80
fix
fhaghbin-msft Mar 11, 2025
1d45c6e
add option 1
fhaghbin-msft Mar 13, 2025
984cd45
fix
fhaghbin-msft Mar 14, 2025
1606a12
added ga5
fhaghbin-msft Apr 9, 2025
33a2d57
fix
fhaghbin-msft Apr 9, 2025
6d02f1b
fix
fhaghbin-msft Apr 9, 2025
2ff6e4c
fix
fhaghbin-msft Apr 9, 2025
d3951e3
test
fhaghbin-msft Apr 9, 2025
3894959
Merge branch 'main' into callautomation/ga5
fhaghbin-msft Apr 9, 2025
ad8a080
fix
fhaghbin-msft Apr 9, 2025
f3b12f0
fix
fhaghbin-msft Apr 9, 2025
151e052
fix
fhaghbin-msft Apr 15, 2025
4c412fd
fix
fhaghbin-msft Apr 15, 2025
d23699c
fix desc
fhaghbin-msft Apr 21, 2025
2619dae
fix
fhaghbin-msft Apr 22, 2025
b2e782b
Merge branch 'main' into callautomation/ga5
fhaghbin-msft Apr 22, 2025
d0a1466
fix
fhaghbin-msft Apr 22, 2025
421a0b3
Merge branch 'callautomation/ga5' of https://github.com/Azure/azure-r…
fhaghbin-msft Apr 22, 2025
ad7f974
fix
fhaghbin-msft Apr 22, 2025
0409849
fix
fhaghbin-msft Apr 25, 2025
63bb44f
Merge branch 'main' into callautomation/ga5
fhaghbin-msft Apr 25, 2025
8bf7f26
Merge branch 'main' into callautomation/ga5
fhaghbin-msft Apr 28, 2025
cd20cdc
Port OPS + Recording changes to GA5
antonsamson-msft May 7, 2025
5d1bd3a
Apply pretty
antonsamson-msft May 7, 2025
20fca9c
Pull in latest from Recording
antonsamson-msft May 9, 2025
4e8b82a
Merge branch 'main' into antonsamson/ga5
antonsamson-msft May 12, 2025
b621929
Re-generated from latest
antonsamson-msft May 12, 2025
fbeca7b
Merge branch 'main' into antonsamson/ga5
antonsamson-msft May 12, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
{

Check notice on line 1 in specification/communication/data-plane/CallAutomation/stable/2025-05-15/communicationservicescallautomation.json

View workflow job for this annotation

GitHub Actions / TypeSpec Requirement

Brownfield services will soon be required to convert from OpenAPI to TypeSpec. See https://aka.ms/azsdk/typespec.
"swagger": "2.0",
"info": {
"version": "2025-05-15",
Expand Down Expand Up @@ -1496,6 +1496,12 @@
"schema": {
"$ref": "#/definitions/RecordingStateResponse"
}
},
"202": {
"description": "The service has accepted the StartCallRecording request and will begin processing it. You will receive either a StartRecordingFailed event or RecordingStateChanged event at your specified callback URI to update you on the status of the request.",
"schema": {
"$ref": "#/definitions/RecordingStateResponse"
}
}
},
"x-ms-examples": {
Expand Down Expand Up @@ -1702,55 +1708,33 @@
"transcriptionOptions": {
"$ref": "#/definitions/TranscriptionOptions",
"description": "Transcription Options."
},
"teamsAppSource": {
"$ref": "#/definitions/MicrosoftTeamsAppIdentifierModel",
"description": "The identifier of the source for creating call with Teams resource account ID."
}
}
},
"WebSocketMediaStreamingOptions": {
"description": "Represents the options for WebSocket transport.",
"required": [
"transportType",
"audioChannelType"
],
"type": "object",
"allOf": [
{
"$ref": "#/definitions/MediaStreamingOptions"
}
"AudioFormat": {
"description": "The audio format used for encoding, including sample rate and channel type. The default is Pcm16KMono.",
"enum": [
"pcm16KMono",
"pcm24KMono"
],
"properties": {
"transportUrl": {
"description": "The transport URL for media streaming.",
"type": "string"
},
"contentType": {
"$ref": "#/definitions/MediaStreamingContentType"
},
"startMediaStreaming": {
"description": "A value indicating whether the media streaming should start immediately after the call is answered.",
"type": "boolean"
},
"enableBidirectional": {
"description": "A value indicating whether bidirectional streaming is enabled.",
"type": "boolean"
},
"audioFormat": {
"$ref": "#/definitions/AudioFormat"
},
"enableDtmfTones": {
"description": "A value that indicates whether to stream the DTMF tones.",
"type": "boolean"
}
},
"x-ms-discriminator-value": "websocket"
"type": "string",
"x-ms-enum": {
"name": "AudioFormat",
"modelAsString": true
}
},
"CommunicationIdentifierModel": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationIdentifierModel"
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/CommunicationIdentifierModel"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why a stable api-version refers to model from a preview?

},
"PhoneNumberIdentifierModel": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/PhoneNumberIdentifierModel"
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/PhoneNumberIdentifierModel"
},
"CommunicationUserIdentifierModel": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationUserIdentifierModel"
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/CommunicationUserIdentifierModel"
},
"CallIntelligenceOptions": {
"description": "AI options for the call.",
Expand Down Expand Up @@ -1820,61 +1804,58 @@
},
"discriminator": "transportType"
},
"WebSocketTranscriptionOptions": {
"WebSocketMediaStreamingOptions": {
"description": "Represents the options for WebSocket transport.",
"required": [
"transportType",
"locale"
"audioChannelType"
],
"type": "object",
"allOf": [
{
"$ref": "#/definitions/TranscriptionOptions"
"$ref": "#/definitions/MediaStreamingOptions"
}
],
"properties": {
"transportUrl": {
"description": "The URL used for live transcription transport.",
"description": "The transport URL for media streaming.",
"type": "string"
},
"speechModelEndpointId": {
"description": "The ID of the deployed custom model in GUID format. The GUID is generated by Azure Speech Studio, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a.",
"type": "string"
"contentType": {
"$ref": "#/definitions/MediaStreamingContentType"
},
"startTranscription": {
"description": "Indicates whether the transcription should start immediately after the call is answered.",
"startMediaStreaming": {
"description": "A value indicating whether the media streaming should start immediately after the call is answered.",
"type": "boolean"
},
"enableIntermediateResults": {
"description": "Enables intermediate results for the transcribed speech.",
"enableBidirectional": {
"description": "A value indicating whether bidirectional streaming is enabled.",
"type": "boolean"
},
"audioFormat": {
"$ref": "#/definitions/AudioFormat"
},
"enableDtmfTones": {
"description": "A value that indicates whether to stream the DTMF tones.",
"type": "boolean"
}
},
"x-ms-discriminator-value": "websocket"
},
"MicrosoftTeamsUserIdentifierModel": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/MicrosoftTeamsUserIdentifierModel"
"MicrosoftTeamsAppIdentifierModel": {
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/MicrosoftTeamsAppIdentifierModel"
},
"AudioFormat": {
"description": "The audio format used for encoding, including sample rate and channel type. The default is Pcm16KMono.",
"enum": [
"pcm16KMono",
"pcm24KMono"
],
"type": "string",
"x-ms-enum": {
"name": "AudioFormat",
"modelAsString": true
}
"MicrosoftTeamsUserIdentifierModel": {
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/MicrosoftTeamsUserIdentifierModel"
},
"MicrosoftTeamsAppIdentifierModel": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/MicrosoftTeamsAppIdentifierModel"
"TeamsExtensionUserIdentifierModel": {
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/TeamsExtensionUserIdentifierModel"
},
"CommunicationErrorResponse": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationErrorResponse"
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/CommunicationErrorResponse"
},
"CommunicationError": {
"$ref": "../../../Common/stable/2023-11-15/common.json#/definitions/CommunicationError"
"$ref": "../../../Common/preview/2025-03-15-preview/common.json#/definitions/CommunicationError"
},
"CallConnectionStateModel": {
"description": "The state of the call connection.",
Expand Down Expand Up @@ -3015,14 +2996,15 @@
},
"StartCallRecordingRequest": {
"description": "The request payload start for call recording operation with call locator.",
"required": [
"callLocator"
],
"type": "object",
"properties": {
"callLocator": {
"$ref": "#/definitions/CallLocator",
"description": "The call locator."
"description": "The call locator. (Only one of callLocator or callConnectionId to be used)"
},
"callConnectionId": {
"description": "The call connection Id. (Only one of callLocator or callConnectionId to be used)",
"type": "string"
},
"recordingStateCallbackUri": {
"description": "The uri to send notifications to.",
Expand Down Expand Up @@ -4196,6 +4178,24 @@
}
}
},
"StartRecordingFailed": {
"type": "object",
"properties": {
"callConnectionId": {
"description": "The call connection Id.",
"type": "string"
},
"correlationId": {
"description": "Correlation Id for event to call correlation.",
"type": "string"
},
"recordingId": {
"description": "The call recording Id.",
"type": "string",
"readOnly": true
}
}
},
"TranscriptionFailed": {
"type": "object",
"properties": {
Expand Down Expand Up @@ -4365,6 +4365,38 @@
"description": "Contains the resulting SIP code, sub-code and message."
}
}
},
"WebSocketTranscriptionOptions": {
"description": "Represents the options for WebSocket transport.",
"required": [
"transportType",
"locale"
],
"type": "object",
"allOf": [
{
"$ref": "#/definitions/TranscriptionOptions"
}
],
"properties": {
"transportUrl": {
"description": "The URL used for live transcription transport.",
"type": "string"
},
"speechModelEndpointId": {
"description": "The ID of the deployed custom model in GUID format. The GUID is generated by Azure Speech Studio, e.g., a259c255-1cdw-4ed7-a693-dd58563b6f6a.",
"type": "string"
},
"startTranscription": {
"description": "Indicates whether the transcription should start immediately after the call is answered.",
"type": "boolean"
},
"enableIntermediateResults": {
"description": "Enables intermediate results for the transcribed speech.",
"type": "boolean"
}
},
"x-ms-discriminator-value": "websocket"
}
},
"parameters": {
Expand Down