diff --git a/eng/pipelines/templates/steps/build.yml b/eng/pipelines/templates/steps/build.yml index fbd02af04da0..d5d882d85866 100644 --- a/eng/pipelines/templates/steps/build.yml +++ b/eng/pipelines/templates/steps/build.yml @@ -22,7 +22,7 @@ steps: - script: | npm install ./eng/tools/versioning - node eng/tools/versioning/set-dev.js --build-id "$(Build.BuildNumber)" --repo-root "$(Build.SourcesDirectory)" + node eng/tools/versioning/set-dev.js --build-id "$(Build.BuildNumber)" --repo-root "$(Build.SourcesDirectory)" --service "$(folder)" node common/scripts/install-run-rush.js update condition: and(succeeded(),eq(variables['SetDevVersion'],'true')) displayName: "Update package versions for dev build" diff --git a/eng/scripts/Generate-APIView-CodeFile.ps1 b/eng/scripts/Generate-APIView-CodeFile.ps1 index 8303dc391f9b..c6325c7576a1 100644 --- a/eng/scripts/Generate-APIView-CodeFile.ps1 +++ b/eng/scripts/Generate-APIView-CodeFile.ps1 @@ -11,6 +11,10 @@ if (!(Test-Path -Path $ArtifactPath)) exit 1 } + +npm install "@rushstack/node-core-library@5.9.0" +npm install "js-tokens@9.0.0" +npm install "@microsoft/api-extractor-model@7.29.8" $apiviewParser = "@azure-tools/ts-genapi@2.0.3" Write-Host "Installing $($apiviewParser)" npm install $apiviewParser --registry $NpmDevopsFeedRegistry diff --git a/sdk/communication/communication-call-automation/CHANGELOG.md b/sdk/communication/communication-call-automation/CHANGELOG.md index 8d19002758fb..9fdda4f9eff0 100644 --- a/sdk/communication/communication-call-automation/CHANGELOG.md +++ b/sdk/communication/communication-call-automation/CHANGELOG.md @@ -1,15 +1,53 @@ # Release History -## 1.3.0-beta.1 (Unreleased) +## 1.4.0-beta.1 (2024-11-22) ### Features Added -### Breaking Changes +- Added support for ConnectAPI to enable streaming and real-time transcription +- Enhanced media streaming with bidirectional capabilities, enabling support for audio formats in both directions. Currently, it supports sample rates of 24kHz and 16kHz -### Bugs Fixed +### Other Changes + +- Introduced audio streaming and transcription data parsing capabilities. + +## 1.3.0 (2024-11-22) + +### Features Added + +- Support multiple play sources for Play and Recognize +- Support for PlayStarted event in Play/Recognize +- Hold and Unhold the participant +- CallDisconnected now includes more information on why the call has ended +- Support to manage the rooms/servercall/group call using connect API +- Expose original PSTN number target from incoming call event in call connection properties +- Support for VoIP to PSTN transfer scenario ### Other Changes +- Added CreateCallFailed event to signify when create call API fails to establish a call +- Added AnswerFailed event to signify when answer call API fails to answer a call + +## 1.3.0-beta.2 (2024-08-12) + +### Bugs Fixed + +- Group call now support the audio streaming + +## 1.3.0-beta.1 (2024-08-02) + +### Features Added + +- Support multiple play sources for Play and Recognize +- Support for PlayStarted event in Play/Recognize +- Support for the real time transcription +- Monetization for real-time transcription and audio streaming +- Hold and Unhold the participant +- Support to manage the rooms/servercall/group call using connect API +- Support for the audio streaming +- Expose original PSTN number target from incoming call event in call connection properties +- Support for VoIP to PSTN transfer scenario + ## 1.2.0 (2024-04-15) ### Features Added diff --git a/sdk/communication/communication-call-automation/assets.json b/sdk/communication/communication-call-automation/assets.json index 8fc7f9c9d870..3af341d75177 100644 --- a/sdk/communication/communication-call-automation/assets.json +++ b/sdk/communication/communication-call-automation/assets.json @@ -2,5 +2,5 @@ "AssetsRepo": "Azure/azure-sdk-assets", "AssetsRepoPrefixPath": "js", "TagPrefix": "js/communication/communication-call-automation", - "Tag": "js/communication/communication-call-automation_22a209c61b" + "Tag": "js/communication/communication-call-automation_39d9d8f219" } diff --git a/sdk/communication/communication-call-automation/package.json b/sdk/communication/communication-call-automation/package.json index 31eec365ee45..bc50cc1b06ff 100644 --- a/sdk/communication/communication-call-automation/package.json +++ b/sdk/communication/communication-call-automation/package.json @@ -1,6 +1,6 @@ { "name": "@azure/communication-call-automation", - "version": "1.3.0-beta.1", + "version": "1.4.0-beta.1", "description": "Azure client library for Azure Communication Call Automation services", "sdk-type": "client", "main": "dist/index.js", diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.json b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.json index 7460358624e5..a129b71fa7bd 100644 --- a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.json +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.json @@ -17,15 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", "participants": [ { "identifier": { @@ -51,45 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1788-4472-967b-7f2d40b27e35", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:40.4102928+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", - "operationContext": "addParticipantsAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-5109-49a7-a383-10c99342351f", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:37:40.3634744+00:00", + "time": "2024-11-22T12:27:36.5546346+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f" + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", "participants": [ { "identifier": { @@ -115,36 +98,69 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-5109-49a7-a383-10c99342351f", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:40.3947633+00:00", + "time": "2024-11-22T12:27:36.5618329+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "addParticipantsAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:27:36.5821926+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f" + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "version": "2024-11-15-preview", "operationContext": "addParticipantsCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1788-4472-967b-7f2d40b27e35", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:40.4102928+00:00", + "time": "2024-11-22T12:27:36.666799+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35" + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" } ], { @@ -165,36 +181,156 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "version": "2024-11-15-preview", "operationContext": "addParticipantsAnswer2", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:48.6373583+00:00", + "time": "2024-11-22T12:27:43.1155171+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9" + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:43.2993604+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 4, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:43.2676951+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", "type": "Microsoft.Communication.AddParticipantSucceeded", "data": { - "eventSource": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", - "operationContext": "addParticipants", "participant": { "rawId": "sanitized", "kind": "communicationUser", @@ -202,25 +338,30 @@ "id": "sanitized" } }, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1788-4472-967b-7f2d40b27e35", + "version": "2024-11-15-preview", + "operationContext": "addParticipants", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.AddParticipantSucceeded" }, - "time": "2024-03-08T21:37:48.9655424+00:00", + "time": "2024-11-22T12:27:43.2697657+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35" + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", "participants": [ { "identifier": { @@ -256,26 +397,30 @@ "isOnHold": false } ], - "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-5109-49a7-a383-10c99342351f", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:48.9655424+00:00", + "time": "2024-11-22T12:27:43.6258461+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f" + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", "participants": [ { "identifier": { @@ -312,25 +457,29 @@ } ], "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:49.0592372+00:00", + "time": "2024-11-22T12:27:43.2835108+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9" + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", "participants": [ { "identifier": { @@ -366,26 +515,30 @@ "isOnHold": false } ], - "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1788-4472-967b-7f2d40b27e35", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:48.9655424+00:00", + "time": "2024-11-22T12:27:43.8316679+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35" + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35", "participants": [ { "identifier": { @@ -421,26 +574,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1788-4472-967b-7f2d40b27e35", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:49.5593014+00:00", + "time": "2024-11-22T12:27:43.9542261+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1788-4472-967b-7f2d40b27e35" + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9", "participants": [ { "identifier": { @@ -476,26 +633,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-4a48-46d5-9052-4acc50dbd6a9", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:49.6374189+00:00", + "time": "2024-11-22T12:27:43.8316679+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-4a48-46d5-9052-4acc50dbd6a9" + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f", "participants": [ { "identifier": { @@ -531,17 +692,199 @@ "isOnHold": false } ], - "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-5109-49a7-a383-10c99342351f", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:44.1602836+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:44.1649751+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:44.2902481+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-1e7b-4a31-b9af-274485190c7f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:49.5593014+00:00", + "time": "2024-11-22T12:27:44.4815974+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-5109-49a7-a383-10c99342351f" + "subject": "calling/callConnections/21001e80-1e7b-4a31-b9af-274485190c7f" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.txt b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.txt new file mode 100644 index 000000000000..2e0e322b6ba7 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_and_get_call_properties.txt @@ -0,0 +1,15 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVliVy9iT0JMK0s0SVB1QSszcFUxU3BFUVJNQTZPbmJUWmJGNDJjWFp2RDhZRkZFWFpTbVJKcGVUWWJyZi8vWWF5blRoMXI4M2RiWUZWQUVVa2g4ODhNeVNITS83WTBTclBMOG9tU3pPdG1xd3NPdkpqSjdYbDNQM1BrbzdzQ0tsMExVbWNLRVhqQ0VVY2g0aHhSbEVjQnd5cE1LWlVZNnhFd3U1dysxQ0NmQkZnRkJBY0l4TW1BV0tNQ1VveGprbW9PMjg2U1ZaWHVWcGZxTG5weUdLUjUyODZwa2lxTWl1YVU2Y3g0aVpVZ3NaSUpXNHl3UmlwbUdBVUJVa1N4OHczaVhZd3VTcW1DelUxYnM0R3BWSzJ5WFJXcVMyUUNXakFRNStqTlBBcGtQWURGRk9kSUp3R1BNQys0c0FiZ0daWmtoZ3dQRlY1Ylo2NWpOY1Y4T3ZVeGo0YU82Z3FrS3hzV1JuYnJJL1VkS1B6MDV0T1UvNFJybExCZ2F1U1Y3aHFBd01PK3NKcjk3ektWVUF0MUpHSkVZNFRqWmlQQ1JJbURGRW9Jb3BUd1ZKdTlLR3JyS25MaGRVdGJ1YzFkdjhISCtaWjhWQTdONnFtVVhvR1lMT21xV3JaNjZrcTY2WjVOcDAxTUcrMTd0WVBzQ3BkWGM3ZFNPK1I5blRWMHhvdDZxVkJtQ01RU3BCNnFMdGE3NGxxM1hza3ZiUzBEeWJwQmR6WGxOTUErWndMeEdoQVVDUVNnVUpsRkdZaDluRnNlalRzWmFUbmM5emJNUHA3MW9jTkNDdEZJa1JEc0dKdWtrd05DbEJyZ2EzV1FIWHU5aElRbUlKWDZqK1RDVHRPQjBaWWMyOTA4MmVpdW1GMFFIU1JWR09yaXJvcXJhTUxUU0RMYVpjUTJoVkJONHlrejBMUjYzemFMc3l3TEJwVGdPakhqdDU4YmcrenFxcDhHK2g2ZGVLT2RKeVhNUXc4OXZIRVRvcXlqendmdGp4bEh2Wk9MN3pUSytZUkduWXgvQkVuVVBkcjhDUk1kdzNkMzRuNFhTRzZOT2lTd1BYSC9lRllRdGhxSDlmUjlMSFhmc3o3YXBGa3BjY3g1OHk3SGwvMUJyOWNlUVF6TDRLMzd4RkNQQ0pBdC9DaUVIcWc1VHJGMTdTcHZtMTBoV3lkZlRCNzdUU1dmL05XYUE1MDRlUjdZTGxYUSt5UVNUM3pyTkdQN21NanZrSjFOaTBVSE1McDEyWTlZMHRIbjIvYW1UWm9rVm8xbGI0dzgrZSthcG5JRDVjNit1SDYvdjdFcjdGZ3RvalUwRCtLSHg3M1dNNFhxMDFMcXlMSkV0VVlDVFo3dDZNcmp4SWZoemhnUHRtM2VPdTZaZzNFYkpxdlBBdTNoQVZYZFNrUnNFcmNzMjZYYk1RT29la2VOSS9BMVo5RDg5ZEI4OCtoS2JCMkJpbmRBRHlGMVE5dytCS2VSWVRUYjhPM1lvZnc5SHZDd3lackhVTW9GelRDSk9SZWU3eDRsL0N3UzZMQWd3TVd0ZURXd0lXMEE5OVR2K2QyNzN4OGUzMXhPdklJaTVoZ2NQUWpRUmtQR0k3QzZGQTFmVll0b2lDZy80ZHF2cWVhTWo4VW1BV0NoUUVFbndnZmJBYzRTcTFUSzFYWG9KOEowQmJnWUY4L1pjd0RXTUplUTRDd1E4K3k3Y0o5VHgxOGIrODVGV0NzVC9BZnJJSitIeFc1aWswdTV5b3JVQnNhTjczekxKRmtGNTNpcFZINXRMUlpNNXZMZUttOVN1a0gwMVFxczk3U3hCQkh0bXp0dW1wS09PU0Q0NXU3NGZrZG9lTHUzZmxnZUhmemJrRHVCUGF5QW1LY2tVZnBPSGwzTS80bCtyRHVSYit1ZVJpTTFkdC9sS3FPanNYUFNSSGRucVMvTlIrYStIZjZMNS84VG5aRXR2RDBXL0RKL2UycE9FNTBNWjdkbksyVHkrd2tYZ1h2RitIN3hmMTR1bmo3bnViSnI3QWJsaTM4TGhSV2MxWEJsY0c4bTlPZnpub2syRjRjVDBPUjl6YWt0Q2MrNzNlWFJqdmxjQVN1a3B2VDYrT0xmYlIwM214RzRxeXhzSzc5UTAwUUUwRlZ0QWU0bVNROFZSUm1GZmVMOG9VODlxNkc1N2VIK29Yckh4ejJ3NzEyZlR6NmtpV3dpVTF1cWxsWkdHUWU0ZEkrNEFBaWtCUUVMK2Y1M3ZEaVMrWUwxNzluWDlWa2N3aWtPMEM0N1l5dExHVFNzcDRwUkhuZ1VWK09tS1Jjam83a0lKUk15R2dnNlZBT0l5a0dNaGpKNFVqeUk4bVpldytIOG9SSmZ5UWplR001Z3FFVGVVU2t3SEl3bEpUSkVhQU5aY0RrRU9ZS2liZHJiVlpOeTg5elNaZWN3TE5jTHJ1YmZkd3Q3WFF5TVN0SWtJRnIwZFNUQ1ppRFpvbUZXWk9KaW12a2JtUGtMSG1CNWoralBTVmlYd0ZLVmQzY3hYQzRsMW5Tek81U1k1SVl6dFJmb05CeHVjMmQvd0tjdjZTYW1TYmRFTTJTeVNTeEttM1FyTXpueGlJN2g5d0tOYnRVRFFHOFFaQXdBcEFwSEhLTmRtNkFwS08yR29Ib0ZPNWxWN080bHh2YlpkYy9tZW1tcmtpRW9UelNLSVZjRWJHQWF4UXhreUlGbjV3UWhSVjFwWktwb1pSdE03dExyUmNXRm5iNlZLY1Vabm1acGk1VmJ6c2dUWVFVOHN5c1hZSzR6ZWZhVm9md3Q1ZlQ2OU1mZzRLVnQvck0vREFZSDkvLzNPOERQcFJMRUhSQTVtcDBvYUxmU0ROWVZlOW1nU0dQeDZ2NVA2Y2dBN0FXaUVOeTVWaGNiZXFjekxTRlRWWmZiNGNHZVY0dURSalcySVg1QkhNZ1EzVitiNm1mRm85WjgxU0g3NCs0bE5hV2VkN1dHLzlWdmc0ZzI0eWQ3bVhzMEx1ZnMwT3pGOTJUUnV1ekI0N1J6ZXJoWWFUZno4bk44aWtaOTBORTJWOU5QL0FGM1BGaENPc0ZJY21IV0FIZXllcnpSZDVrVjFCV3JwL2NudFZIdGxTSmh0MzI3UG5FeEl2cGZvSU9QMEMwNjZ5WVNJMFdjUFlKVFJCYzJnR1UvVHhHbWtSQys0RW1YQm5RQkg3VmJzbUs2UkJtUHJ2bHRLZ2JWV2lYNWUvYzg4MVN4UlZzcFNPU3FkeWg3ZjhRY3RQeTIxcnlQNVhMWU96VWxvdXFOWFlGWUcyMSsyOXJOM1NFY3hFQUFBPT0iLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNVRucEJla3hEU25WWmJWbHBUMnBGTTAxcVFURk9SRWt6VFVSTmMwbHRWalJqUTBrMlRWUmplVTFFV1hsUFZGRjNUWGwzYVZsWGJIWkphbTlwVWxSS2Exb3hiRTFhTWpWYVYwWldiMWt5T0RWV2JFWk9UbXRvYUV4NlRrdGhSRlo2VERCR2JsRlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTV3BDY2s1WVJtdGxiVTV3Vkd4YVVGRnVXa3BOV0VKTFlteGtibEp0TVhwaVJFWnhWR3BhUjFsVmVHeFZWVWw0V21wb01scFdaR3RUUlc4eVZGVlNRbVJIWkRKTmJtTjNZVlJSTWxacVVsTlViWGMxVG1wc2NtUkhhRTVqZVRGVFZWVjRlbFl5YkV0U1JYQnNXbGRrUjAxV2FFVmlSMXB0V2pJeGRsSllWblJXV0dSM1VWVTFlV1ZzVm1GTk1HUllZV3hPWVdSV1pEUlZSM1IwVFRCYVUxSlVUVEZhVlVaWFZEQktRbU15ZHpWVGJsSllWVzVHUkZwSWFGTldiR2d5WVZjMWNtSllaR3BrTUVwWFVXdGtlVkZYZEZoU1JUVjZVbGRzU2xWWWJGSmpNbEpyVlVac2FWZElaekZPVlhSclpWZFNkVmRHU210VU1uUlZWbGRvUmxkdVNuTldhMnQ0VmtoQ2VsVnRNV2xXYWxaSlQxWnNWVTR4VG5GT1dFcHhUakJrTmsxclZteFZNakZwVkdzNWMwOUlTazVQVmpsT1ZXcFNNVll6YURKUFZYUllWMFpHZDA5SVRraFplbVJtV214V2RrNVVXbGxUYTNCUllucG9WMUZ0VWtkYWJWazFXVEZhTldFd2FGZFdSVFZOVjFWa1Rsa3hUbk5rTTFJMlRXNUNlRlV4VmtwaFV6RkRZbFJhZEZwSVZsQmhiR3hZV1c1Sk1XSnRWakJSTTJoeVRUTndkRlpIVWxKTVZXeEVURlJWTWxVemJFMVhiRGx0V2pCb1NHTkVTa3hqYkZwWFZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVa3pZMGRSTW1Nd1NtMVdSMUo1V0RKb1VGZHNUWHBPUlZKYVRWaFNObEZYZEZKVE1VNHdZVVJTUlZNeWFIcGpNR2hzVjFaR1ZHRkVRbnBKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1dwa1JWWlhPWHBTTUd4M1VqSjBURlJIV25OaFJHaDVVVEkxVEZGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRVUwU1c0d0xuSmtSRTR3Tm5oM05XdHdWM2RvVjAxRFgwbEpSbTFDVWtGbFlYaE5VbUV6YTJwbGRYWmlNRXhUVm5GMVRXOUNhbEJZTTBKNWRXMVJibEV3Y2xkck4zUkNWMWRETVdVNGNWOXpTVEZZYUhsbWQxRktRMmQwWjFKVlUxYzNNVlo1VldvMU5UbExTM3B1ZUdwUWF6QXlVM0V5Vm5NMlIyeExZME5XZEVVMWJUVjROSFY0TmxOT1dtdG9hVzVKVVdwelZFb3laM1ZaYUhFNGVWbHpaVjlCVjFONGRWQlphVWw0Y1VGUlYwcEJiMmg1YmtSSWJVaDFhWGhXV0hkdVgzZFViVEJ2TFhGalVXRkVaMWc0V1dnM1ZUSmlRVkpXTkVKdWVXRlFRMU5HVm1sS01uVnJZVEptTkdneFVGVk1ZbU5GVlZWTlRGWjBSMHBuVEVKZlJFOVJibVYwT1ZGcU5FdHlhRFl6V0ZwdWRrNVlTVkpCTFZSM2VYRTVhMk5sV205MWJsOVplRFpSTlMxSFRqQkRibTA0VURVd1ExUklYMlpGU0U5amRVVmFXVGhHV1dWeU5GcG9NekZVUzB0bk5FeDBiQzFhVEV4SmR5SXNJblJ6SWpveE56SXdOVFExTXpZekxDSmlJam9pTWpOeFEyVlhhRkZ0V1dvMldsOVVhV2RTWjFwMU0zRlJjMEpaVWpWSVlUSjZaek5xZEVjd1NYcE1jeUlzSW01dmJtTmxJam9pTURKa05ETTRPVFJrTjJObE5EVXpZMkpoTW1NNFlUSXlObUV4T1dZeE56a2lMQ0pqYm1ZaU9uc2lhbmRySWpwN0ltdHBaQ0k2SWtwWWJWSkxRMWt5WkdsdE1YVnJVVTU0UjFrMFQwdFdaV0oyZVhobVpqRm5VMDl0YWpaTFZIQlRkV3NpTENKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lJd2F6VnhaSHBqYVU1V1QwSjJTVEZ3U201WFowWnRjMnd4YWs0MlJtRk1aVkZDTVdZNGRtVlhaRWhLTmsxRVFYUm5kakozTUdrME5sWTBVazVzT1RZNWEzUm9UWE10VWxGTWMxZHBTa1JLWldWblJqRllSR3htWm1kdGIwVjFiVlYzY0VGT2NucFZXak5IVjJwVFduVlhlRkJyYlROR1VrVXpOV1ZCVms5Q1FYTnNPVXAwVjFKeFEyUjRVbFpZZG1sdWEyMTNZM2RDVmtKSGNrRnJWMFJPYzBWcFNWRjVVWE5rWkZCWllsaDROVFZMWkhsa2JsaFNaRTlyVkZWb1JWcHliRlpKTVZSd2MxSnRZbFkxU0RsWlZEZFRhalZ5YWpkSGVqSkZaVk50WWs1UGJEaHlUVGxmVFZJMGRWZDRkamxMVjFoUmNEaHpSMk0zWDJaVmJ6VTJXRXBLVUc4NFZrSmtSbVptT1dOV2VXdElWbFJPVEZsSFRXTlRiSGQwZWpKd2NWTlZTV2t0UW0wMmJXUjFUMnBaVjJKeU5XNWxkRU40YXpONmJWUmtVUzFKUXkwMU5sTjVURnBmWm1kSVIzQXlTM0pXVmxFaWZYMTkuRVNoRHcwQ2pSRmdrYXotYmMwM0hybkdjNFAyZGhvSVNpWkRrRnZ5c0FxY0ZNYVpiVDM2eTdEcjR5eVUzNUx4dXZGV0Z5MUFMdUdDSkU0NGNRVjVSX2lrcU9CR2t2d0RDd0M5TXpsMnFxbTB3UjY0dFlmVnU4eDhMenQwVE9hZWhhQ2NqYWVNaklvaEtFdnpmaTFUc2plQ1lKUFRpdGx1cDNHVUt6dXBVYkZCUkxFMGw3bjhfS29yeWhUN3JJdVRFV1JJS05VS01lSlN5OWIxSndtMkNOUVhiOXc5cUZXVHV1NlhOZ2ZrNXhJSnVwb1gzdXpsQnktc001Ty16MGlmTUtnYzVfdi1sRC1CRmhTd0U0NV8wYzgyZVhkQllQc3FONE5BR0kwU1NEc2h6X01rZUJRQ3BRYkVRTHB2dFFxOW40Q19KZjVsZjNMVWZlUFFlV2d5QjN3In0.","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae"} +[{"id":"7df2abc8-eab8-4c50-b1a3-66ca59ae0b28","source":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"addParticipantsAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-9cbc-43b9-91d2-e63505986ab1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:05.2648449+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1"}] +[{"id":"d7d79e1e-736b-489f-bc80-9a14e200cb41","source":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-9cbc-43b9-91d2-e63505986ab1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:05.3064821+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1"}] +[{"id":"4e0b1e3f-c040-42d8-b871-05b76eb50ee3","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:05.3276837+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +[{"id":"33e46d69-5447-4e78-9ec7-4dd0c30fd7d8","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"addParticipantsCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:05.3276837+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +[{"id":"4f825423-4023-4d78-a58c-fe531b8d7883","source":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-9cbc-43b9-91d2-e63505986ab1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:10.9775744+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1"}] +[{"id":"9f86df95-421a-4ee2-b95a-cf927dbc7300","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:11.0339355+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVd5MjdqTmhUOUZ5MjZHbG9rUlpHU2dhQklNaWhxQkU2TnhFR0wyUVI4eWVaWWxsU1NkdUlKOHUrOWtoM0hhTEpJWCtoNFlVTVBubnZ1NGVHNWZrcTByT3ZyTnJyS2FSbGQyeVRqcDZUeTdici9kU1laSjhWWTZqQW15a2hKVlluS0hBdkVja2FSVXB3aEtSU2xHbU5aR0hhUGh3OGxLQ3M0UnB4Z2hhd3dIREhHQ2tveFZrVG81Rk5pWE9ocXVidVdhNXVNbTAxZGYwcHNZN3JXTlhIU1Z5eHpLMlJCRlpLbVgwd3dSbElSakVwdWpGSXNzMGIzTUxWc0ZodTVzUDJhUFVvbmZYVGFkZklBWkRubHVjaHlWUEdNQXVtTUkwVzFRYmppT2NlWnpJRTNBQzJkTVJZYXIyUWRMS0Q0dHJNKzdpN2tZZy84L0NtSjdUL1hRM0FyL3F4SElUK2d4eDRHVkhqbjYrWHpJVDJ5MG5JdHBVYVZLaGhpaFJHb3JLb1NFWnBWd2xaRmx1WGtyUjdlaG5iajlZQ2JmS1R2NUgwTmE5ZXNRaStqakZIcUpZQXRZK3pDT0UxbDUwWlY3UmJMQ09zZWQ2T3cyblYycE50MS95VGQwbFIzcWRab0V4NHN3am1DbHd5U3F6RFMrdVJWcmRNdFNhdldyNnhKZVo1cG1sT09zand2RUtPY29MSXdCUkxTU3N3RXpyQ3lxYUEwZFNRbGxJbDB6K2xIZHdZK2c3MGlKYUlDK2xoYjQrUjVBNFU5OE5VYXlLNzdMUU1LQzlBbGZGOU52TEI2MDRhM1g2Mk8zeGZaUGFjM1ZEZW1tM3ZaaEs3MVBXRzRCTG81SFJGQ1J3VWZpWEtjTVZHa3lmTmhjeTdiSnRvbXZsaStqNjZwZSt5M0svb051QmNBcnV5dXQxMEFaU0RnaHFza1hIMXJHUTl6ZTZNcnB5NHV3dnJYdXkvbloyZkFBSTdNeXZhMTI4bDBYWWo1RmFZL3phYlhrOThlbHJTNFdzQTdVTnREYlEvOEFYQzI5N3F6ZzdsZHVEazhPcS9yOXNHYVBaSG5QYlh6cnFzUFFUc0hHYUVJRk5TYkVOdjEwTWpqc1JFWFBqdFovN0tKeC9VTDMyNjZ5NldFTzA5SlhIb3J6ZjVJbHVQTzI2MnpEMGhKcVFUbUd1RUM5R2RHRVNSWkJkdFJxWXBRV1dLdDFPRHFFRTZDQXJCMTIyeXREd094U2JOMThUZ0xUcC8wRkgxYjE4TmgrRXRXQXBDRG1laUptZUR1cVozZ01pMi9rcWoxMVNySDZQWnh0ZnFzZjErVDI0ZWpTektCS1B2Qm52R3N5SE1tQk13RzhGUW1hQWx0dVREZDFOSE5JUFYyTDl2dndvVnZwZEV5eEdPZzdZV0V1VGRwWEhReXR2NC9HWE52eTh4ZTgvaC9ISy8vMWpqWjMvekE4SFRoNXpiRWVvakxnNWVOVlp2RjhlaUN5MENtMndqNGM5ZXpUaWltRElFU3VKd1RNU1o4ak10UkpuaVdFZkdsUHpHOXFuMHZraFdWMVlWRmxsQ0RtT0FjL2lya0NtbFNGanJqbXVUU3d2c1RPSlNBdnJEeDJpN2d6ODdnNWhtbzRocWdlYUErblUyYUVHV2o3YTMxVzZmdG5YY25QbGRnWUN0UnprZnI3dFcxWTNBZ28ra1FSZEM3aGlaYkQ3RUlSVi94QnFydnJ4OU51NXUydHZlVDYzdld4OTkwTnRzb2lJaEpONWVMdTlESFIzSitlZHVQbkw4enpJK3hjUm91ejM4QU8rRURKdllKQUFBPSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE9WRkY0VDBSWmVreERTblZaYlZscFQycEZNMDFxUVRGT1JFVTBUbXBOYzBsdFZqUmpRMGsyVFZSamVVMUVXWGxQUkZVeVRYbDNhVmxYYkhaSmFtOXBVbFJLYTFveGJFOWhhMnQyVFRCNGMyRldWWGRqYXpCM1UyMVdiMkl6V1RCTU1HZ3lVbFZPTTFGVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXcENjazVZUm10bGJVNXdWR3hhVUZGdVdrcE5XRUpMWW14a2JsSnRNWHBpUkVaeFZHcGFSMWxWZUd4VlZVbDRXbXBvTWxwV1pHdFRSVzh5VkZWU1FtUkhaREpOYm1OM1lWUlJNbFpxVWxOVWJYYzFUbXBzY21SSGFFNWplVEZUVlZWNGVsWXliRXRTUlhCc1dsZGtSMDFXYUVWaVIxcHRXakl4ZGxKWVZuUldXR1IzVVZVMWVXVnNWbUZOTUdSWVlXeE9ZV1JXWkRSVlIzUjBUVEJhVTFKVVRURmFWVVpYVkRCS1FtTXlkelZUYmxKWVZXNUdSRnBJYUZOV2JHZ3lZVmMxY21KWVpHcGtNRXBYVVd0a2VWRlhkRmhTUlRWNlVsZHNTbFZZYkZKak1sSnJWVVpzYVZkSVp6Rk9WWFJyWlZkU2RWZEdTbXRVTW5SVlZsZG9SbGR1U25OV2EydDRWa2hDZWxWdE1XbFdhbFpKVDFac1ZVNHhUbkZPV0VweFRqQmtOazFyVm14Vk1qRnBWR3M1YzA5SVNrNVBWamxPVldwU01WWXphREpQVlhSWVYwWkdkMDlJVGtoWmVtUm1XbXhXZGs1VVdsbFRhM0JSWW5wb1YxRnRVa2RhYlZrMVdURmFOV0V3YUZkV1JUVk5WMVZrVGxreFRuTmtNMUkyVFc1Q2VGVXhWa3BoVXpGRFlsUmFkRnBJVmxCaGJHeFlXVzVKTVdKdFZqQlJNMmh5VFROd2RGWkhVbEpNVld4RVRGUlZNbFV6YkUxWGJEbHRXakJvU0dORVNreGpiRnBYVlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVrelkwZFJNbU13U20xV1IxSjVXREpvVUZkc1RYcE9SVkphVFZoU05sRlhkRkpUTVU0d1lVUlNSVk15YUhwak1HaHNWMVpHVkdGRVFucEpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzA1TkdKdFJtWlphbVJ5WlVWV2VFNXRkR3haTVZVellXdzRlRkZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJGbHBabEV1YjNGR1duTm5TSGxvZEVKcE1UUklXV1l0U1Y5RWRqUkNjR3BLVm5oak1WQnZkVGxVWkRSdFlsSnlXbkpTUzJaYVIwNVhZMUI0ZW5OMlFqQmlhMWR2TTJJdFdETjZaVXAyYmpOWVdHUmlWalpRWjFkc1pXbFlkVU0wWDNsblZFcFRNV28wWnpWUWJrTnBNakZYTTBKU1JETjNjWEpZVVVaeVVEbEhRbEpUTWxsck9EUkZPRWhzY1dZM04yUnVUamMwYldaaVZETkdZMVpWVkVSaVowMWxSbEpSTW1ORlpFaEJUMWg2VmxKM01scGtaMmgzVDE5aFlrbHdiMU5TWTNscFJsVTROblpLVEhGaU5uTkZRVWhqWkRsVFRpMXhUWEZQUTBoeWR6VXdNRFE0Y0hkMGNrczVZbU13WmxKSFUyNXROekpVYTJSaFoxOUdNMG8yUVZoNlNUZEdkREphYkhKeVExbzBNa0pITW5oRE5YaGxNMjl3YzJGelZqWnZaVzFOYkRNelRrUlRlRXhuZDFsMFIxcFJOVWw2YWxsUFlXVm5aMUZuV0VzNWNHbDVOSGRFZW5sQlRuazRabkJrYjNWcGFYWnRjRWxuSWl3aWRITWlPakUzTWpBMU5EVXpOekVzSW1JaU9pSlljMDVOWDJKSkxUWjVZVFZEVDBaV1RVSTVWRmRRVEVrek1GVXpObmhaWjNCSFJIWk1aelZhUTNJNElpd2libTl1WTJVaU9pSTNOelZqWVRRNU16UXpOMk0wWXpObU9XVmtaREk1WWpSbU1tWTNaVFJoTnlJc0ltTnVaaUk2ZXlKcWQyc2lPbnNpYTJsa0lqb2lTbGh0VWt0RFdUSmthVzB4ZFd0UlRuaEhXVFJQUzFabFluWjVlR1ptTVdkVFQyMXFOa3RVY0ZOMWF5SXNJbVVpT2lKQlVVRkNJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJakJyTlhGa2VtTnBUbFpQUW5aSk1YQktibGRuUm0xemJERnFUalpHWVV4bFVVSXhaamgyWlZka1NFbzJUVVJCZEdkMk1uY3dhVFEyVmpSU1RtdzVOamxyZEdoTmN5MVNVVXh6VjJsS1JFcGxaV2RHTVZoRWJHWm1aMjF2UlhWdFZYZHdRVTV5ZWxWYU0wZFhhbE5hZFZkNFVHdHRNMFpTUlRNMVpVRldUMEpCYzJ3NVNuUlhVbkZEWkhoU1ZsaDJhVzVyYlhkamQwSldRa2R5UVd0WFJFNXpSV2xKVVhsUmMyUmtVRmxpV0hnMU5VdGtlV1J1V0ZKa1QydFVWV2hGV25Kc1Zra3hWSEJ6VW0xaVZqVklPVmxVTjFOcU5YSnFOMGQ2TWtWbFUyMWlUazlzT0hKTk9WOU5ValIxVjNoMk9VdFhXRkZ3T0hOSFl6ZGZabFZ2TlRaWVNrcFFiemhXUW1SR1ptWTVZMVo1YTBoV1ZFNU1XVWROWTFOc2QzUjZNbkJ4VTFWSmFTMUNiVFp0WkhWUGFsbFhZbkkxYm1WMFEzaHJNM3B0VkdSUkxVbERMVFUyVTNsTVdsOW1aMGhIY0RKTGNsWldVU0o5ZlgwLlV5X3RnXzNhRUVhQWFCNXM5WVJwQ0NlaWxJMjJNV0VEQnhwb2FRSkk1Z1oyWm11UF9ZTFhOYjN3ZGl4cW9FcUxwTVJyNWVMb0h2Z3BiYjFzUzFXLW1VTGJoNzlNd2FWQlFtUERTRUQ2NGIwV0hWYnMtbW5tcDYtQkZobVVqTlRqRE13V2VWYWZHWS05Y19kX0wtZkFCRkk2WEtNRnc5aVpySWVwcHNJRXNlbmhWUW0yWE96TmE0dTlmNTVwMS1SZ0V1NjZuelkxNVNoenJuWlNwaXlieHhZMWRQSW5qcF8yT3dBQkpvNFBCdkZ0YmRjV0pRLXhRUXgyVzBlSXp6OFUwQWI2TE5WNjBvemhuMTlOU25hVXY2MlN4T2EzVDhRWm9YMTNVeUpPS3ZabWZMd21pcDJpTzRnak5idGFnU2NzdmNUT202a3d5YzNwT095VXdoR09MUSJ9.","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae"} +[{"id":"839d42a7-ccd3-4ad2-89b4-a9de60d06f62","source":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"addParticipantsAnswer2","version":"2024-06-15-preview","callConnectionId":"31002180-c77c-4ef4-8924-c65a04bb59b3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:13.0521812+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3"}] +[{"id":"9c8be251-b952-40e6-b332-d0d215896130","source":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-9cbc-43b9-91d2-e63505986ab1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.3250379+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1"}] +[{"id":"34917c07-77f1-44ca-967c-d169a7ffbec4","source":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-c77c-4ef4-8924-c65a04bb59b3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.3438053+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3"}] +[{"id":"430e63b1-8a01-4949-a346-fd97374acae3","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.3250379+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +[{"id":"ce7cf92b-bf6d-4ccc-a664-278b8a650ad8","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.AddParticipantSucceeded","data":{"operationContext":"addParticipants","participant":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.AddParticipantSucceeded"},"time":"2024-07-09T17:16:13.3250379+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +[{"id":"c24d60ed-503e-4aab-9fe5-5e3ac7f79632","source":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":8,"version":"2024-06-15-preview","callConnectionId":"31002180-c77c-4ef4-8924-c65a04bb59b3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.9155757+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-c77c-4ef4-8924-c65a04bb59b3"}] +[{"id":"bf0eb2ea-8b4f-4c1f-bf52-590401aa5b21","source":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":6,"version":"2024-06-15-preview","callConnectionId":"31002180-9cbc-43b9-91d2-e63505986ab1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.9025505+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-9cbc-43b9-91d2-e63505986ab1"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.json b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.json index 533bf983ca4f..52e3a5b9a07f 100644 --- a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.json +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.json @@ -17,35 +17,62 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871", - "type": "Microsoft.Communication.CallConnected", + "source": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d", + "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871", - "operationContext": "cancelAddCreateAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-b2ae-42ed-93d9-260c55a41871", + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-6b10-4863-aeae-3ba70e818d0d", "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:23.8905626+00:00", + "time": "2024-11-22T12:28:12.8733246+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871" + "subject": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871", + "source": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871", "participants": [ { "identifier": { @@ -71,25 +98,77 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-b2ae-42ed-93d9-260c55a41871", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-11e8-46c1-a8ce-4c8c16066bd9", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:23.9061909+00:00", + "time": "2024-11-22T12:28:12.878437+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "cancelAddCreateAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-11e8-46c1-a8ce-4c8c16066bd9", + "serverCallId": "sanitized", + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:12.9140278+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-b2ae-42ed-93d9-260c55a41871" + "subject": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b", + "source": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "cancelAddCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-6b10-4863-aeae-3ba70e818d0d", + "serverCallId": "sanitized", + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:13.0124221+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b", "participants": [ { "identifier": { @@ -114,57 +193,95 @@ "isOnHold": false } ], - "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-71de-46ae-8a08-62b2325ab09b", + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-6b10-4863-aeae-3ba70e818d0d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:23.9531188+00:00", + "time": "2024-11-22T12:28:16.6084485+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b" + "subject": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b", - "type": "Microsoft.Communication.CallConnected", + "source": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9", + "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b", - "operationContext": "cancelAddCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-71de-46ae-8a08-62b2325ab09b", + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-11e8-46c1-a8ce-4c8c16066bd9", "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:23.9531188+00:00", + "time": "2024-11-22T12:28:16.6084485+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b" + "subject": "calling/callConnections/21001e80-11e8-46c1-a8ce-4c8c16066bd9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b", + "source": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d", "type": "Microsoft.Communication.CancelAddParticipantSucceeded", "data": { - "invitationId": "313f266e-c54a-4843-88a6-84a66b1b8f57", - "operationContext": "cancelAdd", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-71de-46ae-8a08-62b2325ab09b", + "invitationId": "fdc13fa2-81fc-43f2-8927-22eaa8ed1690", + "version": "2024-11-15-preview", + "operationContext": "cancelOp", + "resultInformation": { + "code": 200, + "subCode": 5300, + "message": "addParticipants failed for participant 8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000023-f3b9-c8a1-2c8a-08482200b267. Underlying reason: The conversation has ended. DiagCode: 0#5300.@" + }, + "callConnectionId": "21001e80-6b10-4863-aeae-3ba70e818d0d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7a8c53c0-6cdc-4dcc-8ef6-fc3835debd43", "publicEventType": "Microsoft.Communication.CancelAddParticipantSucceeded" }, - "time": "2024-03-08T21:38:28.7198819+00:00", + "time": "2024-11-22T12:28:17.6392652+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-71de-46ae-8a08-62b2325ab09b" + "subject": "calling/callConnections/21001e80-6b10-4863-aeae-3ba70e818d0d" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.txt b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.txt new file mode 100644 index 000000000000..ec923149e6ff --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Add_a_participant_cancels_add_participant_request.txt @@ -0,0 +1,9 @@ +[{"id":"d873952d-a89a-4804-a9a0-369517c8c428","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:38.0147512+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVliVy9iT0JMK0s0SVAyQS9YMGlZcFNxSUlHQWZIOGFYWmJGNmFsKzcyWUZ4QVVaVE1WcFpVU241cnQvOTloN0tUdUhXdjdTMjJ3Q3FBSXBMRFo1NFpjc2daZitncFdSUVhWV3N5bzJScnFySW5QdlF5VzgzZGY1UDJSSThMcVJwQmtsUkttc1FvRG5DRVdNQW9TcEtRSVJrbGxDcU1KVS9aUGU0ZVNwRFBRNHd5WC9sSTYxUWh4aGluRk9NRUp2ZWU5MUxUMUlYY1hNaTU3b2x5VVJUUGU3cE02OHFVN2FuVEdDWko3Q2N5Um9IV0dXSThURkdjeUJBcGxpU000RFNTTEFDWVFwYjVRdWJhemRtaTFOSzJScGxhN29BU0J1cWxVa2p5R0VnckRueWxTbEVrQStEdUp5d0xLQUROVEpwcU1EeVRSYU9mdU54dWF1RFhhN1JkYWp1cWE1Q3NiVlZyMjI2T1pMN1YrZkY1cjYzK0FsZXgwRWRKa0NSSU1sL2lGT000d2QvanFpME14dWdMcjRmbnUxeEZFaEw2S1hpSjg0UWpSbjBmeWN4bmlHS2d4WFNxV1JZZnVzcnFwbHBZcFhjUTM3YjdmL2l3TU9YYnhybFJ0cTFVTXdDYnRXM2RpTUZBMXFhZkZTYWZ0VEJ2dmVrM2IyRlYrcXFhdTVIQmtnNVVQWUFGWGpRcmpYQ0FRQ2hGOG0zVFYycFBWS25Ca2d5eXlyN1Y2VURIT2doQ0hLSUlZN0EwcGd4eEdrUW9ZcHdIR1lVOWxxUURHZzBNR2ZnQkhtd1ovY3NNQ1Vhd1VpUkdOQUlyNWpvMWNsU0NXZ3RzbFFLcWM3bTFMZ2V2Tkg4bkV4NDRIUmhoOVJ1dDJyOFQxUzJqQTZLTHRMNjFzbXpxeWpxNjBBU3lBZTBUUXZzODdFZXg4Rm5FQjcyUHU0VVpWMldyU3hEOTBGUGJ6MTB3eTdvdWRnZmRvRWxkU0NkRmxjREFjb2luZGxwV1ErVDVNWTk5NW1IdjlNSTd2V0llb1ZFZnd4OXhBczJ3QVUvQ2ROZFF3d2NSdjg5NVA0UTNkZjNKY0h3cnlDNzhYRWM3eEY3M01SL0tSV29xajhVQjU5NzE3ZFZnOU9yS0k1aDVNYng5anhEaUVRNjZ1UmRIMEFNdDE4bS9wazBPYmF0cVpCdnpYdSsxczBUODAxdWpPZENGeVBmQWNxK0JzME9remN5eldpM2R4MVo4alJxVGx4S0NNUC9hckNkczRlakgyN1pSR2kweUszUHhURWZrcWE5ZXBXSm1qeWJxTEdYeDBYTHk2cHhWaG9YcDhxUTkzV001WDZ5M0xTWEwxS1N5MVFKczl1Nk9yenhLZkJ4aE9LZkp2c1U3MTdVYklHYXpZdTFabWFZV1hOV25oTHRWd3A1MTIyUXJkNGhOOTdDREdIejlPWGI4bmRqeDU5Z1VlRHVUcEdvQm44TDZoemo2SEo4RTlMdndRZTRRbi81UWZOaG9uVzhJRFRpTk1Za0Nyd3V4b0UrQ3FBL2JFV0pzNnh5cjRVNTZBTjlUditkNDcvejI3dnJpOUJpVVIzNUVZMFlpbnpHTW95RGl3YUZtK3FTWngyRkkvN3ptK0ZGekdFWFVaNXo0c1IvQUptSnhISDJ1R0dLcGMya3Rtd2EwZ3pBb3grR1RkdFluMEFvWS94NzFBZlVQZHdYYnJkb1BWQkhzYlR5bkFaemd3MUwvcFJyb0Q5RlF5RVFYWWk1TmlicHpjZHM3TjZuWW5TUnJsS3kwTFBMS21uWTJGOGxLZWJWVWIzVmJTMk85bFU3Z0VObVJ0WnU2clNEQVI1T2IrL0g1UGFIOC9zWDVhSHgvODJKRTdqbjJUQWtIbkJidGE1YXQ3MTV5ZnQ3T3plRDQ1czA3ZnR5K3ZzdjhpLytVcjYyNTN1akZQTXF6RjcvVC8vcmtkL0pBWkFkUHZ3WC9ybHJlMGF2Mk5PREpxM1k1bmx3ZUxTSThlbloxN2Q5ZVR0SkpRTjQvdTl5Y1AwczcrSWR6c0o3TEd1NEw1dDJjL25JMklPSHUxbmdjaXIyVGlOSUIvN3pmM1JqZGxNTVJ1RWR1VHE4bkYvdG8yYnpkamlTbXRiQ3N3ME5OY0I2Q3FuZ1BjRHVKZTdJczlUb1psdFVuOHRpN0dwL2ZIZXJucm45MDJBK3hmRDA1L3BJbHNJVjFvZXRaVldxa2wzQmpIM0FBRWNnSXdrL24rZDc0NGt2bWM5ZS9aMS9kbWprY29RK0FjTlZwVzF0SW8wVXprNGdHb2NlcENJaVljQkZGNHZoSWpDTVJCSUpFSWlZaURvUi9MTVpjOEZpd3dEWEhFeEZQQkIrTGlBaDJKTml4OEx1aEVHU0lHUDFiMEZBRWtlczhIb3ZKUkFTanJXSzlianQrbnN1NHhCU2UxV3JWMys3amZtWHo2VlN2SVRzR3JtWGJUS2RnRHBxbEZtWk5wekpwa0x1S2tiUGtFelQvQ2UweEMvc0tVQ2FiOWo2QjJGNlp0SjNkWjFBakpSQlQvNEFxeHlVMjkvNG40TUduVkkxdXN5MVJrMDZucVpWWmkyWlZNZGNXMlRra1ZxaDl5Tk1Rd0dzRTJTSUE2ZEloTndnL2huWFRXSVZBTkljNzJSVXM3dVhHSGxMclgzVGVGUlZTeWd3dURSK2xNbVZRU0tvUThrY2lVUlp6aFgyZGhUUk9ZWTV1b0k3dDBycExwUllXRmpaL0xGSkt2YnJNTXBlbmR4MlFJMEwrZUtZM0xqdmNKWE5kcTZkK1BubFdtNU9USUZnZXZjcG5wZG5neWE4dmgwUEFoMW9KRGgyUW1mdlZVZlo2OU51dloweTlQcnA4QTVIKzBvNUFCbUF0RUlmTXlyRzQyaFk1Um5kVmpXbXVkME9qb3FoV0dneHI3VUovaERtUW5qcS9kOVJQeTZWcEg0dncvUkdYejlxcUtMcGk0LzlLMWdGa2w2N1R2WFFkZXZjVGRtZ096bjUrajAvd3UyeDhKKy95TU14UEp1RjluVDltNG42RUtQdEpEME9md3prZlJiQmVjQ1M1bXgyOFk1cnpSZEdhSzZncE40OXVOODJScldTcVlMYzllVDdWeVNMZno4N2gxNGR1blNPcGNLUnBpQ0R6Z09LUjhBQWx5bFVNUHZaOVJUbHNnZ1EwZ1YrVlc3SXlIOFBNSjdlY2xrMHJTK1ZTL0FmM2ZMTk9jZFZhNVlnWVdUaTAvVjlCYmpwK08wditWSzBNeHVhMld0U2RzV3NBNjByZFB3RDhYUk1GY0JFQUFBPT0iLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNVRucEJla3hEU25WWmJWbHBUMnBGTTAxcVFURk9SRWt6VFVSTmMwbHRWalJqUTBrMlRWUmplVTFFV1hsUFZGRjNUWGwzYVZsWGJIWkphbTlwVWxSS2Exb3hiRTFhTWpWYVYwWldiMWt5T0RWV2JFWk9UbXRvYUV4NlRrdGhSRlo2VERCR2JsRlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTV3BDY2s1WVJtdGxiVTV3Vkd4YVVGRnVXa3BOV0VKTFlteGtibEp0TVhwaVJFWnhWR3BhUjFsVmVHeFZWVWw0V21wb01scFdaR3RUUlc4eVZGVlNRbVJIWkRKTmJtTjNZVlJSTWxacVVsTlViWGMxVG1wc2NtUkhhRTVqZVRGVFZWVjRlbFl5YkV0U1JYQnNXbGRrUjAxV2FFVmlSMXB0V2pJeGRsSllWblJXV0dSM1VWVTFlV1ZzVm1GTk1HUllZV3hPWVdSV1pEUlZSM1IwVFRCYVUxSlVUVEZhVlVaWFZEQktRbU15ZHpWVGJsSllWVzVHUkZwSWFGTldiR2d5WVZjMWNtSllaR3BrTUVwWFVXdGtlVkZYZEZoU1JUVjZVbGRzU2xWWWJGSmpNbEpyVlVac2FWZElaekZPVlhSclpWZFNkVmRHU210VU1uUlZWbGRvUmxkdVNuTldhMnQ0VmtoQ2VsVnRNV2xXYWxaSlQxWnNWVTR4VG5GT1dFcHhUakJrTmsxclZteFZNakZwVkdzNWMwOUlTazVQVmpsT1ZXcFNNVll6YURKUFZYUllWMFpHZDA5SVRraFplbVJtV214V2RrNVVXbGxUYTNCUllucG9WMUZ0VWtkYWJWazFXVEZhTldFd2FGZFdSVFZOVjFWa1Rsa3hUbk5rTTFJMlRXNUNlRlV4VmtwaFV6RkRZbFJhZEZwSVZsQmhiR3hZV1c1Sk1XSnRWakJSTTJoeVRUTndkRlpIVWxKTVZXeEVURlJWTWxVemJFMVhiRGx0V2pCb1NHTkVTa3hqYkZwWFZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVa3pZMGRSTW1Nd1NtMVdSMUo1V0RKb1VGZHNUWHBPUlZKYVRWaFNObEZYZEZKVE1VNHdZVVJTUlZNeWFIcGpNR2hzVjFaR1ZHRkVRbnBKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1dwa1JWWlhPWHBTTUd4M1VqSjBURlJIV25OaFJHaDVVVEkxVEZGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRVUwU1c0d0xuSmtSRTR3Tm5oM05XdHdWM2RvVjAxRFgwbEpSbTFDVWtGbFlYaE5VbUV6YTJwbGRYWmlNRXhUVm5GMVRXOUNhbEJZTTBKNWRXMVJibEV3Y2xkck4zUkNWMWRETVdVNGNWOXpTVEZZYUhsbWQxRktRMmQwWjFKVlUxYzNNVlo1VldvMU5UbExTM3B1ZUdwUWF6QXlVM0V5Vm5NMlIyeExZME5XZEVVMWJUVjROSFY0TmxOT1dtdG9hVzVKVVdwelZFb3laM1ZaYUhFNGVWbHpaVjlCVjFONGRWQlphVWw0Y1VGUlYwcEJiMmg1YmtSSWJVaDFhWGhXV0hkdVgzZFViVEJ2TFhGalVXRkVaMWc0V1dnM1ZUSmlRVkpXTkVKdWVXRlFRMU5HVm1sS01uVnJZVEptTkdneFVGVk1ZbU5GVlZWTlRGWjBSMHBuVEVKZlJFOVJibVYwT1ZGcU5FdHlhRFl6V0ZwdWRrNVlTVkpCTFZSM2VYRTVhMk5sV205MWJsOVplRFpSTlMxSFRqQkRibTA0VURVd1ExUklYMlpGU0U5amRVVmFXVGhHV1dWeU5GcG9NekZVUzB0bk5FeDBiQzFhVEV4SmR5SXNJblJ6SWpveE56SXdOVFExTkRBeExDSmlJam9pWVRSd1EzVjFMVWhtZFVvemJrZHlXazFUWDBrM1VIUkhNVkJzWkVOMWFGUnFiRU54Uld4VVdXRlRSU0lzSW01dmJtTmxJam9pTWpRek5tVTNNMlkzTVdVd05HUXpaR0l4WXpFNFlqa3lORE15T1RBNU1ESWlMQ0pqYm1ZaU9uc2lhbmRySWpwN0ltdHBaQ0k2SWtwWWJWSkxRMWt5WkdsdE1YVnJVVTU0UjFrMFQwdFdaV0oyZVhobVpqRm5VMDl0YWpaTFZIQlRkV3NpTENKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lJd2F6VnhaSHBqYVU1V1QwSjJTVEZ3U201WFowWnRjMnd4YWs0MlJtRk1aVkZDTVdZNGRtVlhaRWhLTmsxRVFYUm5kakozTUdrME5sWTBVazVzT1RZNWEzUm9UWE10VWxGTWMxZHBTa1JLWldWblJqRllSR3htWm1kdGIwVjFiVlYzY0VGT2NucFZXak5IVjJwVFduVlhlRkJyYlROR1VrVXpOV1ZCVms5Q1FYTnNPVXAwVjFKeFEyUjRVbFpZZG1sdWEyMTNZM2RDVmtKSGNrRnJWMFJPYzBWcFNWRjVVWE5rWkZCWllsaDROVFZMWkhsa2JsaFNaRTlyVkZWb1JWcHliRlpKTVZSd2MxSnRZbFkxU0RsWlZEZFRhalZ5YWpkSGVqSkZaVk50WWs1UGJEaHlUVGxmVFZJMGRWZDRkamxMVjFoUmNEaHpSMk0zWDJaVmJ6VTJXRXBLVUc4NFZrSmtSbVptT1dOV2VXdElWbFJPVEZsSFRXTlRiSGQwZWpKd2NWTlZTV2t0UW0wMmJXUjFUMnBaVjJKeU5XNWxkRU40YXpONmJWUmtVUzFKUXkwMU5sTjVURnBmWm1kSVIzQXlTM0pXVmxFaWZYMTkuWjlORXhZclhRaFR3TEJ3MWh3Y3V5RVRleGR1YW8zYXAzNGdES0RfTU5ueWUyMXVVNWhJMk9uRXI2N19yUDZqeU1ITWtXcV91NkppbkFpRDI3SkxHQ0M5Yk9TUnlkWW10M2hEVnVoRVdPWnhmek4zNDlfUldnaU1sVE00S2p6dGZhaS03YWZHUmpSeDVjNy1HS2hOVVpXWFhqX2M3WTc0aEtCN3VFSUdpYTVoMlJ6OGt6Zlctb2txSVNmLVRGYzBSaGJiOXpuZ0NWV01uSnlMby1jNzNQMEg2VjhwNTNCM1EwQW9WcGFvWHNpM05pMjVjSmdHb0hlWk5pV2wxUEIzcGFqRlRvYk1hZmx4VGhIYTVKdnFZOUMxVXFLSWJoV0hxQlYyclYwUUtMOU5rZ0gwenpnQVRMZVEydDFrZjItUDM2anA2TDkxX0p5UFVHdDNRMkdNUVdBIn0.","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b"} +[{"id":"28dc1bbc-acd9-42af-867a-017958b411b2","source":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"cancelAddCreateAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-8a77-41e2-a697-b6ae4f3e6199","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:42.7251384+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199"}] +[{"id":"46bdb9a2-4d4d-482d-8954-8ab91bc3a0f5","source":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-8a77-41e2-a697-b6ae4f3e6199","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:42.7561131+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199"}] +[{"id":"0a52515d-4fd8-4447-8675-0b7e0e134e15","source":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"cancelAddCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-0420-4804-8b2b-1c0515fa1dc5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:42.8031136+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5"}] +[{"id":"f7d93ff6-7e46-4c3c-b1c2-65e991878048","source":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-0420-4804-8b2b-1c0515fa1dc5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:42.8031136+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5"}] +[{"id":"5fa5422f-cb4e-4f8a-a5b8-e1c58ccf03b3","source":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-8a77-41e2-a697-b6ae4f3e6199","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:46.1590418+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-8a77-41e2-a697-b6ae4f3e6199"}] +[{"id":"3f7cba5d-6ff2-485d-b15f-78ad4ca6716d","source":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f3c3-eedc-44482200b950"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-f463-b5bb-a43a0d009b00"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-0420-4804-8b2b-1c0515fa1dc5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:46.2066539+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5"}] +[{"id":"86158342-9362-478f-975a-c5e384212fe4","source":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5","type":"Microsoft.Communication.CancelAddParticipantSucceeded","data":{"invitationId":"f659c65e-d104-461c-9512-1f6382370f1c","operationContext":"cancelAdd","version":"2024-06-15-preview","callConnectionId":"31002180-0420-4804-8b2b-1c0515fa1dc5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSnowRzBxZkNVYVVnNjZnR0U2X3BnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7ac07e26-2907-4185-bc08-43033c28f07b","publicEventType":"Microsoft.Communication.CancelAddParticipantSucceeded"},"time":"2024-07-09T17:16:47.6547017+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-0420-4804-8b2b-1c0515fa1dc5"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.json b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.json index 7d6f59f4a35e..b55fe2dcdd02 100644 --- a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.json +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.json @@ -17,68 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "604cb827-9c58-4eab-b37b-7080a9d73d60" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", - "operationContext": "listParticipantsAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-065e-4aa6-bc19-013d801ead79", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:37:32.4250079+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", + "source": "calling/callConnections/21001e80-df5b-4838-a5f6-b6fe5162b575", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", - "participants": [ - { - "identifier": { - "rawId": "sanitized", - "kind": "communicationUser", - "communicationUser": { - "id": "sanitized" - } - }, - "isMuted": false, - "isOnHold": false - } - ], - "sequenceNumber": 0, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-065e-4aa6-bc19-013d801ead79", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.ParticipantsUpdated" - }, - "time": "2024-03-08T21:37:32.4250079+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605", - "type": "Microsoft.Communication.ParticipantsUpdated", - "data": { - "eventSource": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605", "participants": [ { "identifier": { @@ -104,45 +50,53 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-b014-4eca-b06f-c8dfe2337605", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-df5b-4838-a5f6-b6fe5162b575", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "604cb827-9c58-4eab-b37b-7080a9d73d60", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:32.4876083+00:00", + "time": "2024-11-22T12:27:30.5388214+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605" + "subject": "calling/callConnections/21001e80-df5b-4838-a5f6-b6fe5162b575" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605", + "source": "calling/callConnections/21001e80-df5b-4838-a5f6-b6fe5162b575", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605", - "operationContext": "listParticipantsCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-b014-4eca-b06f-c8dfe2337605", + "version": "2024-11-15-preview", + "operationContext": "listParticipantsAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-df5b-4838-a5f6-b6fe5162b575", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "604cb827-9c58-4eab-b37b-7080a9d73d60", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:32.4876083+00:00", + "time": "2024-11-22T12:27:30.5460311+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-b014-4eca-b06f-c8dfe2337605" + "subject": "calling/callConnections/21001e80-df5b-4838-a5f6-b6fe5162b575" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", + "source": "calling/callConnections/21001e80-9a07-455f-8d16-d98982cb4863", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79", "participants": [ { "identifier": { @@ -168,16 +122,45 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-065e-4aa6-bc19-013d801ead79", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-9a07-455f-8d16-d98982cb4863", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "604cb827-9c58-4eab-b37b-7080a9d73d60", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:33.0188504+00:00", + "time": "2024-11-22T12:27:30.6113315+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-9a07-455f-8d16-d98982cb4863" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-9a07-455f-8d16-d98982cb4863", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "listParticipantsCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-9a07-455f-8d16-d98982cb4863", + "serverCallId": "sanitized", + "correlationId": "604cb827-9c58-4eab-b37b-7080a9d73d60", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:27:30.6964544+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-065e-4aa6-bc19-013d801ead79" + "subject": "calling/callConnections/21001e80-9a07-455f-8d16-d98982cb4863" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.txt b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.txt new file mode 100644 index 000000000000..34733b390735 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_List_all_participants.txt @@ -0,0 +1,5 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9JTXlCWEpZUDFVcW1WN2hYYmVQX3ZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVgyQTh6cFMxU3BFUVJNQVorSkZ0dll6Zk5vOGtPakEwb2lyTFZ5SktXa2wvVDZYL2ZTOWxPbkxyYmRnZFRZQlJBTVYvbm5udEozb2MrdHBUTXNrbFJwMG1xWkowV2VVdDhiQ1dtV05qL2Fkd1NMUzZrcWdTT1lpbEpGS0tRdVFHaWpCSVVSVDVGTW9nSVVhNHJlVXdmM09ZaEdIbmNkeEVORXc5RkxJcVFwSjUwWTljTnBZcGJyMXB4V3BXWjNFN2tRcmRFdnN5eVZ5MmR4MldSNXZYSVN0VGNWeW9PTlhJeERSR1ZIb2p4cVVLdTFpeHgzUWdUVEFFbWsvbHNLV2ZhcnRtaGxOTFVxVXBMdVFlU1BpYVJIeVFvb0pZUDl6Q0t0QVErekhlalVHS051UUtnZVJySEdoUlBaRmJwWnk0MzJ4TDR0U3B0VnRyMHloSm1scVlvdGFtM2ZUbmJ5ZnowcWxVWGY0S3BKRStRRG1JZlVVbzVJVmJKZ0gySHFYWXdyb3UrOERvODMyVXF6SUk0NEdHSVpHeFpZTmcxSHNrUWFhYkFXbkdnZU95ZG1zcm9xbGdhMWVDMnZrZnYvMkhETE0wZksydEdXZGRTelFGc1h0ZGxKVG9kV2FidEpFdG44eHJXYmJidDZoRjJwYTJLaFIzcHJFaEhsUjJsMExKYXczRmhDQ2JGU0Q1V2JhV09waXJWV2VGT1VwaEhIWGVZREh3M2lRTEVLT09nYVpLZ0tDQVNZVVZvcERGbUJNc09DVG9wN25qTTdld1kvWkoyc1l0Z3AzQ0lTQUJhTEhTY3lsNE9ZZzJ3VlFxb0x1Uk91eGxZcGZvcnFYRGdkS0tFMFIrMHF2OUtWSGVNVG9ndTQvTEd5THdxQzJQcFFoUElNdExHbUxTNTN3NUM0ZEdBZDFxZjloc3pLUEphNXpEMVkwdnRmdTR2c3l6TGJPL29PbFZzcjNTVUZSRU1yTHJ1MUV6em9vc2NqNGVFRU1kMVJoTm5kRWtkVElLMkMzL1lUcWk2RlZnU2x0dUc2aDZtZUczTzI4UnZZOS8yUjkzQmpjRDc2MmM3NnE3ck5EOFdYYm1NMDhKaGhJWEV1YnE1N1BUZVh6cllwVTRJYjgvQkdEdVlnMnp1aEFIMFFNdDI4cTlKazExVHF4S1pLdjFOSDdXVFNQemtiTkFDNk1MTmQwQnpwd0xmSWVKcTdoaXRWdmJIYnZvR1Zla3NsM0FKWjE5YjlZd3RMSDF2MTA2VlJzdkV5Sm5nNTNqeDNGZXVZN0ZPWjBFNHhPdTcrbTFVbFVGL08rbFA3c01QeVJITHhYS3pheW1aeDJrc2F5MUFaK2QyZU9rUTdMbUI2MU1QSDJ1OE4xMjlCV0lteVRhT0FZOWx3RlJ0Z2puc0VuT01QU1c3YWFmUTVBaWFoV0RxejZHOTc0UDJQb2Ntd05vcUpGVU44QVIyMzNlRGwvQTBoT1ArYmZobTJpazgrWkh3Y01nYXcyRENPQWxkQ0Q1T2M3MVlHd0pEbTRZTzNLK3d3VFlhNHRFQiswajZrZFdkOGMzdDFXUTBkREQxNGZaVDZqTVMrRDd6R0FTM1U4bmtXVElQZlovOGNjbmVzMlNQTVMvMFhEOGtYZ2ltOGdMdlJESmNwTWFrcGF3cUVFODVCdW11dnhOUEcvR0VPb3k2SlBnZStaalM4RlFFK2RFaTJORzVzeElZRHozcy9ya1N5QStSa01sSVoySWgweHcxVG5IWHUwaGpnUTkrS1Zwcm1jMEtrOWJ6aFlqV3lpbWxldFIxS1ZQanJIVUVIbVJQMW16THVvRHIzVHU3ZmhpTUh6RGhENi9IdmNIRDllc2VmdUN1aytiZzNiUzRUNUlQNm1yQ3Q5bFlYcGgrTkJ6M3o2dUw5OHE3SGJ4WnIwWVg2dWJ1WjYvelcvWTcrYmVIZjhjSEludDQ4aTE0ZDJTS096SjVmSGZ4K3BZczNOY2JjMWU4RzIvZXJjNzFHUzJqYzdWUmoxVmE0Z2IrNEFUTGhTd2hXRkRuZW5UeHBvUDlmY2g0R2dxZGZ3U0VkUGpuL1RaY05FdE9SeUNJWEkrdXppYkhhTW1pM28xRWFXMWdXN3Vua3NBYmdxandDSEMzaURzeXovVW02dWJGaS9tdWN6a1kzNTdLNTdhL2Q5b1BFZTNxYlBnbFRlQUk2MHlYOHlMWFNLOGdYSjl3Z0NtUUR2Z3YxM25PWVBJbDlibnRQOUt2ck5NRnVOQURJTVE1YlVvRE9iU281aElSNWp2RUUwTXFDQlBEdnVnRmduSVI5Z1FaaUVFb2VFLzRRekVZQ3RZWGpOcjNZQ0RPcWZDR0lvUzNLNFl3ZEM3NldIQlg5QWFDVURFRXRJSHdxUmpBV2k3Yy9WN3JUZDN3YzJ5NkphYndyTmZyOXU0Y3R3c3ptMDcxQmxKajRKclgxWFFLNnFCNWJHRFZkQ3FqQ3RrNGpLd21MOUM4WjdTbkZPd3JRSW1zNm9jSTd2WTZqZXY1UTZKMUhNR2QraHVVT0RhcmVmQmVnTE9YVkZOZEp6dWlhVHlkeGtZbU5ab1gyVUliWkJhUVZhSDZrS1FoZ05jSVVrVUEwcmxGcnFDYWUwbzNLcU1RVEoxQlJMYlZpbjNac1VOZWZhRm5UVVVScWtEN3J0U0llVkRFMFlRbWlPT1lvWVRFT2dvRGx2aUV3eHBkUVJIYjVIUnZsVm9hMk5qWlU0V1M2L1hiSkxGSmV0TUJDU0lrajIvMDFxYUcrMHl1YWJWdU9tOS8vWkQrZkxaNVA3Ni9TOWoxM2Uwb3VIelg3UUkrRkVyZ2RHQ09ON2lmakhxTHMxL0JpNCtYL2FzTlBydSt0bk1BMWdCeFNLc3NpOHRkaFpQcXBxUkpxNnY5VUMvTGlyVUd4V3F6MUo5Z0RlU20xdTROOVZHK1N1dW5Ddng0eENhenBzaXlwdEw0dnpKMUFObm42dVFvVjRmZTQyd2RtcDNSZU51Ly8rZS9Mdkh0ZnhidmcvbDlwQzhmVnIybk5Od0xFS0YvMTEzZjQ0elJJSUQ5QXBma2dhOEE2NlRWZUpuVjZTVVVsTnNuczZkVjN4UXlWbkRhbmkwUG03YWNIYWZtOE9taDJlZVlRUGpnbENHQWgzM2VGWTJhSUV4aXFXaElXY3p0ZHdPd3E3SmJsczhHc1BMWkxLTzhxbVd1Ykg1L01NODNpeFJicWhXV1NDb3ppM2I4Q2VTNjRiZlg1QThWeXFEc3pCVExzbEYyQTJCTm5mdGZlcXJTYzIwUkFBQT0iLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNFQwUlpla3hEU25WWmJWbHBUMnBGTTAxcVFURk9SRVUwVG1wTmMwbHRWalJqUTBrMlRWUmplVTFFV1hsUFJGVXlUWGwzYVZsWGJIWkphbTlwVWxSS2Exb3hiRTloYTJ0MlRUQjRjMkZXVlhkamF6QjNVMjFXYjJJeldUQk1NR2d5VWxWT00xRlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTV3BDY2s1WVJtdGxiVTV3Vkd4YVVGRnVXa3BOV0VKTFlteGtibEp0TVhwaVJFWnhWR3BhUjFsVmVHeFZWVWw0V21wb01scFdaR3RUUlc4eVZGVlNRbVJIWkRKTmJtTjNZVlJSTWxacVVsTlViWGMxVG1wc2NtUkhhRTVqZVRGVFZWVjRlbFl5YkV0U1JYQnNXbGRrUjAxV2FFVmlSMXB0V2pJeGRsSllWblJXV0dSM1VWVTFlV1ZzVm1GTk1HUllZV3hPWVdSV1pEUlZSM1IwVFRCYVUxSlVUVEZhVlVaWFZEQktRbU15ZHpWVGJsSllWVzVHUkZwSWFGTldiR2d5WVZjMWNtSllaR3BrTUVwWFVXdGtlVkZYZEZoU1JUVjZVbGRzU2xWWWJGSmpNbEpyVlVac2FWZElaekZPVlhSclpWZFNkVmRHU210VU1uUlZWbGRvUmxkdVNuTldhMnQ0VmtoQ2VsVnRNV2xXYWxaSlQxWnNWVTR4VG5GT1dFcHhUakJrTmsxclZteFZNakZwVkdzNWMwOUlTazVQVmpsT1ZXcFNNVll6YURKUFZYUllWMFpHZDA5SVRraFplbVJtV214V2RrNVVXbGxUYTNCUllucG9WMUZ0VWtkYWJWazFXVEZhTldFd2FGZFdSVFZOVjFWa1Rsa3hUbk5rTTFJMlRXNUNlRlV4VmtwaFV6RkRZbFJhZEZwSVZsQmhiR3hZV1c1Sk1XSnRWakJSTTJoeVRUTndkRlpIVWxKTVZXeEVURlJWTWxVemJFMVhiRGx0V2pCb1NHTkVTa3hqYkZwWFZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVa3pZMGRSTW1Nd1NtMVdSMUo1V0RKb1VGZHNUWHBPUlZKYVRWaFNObEZYZEZKVE1VNHdZVVJTUlZNeWFIcGpNR2hzVjFaR1ZHRkVRbnBKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1cwNU5HSnRSbVpaYW1SeVpVVldlRTV0ZEd4Wk1WVXpZV3c0ZUZGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRmxwWmxFdWIzRkdXbk5uU0hsb2RFSnBNVFJJV1dZdFNWOUVkalJDY0dwS1ZuaGpNVkJ2ZFRsVVpEUnRZbEp5V25KU1MyWmFSMDVYWTFCNGVuTjJRakJpYTFkdk0ySXRXRE42WlVwMmJqTllXR1JpVmpaUVoxZHNaV2xZZFVNMFgzbG5WRXBUTVdvMFp6VlFia05wTWpGWE0wSlNSRE4zY1hKWVVVWnlVRGxIUWxKVE1sbHJPRFJGT0Voc2NXWTNOMlJ1VGpjMGJXWmlWRE5HWTFaVlZFUmlaMDFsUmxKUk1tTkZaRWhCVDFoNlZsSjNNbHBrWjJoM1QxOWhZa2x3YjFOU1kzbHBSbFU0Tm5aS1RIRmlObk5GUVVoalpEbFRUaTF4VFhGUFEwaHlkelV3TURRNGNIZDBja3M1WW1Nd1psSkhVMjV0TnpKVWEyUmhaMTlHTTBvMlFWaDZTVGRHZERKYWJISnlRMW8wTWtKSE1uaEROWGhsTTI5d2MyRnpWalp2WlcxTmJETXpUa1JUZUV4bmQxbDBSMXBSTlVsNmFsbFBZV1ZuWjFGbldFczVjR2w1TkhkRWVubEJUbms0Wm5Ca2IzVnBhWFp0Y0Vsbklpd2lkSE1pT2pFM01qQTFORFV6TlRnc0ltSWlPaUpxWDNKbWFUQjFTM0UxTVMxVWJXMUxXbkJpVjFWTFRVVTBkMmRGYzJoSFRVNUtZVEJ3UkRKRmQwbFZJaXdpYm05dVkyVWlPaUptTXpRNE1tVmpNV014T1RrME9EZGxPRE16TldZM09HVTVNVGMyWVROalppSXNJbU51WmlJNmV5SnFkMnNpT25zaWEybGtJam9pU2xodFVrdERXVEprYVcweGRXdFJUbmhIV1RSUFMxWmxZblo1ZUdabU1XZFRUMjFxTmt0VWNGTjFheUlzSW1VaU9pSkJVVUZDSWl3aWEzUjVJam9pVWxOQklpd2liaUk2SWpCck5YRmtlbU5wVGxaUFFuWkpNWEJLYmxkblJtMXpiREZxVGpaR1lVeGxVVUl4WmpoMlpWZGtTRW8yVFVSQmRHZDJNbmN3YVRRMlZqUlNUbXc1TmpscmRHaE5jeTFTVVV4elYybEtSRXBsWldkR01WaEViR1ptWjIxdlJYVnRWWGR3UVU1eWVsVmFNMGRYYWxOYWRWZDRVR3R0TTBaU1JUTTFaVUZXVDBKQmMydzVTblJYVW5GRFpIaFNWbGgyYVc1cmJYZGpkMEpXUWtkeVFXdFhSRTV6UldsSlVYbFJjMlJrVUZsaVdIZzFOVXRrZVdSdVdGSmtUMnRVVldoRlduSnNWa2t4VkhCelVtMWlWalZJT1ZsVU4xTnFOWEpxTjBkNk1rVmxVMjFpVGs5c09ISk5PVjlOVWpSMVYzaDJPVXRYV0ZGd09ITkhZemRmWmxWdk5UWllTa3BRYnpoV1FtUkdabVk1WTFaNWEwaFdWRTVNV1VkTlkxTnNkM1I2TW5CeFUxVkphUzFDYlRadFpIVlBhbGxYWW5JMWJtVjBRM2hyTTNwdFZHUlJMVWxETFRVMlUzbE1XbDltWjBoSGNESkxjbFpXVVNKOWZYMC54WHRWQ3l4Z2ZWdFlXRmQ5dmRLSmVETVJpVDdIaVN0bE9NenRaTC01VUFab2lBZjQ0LXh0ekRzSEtoZ3d5ZERacnZGY2o0WGY2QVRpU21KQm4xZGU3VFVXX0hSbFZmWWxtY3NQUEpQWUl1N3dFdEpHSWlXcEl6bmVOYzdYVWxrUHh6TlpSQ3JNR3ZEakZTWXUzaVFrdlFTQ2cxV19rVXd1MFF1THdscVFzX19GVWdHdEpXRUhZUkRnM2NDelZ0LUE4S2xMQnhFbGZjVEpsMHpQbW9jMjZYNFV0NnlKNWdvV3UyWm1KcHFGUkdhWlg3TzJGeDZyM3ZQeXVreUpYeEhVUW5XWUtnbnRWUDlVcl9sQ1YyWnMwR3VXN254c0thZXQzM2dKb1BUczFLaWM5MmlMcTBPSHYySVNtbHg0Z1gxNDJjWmxFa1dkUWFoTUM3TWJZcFVjU2cifQ.","correlationId":"d2540845-855f-4b64-a7e2-12dac4945d8d"} +[{"id":"ecb89f98-ccab-4405-8ea0-2a8f4ebc7932","source":"calling/callConnections/31002180-d200-478d-9b44-9f6efe72188f","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"listParticipantsAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-d200-478d-9b44-9f6efe72188f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9JTXlCWEpZUDFVcW1WN2hYYmVQX3ZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d2540845-855f-4b64-a7e2-12dac4945d8d","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:15:59.6508117+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d200-478d-9b44-9f6efe72188f"}] +[{"id":"2dd316b6-2b5a-4f50-aede-b1e1f4915dbd","source":"calling/callConnections/31002180-d200-478d-9b44-9f6efe72188f","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-d200-478d-9b44-9f6efe72188f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9JTXlCWEpZUDFVcW1WN2hYYmVQX3ZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d2540845-855f-4b64-a7e2-12dac4945d8d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:15:59.6820107+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d200-478d-9b44-9f6efe72188f"}] +[{"id":"1240b813-fda0-4f45-bcd6-4efab0a36285","source":"calling/callConnections/31002180-144d-4019-84d1-b42ed240c385","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-49f3-b5bb-a43a0d009acd"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-4a8f-e7d6-44482200b175"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-144d-4019-84d1-b42ed240c385","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9JTXlCWEpZUDFVcW1WN2hYYmVQX3ZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d2540845-855f-4b64-a7e2-12dac4945d8d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:15:59.7301591+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-144d-4019-84d1-b42ed240c385"}] +[{"id":"ac4b6149-74b6-4831-a9e5-a85eb9b1419e","source":"calling/callConnections/31002180-144d-4019-84d1-b42ed240c385","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"listParticipantsCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-144d-4019-84d1-b42ed240c385","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9JTXlCWEpZUDFVcW1WN2hYYmVQX3ZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d2540845-855f-4b64-a7e2-12dac4945d8d","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:15:59.7135084+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-144d-4019-84d1-b42ed240c385"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.json b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.json index 2b4a1b9d9321..9f278934683b 100644 --- a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.json +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.json @@ -17,34 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:38:06.5154356+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -70,25 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:06.5310077+00:00", + "time": "2024-11-22T12:27:58.0272025+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -114,35 +98,67 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:06.7810657+00:00", + "time": "2024-11-22T12:27:58.037357+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:27:58.1263075+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:38:06.7966563+00:00", + "time": "2024-11-22T12:27:58.2210719+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], { @@ -163,35 +179,37 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:38:13.968592+00:00", + "time": "2024-11-22T12:28:04.721194+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.AddParticipantSucceeded", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", - "operationContext": "addParticipant", "participant": { "rawId": "sanitized", "kind": "communicationUser", @@ -199,25 +217,30 @@ "id": "sanitized" } }, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "version": "2024-11-15-preview", + "operationContext": "addParticipant", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.AddParticipantSucceeded" }, - "time": "2024-03-08T21:38:14.218591+00:00", + "time": "2024-11-22T12:28:04.9866664+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", "participants": [ { "identifier": { @@ -253,26 +276,30 @@ "isOnHold": false } ], - "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.218591+00:00", + "time": "2024-11-22T12:28:05.0176141+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -308,26 +335,30 @@ "isOnHold": false } ], - "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "sequenceNumber": 4, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.218591+00:00", + "time": "2024-11-22T12:28:04.9947582+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -363,26 +394,30 @@ "isOnHold": false } ], - "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "sequenceNumber": 4, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.218591+00:00", + "time": "2024-11-22T12:28:05.004932+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -418,26 +453,30 @@ "isOnHold": false } ], - "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.8123462+00:00", + "time": "2024-11-22T12:28:05.3538299+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", "participants": [ { "identifier": { @@ -473,26 +512,30 @@ "isOnHold": false } ], - "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.827968+00:00", + "time": "2024-11-22T12:28:05.3329165+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -528,26 +571,30 @@ "isOnHold": false } ], - "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:14.827968+00:00", + "time": "2024-11-22T12:28:05.3247892+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -583,26 +630,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:15.4061534+00:00", + "time": "2024-11-22T12:28:05.6575793+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", "participants": [ { "identifier": { @@ -638,26 +689,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:15.4217244+00:00", + "time": "2024-11-22T12:28:05.6825458+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -693,26 +748,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:15.4217244+00:00", + "time": "2024-11-22T12:28:05.6665135+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -748,26 +807,30 @@ "isOnHold": false } ], - "sequenceNumber": 6, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:15.9999232+00:00", + "time": "2024-11-22T12:28:05.9782403+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", "participants": [ { "identifier": { @@ -803,26 +866,30 @@ "isOnHold": false } ], - "sequenceNumber": 6, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:15.9999232+00:00", + "time": "2024-11-22T12:28:06.0233642+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -858,26 +925,30 @@ "isOnHold": false } ], - "sequenceNumber": 6, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:16.0467512+00:00", + "time": "2024-11-22T12:28:05.9845381+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31", "participants": [ { "identifier": { @@ -898,7 +969,7 @@ "id": "sanitized" } }, - "isMuted": true, + "isMuted": false, "isOnHold": false }, { @@ -913,26 +984,30 @@ "isOnHold": false } ], - "sequenceNumber": 7, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-2982-4d0a-86c9-c3065a3aeb31", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:16.5780399+00:00", + "time": "2024-11-22T12:28:06.3035179+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-2982-4d0a-86c9-c3065a3aeb31" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", "participants": [ { "identifier": { @@ -953,7 +1028,7 @@ "id": "sanitized" } }, - "isMuted": true, + "isMuted": false, "isOnHold": false }, { @@ -968,26 +1043,30 @@ "isOnHold": false } ], - "sequenceNumber": 7, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-82f9-4ef0-80bf-b77c8dd8f03d", + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:16.6092362+00:00", + "time": "2024-11-22T12:28:06.3465665+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-82f9-4ef0-80bf-b77c8dd8f03d" + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", "participants": [ { "identifier": { @@ -1008,7 +1087,7 @@ "id": "sanitized" } }, - "isMuted": true, + "isMuted": false, "isOnHold": false }, { @@ -1023,17 +1102,671 @@ "isOnHold": false } ], - "sequenceNumber": 7, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-784e-4f0a-9fd1-2ca0a8b4778d", + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.3154484+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.6403626+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 10, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.6875078+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 10, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.6504938+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 11, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:07.0232281+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 11, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.9653807+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 10, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:06.9704417+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": true, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 12, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-2608-4f5c-aeaa-16216fe030c7", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:07.3561802+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-2608-4f5c-aeaa-16216fe030c7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 11, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:07.5530767+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 11, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:07.5567033+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": true, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 12, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4496-4df6-a055-25432eeb522f", + "serverCallId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:28:07.8801304+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4496-4df6-a055-25432eeb522f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": true, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 12, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d383-4130-b7e6-3bf1c290aaef", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "812697c5-67c2-4b4e-8b01-386b9ea1d551", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:16.6249232+00:00", + "time": "2024-11-22T12:28:07.8801304+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-784e-4f0a-9fd1-2ca0a8b4778d" + "subject": "calling/callConnections/21001e80-d383-4130-b7e6-3bf1c290aaef" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.txt b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.txt new file mode 100644 index 000000000000..14422c4cca49 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Mute_a_participant.txt @@ -0,0 +1,29 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVkrMi9qdUJIK1Z3UVg2QSs5cGMySHFBY0JvM0JlamJ0NVhaeGN1b1hSZ0NJcFd4dFpVaWc1dG5kdi8vY2J5azdpeE9sdDJ0NFY1eVNLU1E2LytXYklJV2YwdGFOa25wK1ZUWlptU2paWldYVEUxMDVxeTVuN24rbU82RVJDcWxxUVJFdEpreGpGSElmSTV6NUZTUkw0U0lZSnBRcGpHV24vRnJjZlNoQ0xBb3dTbkRCa1FoMGczL2NqU2pGT2lOU2REeDJkMVZVdVYyZHlaanFpbU9mNWg0NHBkRlZtUlROMEdpbFJQQWs1UVR5TUdQSnhHS0JZQTVia2ZwZ1FQNGhZd0FFbWw4VmtMaWZHelZtalZOSTJtY29xdVFIaTJHQ3RneGhoRFJpK0JJdzRpQU5FRENGY0owbUNqUUdnYWFhMUFjTlRtZGZtbWN2VnFnSituZHJZQjJNSFZRV1NsUzByWTV2Vm5weXNkWDc3MEduSzM4QlZoS1VvNFVtQ3BNOGsxaGpITXZYZjRhbzFETWJvamNmajUxMnUwckdpVXFZU3hhQVorUUdRamlTTEVKZE1jMmw4QWd4M1hXVk5YYzZ0YW5FNzc3SDczL2d3ejRxNzJybFJObzFVVXdDYk5rMVZpMTVQVmxrM3piUEp0SUY1eTFXM3ZvTlY2YXB5NWtaNkQ3U25xcDVTYUY0dkRNSWNnWkJHOHE3dUtyVWxxbFR2Z2ZUUzB0NFozZE5TcVVSaGc0TEFTT1NUS0VHUmtRRUtpUFF4SmlSaTB2Um8yTXRJajNIY1d6UDZhOVluR01GS2tSalJFS3lZR1ozSlFRRnFMYkJWQ3FqTzVOcTZDWGlsL2lPWjhNaHB4d2hyUGh2Vi9KR29yaG50RUozcjZzcktvcTVLNitoQ0U4aHkyaVdFZHFPZ0c4YUMrV0hVNjN6YkxNeCtXVFNtQU5HdkhiWCt1Z2xtV1ZYNTVxRHIxZHFGZEpLWENRdzg5UEhZam91eWp6d1dod0hsSHZhR1o5N3d3dmNJRGJzWWZvZ1RxUHMxZUJLbXU0YnFiMFI4M0ZJaGZ0d2xVZWlHa3Y3K2xTQ2JDSFFkVFI5NzdaZFpYODUxVm5vY1J3SDFMcTh1ZW9PZkxqeUNmUytHSi9NSUlSNkpRSDNreFNIMFFNdDFSdDlSS1B1MlVSV3lkZmJGYkxYVFJQekZXNklaa0liNDk4QityNFlUUk9oNjZsbWpIdHlYdGZnUzFkbWtrQkNLazErYjlZd3RuQVZzM2M2VVFmUFV5b2tJczhYb3VhOWFhSEYzRWNhVGlxOG9IZnJrNXZpejJyTlhreDgvM20reG5NMlg2NWFTaGM2MGJJd0FzNzNyZ3d1UEVvWkRIUGlNdkRKNjQ4Qm1CZHhzbWk4OUs3VzI0TEF1SlJFc1YreFp0MTNXWXJ2b2RBdWR4K0R3TjlEWis5RFphM1FLM0oxWlVqV2dnY0kyQ0hDNG84R1BDWDhILzFac1Z3UDluVFhBbm1zOVJDaVBhSXhKeUwwMjRIaVhjQi8rWWc5Q0xtN0JyWUVyYWdQK2lzSFdFbmluVjllWFo4TURqM0FTa0NEQ0pBYS94MkVZK2l6ZTFVNmZ0VWR4QU5QL0orM3NTWHZBTVlzakhrY2hCRnZBUTNEYmErVVE4cTF6SzFuWHdNQ1BDQkRBd1RZRENtSEpNZWY0dlJUSVcycm8vME1OMzlxTVRndVBZa2J3YjYrRi9tNWFjcG1ZWE14a1ZxRDI2RnozempJdHlPUFJsU3lNekNlbHpacnBUQ1FMNVZWUzNabW1rcG4xRmlhQlEyWkQySzZxcG9Ud0h4eU9idmRQYndtTmJvOVBCL3UzbytNQnVZMndseFZ3QUJxQlZ4OXBYdkpWTXJvc1poayt4LzlNL3o0NHZoaldsNGVqNmVLSG0vbG95VS95eStuUDlGK00vRXdlaVd6ZzZmZmcyY05ENzBhemNuUjhMTS81Y0RRWVh0eGd1Ymhma2RGOUxwYy8xbk4rc21jZlByZndqK2RrTlpNVlhDbStOeHFlZk95UllIT3hQQTNGM3Q5Q1NudlI2MzUzcWJSVGRrZmdxaGtOTHcvUHR0SFNXYk1lU2JMR3d0TDJkelhCYVFtcTRpM0E5YVRJazBWaGxrbS9LRi9JWSs5aS8vUjZWMy9rK2dlNy9YRHZYUjRldkdVSmJHV1RtMnBhRmdhWkI3alhkemlBQ09RTndjdDV6TnMvZTh2OHlQVnYyVmMxMlF3TzEwZEF1QXFOclN3azI2S2VTa1I1NEdFbS9GQU1BbkVJdjRlQ2NNRmlFUkV4T0JSOElBNzJ4R0VrR0JIWUZ3ZFVNQ3pZa2NDSFlvOEtHZ3ErSjQ2bzJBOEVqUVhuNHVoQXhOakp4Nzd3ajhUK2tlQ2JjOUFzbTVhZjUvSXlNWWJQWXJIb3J2ZHh0N1NUOGRnc0lZY0dya1ZUajhkZ0RwcHFDN1BHWTVuVXlGM1Z5Rm55QW8wOW96M2xhcjhDbE1xNnVVMGd2aGVaYnFhM3FURTZnWmo2RTlSQ0x2MjVaUy9BK1V1cW1XblNOZEZNajhmYXlyUkIwektmR1l2c0ROSXYxRHhtY3dqZ0RZS2NFb0JNNFpCcmhKL0N1cTZ0UWlBNmdSdmJsVFh1NGNZZUUvQVRNMmxMRHhPbk1UVmFJYmpKb1BSZ0Nnbzk1dW9xMktVMGlwaW1nU3M5VEEzVmJwdjhuU3MxdDdDd2s2ZFNwakNMOHpSMTJYemJBWmtrWkprZnpjcmxrSnVVcjIxMW9peHB6b2FmRHFmM2w4ZG54OFdJbkEvdWkwRy9EL2hRVWNHaEF6TGw1T2dUbVY4ZGZTcG5QOXg5dWI0Nmllc3Y5UUprQU5ZQ2NjaThISXVMZFNtVW1iYjJ5ZXJMemRBZ3o4dUZBY01hT3pmZllBNGtzYzd2TGZWaDhaQTFUNlg2OW9qTGVtMlo1MjFKOGgrbDlBQ3lTZXJwVmxJUHZkdHBQVFI3OGFMNmg2TGx6UXpmcStzenFadDR0bmUxZU1yWFdZaW8vMmZURDFqRW9WaUhLeGJEa2NSZ0ZjQTdXWDA2ejV2c0FpclAxWlBiczNyUGxsSXIyRzNQbnRjbW1VKzJjM2g0UjlHdWM4QTQxYW1HcWtCTERpV21VU2p4Y1lBU0JxOFhOSWQzRFNRQVRlQlg1WmFzbU96RHpHZTNESXU2a1lWeWhjQ2plNzViemJpYXJuUkVNcGs3dE8xM0phT1czOGFTLzZxaUJtTW50cHhYcmJGTEFHc0w0bDhBSGdBZDdaWVJBQUE9Iiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkT1ZGRjRUMFJaZWt4RFNuVlpiVmxwVDJwRk0wMXFRVEZPUkVVMFRtcE5jMGx0VmpSalEwazJUVlJqZVUxRVdYbFBSRlV5VFhsM2FWbFhiSFpKYW05cFVsUkthMW94YkU5aGEydDJUVEI0YzJGV1ZYZGphekIzVTIxV2IySXpXVEJNTUdneVVsVk9NMUZVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1dwQ2NrNVlSbXRsYlU1d1ZHeGFVRkZ1V2twTldFSkxZbXhrYmxKdE1YcGlSRVp4VkdwYVIxbFZlR3hWVlVsNFdtcG9NbHBXWkd0VFJXOHlWRlZTUW1SSFpESk5ibU4zWVZSUk1sWnFVbE5VYlhjMVRtcHNjbVJIYUU1amVURlRWVlY0ZWxZeWJFdFNSWEJzV2xka1IwMVdhRVZpUjFwdFdqSXhkbEpZVm5SV1dHUjNVVlUxZVdWc1ZtRk5NR1JZWVd4T1lXUldaRFJWUjNSMFRUQmFVMUpVVFRGYVZVWlhWREJLUW1NeWR6VlRibEpZVlc1R1JGcElhRk5XYkdneVlWYzFjbUpZWkdwa01FcFhVV3RrZVZGWGRGaFNSVFY2VWxkc1NsVlliRkpqTWxKclZVWnNhVmRJWnpGT1ZYUnJaVmRTZFZkR1NtdFVNblJWVmxkb1JsZHVTbk5XYTJ0NFZraENlbFZ0TVdsV2FsWkpUMVpzVlU0eFRuRk9XRXB4VGpCa05rMXJWbXhWTWpGcFZHczVjMDlJU2s1UFZqbE9WV3BTTVZZemFESlBWWFJZVjBaR2QwOUlUa2haZW1SbVdteFdkazVVV2xsVGEzQlJZbnBvVjFGdFVrZGFiVmsxV1RGYU5XRXdhRmRXUlRWTlYxVmtUbGt4VG5Oa00xSTJUVzVDZUZVeFZrcGhVekZEWWxSYWRGcElWbEJoYkd4WVdXNUpNV0p0VmpCUk0yaHlUVE53ZEZaSFVsSk1WV3hFVEZSVk1sVXpiRTFYYkRsdFdqQm9TR05FU2t4amJGcFhWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVWt6WTBkUk1tTXdTbTFXUjFKNVdESm9VRmRzVFhwT1JWSmFUVmhTTmxGWGRGSlRNVTR3WVVSU1JWTXlhSHBqTUdoc1YxWkdWR0ZFUW5wSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXMDVOR0p0Um1aWmFtUnlaVVZXZUU1dGRHeFpNVlV6WVd3NGVGRlZSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkZscFpsRXViM0ZHV25OblNIbG9kRUpwTVRSSVdXWXRTVjlFZGpSQ2NHcEtWbmhqTVZCdmRUbFVaRFJ0WWxKeVduSlNTMlphUjA1WFkxQjRlbk4yUWpCaWExZHZNMkl0V0RONlpVcDJiak5ZV0dSaVZqWlFaMWRzWldsWWRVTTBYM2xuVkVwVE1XbzBaelZRYmtOcE1qRlhNMEpTUkROM2NYSllVVVp5VURsSFFsSlRNbGxyT0RSRk9FaHNjV1kzTjJSdVRqYzBiV1ppVkROR1kxWlZWRVJpWjAxbFJsSlJNbU5GWkVoQlQxaDZWbEozTWxwa1oyaDNUMTloWWtsd2IxTlNZM2xwUmxVNE5uWktUSEZpTm5ORlFVaGpaRGxUVGkxeFRYRlBRMGh5ZHpVd01EUTRjSGQwY2tzNVltTXdabEpIVTI1dE56SlVhMlJoWjE5R00wbzJRVmg2U1RkR2RESmFiSEp5UTFvME1rSkhNbmhETlhobE0yOXdjMkZ6VmpadlpXMU5iRE16VGtSVGVFeG5kMWwwUjFwUk5VbDZhbGxQWVdWbloxRm5XRXM1Y0dsNU5IZEVlbmxCVG5rNFpuQmtiM1ZwYVhadGNFbG5JaXdpZEhNaU9qRTNNakExTkRVek9EUXNJbUlpT2lKaFJHaE1kakpJZEMwNU1sSTFNRmRFVEhRek5qSnZjVEJmVkROM1VERldVbnBNTFdoa1JqbDRhbmx6SWl3aWJtOXVZMlVpT2lJd1lUbGhZamcyTUdWa09UZzBZMlV6WVdabFlqUm1ORFJrTURCak9XSmhOeUlzSW1OdVppSTZleUpxZDJzaU9uc2lhMmxrSWpvaVNsaHRVa3REV1RKa2FXMHhkV3RSVG5oSFdUUlBTMVpsWW5aNWVHWm1NV2RUVDIxcU5rdFVjRk4xYXlJc0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNklqQnJOWEZrZW1OcFRsWlBRblpKTVhCS2JsZG5SbTF6YkRGcVRqWkdZVXhsVVVJeFpqaDJaVmRrU0VvMlRVUkJkR2QyTW5jd2FUUTJWalJTVG13NU5qbHJkR2hOY3kxU1VVeHpWMmxLUkVwbFpXZEdNVmhFYkdabVoyMXZSWFZ0Vlhkd1FVNXllbFZhTTBkWGFsTmFkVmQ0VUd0dE0wWlNSVE0xWlVGV1QwSkJjMnc1U25SWFVuRkRaSGhTVmxoMmFXNXJiWGRqZDBKV1FrZHlRV3RYUkU1elJXbEpVWGxSYzJSa1VGbGlXSGcxTlV0a2VXUnVXRkprVDJ0VVZXaEZXbkpzVmtreFZIQnpVbTFpVmpWSU9WbFVOMU5xTlhKcU4wZDZNa1ZsVTIxaVRrOXNPSEpOT1Y5TlVqUjFWM2gyT1V0WFdGRndPSE5IWXpkZlpsVnZOVFpZU2twUWJ6aFdRbVJHWm1ZNVkxWjVhMGhXVkU1TVdVZE5ZMU5zZDNSNk1uQnhVMVZKYVMxQ2JUWnRaSFZQYWxsWFluSTFibVYwUTNock0zcHRWR1JSTFVsRExUVTJVM2xNV2w5bVowaEhjREpMY2xaV1VTSjlmWDAuV0U0c0dhSVhqYW9xVXFYTFA1dHJUQXdUNzRfV3puS2k2ZXZxUEhDelkxNWpyT1dSb0xmMWxuUEdJRnZ0LU5nTXo1YTk1bkYycU9BNm9TWGlUVk5iNkdTV3JVTEpaNUVvZ3ByZUJ4UVNBbGNra3ZLUDNaZ3lxWlRqRm1UbG9Oem9fQWkzamtub1VGV2U3dEtac205T3d5VVpnbmpOMEp4S3dhYTNiZGtwbHNuM3NlQWk1MkpuZ2tCSURRMktSdkYtZktZNmhyQ3NjWnpYeDBqV2lqRUJtN24wLXZ0a1M0Z3QwaXc1S280WUpvaElQaWsza0poa2wxMjBkY29KUXFEVlE5ZFBrM1A2Zy1va2NFQ1Y3RC1WdENmU000NE44cDQ4YUhvTF9Genh3VHRTeUIzWE9PNDRTSEFPWmtZcmwxZ0ZQTHJsMnhKUnh6dkk3UWY4RGdBSFdRIn0.","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616"} +[{"id":"d379b467-6da0-457a-a874-3ff251373faa","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:26.5224054+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"4850d8a8-3873-4277-a116-9c45e41451b8","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:26.5537364+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"ef9062e8-3100-401a-af04-1856f9f993f3","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:26.600987+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"0d5e4bad-de0a-4f06-b085-a11622afcaf5","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:26.600987+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"b06337c0-5319-4bcc-ac8e-de7d9d0c5ee1","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:32.0547887+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVdYVy9pT0JUOUwzbllsNm1KN1RoT2dsU3QyczdPTHBxbGcxcVkvWGlwcmo4QXR5SEp4b1lXVmYzdmN4TW9SZXFzMVAzU0RnK2dPTW01NXg0Zm44dGpwS0VzTCt2ZzVrNURjSFVWRFIramVWdXZ1bDlub21HVUQwSDdJVk1HZ0t1Q0ZDbk5pRWdGSjBwSlFTQlRuR3RLSVRmaWh2WWZ6a2lTUzBvVVZRbXhtWkZFQ0pGelRxbGlZS0tUeURqZmxMQzloSldOaHRXNkxFOGlXNW1tZGxVWWRSVTUwNm5LVWtiU0xFK0lvSmtraFVFc1NFV21tSkI1SWxPRUthRmFyR0ZodTNkMktBMjB3V25Yd0I0b3BaWWFJd3RDRFdJSVFJeENGcEl3eTFocWxGTFVXZ1JhT21Nc05qNkgwbHRFYWV2R3RtRjdEb3NkOE5OSkZPcC9yb2NHQVVTbFNoRVFDVkJEYVFIejRnMTY3R0FvSlYvNWV2NjhTUThtaEpSWm9VZ0JtaEVoV1VyQUpnV0JSTTduaHV2Q2FuaXRSMnQ5dlc1MWp4dTlwZS9vNnhxV3JycnpuWXdRQXVnbGdpMURhUHd3anFGeGczbnBGc3VBN3oxc0IvNXUyOWlCcmxmZG5YakRZOTNFV3BPMXY3ZUVwZ1FmTWdUdS9FRHJvMGUxampjc250ZnRuVFd4QWEyVnBwWklhWUVJbGl1U1c1QkVNaENVTXBZbllPT004OWl4bUhHUnh6dE8zN3RUUmdudUZTc0l6N0NQbFRVT3ppb3MzQ0pmclpIc3FwTUlLU3hRRi85dE5mSE02bFVicmIyMU9ueGJaSGVjWGxGZG0yYmFRdVdidXUwSTR5WFNUZm1BTVQ3STVTQXJob25JOGpoNjJtL09SVjBGVzRWbnkzZlJOWFlQM1hhRmRvM3VSWUNQZHR2WnpxTXlHSEQ5VmZSQkduWHJZQnpQa25kbWRoMnVQMzMrWVhaMmVvb004TWpjMmE3MkIzczdmWC8xOFdmN0xuSE5iK25uTGZ2eFFTendHYXpkWXUwVytTUGdaT2QxWjN0ek8zKzF2M1ZXbHZXOU5Uc2lUenRxWjAxVDdvTjJpakppRVN5bzF6N1VxNzZSaDBNanpyOTNVSDVhaDhQN2k3WmVOeGRMd0pYSEtDeGJDMlozSkl0aDA5cU5zL2NrbDVBa2dpb2k3ZHpnSm1RWU9IbG15Und5TnBjS1V5OU5lbGQ3ZnhRVWlLM3JhbU5iM3hNYlZSc1hEclBnK0U1SHNhM0xzajhNZjhsS0NMSTNFejh5RTY0ZTJ3a3Y0K0srK1ZYeitwY1YvVVBQTHNHRVluVSt2VCs0Sk1rSUY5L1pVNW5rS1U2RGpGR0tua295M3VXbzgrTjFHZHdFVTIvN3ZQM09uN2MxR0EwK0hBSnRKeVRPdlZIbGdvTlF0Ly9KbUh0ZFp2S1N4Ly9qZVAyM3hzbHU4UTNEMC9tZmFoL0tQaTczWGpaV3JSZUhvNHN1UTVtdUErSlBYY2M2NHBRTGdrclFZc3F5SVpQRGhBNlNBaGNGLzcwN01aMnFYUzh5U2JtWkc4d09BeW5xWmpWUmdrcWlFaFRFcEtnT2svajhDQThsb2k5c3VMUUwvTFBUdTNtQ3FyZ0thZTZwanllanlnZW90TDIyN2NacE8ydmRrYzhWR3RnQ0o0a2NySm9YMnc3Umdra2U5MW1Feld2c3NtNHhGN0hxQzJEUDlVOEFCdVBtcWk3dHplanlSblNIY3p5WnJCV0d4S2lad21MbXV3Q0p6aTZ1dTZIemQ4YjVJVGlPNCtYcEM1TnlidS80Q1FBQSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE9WRkY0VDBSWmVreERTblZaYlZscFQycEZNMDFxUVRGT1JFVTBUbXBOYzBsdFZqUmpRMGsyVFZSamVVMUVXWGxQUkZVeVRYbDNhVmxYYkhaSmFtOXBVbFJLYTFveGJFOWhhMnQyVFRCNGMyRldWWGRqYXpCM1UyMVdiMkl6V1RCTU1HZ3lVbFZPTTFGVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXcENjazVZUm10bGJVNXdWR3hhVUZGdVdrcE5XRUpMWW14a2JsSnRNWHBpUkVaeFZHcGFSMWxWZUd4VlZVbDRXbXBvTWxwV1pHdFRSVzh5VkZWU1FtUkhaREpOYm1OM1lWUlJNbFpxVWxOVWJYYzFUbXBzY21SSGFFNWplVEZUVlZWNGVsWXliRXRTUlhCc1dsZGtSMDFXYUVWaVIxcHRXakl4ZGxKWVZuUldXR1IzVVZVMWVXVnNWbUZOTUdSWVlXeE9ZV1JXWkRSVlIzUjBUVEJhVTFKVVRURmFWVVpYVkRCS1FtTXlkelZUYmxKWVZXNUdSRnBJYUZOV2JHZ3lZVmMxY21KWVpHcGtNRXBYVVd0a2VWRlhkRmhTUlRWNlVsZHNTbFZZYkZKak1sSnJWVVpzYVZkSVp6Rk9WWFJyWlZkU2RWZEdTbXRVTW5SVlZsZG9SbGR1U25OV2EydDRWa2hDZWxWdE1XbFdhbFpKVDFac1ZVNHhUbkZPV0VweFRqQmtOazFyVm14Vk1qRnBWR3M1YzA5SVNrNVBWamxPVldwU01WWXphREpQVlhSWVYwWkdkMDlJVGtoWmVtUm1XbXhXZGs1VVdsbFRhM0JSWW5wb1YxRnRVa2RhYlZrMVdURmFOV0V3YUZkV1JUVk5WMVZrVGxreFRuTmtNMUkyVFc1Q2VGVXhWa3BoVXpGRFlsUmFkRnBJVmxCaGJHeFlXVzVKTVdKdFZqQlJNMmh5VFROd2RGWkhVbEpNVld4RVRGUlZNbFV6YkUxWGJEbHRXakJvU0dORVNreGpiRnBYVlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVrelkwZFJNbU13U20xV1IxSjVXREpvVUZkc1RYcE9SVkphVFZoU05sRlhkRkpUTVU0d1lVUlNSVk15YUhwak1HaHNWMVpHVkdGRVFucEpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzA1TkdKdFJtWlphbVJ5WlVWV2VFNXRkR3haTVZVellXdzRlRkZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJGbHBabEV1YjNGR1duTm5TSGxvZEVKcE1UUklXV1l0U1Y5RWRqUkNjR3BLVm5oak1WQnZkVGxVWkRSdFlsSnlXbkpTUzJaYVIwNVhZMUI0ZW5OMlFqQmlhMWR2TTJJdFdETjZaVXAyYmpOWVdHUmlWalpRWjFkc1pXbFlkVU0wWDNsblZFcFRNV28wWnpWUWJrTnBNakZYTTBKU1JETjNjWEpZVVVaeVVEbEhRbEpUTWxsck9EUkZPRWhzY1dZM04yUnVUamMwYldaaVZETkdZMVpWVkVSaVowMWxSbEpSTW1ORlpFaEJUMWg2VmxKM01scGtaMmgzVDE5aFlrbHdiMU5TWTNscFJsVTROblpLVEhGaU5uTkZRVWhqWkRsVFRpMXhUWEZQUTBoeWR6VXdNRFE0Y0hkMGNrczVZbU13WmxKSFUyNXROekpVYTJSaFoxOUdNMG8yUVZoNlNUZEdkREphYkhKeVExbzBNa0pITW5oRE5YaGxNMjl3YzJGelZqWnZaVzFOYkRNelRrUlRlRXhuZDFsMFIxcFJOVWw2YWxsUFlXVm5aMUZuV0VzNWNHbDVOSGRFZW5sQlRuazRabkJrYjNWcGFYWnRjRWxuSWl3aWRITWlPakUzTWpBMU5EVXpPVElzSW1JaU9pSkNlaTFRTm1GS1lXMTNjMkpDU1d0Q2JERm5WMlpUVTBwNFZIcHhhRFV5YjNGbmNDMUpOVzFDVFdGSklpd2libTl1WTJVaU9pSmtNalkzWTJNNU1qVXlZV00wTVdNMllURTNZbUU1WkRObFkySTNNV1E0WmlJc0ltTnVaaUk2ZXlKcWQyc2lPbnNpYTJsa0lqb2lTbGh0VWt0RFdUSmthVzB4ZFd0UlRuaEhXVFJQUzFabFluWjVlR1ptTVdkVFQyMXFOa3RVY0ZOMWF5SXNJbVVpT2lKQlVVRkNJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJakJyTlhGa2VtTnBUbFpQUW5aSk1YQktibGRuUm0xemJERnFUalpHWVV4bFVVSXhaamgyWlZka1NFbzJUVVJCZEdkMk1uY3dhVFEyVmpSU1RtdzVOamxyZEdoTmN5MVNVVXh6VjJsS1JFcGxaV2RHTVZoRWJHWm1aMjF2UlhWdFZYZHdRVTV5ZWxWYU0wZFhhbE5hZFZkNFVHdHRNMFpTUlRNMVpVRldUMEpCYzJ3NVNuUlhVbkZEWkhoU1ZsaDJhVzVyYlhkamQwSldRa2R5UVd0WFJFNXpSV2xKVVhsUmMyUmtVRmxpV0hnMU5VdGtlV1J1V0ZKa1QydFVWV2hGV25Kc1Zra3hWSEJ6VW0xaVZqVklPVmxVTjFOcU5YSnFOMGQ2TWtWbFUyMWlUazlzT0hKTk9WOU5ValIxVjNoMk9VdFhXRkZ3T0hOSFl6ZGZabFZ2TlRaWVNrcFFiemhXUW1SR1ptWTVZMVo1YTBoV1ZFNU1XVWROWTFOc2QzUjZNbkJ4VTFWSmFTMUNiVFp0WkhWUGFsbFhZbkkxYm1WMFEzaHJNM3B0VkdSUkxVbERMVFUyVTNsTVdsOW1aMGhIY0RKTGNsWldVU0o5ZlgwLlhZOWV1dzB5U0k3UjZEcloyZ0xiYUZVMGROWFZHYUdXUlBSWWFRQm50c3E0Uno3dGNXQzBSa3hWVDlmMHdsamFZS1VxdTVFNldYaVZNUTJoRVZHRlJCV1hodHZjYjdzbzJieFBMRk5Ca0NxLWEtZWlpTEpoa2FlZEtmVDNjR2FpZG1QaldRQnphSEpTU2tPcWMyRWhmY2pUWUxWUUdxVG1jckRmZHlHb21lZDNtU2J5Q3RJNGhmYndtX2k0QjdleU84ZjRIdEVXckEySlFsd0Y4TlljVHZmY2NYWWJ0TTZVdVR1R1QzMG1RZzdaVk1qNEtLWTBHaXV3QWRjajUyZG5WYkltVkFobTRlTlBHczBYNWlMWEhQNjhrXzRJQkFTVVZuXzRrYzlMRUdQaXotTm1nQ3BuLWdvN3pER0M0ekNGR0xDbWZoQ2xIVnpEeElJbHdVVUM5dyJ9.","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616"} +[{"id":"508c0c35-7c79-429c-a1f4-192470843301","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:32.1453053+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"0a00252c-607c-46d7-b794-107aebfc45dd","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:33.958127+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"1326c786-0c2d-41dc-aaa7-a75906c5ec35","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.AddParticipantSucceeded","data":{"operationContext":"addParticipant","participant":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.AddParticipantSucceeded"},"time":"2024-07-09T17:16:34.3510794+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"f8f5c809-d67a-40d7-bd22-fd1dc7a34536","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:34.3510794+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"43835d31-e504-4493-a0a8-0eb44f437732","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:34.5398268+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"edd9cb70-4f4e-4623-b85f-84edd709b7d0","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:34.5078803+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"40b21cf8-88b3-4145-bda8-9b1df930b86c","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:34.9484465+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"b02c900c-e1d4-49e6-a5cb-563895f0cd7d","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:35.04279+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"5acc8493-5a07-4a7c-90ae-2136330bda61","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:35.4844381+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"34032ff9-321a-4c96-beb9-7f085dacbb6d","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:35.545596+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"ba22d702-a6d0-4547-8b17-e09ed3dec3a5","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:35.6085935+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"1d9b954e-104b-471b-b0ff-3a1038110314","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.0803175+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"146f2d67-e1c8-42b0-b456-f5434d022fdf","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.1278175+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"3a488ccd-9e48-428e-acb4-2473afcf5cab","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.2318831+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"89e833b5-7b2d-47b3-aacc-a728083eb5aa","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.6631505+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"c9ffa2ae-241a-4182-a7c3-7509e3351761","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.7101891+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"dcd5bde3-0ddb-44ed-8782-3c7c87ed7a21","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:36.8357541+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"c8a53567-5b42-4b36-8909-bfbcb995b5d9","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:37.2752027+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"d0bdb424-9be4-4ae8-b7c8-85689fac25b1","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:37.2594679+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] +[{"id":"88f404de-8148-4b2d-b4d4-affd8b4236e1","source":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-6966-4ae0-b2f9-17c94d166cb5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:37.4330984+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6966-4ae0-b2f9-17c94d166cb5"}] +[{"id":"84f7e059-cc09-4683-ba6e-72c0c0c290f6","source":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-d821-4740-82ea-26c12f232b3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:37.8742927+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-d821-4740-82ea-26c12f232b3b"}] +[{"id":"867bfbb9-15c8-4be3-93a1-bb064296ba76","source":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b0b3-e7d6-44482200b1ad"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-ca4a-b5bb-a43a0d009af9"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-b13f-b5bb-a43a0d009af4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-e0cd-45ce-9b8e-ed22ee1c4feb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85d3BYYzJvV20wcWNVTmFkdDltQlR3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"6352dfd9-2da5-45ec-b406-b3220d57d616","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:37.8742927+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e0cd-45ce-9b8e-ed22ee1c4feb"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.json b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.json index 0341a2677d81..0032eb6c1084 100644 --- a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.json +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.json @@ -1,4 +1,122 @@ [ + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-80ae-4320-beec-e3fb39f6248f", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:44.6187198+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-80ae-4320-beec-e3fb39f6248f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4b75-4210-b6c4-1806b708cd7d", + "serverCallId": "sanitized", + "correlationId": "7842f48f-0d09-4731-9d34-4f7611c6f37a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:27:44.4972817+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4b75-4210-b6c4-1806b708cd7d" + } + ], { "to": { "kind": "communicationUser", @@ -17,35 +135,38 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", + "source": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", - "operationContext": "removeParticipantCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9791-41e0-8604-56e89212b4b9", + "version": "2024-11-15-preview", + "operationContext": "removeParticipantsAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-e86e-4a82-85de-c7ae6e02f1ed", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:57.6687101+00:00", + "time": "2024-11-22T12:27:50.1948977+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9" + "subject": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", + "source": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", "participants": [ { "identifier": { @@ -71,45 +192,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9791-41e0-8604-56e89212b4b9", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-e86e-4a82-85de-c7ae6e02f1ed", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:57.6843442+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", - "operationContext": "removeParticipantsAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-60ad-44f0-a298-0c82455f948b", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:37:57.6687101+00:00", + "time": "2024-11-22T12:27:50.1434038+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b" + "subject": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", + "source": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", "participants": [ { "identifier": { @@ -135,83 +240,124 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-60ad-44f0-a298-0c82455f948b", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-18a3-4f7f-8273-eb9bea3aa771", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:57.6843442+00:00", + "time": "2024-11-22T12:27:50.1434038+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b" + "subject": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", - "type": "Microsoft.Communication.RemoveParticipantSucceeded", + "source": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771", + "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", - "operationContext": "removeParticipants", - "participant": { - "rawId": "sanitized", - "kind": "communicationUser", - "communicationUser": { - "id": "sanitized" - } + "version": "2024-11-15-preview", + "operationContext": "removeParticipantCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" }, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9791-41e0-8604-56e89212b4b9", + "callConnectionId": "21001e80-18a3-4f7f-8273-eb9bea3aa771", "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.RemoveParticipantSucceeded" + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", + "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:59.1843522+00:00", + "time": "2024-11-22T12:27:50.3109067+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9" + "subject": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", + "source": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b", + "version": "2024-11-15-preview", "operationContext": "removeParticipantsAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-60ad-44f0-a298-0c82455f948b", + "resultInformation": { + "code": 200, + "subCode": 5300, + "message": "The conversation has ended. DiagCode: 0#5300.@" + }, + "callConnectionId": "21001e80-e86e-4a82-85de-c7ae6e02f1ed", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:37:59.2468533+00:00", + "time": "2024-11-22T12:27:51.9002594+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-60ad-44f0-a298-0c82455f948b" + "subject": "calling/callConnections/21001e80-e86e-4a82-85de-c7ae6e02f1ed" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", + "source": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9", + "version": "2024-11-15-preview", "operationContext": "removeParticipantCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9791-41e0-8604-56e89212b4b9", + "resultInformation": { + "code": 200, + "subCode": 5300, + "message": "The conversation has ended. DiagCode: 0#5300.@" + }, + "callConnectionId": "21001e80-18a3-4f7f-8273-eb9bea3aa771", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:37:59.6062835+00:00", + "time": "2024-11-22T12:27:51.9058179+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771", + "type": "Microsoft.Communication.RemoveParticipantSucceeded", + "data": { + "participant": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "version": "2024-11-15-preview", + "operationContext": "removeParticipants", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-18a3-4f7f-8273-eb9bea3aa771", + "serverCallId": "sanitized", + "correlationId": "68d7abdb-b013-4d1f-a089-25420c08f6d3", + "publicEventType": "Microsoft.Communication.RemoveParticipantSucceeded" + }, + "time": "2024-11-22T12:27:51.9058179+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9791-41e0-8604-56e89212b4b9" + "subject": "calling/callConnections/21001e80-18a3-4f7f-8273-eb9bea3aa771" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.txt b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.txt new file mode 100644 index 000000000000..0521c3c0967b --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallConnection_Live_Tests_Remove_a_participant.txt @@ -0,0 +1,9 @@ +[{"id":"ccae3836-9a18-4a52-aef5-ec000881934b","source":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-610b-e7d6-44482200b17c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-61a6-e7d6-44482200b17d"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-76e7-e7d6-44482200b18a"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":6,"version":"2024-06-15-preview","callConnectionId":"31002180-6f8c-4d17-ad93-a69d7861e0d1","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi85ajF0Y2NLazUwLVN4a2tEY3FtMVN3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a48fec8e-e12d-4766-ab5b-c198c36c15ae","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:13.9234139+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6f8c-4d17-ad93-a69d7861e0d1"}] +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9qdUJYOUs0SUw5RU03dEVtS0VpVUNSdUU0emlZemVXMlN5YlFMb3dGRlVyWTJlb1dTWTJkbTU3LzNVbllTWjV6dXBPMXVzVTVnVytUbE9lZGV2dTcxbDU2U2VYNWF0Vm1hS2RsbVZka1RYM3FwclFyM21lbWU2RVZDcWthUVJFdEpreGpGQWVhSUJZeWlKQWtaa2p5aFZHRXNJODF1Y1BlaUJQbFJpTUZTK2Nod0hTTEdXRVFweGdtUnJQZXVwN09tenVYRHFTeE1UNVNMUEgvWE02V3VxNnhzanh3ajVUajJFMm9RWVRSQ1RDbU40cFFHS0lqaUpJNFVOUUYzTUxrc1p3czVNMjdNR3FXV3RzMVVWc3NOVUlLcFNhUWhpRWNCUTR4TGlTSk9BaFJIc1RHVWNNeDhCelRQdERiZ2VDcnp4anhydVhxb1FWK3ZNZmJlMkZGZGcyVnRxOXJZOW1GUHp0YWNYOS8xMnVvM0NGVVlCRHVoQ3Q0UXFqVU14dWlWdDhmWG0wTEZ0TkdVcGpHU0xGU0ltZGhIc2VZSythRU9jYUlWVEFuZURaVTFUYld3cXNQdHZjWHZmeFBEUEN0dkd4ZEcyYlpTelFGczNyWjFJd1lEV1dmOU5NOW04eGJHclI3NnpTM01TbDlWaGVzWjNOT0JxZ2RLb1VXek5BZ0hDSXcwa3JkTlg2a3RVNlVHOTJTUVZ2Ylc2RUZFWXFsU3pCQlZFSFJHZlFvK1U0MUN6U2puRUFWZjBRSGxnNHdNL0FBUDFvcitsZzBKUmpCVEpFYVVneGVGMFprY2xVQnJRYTFTSUxXUWErOW1FSlhtaitUQ282WWRKNno1MmFqMmp5UjFyV2hINkVMWFYxYVdUVjFaSnhjZVFXeEErNFRRZmhUMmVTeDh4cU5CNyt0bVlzWlYyWm9TVEwvMDFQcnJaalBMdXM0M0I5MmcwVzVMSjNtVlFNZjlFRS90dEt5R3lQTmpIbExpWWUvbzFEczZaeDZodkkvaGp6aURadGhBSkdHNGUxRERqUW5EblJUQzRqNkp1T3RLaHVNclFUWTcwRFcwUSt4MVg0cWhYT2lzOGxoTXc5Qzd1RG9maks3UFBZS1pGOE83N3hGQ1BCSUJmZVRGSEZyZ3lUVkczeUdVUTl1cUd0a20rMnkybnRORS9NVmJvUUpFdy83M3dIK3ZnUk5FNkdidVdhUHUzWmUxK1FvMTJheVVzQlZudnpicUdWczREemJjbVRKb2tWbzVFN2Z4M2Y1elc3M1U0bEFsaHorZW5kNXkvd3I3d2VJZjg5TE1GaC92YnJkVUZvdlYra25KVW1kYXRrYUEyOTdIL1hPUEVoOXpIREtmZk9QMEpvRHRBMml6YWI3eXJOVGFRc0Q2bEVRd1hiRm4zWEpabSsyaTB5MzBJSWFBdjRMTzM0Yk92MFdub04yNUpWVUxEQlNXUVlqNUt3d2tvRzloQUxOZEJ2bzdNOENhNnlKRWFCRFJHQk1lZU4yR0Mvb2s0SDIzVUdITHhSMjROWEJGYmNDL1ViQTFCZDdKMWNlTDA2TjlRSXdZN0ZZU2hnejdsSk00aklKZGR2ck1Ic1ZoU1A4M2R2N0VIbEkvOUFHUFJXRWNZUnp2TEEzWThGMW9hOWswd00vZ0JBdERISzc1V2NjZkVDL2dvUDl0L0FFRTd4VVcrbjlnQ2JZV29pT0JETW9uK0Rjbm9iOFhTUzRUazR0Q1ppWHFEczExYTVGcFFSNFByV1JwWkQ2cmJOYk9DNUVzbFZkTGRXdmFXbWJXVzVvRWpwZU5YdnRRdHhWcy9OSGs4bVo4Y2dPcjhPYndaRFMrdVR3Y2tac0llMWtKUjU4UmZQenpJc05aN0JmbFovdFR2VXdLOXVudXl2QzdnOHVIdzh2VjVISm1SdTg1TFg2aC8vVEpMK1JSeUFhZWZnOCtlZi9EMzNsN3ZIZGRoM2ZwOGNIWjBmTCtiSEwzNmE3NUsvNWtyNjUvOGs4K2pJOEhNdW5nSDAvSXVwQTFYQ2JNdXp3Ni9qQWc0ZVpLZWVxS3ZSODRwWVBvMjNhM1Q3b2h1ejF3eVZ3ZVhVeE90OUhTb2wzM0pGbHJZV2FIdTB4d1RnSlZ2QVc0SGhSNXNpek5LaG1XMVF0NzdKMlBUejd1OGtldWZiVGJEamZleFdUL05VOWdJWnZjMVBPcU5NamN3NDIrb3dGTUlHTUlYNDd6dmZIcGErNUhybjNMdjdyTkNqaFdId0hoRWpTMnRwQm1pMll1RVExQ0QvdUNjVEVLeFFUK0o0SUV3bzlGUk1Sb0lvS1IyTjhUazBqNFJHQW05cW53c2ZBUEJKNklQU29vRjhHZU9LQmlIQW9haXlBUUIvc2l4czQrWm9JZGlQR0JDT0kxc1ZtMW5UN1BaV1JpQ3EvbGN0bGZyK04rWldmVHFWbEI5Z3hheTdhWlRzRWROTmNXUmsybk1tbVF1NlNSOCtRRm12K005cFNsL1FwUUtwdjJKb0h0dmN4ME83OUpqZEVKN0trL1FSWGtFcDhiL3dWNDhGSnFadHAwTFRUVDA2bTJNbTNSdk1vTFk1RXRJUEZDN1dNZWh3RGVJTWdtQWNpVURybEIrR2xiTjQxVkNFeG5jRmU3Z3NhOXViN0gxUHZZek5aRkJ3a1NQMlkrMHFsS0VDTlFja1lwU1pDV1NVZ04wV21hK2pER05GRG5kbW5mbVZJTEN4TTdleXBpU3JNOFMxT1h4M2NOa0VOQ2Z2bkJQTGpzY1pQc2RVKzlnalFYY2ZJaGVxRGtrRndyazRiTDA5Rm9PQVI4cUtYZzBBRWJmdjE1bVFiMDh2MzE2WDQwdTdnUGNEcHBabUFEc0JhRVE4N2xWSnl2aTZETWRGVlAxbHhzdWtaNVhpME5PTmJhaGZrS1l5QjlkWEh2cEIrVjkxbjdWS1J2OTdoODExWjUzaFVqLzFFeUR5Q2JkSjV1cGZQUXVwM1F3K01nUDlBMVN1cjlNVFk0M1F0dVF4Ykh4WTlQbWJyUEVXVi9Oc1BRajRLQWNRN3pCVWVTRDJjRlJDZHJUaFo1bTUxRHpmbndGUGFzMmJPVjFBcFcyM1BrdFVrV3MrM3NIWDZkNk9ZNXBWQkdTR3lRMWp5RzRqSXlLTUlxaENxRUt5eDFrR0NkQWhQRVZia3BLMmRqR1BrY2xxT3lhV1dwWEFud0dKN3Yxakd1bXF1Y2tFem1EbTM3VjVMTFR0L0drLytxbGdablo3WmExSjJ6S3dEclN1Ri9BV3BRMjVHUUVRQUEiLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNlRYcGplRXhEU25WWmJWbHBUMnBGTTAxcVFURk9SRTE2VG5wRmMwbHRWalJqUTBrMlRWUmplVTFFV1hwTlJFRXpUVk4zYVZsWGJIWkphbTlwVWxSS2Exb3hiRkZoVjJoWVpGaGFWbE5IZUV4Tk1sVXlVakpHTms0d2NIZGpXRTVzV1d0R1FsQlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTV3BDY2s1WVJtdGxiVTV3Vkd4YVVGRnVXa3BOV0VKTFlteGtibEp0TVhwaVJFWnhWR3BhUjFsVmVHeFZWVWw0V21wb01scFdaR3RUUlc4eVZGVlNRbVJIWkRKTmJtTjNZVlJSTWxacVVsTlViWGMxVG1wc2NtUkhhRTVqZVRGVFZWVjRlbFl5YkV0U1JYQnNXbGRrUjAxV2FFVmlSMXB0V2pJeGRsSllWblJXV0dSM1VWVTFlV1ZzVm1GTk1HUllZV3hPWVdSV1pEUlZSM1IwVFRCYVUxSlVUVEZhVlVaWFZEQktRbU15ZHpWVGJsSllWVzVHUkZwSWFGTldiR2d5WVZjMWNtSllaR3BrTUVwWFVXdGtlVkZYZEZoU1JUVjZVbGRzU2xWWWJGSmpNbEpyVlVac2FWZElaekZPVlhSclpWZFNkVmRHU210VU1uUlZWbGRvUmxkdVNuTldhMnQ0VmtoQ2VsVnRNV2xXYWxaSlQxWnNWVTR4VG5GT1dFcHhUakJrTmsxclZteFZNakZwVkdzNWMwOUlTazVQVmpsT1ZXcFNNVll6YURKUFZYUllWMFpHZDA5SVRraFplbVJtV214V2RrNVVXbGxUYTNCUllucG9WMUZ0VWtkYWJWazFXVEZhTldFd2FGZFdSVFZOVjFWa1Rsa3hUbk5rTTFJMlRXNUNlRlV4VmtwaFV6RkRZbFJhZEZwSVZsQmhiR3hZV1c1Sk1XSnRWakJSTTJoeVRUTndkRlpIVWxKTVZXeEVURlJWTWxVemJFMVhiRGx0V2pCb1NHTkVTa3hqYkZwWFZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVa3pZMGRSTW1Nd1NtMVdSMUo1V0RKb1VGZHNUWHBPUlZKYVRWaFNObEZYZEZKVE1VNHdZVVJTUlZNeWFIcGpNR2hzVjFaR1ZHRkVRbnBKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1cxb2FXTkZjekprTUZsM1ZWWldiRTlYUmxKbGJVcFRZVVpKZDFGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRWw1U1c0d0xtWm9Ua2d0WVhaZk1IQlphMDFyY0RsMVFtOXJZMlkyY0dOWVpUbG9TMjFUTkRkbFFtdEtaVTFMVkY5cmNGRkJWRlJVUTFJelkwRXhReTFKUm05NE5qYzBWbWRzY2psa01uaGZVa2xKZGs1RWFIUjRXWFk1YlVWUVJrMXpRbmhtYVRVeFltbFVRa0Y1UWtScWVteGZOalZzVFZkT2NUUXdjV0ZHYUhGelYzZDNZWGx6WjBndFZsRTVXbEYyTWpocVMyeGhjWFphYmtKcVdHOWpka2x1YWxGQ1lucFJUakpCUkd0SE5XUTFNSEExV2twRGJqUjBPRko0TjBSUFJ5MWFNVVp2VkhSWk1VazRVbEZpYldsTU5IcG9Ua3RmY1ZORGNXRlpZMGhTUVVWbVJHaDJSa0ZuUVY5SGRFUlNNMnhSVEVwalIwNXZSbUowTjJ0cVYyWnZjamwyV0VnNVdtOXNUbU5vY0d4alN6bGxUV2gyVUZWVFJtRTJZM1J2VWxkU1JIbE5WR2N3UmxaVE9HRkhVRk5WYjJGWFJWVXpOR2xMYUdsd2VUQkpiMFZVYjJ0bGNYSktaRVphZG1zdGJUUk9Wa2gwUm1aWVVTSXNJblJ6SWpveE56SXdOVFExTXpjM0xDSmlJam9pYjNGcVpuSXhNV2R3Y0VoWVkxbENWbkpZU0Rnd1NtNWxXWEZ3Vkc4MFYyRm1OMmd3UzB0dlFUZEVheUlzSW01dmJtTmxJam9pTTJOaVpUQTBaVEV5TjJKbU5HWm1ZVGsxTlRWaE1EQTBZMk5pWlRZME5XVWlMQ0pqYm1ZaU9uc2lhbmRySWpwN0ltdHBaQ0k2SWtwWWJWSkxRMWt5WkdsdE1YVnJVVTU0UjFrMFQwdFdaV0oyZVhobVpqRm5VMDl0YWpaTFZIQlRkV3NpTENKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lJd2F6VnhaSHBqYVU1V1QwSjJTVEZ3U201WFowWnRjMnd4YWs0MlJtRk1aVkZDTVdZNGRtVlhaRWhLTmsxRVFYUm5kakozTUdrME5sWTBVazVzT1RZNWEzUm9UWE10VWxGTWMxZHBTa1JLWldWblJqRllSR3htWm1kdGIwVjFiVlYzY0VGT2NucFZXak5IVjJwVFduVlhlRkJyYlROR1VrVXpOV1ZCVms5Q1FYTnNPVXAwVjFKeFEyUjRVbFpZZG1sdWEyMTNZM2RDVmtKSGNrRnJWMFJPYzBWcFNWRjVVWE5rWkZCWllsaDROVFZMWkhsa2JsaFNaRTlyVkZWb1JWcHliRlpKTVZSd2MxSnRZbFkxU0RsWlZEZFRhalZ5YWpkSGVqSkZaVk50WWs1UGJEaHlUVGxmVFZJMGRWZDRkamxMVjFoUmNEaHpSMk0zWDJaVmJ6VTJXRXBLVUc4NFZrSmtSbVptT1dOV2VXdElWbFJPVEZsSFRXTlRiSGQwZWpKd2NWTlZTV2t0UW0wMmJXUjFUMnBaVjJKeU5XNWxkRU40YXpONmJWUmtVUzFKUXkwMU5sTjVURnBmWm1kSVIzQXlTM0pXVmxFaWZYMTkuRkJSVW00Skl0bk9PWFVtMjFkb3AyTHV3ODlEMXdHWkhPZHRmU3AzMHdYSmxKUkNKTUZrWVZyRkVGc1RCZ29xODhYcTl0Vm1TQXdOVmRLVzBvU1lsRzFaZ2k2NFloWkI3TUJSdzd5b3N5cXNCdlVMcmJWV1RRWXMybHMwSFVyRGZtclVXNFl2eWtLSFVOenJSUFdMMk56TF9KTzRqUHFXTkVKZVk2dzcxYnN6N0g2VTJJSGE4ZGw2V2stRnA2allvZU4wUmh0M3dQWnJXTHVKSFVhQUtuMjdDY1kzQjQ0QVZUUHY5TGxoQWM4MVI4SFFiMnRvZml6N3N2RzRXX3RBR1VZSWdGQXlESllEZFd5M2R3MmhSN1BkQmxZR0pNVWxDaGRqeGU2dkh3bnVyNlNkQUUwQ2pLSWFSTFFMUklTSzNkT3BTTDVCNHBjS1BaY0lwU1R2dGhBIn0.","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df"} +[{"id":"212253b4-df38-4a21-8e61-ad464d3ceab3","source":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"removeParticipantsAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-eff9-4721-a55f-39cf4f069a3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:18.9581809+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b"}] +[{"id":"76e3678e-df67-41b9-b204-3381a76b4adc","source":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-eff9-4721-a55f-39cf4f069a3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:18.9910255+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b"}] +[{"id":"df5661fb-848b-4322-97f2-0b73613867ae","source":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"removeParticipantCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-52ec-4b2d-825e-0f7011c653ed","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:19.0533603+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed"}] +[{"id":"568c1bed-fffd-4320-96db-e787cd60d160","source":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-95c3-e7d6-44482200b1a4"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-52ec-4b2d-825e-0f7011c653ed","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:19.0509734+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed"}] +[{"id":"51fb0087-e76b-4748-b892-762a79451227","source":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed","type":"Microsoft.Communication.RemoveParticipantSucceeded","data":{"operationContext":"removeParticipants","participant":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-9655-e7d6-44482200b1a5"}},"version":"2024-06-15-preview","callConnectionId":"31002180-52ec-4b2d-825e-0f7011c653ed","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.RemoveParticipantSucceeded"},"time":"2024-07-09T17:16:20.5273943+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed"}] +[{"id":"ab1437f6-ce3e-46c9-af76-9fad6b813d6f","source":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"removeParticipantCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-52ec-4b2d-825e-0f7011c653ed","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:16:20.5994743+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-52ec-4b2d-825e-0f7011c653ed"}] +[{"id":"fae220f2-acd4-4f20-8451-2b4bb060f518","source":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"removeParticipantsAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-eff9-4721-a55f-39cf4f069a3b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9sRmRwLWJwREMwZTBmQjVrNjQ5OW1RP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"f2acfa0e-dd79-458e-80c6-057c0ad5b0df","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:16:20.5988789+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-eff9-4721-a55f-39cf4f069a3b"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.json b/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.json index 765177979ce2..8e851702de0b 100644 --- a/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.json +++ b/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.json @@ -17,15 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", "participants": [ { "identifier": { @@ -51,45 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1c38-48f3-b14b-7c8146050645", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:29.5080308+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", - "operationContext": "recordingAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1c38-48f3-b14b-7c8146050645", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:39:29.5080308+00:00", + "time": "2024-11-22T12:32:09.5811629+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645" + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", "participants": [ { "identifier": { @@ -115,45 +98,101 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:29.5861543+00:00", + "time": "2024-11-22T12:32:09.5992836+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "recordingAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:32:09.608869+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "version": "2024-11-15-preview", "operationContext": "recordingCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:39:29.5861543+00:00", + "time": "2024-11-22T12:32:09.6393416+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "recordingPlay", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:32:11.4050896+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", "participants": [ { "identifier": { @@ -179,25 +218,29 @@ } ], "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1c38-48f3-b14b-7c8146050645", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:34.6831704+00:00", + "time": "2024-11-22T12:32:14.9737035+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645" + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", "participants": [ { "identifier": { @@ -223,48 +266,83 @@ } ], "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:34.6831704+00:00", + "time": "2024-11-22T12:32:14.9737035+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9UUkRLYnQ0a19FT0w2STg5Z1NPakVRP2k9MTAtNjAtMTAtNTcmZT02Mzg2NzMwMTkyMTU4OTU5Njk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ/RecordingStateChanged", + "type": "Microsoft.Communication.RecordingStateChanged", + "data": { + "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ", + "state": "inactive", + "startDateTime": "0001-01-01T00:00:00+00:00", + "recordingKind": "azureCommunicationServices", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-5c6f-41c6-964c-887e4d128d9f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.RecordingStateChanged" + }, + "time": "2024-11-22T12:32:15.0431569+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9UUkRLYnQ0a19FT0w2STg5Z1NPakVRP2k9MTAtNjAtMTAtNTcmZT02Mzg2NzMwMTkyMTU4OTU5Njk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ/RecordingStateChanged" } ], [ { "id": "sanitized", - "source": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEyLTAxLmNvbnYuc2t5cGUuY29tL2NvbnYvYUJ3NVNTLXpSa0c0a1d5OGVzVGJXQT9pPTMzJmU9NjM4NDU1MzAwNjYzMTg0NDc0/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI0MjFmMGIwMC1lZDQyLTQxZjAtOWNiYy00OGZmZGEwODAxMjEiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI2NzE3ZmE2MS03YTFmLTQ0MzEtYWE1ZS1hMDYwM2E1MjBhNDIifQ/RecordingStateChanged", + "source": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9UUkRLYnQ0a19FT0w2STg5Z1NPakVRP2k9MTAtNjAtMTAtNTcmZT02Mzg2NzMwMTkyMTU4OTU5Njk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ/RecordingStateChanged", "type": "Microsoft.Communication.RecordingStateChanged", "data": { - "eventSource": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEyLTAxLmNvbnYuc2t5cGUuY29tL2NvbnYvYUJ3NVNTLXpSa0c0a1d5OGVzVGJXQT9pPTMzJmU9NjM4NDU1MzAwNjYzMTg0NDc0/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI0MjFmMGIwMC1lZDQyLTQxZjAtOWNiYy00OGZmZGEwODAxMjEiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI2NzE3ZmE2MS03YTFmLTQ0MzEtYWE1ZS1hMDYwM2E1MjBhNDIifQ/RecordingStateChanged", - "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI0MjFmMGIwMC1lZDQyLTQxZjAtOWNiYy00OGZmZGEwODAxMjEiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI2NzE3ZmE2MS03YTFmLTQ0MzEtYWE1ZS1hMDYwM2E1MjBhNDIifQ", + "recordingId": "eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ", "state": "active", - "startDateTime": "2024-03-08T21:39:34.3666276+00:00", - "recordingType": "acs", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-ed42-41f0-9cbc-48ffda080121", + "startDateTime": "2024-11-22T12:32:14.647788+00:00", + "recordingKind": "azureCommunicationServices", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-5c6f-41c6-964c-887e4d128d9f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.RecordingStateChanged" }, - "time": "2024-03-08T21:39:34.6831704+00:00", + "time": "2024-11-22T12:32:15.1064296+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEyLTAxLmNvbnYuc2t5cGUuY29tL2NvbnYvYUJ3NVNTLXpSa0c0a1d5OGVzVGJXQT9pPTMzJmU9NjM4NDU1MzAwNjYzMTg0NDc0/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiI0MjFmMGIwMC1lZDQyLTQxZjAtOWNiYy00OGZmZGEwODAxMjEiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI2NzE3ZmE2MS03YTFmLTQ0MzEtYWE1ZS1hMDYwM2E1MjBhNDIifQ/RecordingStateChanged" + "subject": "calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9UUkRLYnQ0a19FT0w2STg5Z1NPakVRP2k9MTAtNjAtMTAtNTcmZT02Mzg2NzMwMTkyMTU4OTU5Njk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIwNDAwMjI4MC01YzZmLTQxYzYtOTY0Yy04ODdlNGQxMjhkOWYiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiIwMWEwN2UzYi0xYTg4LTQ2MDQtYmE5NC04N2Y0M2IyZjgyYzQifQ/RecordingStateChanged" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", "participants": [ { "identifier": { @@ -289,26 +367,30 @@ "isOnHold": false } ], - "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1c38-48f3-b14b-7c8146050645", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:35.3394745+00:00", + "time": "2024-11-22T12:32:15.4826095+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645" + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", "participants": [ { "identifier": { @@ -334,50 +416,53 @@ } ], "sequenceNumber": 4, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:35.3394745+00:00", + "time": "2024-11-22T12:32:15.5030786+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.PlayCompleted", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "version": "2024-11-15-preview", + "operationContext": "recordingPlay", "resultInformation": { "code": 200, "subCode": 0, "message": "Action completed successfully." }, - "operationContext": "recordingPlay", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.PlayCompleted" }, - "time": "2024-03-08T21:39:35.3550509+00:00", + "time": "2024-11-22T12:32:15.8491805+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925", "participants": [ { "identifier": { @@ -402,26 +487,30 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8f10-482b-aba4-d4a4fc26b925", + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:36.5582401+00:00", + "time": "2024-11-22T12:32:16.044757+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8f10-482b-aba4-d4a4fc26b925" + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645", "participants": [ { "identifier": { @@ -446,17 +535,502 @@ "isOnHold": false } ], - "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-1c38-48f3-b14b-7c8146050645", + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:16.0376735+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:16.5852406+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 6, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:16.5852406+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:17.1262136+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:17.1307661+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:17.6661627+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 8, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:17.6895677+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:18.2008404+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:18.2102031+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 10, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-8877-4080-b793-50d7f30a4f85", + "serverCallId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:32:18.7276637+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-8877-4080-b793-50d7f30a4f85" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 10, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-01b3-4afc-be2b-a1bd3b6a9a0f", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "d709db60-e3aa-4335-8b54-e9933e2de242", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:36.5582401+00:00", + "time": "2024-11-22T12:32:18.7412909+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-1c38-48f3-b14b-7c8146050645" + "subject": "calling/callConnections/04002280-01b3-4afc-be2b-a1bd3b6a9a0f" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.txt b/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.txt new file mode 100644 index 000000000000..0178181ca44e --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/CallRecording_Live_Tests_Creates_a_call,_start_recording,_and_hangs_up.txt @@ -0,0 +1,24 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVgyQS9iMGlJcDZrWEFXRGh1cGszVHZKTnBzekEySUNuS1ZpSkxXb3FPN1hiNjMvZFNkaEtuN25heXUxTmdITUNSeU10eno3MThuZXN2UFNYSzhyaTJSVjRvWVl1NjZ2RXZ2ZHpVTS9lL3lIcThsM0NoV2s1a0pnU1ZLVXBESENNV01vcWtqQmdTc2FSVVlTeVNqTjNnN2tNSkNwS0lvamlrRWRJNlU0Z3hsbENLc1V3VjdyM3VaVVhibEdKMUxHYTZ4NnQ1V2I3dTZTcHI2cUt5Qjg1akZoR1JCbGlnbUNZQ01TVUlTbkNVSVVaRHFtVWdkTW9DZ0NsRk5abUxpWFpqMWlpTk1MWlFSU00yUUdtZTZaemtDb1ZhUklnSmVFb1YxWWl5UEdPcHhDblRFb0NtUlpacENEd1haYXVmdUZ5dUd1RFhhN1c1MTJiWU5HRFptTHJSeHE3MnhHVHQ4K3ZybnEzL2lGVEplQ2RWNUFXcFdzTmdqTDd6OWZCNVVhcVNoTVF5d3hRU2xHckVkQ3FReEZtQWNCQ1JsQ1l5bHpUYlRaWFJiVDAzcXNQdHZTVHUvNUREc3FqdVdwZEdZYTFRVXdDYld0dTAzUGRGVS9UenNwaE1MWXhicnZydEhjeEtYOVV6MStQZlUxODF2bEpvM2k0MHdpRUNvd3lKdTdhdjFKYXBVdjQ5OGZQYTNPbk16ekhOa2pRSmtaWkN3dXFpTVVvMElZaG9HY3FRRVNheDltbnNGOFFQUXV5dkdmMjlHQkNNSW94SWltZ01VY3gwVm9oaEJXNE5zRlVLcU03RU9yb0paS1g5TTRYd3dHa25DS052dGJKL0pxcHJSanRFNTFsemFVVFZOclZ4ZE9FVnlJYTBUd2p0SjFFL1RubkE0c1R2ZmQxTXpLaXVySzdBOUV0UHJSODNtMWswVGJrNTZQdzJjMXRhbHJXRWp2c0JIcHR4VlErUUY4RDZEYkNIdllOajcrQ1VlWVRHZlF4L3hCbTBneFl5Q2NQZGl4cHNUQnlWR0FPUFBnazdNemtZWFhLeTJZQ3V3UTRBMFQzTUJtS2VGYlVYNHBReTcvenkxQi8rZXVvUnpMd1V2Z09QRU9LUkJMd25YaHBEQzd5NXh1VEgvc1RBV05VZzB4YWY5ZFo3THZuZnZDV2FBV1hZL1I1RTc3VndmdkNzblhwR3EzdjNzRFpmb3JhWVZBSTI0dVJIbzU2d3VRc2dYTDhYU3FONWJzU0VINDNlTDUvYW1rWEcxZUxUcS9RZjArWnEyVjd2QmJmeDZzUDcvUExOaGRwaU9adHZ4aWhSWlVVbXJPWVF0WGYxNXRTakpNQXhqbGhBbnNlOFNaOWRBVFdUbDB2UGlDd3prSzQrSlltYksrSVp0MWpXZHJ2b2RBczlUQ0hmdStqaEM5SERiOUVwY0hkaENXWEJBNFZWRU9INFd3OHNKU0Y5Z1lmT2J0Y0QvY2tlWU1sMUdTSTBUR2lLU1J4MjZDVHNSMEUvaVQzWWJtbUhiVFJjVHh2czUvNjM4dThkWFY2ZEh4KzhnWFdNV1Vqak5JQzlubUtjaGpHTGQxM1RKOWRKR2tYMC8zQWRQcnFtWWNwWUFKZHJHZ1ZKa0lUaHpyekJUdSt5Mm9pMkJlOHNJZUFjUncvZVNSejBDWXU5TUdDTXZvd0FaWFFuUExhWnU1L3JKZHhhZzg1Sm1LUUJ3WCs0RS9xem5KUkM2cExQUkZHaDdyaGN0ODZLakcrT3V5V1NDeTNLU1cwS081MXh1VkJlSTlTZHRvMG9qTGZRRWs2V0RWK3phbXdOZTM2NGYzRXpPcm9oTkxsNWR6UWMzVnk4RzVLYkJIdEZCYWVlNXVjZlQ0VDhmRXV2N0hITmpvWXMrQmk5Q2c2aTYyUis5dW5ENGNRUFI2UEYyOCtqNjkvb1B3UHlHM2tnc29HbnZ3ZmYzQlozTk0zdDVWMTI3VWVIVlZUOXVuZW1XdlZxR3VWS0huL1dGMG91cyt1MmczODRISnVaYU9BYVlkN0Z3WWREbjBTYnkrU3hLL1hleHBUNnliZnQ3aUxwaHV6MndMNi9PRGpmUDk1R3kyZDIzU01MYTJCbUI3dWU0SWdFVitrVzRIcFE0b21xMGtzNXFPcG45dGc3SFIxZDdmcFBYUHR3dHgzdXV2UDlOOStMQkJheUxuVXpyU3VOOUQxYzVUc2N3QVNrUXZSOFhPQ05qcjhYZnVMYXQrSnJiREdERS9VQkVPNC9iUm9EK3BxM1U0Rm9HSGw3bEtkREhpUWNFejRhY2tyNUh1WkJ6Q1BDRThyam1MT0kvMEk0aUpDWThvVHdJYWlSZ0w5Sk9HVThCSnVJSnlrZnhud0VEeU9PR1djSkg0SHhQaWNoWjV0alNDOXR4ODl6VW95UDRiTllMUHJyZGR5dnpXUTgxa3VRemNDMXN1MTRET0dnYVdaZzFIZ3NaSXZjL1l4Y0pNL1FnaWUwUjNuMkE2QmN0UFpHd3ZaZUZKbWQzdVJRa0VqWVUzK0I4c2NwbnB2Z0dYajRuR3FoYmI0bVdtVGpjV1pFYnRHMExtZmFJRE1EeFlYc2c0QkRBSzhSeUVnQTBwVkRiaEYrM05adGF4UUMwd2xjMDY2U2NWK3U3MEZ6ZjlDVHJ0cUFheXVYV0dvVXVES0ZpVkNqSkFWMUNXcFRSbElFQ3VkT09lb1dDdHhPNzUwb05UY3dzWlBINnFYU2k1TThkd0srYXdEeENNTHlVSytjYk55b3ZPNnRkMzF5bmIrNi92VDJIRFA5TDNvMkhlMUwvOTNaWUFENFVFVEJvZU9LVm52NlBtYjFyZjFsL3JIS3BwZkY3ZlZTT2h1QU5VQWM1SlpqY2JxdWZncmRsVHRGZTc3cEdwWmx2ZEFRbURWei9SWEdnRzUxZWUrb0gxVDNoWDJzenJkN25OQTFkVmwyVmNoL3BlSUJaS1BqNlphT2g5WnRKUSt2ZnJ3OE9yZkIrK1YwLzNCcFY3Y2lQa25PMU9SUm9nY3hsTk4vMVFPNFZjT1F4VEhNRnh4SkFad1ZrSjJpUFpxWHRqaUZZblAxbVBhaTNUTzF5QlNzdHFmTVoxck9KOXV5SFg2VzZPWVpMbXVTaHhTak5NVXd6enBWQ01ySkhINGJ5Q1BHb2d5dkMxUElxM0pUVmsxR01QSXBMUWRWYTBXbG5QWi9TTS92RmpDdWpLc2RrVUtVRG0zNzU1R0xqdDhta3YrcGlJWmdKNmFlTjEyd1N3RHJhdUIvQTYrOXpnYUpFUUFBIiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkT1ZGRjVUbnBSTkV4RFNuVlpiVmxwVDJwRk0wMXFRVEZPUkVrelRrUm5jMGx0VmpSalEwazJUVlJqZVUxRVdYbFBWRkV3VDBOM2FWbFhiSFpKYW05cFVsUkthMW94YkVkUmVscHlUVmRHZEU0eFFrVmhNRXB5WkZab1ZscFdUbmxWYlZwMFdUQkdRbEJVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1c1UmVVMXRlRzVSVjFKb1RVZDROVk5IV1hwVWJsb3hZMFZHVUZaclRUVldhMlJoWVZZNWVHSkdXak5QUjJSTVQxaG9iRlpVVmt4ak1XOHpWRmQ0YzFaSVpFbFBTR2h0WXpGV1VWSkliSFpYU0d4VFZtNUNhMUV6WnpGamVteEZVakpzZUZVeldsRk5hMnhDWTFka2RHVllWbTVhVm1oMFlXMVdibVZWV1hsaFZVWnhWMFZPY21KR1pHWmxhMGw2V2tNeGNHRldXVEZrTUVwd1lrZHZkMUpFVG5Wa01EbHlXbFpvTVZaR1ZrbFdia0p0VGxod01tSnJOVzFOYlZwbVVqQldSVlpJV25KTlJFcFlVM3BLTmxOR1pGVk9XRkUwVVd0MGFsVldVa2hrYlVwV1RXNU5OR0V6VmxaaFYwMHhXa1ZyZVdSNlRrdGhhbVJSVkd0WmVWSnNRblZQVjJoaFpWaFpOVTVGZURWUmEyd3pUbnBXVEdOR1JteFVSMlI1VDFWU2QxSjZRbFpqUjJzMFUyNWtTVll4UWxkVlZUVm1ZVEpTWVZWWFpGaGtiRlkwVFhwV2FtUkdiR3BsYlVwdVQxUk9XR1ZxVmpSamJtd3pWVWhhVjJKSVRUUlBWM0J6VFRGT1JFeFZOWEJhVkZZMFRUTkNWazVWT1ZCamFrRjZXbTV3U2xveVpIaFdSbVJZVEZkS05XTkhaRmhYUmxveFpWWndZV0ZWU1RKT2VscENZM3BhYjJGc2JEUmhXRnB1WTI1dmVHUXpXak5WYm5CNVlrUk9hV1Z1YjNSaFZuQnlWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVXB3VlVWR1JXTnJXbmxPU0VsNFdYcFNhbVJ1UmtKalJ6RktZVEEwTTFnemJGQk5NVlpNVFZoV2EyVkdXbkJTUm14M1YyeENNRTB6WkZaSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXdFNlR1ZZYUZGU1JVNTJWa1JDTlZrelpFbGFNakZJVmtZNVNsRlZSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkZGcFpsRXVhVVIxZVRKQllsSmpjMWRFY2pGemFqVXdOMVl3ZUZaU2FqZ3lZVkV6Y2pWMU5XWnJNMUpWVm1aNFRWSndaRU5MYUVSMVRsbFdWblpOU2xKaFZuazJRVWRrZGtVemNHeHpaV1JxWVVjd2RucENNek4xVERsTWNGOXNORXBvUm1KS1drZG1NbmhEVEZJd2FVNURiR1pIUkUxUFRrcGtZVVZCTWxaWVZ5MU1NMnBCT1doQ2FWUm5ZVlZxWkhNeFRWcHNTMjFDY1ZnNFozTjNlSEo2Vld0c05XdFZPVFYxVUZkR2VYQXlaV3RrU0RoMlNIZHNVbTFFTUZOdFJHWTBWa0ZzYzFrdE5HcFJjRGRhTmxOTFluTjBWMGhWUjJkTldHeG5SRVJ2TkVndFVuUkNaRTlWY2tscWFGa3dSSFpXWkU1eFZuazNNVnBOZVVaM1ZHOU5SbFZQYjJwcFltaHVURmRCYVdabFJVMXdSMWwxTkRSS00wVkRObkpMUWxGcFZrbGtMVFZGTkZCU1NHcFJOM05IYVdzeGN5MXNWalE0TFVwc1JXSjFSM1JCY1U5QldDMUVlbmRFUzFkcGIyOXhYMDlxWTFjeVUxVjNJaXdpZEhNaU9qRTNNakExTkRVMU1EQXNJbUlpT2lKaVdFeGtVV0U0VURrNVdqTktiM2hwV0VSMFRFMTJTRk5hV21FeFJGZGlUV1Y0WW1sd1VDMVphVWwzSWl3aWJtOXVZMlVpT2lJd1lUazRZams1T0RFMk9UUTBZV1JqWW1VNVl6UTJOalkxTVdOaU5HRXhPU0lzSW1OdVppSTZleUpxZDJzaU9uc2lhMmxrSWpvaU1GaHVSa3RSUnpGUWVEQlVhVWszZDBwdVlVaHNNa1ZDWkd0cU5HNHdWMWs1TldwSWVHbFdSalpLYnlJc0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNkluUXlNbXhuUVdSaE1HeDVTR1l6VG5aMWNFRlBWa001VmtkYWFWOXhiRlozT0dkTE9YaGxWVFZMYzFvM1RXeHNWSGRJT0hobWMxVlFSSGx2V0hsU1ZuQmtRM2cxY3psRVIybHhVM1pRTWtsQmNXZHRlWFZuWlZodGFtVm5lVVl5YVVGcVdFTnJiRmRmZWtJelpDMXBhVlkxZDBKcGJHb3dSRE51ZDA5clpWaDFWRlZJVm5CbU5YcDJiazVtTW1aZlIwVkVWSFpyTURKWFN6SjZTRmRVTlhRNFFrdGpVVlJIZG1KVk1uTTRhM1ZWYVdNMVpFa3lkek5LYWpkUVRrWXlSbEJ1T1doYWVYWTVORXg1UWtsM056VkxjRkZsVEdkeU9VUndSekJWY0drNFNuZElWMUJXVVU1ZmEyUmFVV2RYZGxWNE16VmpkRmxqZW1Kbk9UTlhlalY0Y25sM1VIWldiSE00T1dwc00xTkRMVTVwWlRWNE0zQlZOVTlQY2pBelpucEpaMmR4VkZkWExXSjVjR2RYV0ZaMWVWcGFhVUkyTnpaQmN6Wm9hbGw0YVhabmNub3hkM1ozVW5weWJETmllbm90YVZwclVTSjlmWDAuRXdEQVZhckFHTkIxekc0QUVoUlZzZFhRRVI2NUtQTEt0MFNCWjhGOXJHM05rUmI0a21ZbXp6T0tPWWxwWUdERjJJbFY2MVducXNtMnNsVVByQzhSNVAtbm9ERnd4eWhNamdFM2tjZXB6Mk16Z0lWR1RFa0dzRW5mbkE3U09DbUJ0MFRDUGJiUl80ZVN6RzFXbDFNQ1JzZzNBMzFhZzhXQVZKOVJRaHdfTU1fOU8wYmNJcXU4eWtORXlaTWlXclpPZXRqc1VNZjdmUU9mZlh6ejRlY3hLNnZZWXpQbUdDdGJuWmpoSW4xMmNGM0JXbGxlVDNHQVhObHVZOE5SNTdkanl4U2FDaERYakV5SzVPYU1Db01aWmkzWWtTMlBGNWJISnhmbXVrNnFTLW5sbmhFVEdtOHNRSFBZUTBfa0dTWUNlRE1jR25ObnNHMFY2dlZQLUVKUDFBIn0.","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d"} +[{"id":"e05c2418-f612-4495-897b-0bad3d22c687","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"recordingAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:18:22.9574026+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"0ac4d782-c373-4af4-a755-a33742d6c91f","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:22.9574026+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"fa205184-7f9d-4121-969f-cf7cc63e96bb","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:23.0590192+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"fc5775d4-0697-4dd7-abbc-fbaec9221d6f","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"recordingCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:18:23.0590192+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"406e4011-2250-48b6-8f4e-954604a073c8","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.PlayStarted","data":{"operationContext":"recordingPlay","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.PlayStarted"},"time":"2024-07-09T17:18:24.2001941+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"6136115a-eb4c-41ce-81e4-41c42f27dab7","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:27.5521865+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"e3657c35-79f3-4b12-a959-854a81955591","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":3,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:27.5521865+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"cc440d99-7c8a-49ee-b358-485895a017a6","source":"calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIzMTAwMjE4MC1kZDcyLTQ1OWItYmQ0ZS0xYmVlYzk4YjkyMTMiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI0MmJkZjk5ZS0zMzc2LTRiNzctYjU3Mi0yN2U1YzVmZWM2NjAifQ/RecordingStateChanged","type":"Microsoft.Communication.RecordingStateChanged","data":{"recordingId":"eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIzMTAwMjE4MC1kZDcyLTQ1OWItYmQ0ZS0xYmVlYzk4YjkyMTMiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI0MmJkZjk5ZS0zMzc2LTRiNzctYjU3Mi0yN2U1YzVmZWM2NjAifQ","state":"active","startDateTime":"2024-07-09T17:18:27.3134189+00:00","recordingKind":"azureCommunicationServices","version":"2024-06-15-preview","callConnectionId":"31002180-dd72-459b-bd4e-1beec98b9213","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.RecordingStateChanged"},"time":"2024-07-09T17:18:27.6161005+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/recordings/aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=/eyJQbGF0Zm9ybUVuZHBvaW50SWQiOiIzMTAwMjE4MC1kZDcyLTQ1OWItYmQ0ZS0xYmVlYzk4YjkyMTMiLCJSZXNvdXJjZVNwZWNpZmljSWQiOiI0MmJkZjk5ZS0zMzc2LTRiNzctYjU3Mi0yN2U1YzVmZWM2NjAifQ/RecordingStateChanged"}] +[{"id":"992dc009-9705-432b-bcb1-2b4b144db025","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:28.1335966+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"e37f3baf-7385-4165-b62e-b79efeb0cca2","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:28.1651828+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"1c63eae2-afc6-494e-818b-8eb61f949bb6","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.PlayCompleted","data":{"operationContext":"recordingPlay","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.PlayCompleted"},"time":"2024-07-09T17:18:28.6220866+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"b16759eb-a3be-4522-be71-f4a5f53f875f","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:28.7471173+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"e10fb3af-f177-4aae-8551-899fa34836bb","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:28.7471173+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"8530b743-4649-48c8-b487-65e18c16c1fb","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:29.3462071+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"1b1a5fbe-5c5a-434b-9671-854ccae1ff7c","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:29.3462071+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"8c247709-468b-44f6-9d4a-6f1cabc1e10b","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:29.9113977+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"885b9669-7675-4255-bc87-5334d695b282","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":7,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:29.9588524+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"fe2e9b82-056c-4155-8186-2d870e36c592","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":9,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:30.5253987+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"2289622b-59da-4a49-bd9d-8ca62f46a058","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":8,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:30.5410167+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"39bc6cd9-e8f4-438d-b580-9add71dc1d9d","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":9,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:31.114971+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] +[{"id":"2f6129e4-6e20-46dc-815a-5af2060be154","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":9,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:31.1216827+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"98cb05ed-816b-4e50-8814-c6414ad51d09","source":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-a096-4076-9d71-a614a0914f61","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:31.7361162+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a096-4076-9d71-a614a0914f61"}] +[{"id":"9ec6fba6-20be-4010-93c8-9925bd473483","source":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-75b7-eedc-44482200b9c1"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-7526-eedc-44482200b9c0"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":10,"version":"2024-06-15-preview","callConnectionId":"31002180-7c25-4884-81df-0627070ce619","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83eE1SdDNKeGhFS3h0eWphN084UWNnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"3831f520-9903-4e9c-b22f-72f6446d0b2d","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:31.7011214+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7c25-4884-81df-0627070ce619"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.json b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.json index e490eb496916..39bf913e7c76 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.json @@ -17,35 +17,62 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", + "source": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", + "version": "2024-11-15-preview", "operationContext": "operationContextAnswerCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8403-4066-abe5-59b513c6c993", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-336c-4a5a-bfe1-bcd5769c7155", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:37:18.0158141+00:00", + "time": "2024-11-22T12:27:16.94073+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993" + "subject": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", + "source": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "operationContextCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "20002280-5023-4fec-acc8-66b9ebe92e2b", + "serverCallId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:27:16.9520788+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", "participants": [ { "identifier": { @@ -71,45 +98,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8403-4066-abe5-59b513c6c993", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "20002280-5023-4fec-acc8-66b9ebe92e2b", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:18.0158141+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", - "operationContext": "operationContextCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:37:18.0627211+00:00", + "time": "2024-11-22T12:27:16.9830397+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713" + "subject": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", + "source": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", "participants": [ { "identifier": { @@ -135,56 +146,69 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-336c-4a5a-bfe1-bcd5769c7155", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:37:18.0627211+00:00", + "time": "2024-11-22T12:27:17.206643+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713" + "subject": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", + "source": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993", + "version": "2024-11-15-preview", "operationContext": "operationContextAnswerCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-8403-4066-abe5-59b513c6c993", + "resultInformation": { + "code": 200, + "subCode": 5002, + "message": "The conversation has ended. DiagCode: 0#5002.@" + }, + "callConnectionId": "21001e80-336c-4a5a-bfe1-bcd5769c7155", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:37:19.7502105+00:00", + "time": "2024-11-22T12:27:18.4443875+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-8403-4066-abe5-59b513c6c993" + "subject": "calling/callConnections/21001e80-336c-4a5a-bfe1-bcd5769c7155" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", + "source": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", + "version": "2024-11-15-preview", "operationContext": "operationContextCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-6ea3-4c2a-8f2d-be27dfd8b713", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "20002280-5023-4fec-acc8-66b9ebe92e2b", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "c048d01a-fadf-41c6-93ef-7cdb423ae4fd", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:37:19.7345971+00:00", + "time": "2024-11-22T12:27:18.4540912+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-6ea3-4c2a-8f2d-be27dfd8b713" + "subject": "calling/callConnections/20002280-5023-4fec-acc8-66b9ebe92e2b" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.txt b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.txt new file mode 100644 index 000000000000..986a3d33cf79 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Create_a_call_and_hangup.txt @@ -0,0 +1,7 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVhtQS9iMGlZcFVxSUlHQXMva3FuYkpuSHpLTnFGc1FGRlViWWFXVklwT1hiUzZYK2ZTejhTcCs1MHNydFRZQlRBc2NqTGM4NjlmTjNyTHkydDh2eTBiTEkwMDZySnlxSWx2N1JTVzg3ZC95eHB5WmFRU3RlU3hJbFNOSTVReEhHSUdHY1V4WEhBa0FwalNqWEdTaVRzR3E4ZlNwQXZBb3hJSURReVlSSWd4cGlnRk9PWXNLVDFzcFZrZFpXcnUxTTFOeTFaTFBMOFpjc1VTVlZtUlROeWpGRk1qVXBpZ2hoV01XSmh5SkZRWEtNb05oSEZRWVNKY2pDNUtxWUxOVFZ1ekFhbFVyYkpkRmFwTFZCb1dNaUVUbEFTTW93WURRd1NPRW9SajFPdGNNSUlKaHlBWmxtU0dIQThWWGx0SHJWYzNsV2dyMVViZTJ0c3I2ckFzckpsWld4ejExZlREZWZYbDYybS9BdENGVktPWWg3SFNERWZsR0VjcVZnOUkxUWJHSXpSZHo1Mno3TkNwYWptS2pBRWNaMHl4SXdpb0RlRjZQdXhZQUdqY2F6ancxQlpVNWNMcTllNHJlZjQvUWN4ekxQaXBuWmhWRTJqOUF6QVprMVQxYkxUVVZYV1R2TnNPbXRnM09xdVhkL0FyTFIxT1hjOW5WdmEwVlZIYTdTb2x3Wmhqc0FvUWVxbWJtdTlaNnAxNTVaMDB0TGVtS1FURzZNcFZTRUtZa0ZoYVVZR1JZd0xsQnFpbVU5MUVvU21ROE5PUmpvK3g1Mk5vbjlsWFlLUm02a0kwUkM4bUpza1U3MENhQzJvMVJxa3p0MkVnWUFwUktYK083bXcwM1RnaERXZmpHNytUbEkzaWc2RUxwTHEwcXFpcmtycjVNSXJpT1cwVFFodGk2QWRSdEpub2VpMHZtNG5abEFXalNuQTlFdExiNzV1TjdPcXFueDcwSFhxeEczcE9DOWo2TGp0NG9tZEZHVVhlWDRVQmpqeXNEYzY5VVpqNWhFYXRqSDhFV2RRZDJ1SUpBeDNMN3E3TS9IYlFyUURId1NGcmlQdURpNGwyZTQvMTlCMHNiZitNdStxUlpLVkhxZE1CTjc1NWJqVGV6LzJDR1plQkorK1J3anhpQUJ5NFVVaHRNQ2JheFEvcEZOZDIrZ0syVHE3TjN2dmFTei82YTNRSEFURDN2ZkFkNitHMDBNbTljeXpSdCs2THh2ekZhcXphYUZnRzA1L05Pb1JXenI5Vys1TUc3UklyWnJLaTlYOC9yR3RXaVl5L255ektvWnZoOVA3MSsvT1poL0dwQmI5MDRDWGV5cm5pOVhtVGFzaXlSTFZHQWxPZTFmRHNVZUpqME1jTUo4OGNYa2J2T1lPbE5rMFgzbFdKWW1GWUxVcEVXNmlpR2ZkU3RuWUhZTFRQWEFlUWJRUHdNTm5nb2ZmZ2xOUTdweFN1Z0VDQ2tzZ3dPRTNCQ3dpbkQ2RFlHMTNTRUIvTGdHc3RuVjRDT1dDd2xVYmN2QVV4dkEyNFdHYlJMNEhXeTFhbzFzRFY5TU9mVi9BWHZTOWs4dXI4OVBSRVBDd1QxbEl1QWpnVW9ZclFvVGlrSnMrY29zb0NPai93eDArY0F0TWdvaGdJS2NCWjR3SUVuMUxEWnRxSGRkSzFUWHdNekFKQWh6czh3dmY0MUVrK1BQNGZmNGREdnJUT2ZqZUFuUVVYRVErd1g4eEJmMDVGTG1LVFM3bktpdlErcERjdE02elJKTGRNUlV2amNxbnBjMmEyVnpHUysxVlN0K1lwbEtaOVpZbWhnTmxxOWJlVlUwSmU3MTNkSEU5T0xrbVZGeS9PdWtOcmk5ZTljaTF3RjVXd0dGblpOOE1McGR4enNuaXhXWDhvVG4rT0IyZXpsVC94Y3pRNWNYbzNiOC9zaFMvR0xEaU4vb2ZuL3hHZGtLMjhQVFA0RCtmdlZuaHN2cjA2d3kvdG90elk4VlZNem9QWDV3dmdqZGkzc2xQdGI2c3c1bGV3Ky9PeEdxdUtyZzhtSGN4ZXZ1bVE0THRGZkxRRlhtL2hwUjJ4TGZ0N3ZwWUR6bnNnUzEvTVRvL090MUhTK2ZOcGlmT0dndnoyajFrZ3FNUnFLSTl3TTBnNGFtaU1LdTRXNVJQN0xFM0hweGNIZklMMTk0N2JJY2I3dnhvK0QxUFlCR2IzRlN6c2pESTNNTDlmYUFCVEZ5SjhYU2M3dzFPditlK2NPMTcvbFZOTm9lemRBY0kxNTZ4bFlXa1d0WXpoU2dQdk9oSTlrSTVqS1Nnc2s4bE93YXhNaGpLZ1pCUlg0Wk1CbjJnazR6SmtFaktwZWhKbjBzWVJZN2xvQytIeC9LSVNYSWsrNkVVdmhSTStsZ2VFK21EQVpnTk44Um0xYXoxZVM3L2toTjRsc3RsZTdPTzI2V2RUaVptQmJreWFDMmFlaklCZDlBc3NUQnFNbEZ4amR5MWpKd25UOUQ4UjdTSG5Pd0hRS21xbStzWU52Y3lTNXJaZFdwTUVzT2UrZ2ZVUEM3TnVmYWZnUE9uVWpQVHBCdWhXVEtaSkZhbERacVYrZHhZWk9lUVpxRm1sN1VoZ0RjSWNrY0FNb1ZEcmhGKzJOWjFiVFVDMHlsY3o2NThjUit1YjVkb3Z6WFRUYmtUcVFSSFBsUndFWThRSXd5S1Fzb1kwandXSWVRSlNlSUhNTWJVVU5XdWs3d3pyUmNXSm5iNlVMSVVabm1XcGk1clh6ZEF4Z2paNUJ0ejUzTEZiV3EzZm1zTnhoL3lWVkVjalhDbmQvSXE1eCsxUG85NjNTN2dRK1VFaHc3WXZQczh1UHg4M3hQanE3TW9na3JvNXVyMTZQWWQyQUNzQmVHUVpUa1Y0MDNKazVsMWpaUFY1OXV1WHA2WFN3T09OWFpodnNJWVNGWmQzTmZTUjhWdDFqeVU1UHM5THJ1MVpaNnZTNC8vS25VSGtHM3lUdmVTZDJqZFQ5L2h0WFB4NlM3b3ZWNkU3M0dHcXY3NDR2NTlmcHozSHZKeVAwU1UvV0s2Z1M4NGh3SWQ1Z3VPSkIvT0NvaE9WcDhzOGlZYlE0VjU5eEQyck83YlVpVWFWdHRqNUJNVEw2Yjd1VHI4RnJFcDNHT2ZLeEZobERCWGphclVSeUpOT0RLY1FPRWVKaUZtcml5QXVHbzNaY1YwQUNNZnd6SXE2a1lWMmlYOHUvRDhhZFhpYXJmU0NjbFU3dEQyZnhPNVdPdmJldkkvVmM3ZzdOU1dpMnJ0N0FyQTFvWHY3OVJLWnZWK0VRQUEiLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNFRucGpNRXhEU25WWmJWbHBUMnBGTTAxcVFURk9SRVV6VG5wUmMwbHRWalJqUTBrMlRWUmplVTFFV1hsUFJGRXpUa04zYVZsWGJIWkphbTlwVWxSS2Exb3hiRXRSZWxKTFREQnJOVTVYTVhGVE1tTXpZV3RzTkZsVmRFMWxibHA2WkZWR1FsRlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTVzVSZVUxdGVHNVJWMUpvVFVkNE5WTkhXWHBVYmxveFkwVkdVRlpyVFRWV2EyUmhZVlk1ZUdKR1dqTlBSMlJNVDFob2JGWlVWa3hqTVc4elZGZDRjMVpJWkVsUFNHaHRZekZXVVZKSWJIWlhTR3hUVm01Q2ExRXpaekZqZW14RlVqSnNlRlV6V2xGTmEyeENZMWRrZEdWWVZtNWFWbWgwWVcxV2JtVlZXWGxoVlVaeFYwVk9jbUpHWkdabGEwbDZXa014Y0dGV1dURmtNRXB3WWtkdmQxSkVUblZrTURseVdsWm9NVlpHVmtsV2JrSnRUbGh3TW1Kck5XMU5iVnBtVWpCV1JWWklXbkpOUkVwWVUzcEtObE5HWkZWT1dGRTBVV3QwYWxWV1VraGtiVXBXVFc1Tk5HRXpWbFpoVjAweFdrVnJlV1I2VGt0aGFtUlJWR3RaZVZKc1FuVlBWMmhoWlZoWk5VNUZlRFZSYTJ3elRucFdUR05HUm14VVIyUjVUMVZTZDFKNlFsWmpSMnMwVTI1a1NWWXhRbGRWVlRWbVlUSlNZVlZYWkZoa2JGWTBUWHBXYW1SR2JHcGxiVXB1VDFST1dHVnFWalJqYm13elZVaGFWMkpJVFRSUFYzQnpUVEZPUkV4Vk5YQmFWRlkwVFROQ1ZrNVZPVkJqYWtGNldtNXdTbG95WkhoV1JtUllURmRLTldOSFpGaFhSbG94WlZad1lXRlZTVEpPZWxwQ1kzcGFiMkZzYkRSaFdGcHVZMjV2ZUdReldqTlZibkI1WWtST2FXVnViM1JoVm5CeVZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVcHdWVVZHUldOcldubE9TRWw0V1hwU2FtUnVSa0pqUnpGS1lUQTBNMWd6YkZCTk1WWk1UVmhXYTJWR1duQlNSbXgzVjJ4Q01FMHpaRlpKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1c1S05GVXljRXhoUlhodFVsWldUR0pxVmtoamJWSk5XVlprVWxGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRVY1U1c0d0xsaGhXVVpwYkVGUFNERTRMWEZ5VlRSQlJtdDFRMUEwUlRnd1prMW5ia2xzY1Zoa09GVkdXRGhQYlRaaWQzQnlUVVpvVmpndGRVb3RlaTFUWWpjMU4yaEJOakpZZW1sUVVVZElVVmRTTUY5a1RIbENhRFUyVEVVM1oybGZiMkZPTkY5U2FEUlhkVlY0YzBWa1lsaExibVE0TFVWRVRGaDNOMGt0TVhwSFFsYzBPVWxNUkY5dWRUTkdOalo2UlRkRFpXTXdha3RIZUU5RFZGUkpUMlY0VTBaalNFTmFTbFl5VERkVmEzUkJTVkp2VkVWTGRTMDRNMjExUldob1NraFBNRXhqVUdodFJWOUNZbEoyVDE5T2QxRjZZVjk1Ym5jNE5HRldWWGRqV1c1dE9UZzNaM2RmV2kweGExbFlSbmR4VEdSNlNrMUxORTAyVmpOblEyNU9kbE0wWkRCUmJrWnFRWEZwVTFWNlRscEdUbEZFUlVoR1N6UnNNbHAwVm0xT2JUQlNiWEZJTkZGMVlVNVJSRXh4UkZOeVVqTjNTV1Y2VVhGTGFGVjZWM051V21ablptSkliVkpqTlZWemJsTk1UWGxJVm5ScFFTSXNJblJ6SWpveE56SXdOVFExTXpRMUxDSmlJam9pZUdST1ZqTjNTbHBWZGtSMVRsQk5kMjR6WlZWd1FrZFdjVkZJUXkxc1EwSndkSFoyVWxGVmFERnpRU0lzSW01dmJtTmxJam9pWldKbE5tSmxNbVl3TTJJek5EUTNaR0ZtTVdVM1kyUTFNV1pqTUdJM09EWWlMQ0pqYm1ZaU9uc2lhbmRySWpwN0ltdHBaQ0k2SWpCWWJrWkxVVWN4VUhnd1ZHbEpOM2RLYm1GSWJESkZRbVJyYWpSdU1GZFpPVFZxU0hocFZrWTJTbThpTENKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lKME1qSnNaMEZrWVRCc2VVaG1NMDUyZFhCQlQxWkRPVlpIV21sZmNXeFdkemhuU3psNFpWVTFTM05hTjAxc2JGUjNTRGg0Wm5OVlVFUjViMWg1VWxad1pFTjROWE01UkVkcGNWTjJVREpKUVhGbmJYbDFaMlZZYldwbFozbEdNbWxCYWxoRGEyeFhYM3BDTTJRdGFXbFdOWGRDYVd4cU1FUXpibmRQYTJWWWRWUlZTRlp3WmpWNmRtNU9aakptWDBkRlJGUjJhekF5VjBzeWVraFhWRFYwT0VKTFkxRlVSM1ppVlRKek9HdDFWV2xqTldSSk1uY3pTbW8zVUU1R01rWlFiamxvV25sMk9UUk1lVUpKZHpjMVMzQlJaVXhuY2psRWNFY3dWWEJwT0VwM1NGZFFWbEZPWDJ0a1dsRm5WM1pWZURNMVkzUlpZM3BpWnprelYzbzFlSEo1ZDFCMlZteHpPRGxxYkROVFF5MU9hV1UxZUROd1ZUVlBUM0l3TTJaNlNXZG5jVlJYVnkxaWVYQm5WMWhXZFhsYVdtbENOamMyUVhNMmFHcFplR2wyWjNKNk1YZDJkMUo2Y213ellucDZMV2xhYTFFaWZYMTkuU18zbmd2dVhTWHg2Z21hZWdqOG45b3ZDSzBRQzFBZkJVMkYzenJJVmNXWHJIZk5QdFUyMGNSUXZOLVBvbjd0WUozaUd0aU95LTBsbW00a3ROd2VnamRHdDlqWUpyOWNsU2NEZTlqeGNrcEh3anRzQUh3OXpveGphNXJiYlh3MUU4bUZFSEZQUFNwZXNnS2ZsTlBGMVQycm9MVnVqck52ajNUeTNucl9CN0JILXJVakVQMktBNkRENVNvSmFRLXg1aVBLdi0wR2hhbDNVb01ZaFpjVDNaazZIUjZZUGZGOXM4SWQ0VnFxMUJ3Nm0zQW5mREV1enZWUm4za0QxUWJVcEJlM3NDN3ZEdlUxS3JFS3d3VUM3SFY4LTRtYlpMN0NzaDJNM3l6dkJ0bmVsd1JWbTktUHJzSVBod3VMMjgxOVpSYWNzejN5NU1Wc3JsSG42WUtneXRRIn0.","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047"} +[{"id":"2b7a9e6c-0eb5-47c2-988b-af5ed145aa25","source":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"operationContextAnswerCall","version":"2024-06-15-preview","callConnectionId":"31002180-e6c0-4e71-b095-86c66d35da7f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:15:48.4644363+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f"}] +[{"id":"9b0bd5f7-23bf-43da-a42a-ab7f73f221e0","source":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"operationContextCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-a07a-4372-98f6-d05c9108207f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:15:48.5270762+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f"}] +[{"id":"fdb3f4dd-23fa-4d05-9aee-b3d4b2e34649","source":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-e6c0-4e71-b095-86c66d35da7f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:15:48.542759+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f"}] +[{"id":"9d6c7b83-099b-49e1-af3b-4b9ba71cd372","source":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-1725-b5bb-a43a0d009aba"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-168c-e7d6-44482200b14d"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-a07a-4372-98f6-d05c9108207f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:15:48.5742054+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f"}] +[{"id":"f5f9df7e-f3ce-430c-9cab-acdcd94f4d30","source":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"operationContextCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-a07a-4372-98f6-d05c9108207f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:15:49.4227622+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a07a-4372-98f6-d05c9108207f"}] +[{"id":"451a7110-b109-4e6a-88a7-5374584e3c5c","source":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"operationContextAnswerCall","version":"2024-06-15-preview","callConnectionId":"31002180-e6c0-4e71-b095-86c66d35da7f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9Tank2QUp1N1YwaS1wQlBTelZsRmxBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"7b35a890-d4f4-4af3-8fd5-e51ca07d7047","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:15:49.6576565+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e6c0-4e71-b095-86c66d35da7f"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.json b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.json index 74aee6445616..80dbb5052c48 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.json @@ -17,29 +17,53 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "465f69d2-3300-4730-8adf-63bc785615f9" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-d931-441b-bf88-58b09e9de827", + "source": "calling/callConnections/21001e80-90f9-42a9-91b9-2b964bdf563b", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "operationContextRejectCall", + "resultInformation": { + "code": 603, + "subCode": 0, + "message": "Decline. DiagCode: 603#0.@" + }, + "callConnectionId": "21001e80-90f9-42a9-91b9-2b964bdf563b", + "serverCallId": "sanitized", + "correlationId": "465f69d2-3300-4730-8adf-63bc785615f9", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:27:24.3776401+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-90f9-42a9-91b9-2b964bdf563b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-90f9-42a9-91b9-2b964bdf563b", "type": "Microsoft.Communication.CreateCallFailed", "data": { - "eventSource": "calling/callConnections/421f0b00-d931-441b-bf88-58b09e9de827", + "version": "2024-11-15-preview", "resultInformation": { "code": 603, "subCode": 0, "message": "Decline. DiagCode: 603#0.@" }, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-d931-441b-bf88-58b09e9de827", - "correlationId": "sanitized", + "callConnectionId": "21001e80-90f9-42a9-91b9-2b964bdf563b", + "serverCallId": "sanitized", + "correlationId": "465f69d2-3300-4730-8adf-63bc785615f9", "publicEventType": "Microsoft.Communication.CreateCallFailed" }, - "time": "2024-03-08T21:37:25.9377797+00:00", + "time": "2024-11-22T12:27:24.3776401+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-d931-441b-bf88-58b09e9de827" + "subject": "calling/callConnections/21001e80-90f9-42a9-91b9-2b964bdf563b" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.txt b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.txt new file mode 100644 index 000000000000..1b85a3a39825 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Automation_Main_Client_Live_Tests_Reject_call.txt @@ -0,0 +1,2 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-382b-e7d6-44482200b168","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-382b-e7d6-44482200b168"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-3787-b5bb-a43a0d009ac6","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3860-3787-b5bb-a43a0d009ac6"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9CSm40aV9WNTVFNkE2UFJ6ZTJCeDB3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVgyQTg3cGMyblJCRXdGcmFUYk5QbXRYbjBoV0FEaXFSc0pyS2tTbktjdE5QL3ZsZXlremoxYkNlN093VkdBUnlMdkR6bjNNdlh2ZjdhTXpyTGpvckdwOTdveGhkNVQzM3RwVlV4Yi85NzIxTTlxYlNwRlVtczFqU0pVU3h3aExqZ0ZDVkp5SkdPRWtvTnhscGFmb1c3aHhMRVpJZ1JpMlNFRXBFa1NIT21zY1U0MWlic3ZlcFpYNWVadmovU2M5ZFQrU0xMWHZWY2JzdkM1ODEreTZpZFp0SnBnU0tMTGVKVU01UlF4aEZPcUpXT2M1SmFCekNaenFjTFBYWHRtQlZLcWF2R0cxL3FOWkRsSW95TlNGQ000d1R4a0RPa0RXVUk0eVNrVk5KWUV3bEFNMit0QThkVG5kWHVTY3Y1ZlFuNmVyV3JibDAxS2t1d0xLdWlkRlZ6UDliVEZlZTNWNzJtK0FOQ0pXbUNYR1JEeERtWGxJSkFFc29YaEdvRmd6RzR0UFh4OEx3b1ZOVFFtQ2N1UkM3bEFuSExNY3dhalNCeU9MYVk4VERsOFhhb0tsY1hpOHAwdUwyWCtQMGZZcGo1L0tadXc2aWJScHNaZ00yYXBxelZZS0JMMzA4elA1MDFNTzd1dmwvZndLejBUVEZ2ZXdhM2RHREtnVEZvVVM4ZHdnS0JrVVg2cHU0YnMyRnF6T0NXRE5LaXVuRjJZQTJPRWhhbnlEckpFSTlTZ2hLWndEcVRUaGpMVW93ZEg5Qm80TW1BQ1R4WUtmcTdIeEtNWUtaSWpHZ0VYc3lkOVhxVUEyMEZhbzBCcVhPOThtNEtVYW4vVEM0OGFOcHlvbkxYempSL0pxa3JSVnRDRjdZOHIzUmVsMFhWeW9WWEVDdG9ueERhbDJFL2loWGprUnowdnEwblpsTGtqY3ZCOUd2UHJMNnVON011eTJ4OTBBMXEyMjdwSkNzUzZMZ2Q0c3ZxTWkrR0tHQnhGSkl3d01IK1ViQi93Z05Db3o2R1A5SWExTU1hSWduRDJ4Y3pmREJoZlNuN0lRTkJVZHVSRENmbmlxejNYOXZRREhIUWZaa1A5Y0w2SWhCRXhqdzRQVDhaak42ZEJBVHpJSVpQRmhCQ0FpS0JYQVp4QkMzdzFqYktIOUxwWWRXWUVsVzEvK0kyM3RORS9TMjRRM01RREhzL0FOK0RHazRQWmV0WlVEbHoyMzVabWQraDJrOXpEZHR3K3FOUlQ5aXExUzlXNzk0NHRFZ3JQVlhSdUdSUGJlWFNxdnVKdkk1M2ZsbFNmc3IyemNmUG4zYmZaT1pVRkJzcTU0dTcxWnZSdWZWV04wNkIwOEhGemtsQUNjTVJobU9iUEhONUhiem1IcFJWYVhZWFZOcmFDb0xWcDBTMkUwV0NxbDBwSzd0dGNMb0JMbUtJOWhhNGVDRzQrQjZjZ3ZMV0tXMGFJS0N3QkVJY2ZVZkFZeUxvQ3dnNnUyMEMrbk1KWUxWMTRTRlV3QVdKU1NTQ2JxT0pQaEZSWDBRQjdMUzRBNjhjM0V3UDRKdjhHOEVQRHM4dlRvLzJkd0xKUWtaRHdTTWhKSTQ1bGpqY1pxWlB6RElPUS9wL01JdEhaaEpGSkFvRm8wS0VRakRDTVdmZlU4T1c2cUphNnJvR2ZpNEowT1B3aVovM0tRYzVoTVg0UlFvb0M2TnRFdnJ6U2NUR0FtdzVoSXdad1g4MEIvMUpISmxPWEtibTJ1ZW9PeVpYclhOdkZYazRxSktsMDltMHFId3ptNnRrYVlKU214dlhsTnBYd2RJbGNLU3M1VmIzWlZQQWJoL3RubDFORHE4SWxWZXZEMGVUcTdQWEkzSWxjZUJ6T082YzJvbm1JLzk2Zm5Gc2E2OHZqdlkrVEw1NC8rWFRzalNMNHZyZCsrdmk0TUtmSFphZmZxWC9ZdVJYOGlCa0RVOS9ENTZNWjVPRHhwT1AvcFFXQzVHKy8vZytmblA4ZXZreEc5L3UyZXVMK2ZLZjRmMXhYWGZ3RDZkaU9kY2xYQjg4T05zL2VEc2c0Zm9TZWV5S2czOUVsQTdrOSszdEJkSU4yZTZCVFgrMmY3cDd0SW1XenB0VlQrS2JDaVoydU0wRWh5TlF4UnVBcTBFeTBIbnU3cEpoWGp5eng4SEo1UEJpbTErMjdhUHRkcmpqVG5kM2Zzc1RXTVl1YytXc3lCMXl0M0NEYjJrQUU4Z1F3dWZqV0RBNStpMzNaZHUrNFYvWitEbWNwZytBY1BHNXFxd2dyVmIxVENNcXdpRGVWYU5JN2NSS1VqV21pdStCV0JYdXFJbFU4VmhGWElWam9GT2NxNGdvS3BRY0tTWVVqQ0o3YWpKV08zdHFseXV5cThhUmtreEpyaGhXZTBReE1BQ3puUld4dTJzNmZVR2JnYWxMZUpiTFpYKzFqdnRGTmIyOGRIZVFMWVBXdktrdkw4RWROTE1WakxxODFFbU4yb3NadFo0OFEyTlBhSTlaMlErQVVsMDNWd25zN3FXM3pld3FkYzRtc0tmK0FsVlBtK2hjc1dmZzRybFU3NXAwSmRUYnkwdGI2YlJCc3lLYnV3cFZjMGkwVVBPUXR5R0Fkd2l5UndCeWVZdGNJL3k0cmV1Nk1naE1wN0JsMmdLbS9XajdIbEx0QXpmdGlveVlZc1pva3FLRTh4aUtERzFSYkkxRUpvbkRDR29UckJtQk1hNkd1clpMODQ2TldWUXdzZFBIb2lWM3krTTBiZlAycmdGeVJzZ24zN3I3Tmx0Y0ozZmRXKy9EL1Z1UnpqOSsvbnh6eU5qYjVFTngva3Q4c2h3T0FSOXFKemgwd09iNEFQcE96ajU4c3Urc2ZmZG11VmRkZnprYmdRM0FWaUFjOHF4V3hjbXE2UEd1cTNKOGZicnVHbVZac1hUZ1dGTXQzRGNZQStscUcvZE8rbjUrNjV2SG9ueXpwODF2cXlMTHV1TGp2MHJlQVdTZHZ0T045QjFhTnhONGVCMk0zK1RjWDcwVFlqY2NoU2VuWHh3ZDMrSGxZMmJPSWtUNVg5MHdaRkxBclI3QmZNR1J4T0NzZ09qNCtuQ1JOZjRFYXN6N3g3RDdlbHdWMmhwWWJVK1J0eTVaVERlemRmZzFvcHRuaGdFMFRBaUNId09nbU9TSlJySFdIRW1SMEpCd1o2TFFBaFBFMWJSVGxrOG5NUElwTFB0NTNlamN0Q24vUTNoK3QyNXBxN2VpRmVKMTFxSnQvaXB5MXVsYmUvSS8xYzdnN0xRcUZtWG43QjJBZGFYdnZ3R1pzdXd6Z0JFQUFBPT0iLCJzaHJUb2tlbiI6ImV5SmhiR2NpT2lKU1V6STFOaUlzSW5SNWNDSTZJbkJ2Y0NKOS5leUpoZENJNkltVjVTakJsV0VGcFQybEtTMVl4VVdsTVEwcG9Za2RqYVU5cFNsTlZla2t4VG1sSmMwbHVaekZrUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEpjMGx0ZEhCYVEwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xLT1M1bGVVcG9aRmRSYVU5cFNtbE9SRlpzVFVScmQxbFRNV3RaVjBwdFRGUlJlRTVFVlhSWlZFRXlUME13ZDA5SFJUUk5hbXhwVFhwQ2JFOUhVV2xNUTBwd1l6Tk5hVTlwU205a1NGSjNZM3B2ZGt3elRqQmplVFV6WVZjMWEySXpaSHBNYlRWc1pFTTVhbHBIVFRGWlYxWnNXVk13ZUU1WFRURk1WRkpyV1dwWmRGbHFRVE5QVXpGdFdUSkdhMXBFU1RGTlJGWnJXWHBKZGtscGQybGhWMFl3U1dwdmVFNTZTWGRPVkZGNVRucEJla3hEU25WWmJWbHBUMnBGTTAxcVFURk9SRWt6VFVSTmMwbHRWalJqUTBrMlRWUmplVTFFV1hsUFZGRjNUWGwzYVZsWGJIWkphbTlwVWxSS2Exb3hiRTFhTWpWYVYwWldiMWt5T0RWV2JFWk9UbXRvYUV4NlRrdGhSRlo2VERCR2JsRlVNR2xNUTBwb1kwaENjRnBEU1RaSmJVVjZXVlJOZWxsNlNtaE1WRWsxVDBkVmRFNUVSbXROVXpBMVRWUk5NMHhYUlRGT1JGbDVUVzFWTWs5RVJtcFplVWx6U1cxR2QyTkhiR3RaVjA1NVNXcHZhVTFwU1hOSmJVNTFXbWxKTm1WNVNuRmtNbk5wVDI1emFXRXpValZKYW05cFZXeE9Ra2xwZDJsaWFVazJTV3BDY2s1WVJtdGxiVTV3Vkd4YVVGRnVXa3BOV0VKTFlteGtibEp0TVhwaVJFWnhWR3BhUjFsVmVHeFZWVWw0V21wb01scFdaR3RUUlc4eVZGVlNRbVJIWkRKTmJtTjNZVlJSTWxacVVsTlViWGMxVG1wc2NtUkhhRTVqZVRGVFZWVjRlbFl5YkV0U1JYQnNXbGRrUjAxV2FFVmlSMXB0V2pJeGRsSllWblJXV0dSM1VWVTFlV1ZzVm1GTk1HUllZV3hPWVdSV1pEUlZSM1IwVFRCYVUxSlVUVEZhVlVaWFZEQktRbU15ZHpWVGJsSllWVzVHUkZwSWFGTldiR2d5WVZjMWNtSllaR3BrTUVwWFVXdGtlVkZYZEZoU1JUVjZVbGRzU2xWWWJGSmpNbEpyVlVac2FWZElaekZPVlhSclpWZFNkVmRHU210VU1uUlZWbGRvUmxkdVNuTldhMnQ0VmtoQ2VsVnRNV2xXYWxaSlQxWnNWVTR4VG5GT1dFcHhUakJrTmsxclZteFZNakZwVkdzNWMwOUlTazVQVmpsT1ZXcFNNVll6YURKUFZYUllWMFpHZDA5SVRraFplbVJtV214V2RrNVVXbGxUYTNCUllucG9WMUZ0VWtkYWJWazFXVEZhTldFd2FGZFdSVFZOVjFWa1Rsa3hUbk5rTTFJMlRXNUNlRlV4VmtwaFV6RkRZbFJhZEZwSVZsQmhiR3hZV1c1Sk1XSnRWakJSTTJoeVRUTndkRlpIVWxKTVZXeEVURlJWTWxVemJFMVhiRGx0V2pCb1NHTkVTa3hqYkZwWFZWTkpjMGx0VldsUGFVcENWVlZHUTBscGQybFpWM2h1U1dwdmFWVnNUWGxPVkZscFRFTktjbUZYVVdsUGFVa3pZMGRSTW1Nd1NtMVdSMUo1V0RKb1VGZHNUWHBPUlZKYVRWaFNObEZYZEZKVE1VNHdZVVJTUlZNeWFIcGpNR2hzVjFaR1ZHRkVRbnBKYmpFNVRFTktjRnBJUVdsUGFVcHZaRWhTZDJONmIzWk1NMDR3WTNrMU0yRlhOV3RpTTJSNlRHMDFiR1JET1dwYVIwMHhXVmRXYkZsVE1IaE9WMDB4VEZSU2ExbHFXWFJaYWtFelQxTXhiVmt5Um10YVJFa3hUVVJXYTFsNlNYWkphWGRwWVZkU01HVllRV2xQYVVwb1kwaEJhVXhEU25aaFYxRnBUMmxKZVZsNll6VlpNa2t6VDBNd2Vsa3lUbWhNVkZGNldsZEpkRmx0Vm1sTmFURnBUVVJyTWxwWFNUVk5hbEV5V1ZSbmFVeERTbmxoUTBrMlNXcEJkVkZXU2twUlZGcDRUakJhTmxreFZsZGtSM041WkRKV2JXVllVWGRpUlVwclpESmtkbE5zYUhsVk1UaDVZVEZhUTJJd1pHNVRXRVpFWWxod1JXSjZRbFJSVlVaQ1RHbEpjMGx1VGpGWmFVazJTV3BLYWs1NmJHcFphbU0wVEZST2Fsa3lSWFJPUkU1c1dXa3hhVnBYU1hsTVYwbDNUMVJhYkZscWEzbE9SRnBvVDBOSmMwbHVVbkJhUTBrMlNXMU9hMWw2Vm1oYVYxWm9URlJGTVZsNlZYUk9SMUpwVG1reGFVMUVZelZNVjFwcVdWZFNhMDFxVlhkT1YxSnFUV2xKYzBsdVZqQmhVMGsyU1dwa1JWWlhPWHBTTUd4M1VqSjBURlJIV25OaFJHaDVVVEkxVEZGVlJXbE1RMG95V2xoSmFVOXBTWGhNYWtGcFRFTktOR0pZVG1aaFYxSjVXbGQzYVU5cFNUTkpSRVUwU1c0d0xuSmtSRTR3Tm5oM05XdHdWM2RvVjAxRFgwbEpSbTFDVWtGbFlYaE5VbUV6YTJwbGRYWmlNRXhUVm5GMVRXOUNhbEJZTTBKNWRXMVJibEV3Y2xkck4zUkNWMWRETVdVNGNWOXpTVEZZYUhsbWQxRktRMmQwWjFKVlUxYzNNVlo1VldvMU5UbExTM3B1ZUdwUWF6QXlVM0V5Vm5NMlIyeExZME5XZEVVMWJUVjROSFY0TmxOT1dtdG9hVzVKVVdwelZFb3laM1ZaYUhFNGVWbHpaVjlCVjFONGRWQlphVWw0Y1VGUlYwcEJiMmg1YmtSSWJVaDFhWGhXV0hkdVgzZFViVEJ2TFhGalVXRkVaMWc0V1dnM1ZUSmlRVkpXTkVKdWVXRlFRMU5HVm1sS01uVnJZVEptTkdneFVGVk1ZbU5GVlZWTlRGWjBSMHBuVEVKZlJFOVJibVYwT1ZGcU5FdHlhRFl6V0ZwdWRrNVlTVkpCTFZSM2VYRTVhMk5sV205MWJsOVplRFpSTlMxSFRqQkRibTA0VURVd1ExUklYMlpGU0U5amRVVmFXVGhHV1dWeU5GcG9NekZVUzB0bk5FeDBiQzFhVEV4SmR5SXNJblJ6SWpveE56SXdOVFExTXpVekxDSmlJam9pZDI0NFFtZDNUblpQUm1wM2JWazFhVXBCU1hnMFgzSk1NakYzTmxGTFJWOVNUak56ZDNwM2RrVlhaeUlzSW01dmJtTmxJam9pWmpBMlkyTTNabVZsWmpkaU5HUXhOV0l6WmpabFltRmlNMkpqWlRRek5EY2lMQ0pqYm1ZaU9uc2lhbmRySWpwN0ltdHBaQ0k2SWtwWWJWSkxRMWt5WkdsdE1YVnJVVTU0UjFrMFQwdFdaV0oyZVhobVpqRm5VMDl0YWpaTFZIQlRkV3NpTENKbElqb2lRVkZCUWlJc0ltdDBlU0k2SWxKVFFTSXNJbTRpT2lJd2F6VnhaSHBqYVU1V1QwSjJTVEZ3U201WFowWnRjMnd4YWs0MlJtRk1aVkZDTVdZNGRtVlhaRWhLTmsxRVFYUm5kakozTUdrME5sWTBVazVzT1RZNWEzUm9UWE10VWxGTWMxZHBTa1JLWldWblJqRllSR3htWm1kdGIwVjFiVlYzY0VGT2NucFZXak5IVjJwVFduVlhlRkJyYlROR1VrVXpOV1ZCVms5Q1FYTnNPVXAwVjFKeFEyUjRVbFpZZG1sdWEyMTNZM2RDVmtKSGNrRnJWMFJPYzBWcFNWRjVVWE5rWkZCWllsaDROVFZMWkhsa2JsaFNaRTlyVkZWb1JWcHliRlpKTVZSd2MxSnRZbFkxU0RsWlZEZFRhalZ5YWpkSGVqSkZaVk50WWs1UGJEaHlUVGxmVFZJMGRWZDRkamxMVjFoUmNEaHpSMk0zWDJaVmJ6VTJXRXBLVUc4NFZrSmtSbVptT1dOV2VXdElWbFJPVEZsSFRXTlRiSGQwZWpKd2NWTlZTV2t0UW0wMmJXUjFUMnBaVjJKeU5XNWxkRU40YXpONmJWUmtVUzFKUXkwMU5sTjVURnBmWm1kSVIzQXlTM0pXVmxFaWZYMTkuaXNuMDBEQVQ3QTk3R1JvejVib21IYUhXSUN6Y1dxa0FTdVN3SWpZTjFOWGdiR3VQWERlU1FYSXE4T2toVEp0cGZJR1hESUw1V0xQcTlkckc0cnhEWnZOZlhLa244QjBFM1lTdTViOEdHOHlZX0lKU2JhZzNlTVh5MmROdWFKbE5iMzItTmxsa1NjUk1zcHNiNG5nUnFPV1k2UG43aTFoWkVRa3RYRjNQNll0Y2U4M2FpTW5jMVFFYXJFX1AweXB3c3NnU2VVVklXS2FZRXNFdHVBa2VRUzBlbTlwemVFS2t1VGlMMVZNOTdfaFRoVi1QNDhGSURlQmlTa0JvQXR2ZjFIYUpGNTdBNGhleE1pZnBFdkozVXVhNlp4TGhCWHJwakR1eUdSV1ZmNHFGUDFKTU05WW9sTEFLdmtfVkRhd0Jvdnl4RFFtMlRmUUh2QUtUTFl4bWlBIn0.","correlationId":"304776b1-aea7-44ba-9aa4-85b2614ec76d"} +[{"id":"19b6ca06-aa72-4c40-b790-5532f4e6f344","source":"calling/callConnections/31002180-506c-4f0a-98ce-fbab31a2a075","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"operationContextRejectCall","version":"2024-06-15-preview","callConnectionId":"31002180-506c-4f0a-98ce-fbab31a2a075","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9CSm40aV9WNTVFNkE2UFJ6ZTJCeDB3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"304776b1-aea7-44ba-9aa4-85b2614ec76d","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:15:54.4614411+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-506c-4f0a-98ce-fbab31a2a075"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_media_streaming,_and_hangs_up.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_media_streaming,_and_hangs_up.json new file mode 100644 index 000000000000..7600635cd022 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_media_streaming,_and_hangs_up.json @@ -0,0 +1,266 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-0df5-4691-9881-df55f1727603", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:28.3767894+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-c17f-4623-8232-103c714dc783", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:28.370976+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-0df5-4691-9881-df55f1727603", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:28.4136012+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-c17f-4623-8232-103c714dc783", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:28.4621189+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603", + "type": "Microsoft.Communication.MediaStreamingStarted", + "data": { + "mediaStreamingUpdate": { + "contentType": "Audio", + "mediaStreamingStatus": "mediaStreamingStarted", + "mediaStreamingStatusDetails": "subscriptionStarted" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-0df5-4691-9881-df55f1727603", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.MediaStreamingStarted" + }, + "time": "2024-11-22T12:29:30.2695655+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603", + "type": "Microsoft.Communication.MediaStreamingStopped", + "data": { + "mediaStreamingUpdate": { + "contentType": "Audio", + "mediaStreamingStatus": "mediaStreamingStopped", + "mediaStreamingStatusDetails": "subscriptionStopped" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-0df5-4691-9881-df55f1727603", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.MediaStreamingStopped" + }, + "time": "2024-11-22T12:29:31.4470734+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-0df5-4691-9881-df55f1727603", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:29:32.571386+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-0df5-4691-9881-df55f1727603" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "21001e80-c17f-4623-8232-103c714dc783", + "serverCallId": "sanitized", + "correlationId": "848ac484-5ad3-47ea-97d2-aeafc805a860", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:29:32.5924278+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-c17f-4623-8232-103c714dc783" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_transcription,_and_hangs_up.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_transcription,_and_hangs_up.json new file mode 100644 index 000000000000..d2fd5cf6ecb6 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Answers_a_call,_start_transcription,_and_hangs_up.json @@ -0,0 +1,264 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-494d-4926-8a6b-ad0c7cd0c659", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:58.3889362+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b289-499e-8d52-26771d6652fb", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:58.3649337+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-494d-4926-8a6b-ad0c7cd0c659", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:58.3857882+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-b289-499e-8d52-26771d6652fb", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:58.3889362+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb", + "type": "Microsoft.Communication.TranscriptionStarted", + "data": { + "transcriptionUpdate": { + "transcriptionStatus": "transcriptionStarted", + "transcriptionStatusDetails": "subscriptionStarted" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "04002280-b289-499e-8d52-26771d6652fb", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.TranscriptionStarted" + }, + "time": "2024-11-22T12:32:00.1862664+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb", + "type": "Microsoft.Communication.TranscriptionStopped", + "data": { + "transcriptionUpdate": { + "transcriptionStatus": "transcriptionStopped", + "transcriptionStatusDetails": "subscriptionStopped" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "04002280-b289-499e-8d52-26771d6652fb", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.TranscriptionStopped" + }, + "time": "2024-11-22T12:32:03.4342319+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "04002280-b289-499e-8d52-26771d6652fb", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:32:03.5861189+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b289-499e-8d52-26771d6652fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "04002280-494d-4926-8a6b-ad0c7cd0c659", + "serverCallId": "sanitized", + "correlationId": "50e6bb91-2aa9-4a84-be3e-7f2c9be8a7ab", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:32:03.6271258+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-494d-4926-8a6b-ad0c7cd0c659" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.json index da0cf3e95de1..120e17e630f9 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.json @@ -17,15 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", + "source": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", "participants": [ { "identifier": { @@ -51,65 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9261-412e-a223-4b580dafa91b", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-d67e-4cec-bdfd-9144e29f4f9d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:05.4893087+00:00", + "time": "2024-11-22T12:28:52.817753+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b" + "subject": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", - "operationContext": "CancelMediaAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9261-412e-a223-4b580dafa91b", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:39:05.4893087+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", - "operationContext": "CancelMediaCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-dc54-4538-9eb8-ed6ee263a7db", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:39:05.5674975+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "source": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", "participants": [ { "identifier": { @@ -135,76 +98,165 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-313f-4277-be35-70293a7deccf", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:05.5674975+00:00", + "time": "2024-11-22T12:28:52.8228541+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "CancelMediaAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-313f-4277-be35-70293a7deccf", + "serverCallId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:52.8805165+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "CancelMediaCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-d67e-4cec-bdfd-9144e29f4f9d", + "serverCallId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:52.9798398+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "CancelplayToAllAudio", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-d67e-4cec-bdfd-9144e29f4f9d", + "serverCallId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:28:54.4990725+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db" + "subject": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "source": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d", "type": "Microsoft.Communication.PlayCanceled", "data": { - "eventSource": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "version": "2024-11-15-preview", "operationContext": "CancelplayToAllAudio", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "resultInformation": { + "code": 400, + "subCode": 8508, + "message": "Action falied, the operation was cancelled." + }, + "callConnectionId": "21001e80-d67e-4cec-bdfd-9144e29f4f9d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", "publicEventType": "Microsoft.Communication.PlayCanceled" }, - "time": "2024-03-08T21:39:07.2549531+00:00", + "time": "2024-11-22T12:28:54.6528768+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db" + "subject": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "source": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "version": "2024-11-15-preview", "operationContext": "CancelMediaCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-dc54-4538-9eb8-ed6ee263a7db", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-d67e-4cec-bdfd-9144e29f4f9d", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:39:08.4112185+00:00", + "time": "2024-11-22T12:28:55.7580042+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-dc54-4538-9eb8-ed6ee263a7db" + "subject": "calling/callConnections/21001e80-d67e-4cec-bdfd-9144e29f4f9d" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", + "source": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b", + "version": "2024-11-15-preview", "operationContext": "CancelMediaAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-9261-412e-a223-4b580dafa91b", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "21001e80-313f-4277-be35-70293a7deccf", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "1cbf0ad6-33f3-4664-bd5a-5e4b11e465d2", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:39:08.4737327+00:00", + "time": "2024-11-22T12:28:55.7794718+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-9261-412e-a223-4b580dafa91b" + "subject": "calling/callConnections/21001e80-313f-4277-be35-70293a7deccf" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.txt new file mode 100644 index 000000000000..e788325bb32b --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Cancel_all_media_operations.txt @@ -0,0 +1,8 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVkrMi9iT0JMK1Z3UWZjRDljUzR1a1NEMElHQWRIN3NQWXpUdnBYaGZHR1JSRjJXcGtTVWZKZHB4dS8vY2J5bmJpMUwxdWJyRUZWZ0VVOGZYTk4wUE9jTWFmZTBvV3hWblY1bG11Wkp0WFpVOTg3bVdtV3RqL2Vkb1R2VkJJMVFpU3BGTFNKRUlSeHdGaW5GR1VKRDVETWtnb1ZSakxNR1ZUM0QyVUlDLzBDZUtFQjBqclZDSEdXRWdweGtuazg5N3JYcG8zZFNFM1ozS2hlNkpjRnNYcm5pN1R1c3JMZG13bEVrMWxpcFdQZUJaRmlQa2VSMUdRY0VReGlUQklKVHpCQUZQSWNyYVVNMjNYYkZGcWFkcGM1YlhjQVhFZWNJbzlqQWdBQW1tZkk2blNDQVVKNHg1V1BJd2lDVUR6UEUwMUtKN0pvdEZQWEc0Mk5mRHJOZHFzdEJuV05jeXNUVlZyMDI1TzVHd3I4OHZyWGx2OUdhYlNDZ1VrOVI1TnBZZ1h2TUJVV3hpTTBUZGUrK2RGcGtwWnhqRm1ZTzdBOXhITGxBYStQRU02d2p6elUwSUlKc2VtTXJxcGxrWjF1TDJYNlAwL2JGams1VjFqelNqYlZxbzVnTTNidG02RTY4bzY3MmRGUHB1M3NPNSswMi91WUZmNnFscllFWGRGWFZXN1NxRmxzOVlJY3dTVFVpVHZtcjVTQjFPVmNsZkV6U3B6cDFOWFpWTFJnREZFUXppZlRJWStTbkFRSUdqNUVjczhwbFhpMHNETmlldHg3RzRaL1RNZkVJeDhPRWtSb25aakZqck41YkFFc1FiWUtnVlVGL1lzQVlFWldLWDVLNm13NTNTa2hOR2Z0R3IvU2xTM2pJNklMdFA2eHNpeXFTdGo2VUlUeUhMYUo0VDJRNzhmUk1KalFlajJ2dXcySnE3S1ZwY3c5WE5QYlQ5M3ppenJ1dGdGT3JkSnJVc25SWlhBd0dxQUoyWlNWZ1BrZUZFWXNjakJ6dmpNR1Y4d2g5Q2dqK0dQMkFuTm9BRkx3bkxiVUlQOUZLOGZobjNxOTRsdis1TkJmQ1BJenYxc1J6dkFUdmV4R01obG1sY09KMzVBbmF1YkMzZjQ0Y0lobURrUnZEMEgvTXdoSWNnT25TaUFIbWpaenZCNzB1VEF0S3BHcHNrZjlFRTdTOFEvbkh1MEFMcmcrUTVvN2pRUU8wVGF6QjJqMWNwK2JLZmZveWFmbFJLY2NQYTlWVS9Zd3RMM3R1MGNJc1V5TTNJbXlNMmI1S212WHFmaVlSWDZSWjE0M3ZuRktKRW5iZkJLaHF2aHc4a0J5OFh5ZnR0U3NrenpWTFphZ003TzdlakNvY1REQWZhWlJ3NDEzcG11M1FBeGt4WDNqcEZwYXNCVWZVcEMyQ1h1R0h0S3R0T09vZWtCTkkvQTFGOURleStEOXI2R3BzRGFLaVJWQy9BVWR0L0h3WE40RmhIK0F1YmR0R040K2lQaDRaQjFoaUdVaHpUQ0pPQk81MTY4VDdqWHA4d0IvNG82YktQaFB0cGpIMGcvc0xwemVuTjdkVFllT1pTR1B2VUk5V2tFMTNESXNYOWtObSszSTUzZ01QSjkrc2NGZTQrQ0dmR0pSMWdZQlY3RU9PVStDNzhXREc3VUdiU1dUUVBTV1VoQU9QWVBwUlBQQTF3YzhSZkpaMzUwTElQK2NCbjg0TnhaRVpEVWVBVC95U0xvanhGUnlFUVhZaUh6RW5WaGNkdTd5Rk5COXBFcFdXdFp6Q3FUdC9PRlNOYktxYVc2MDIwdGMrT3NkUUl4Wk1mV2JPcTJBZ2NmdnJtZXhxZFRRc1BwKzlOaFBMMStQeVRURUR0NUNmRU5JZ0JucjFJVitQUDRsc2F4TzM3MVlSR21uNUszYm55OUt1ZnE0NGYxTHcrMzRTajVqZjdiSTcrUlBaRWRQUDA5ZUw2OExNZnZMemZuRDV1TDhic3hOYXZMeTlPUDZ1Mm41WEtaL2twcmZKYU0zWS82cm9QZmg4RjZJV3U0THBoelBmNzVKNWY0dTB2amNTaHkzZ1dVdXVIWC9mYkM2SlljajhBMWNqMitlbk4yaUpZdDJ1MUlrcmNHOW5Wd0xBbmlJWWlLRGdDM2kwSkhscVcrVHdabDlXdytkaTdpMDl0aithSHRIeDczdzUxMjlXYjBMVTNnRU90QzEvT3ExRWl2NE1JKzRnQlRJQ0h3bjYvem5QanNXK3FIdHY5QXY3ck5GeEJFOTRCdzAybFRHOGlpUlRPWENBS0VRejB4WW9KeU1Ub1J3MEN3VUVSRFFXTVJSeUljQ244azRwSGdKNEl6KzQ1ajhaWUpieVFpZUdNeGdxRzM0b1NJRUl0aExDZ1RJMENMaGM5RURHdERnWGQ3cmUvYmpwOWpFeTR4Z1dlOVh2ZTM1N2hmbWRsa291OGhPUWF1WmR0TUpxQU9tcWNHVmswbU1tbVF2WW1SMWVRWm12ZUU5cGlFZlFjb2swMDdUY0M1MTNuYXpxY1pWR2dKK05UZm9NaXhlYzNVZXdiT24xUE5kWnR0aWVicFpKSWFtYlZvWGhVTGJaQlpRRjZGMm4yYWhnQmVJMGdXQVVpWEZybEJlek5Bd3RFWWhXRHFERHpTMWl2MlpjZjJtZlhQZXJhdDRLQnl5N0NYSUErSEdrRnBwRkVZUVZrU1pLa2loSGs4OGlOWW94c29ZN3VzN2x5cHBZR05uVDNXS0tWZW4yZVpUZE83RGtnUklYMzhTVzlzY3JqTDVicFd6eS9KL2VYbFNUQ1N2N3FuNStQTmc3bzRqV2FEQWVCRHFRUkJ4OVpiNDE5aWR2ZGVWL0tUUGwwdi85VzgwME85aGprQWE0QTRKRmFXeGNXMnhzbDFWOVRremRWdWFGZ1UxVnFEWXExWjZpK3dCckpUYS9lTytyaGM1ZTFqRFg0NFl0TlpVeFZGVjJ2OFg3azZnT3l5ZFhxUXJVUHZZYjRPVFhlV1I5TzMvL0UyNzI1MU1iM2N6R0xkNHRYd01SSDNBa1RaMy9YQWgxdWNzeUNBL1lLUTVFR3NBT3ZremVteWFQTUxLQ2szajJiUG14TlR5VlRCYVh1eWZLcVQ1ZXd3T1ljZkg3YmxKNmFLU3BLaExJUnFuMEU5aktJa2dITGR6NExVODFRUStMWU9BTHNxdTJYbExJYVZUMllabDAwclMyVXovTDE1ZnJkTXNjVmFaWW5rc3JCb2h6K0NYSGY4ZHByOG9WSVpsSjJaYWxsM3l0NERXRmZwL2hleUFIaXlieEVBQUE9PSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE9WRkY0VDBSWmVreERTblZaYlZscFQycEZNMDFxUVRGT1JFVTBUbXBOYzBsdFZqUmpRMGsyVFZSamVVMUVXWGxQUkZVeVRYbDNhVmxYYkhaSmFtOXBVbFJLYTFveGJFOWhhMnQyVFRCNGMyRldWWGRqYXpCM1UyMVdiMkl6V1RCTU1HZ3lVbFZPTTFGVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXcENjazVZUm10bGJVNXdWR3hhVUZGdVdrcE5XRUpMWW14a2JsSnRNWHBpUkVaeFZHcGFSMWxWZUd4VlZVbDRXbXBvTWxwV1pHdFRSVzh5VkZWU1FtUkhaREpOYm1OM1lWUlJNbFpxVWxOVWJYYzFUbXBzY21SSGFFNWplVEZUVlZWNGVsWXliRXRTUlhCc1dsZGtSMDFXYUVWaVIxcHRXakl4ZGxKWVZuUldXR1IzVVZVMWVXVnNWbUZOTUdSWVlXeE9ZV1JXWkRSVlIzUjBUVEJhVTFKVVRURmFWVVpYVkRCS1FtTXlkelZUYmxKWVZXNUdSRnBJYUZOV2JHZ3lZVmMxY21KWVpHcGtNRXBYVVd0a2VWRlhkRmhTUlRWNlVsZHNTbFZZYkZKak1sSnJWVVpzYVZkSVp6Rk9WWFJyWlZkU2RWZEdTbXRVTW5SVlZsZG9SbGR1U25OV2EydDRWa2hDZWxWdE1XbFdhbFpKVDFac1ZVNHhUbkZPV0VweFRqQmtOazFyVm14Vk1qRnBWR3M1YzA5SVNrNVBWamxPVldwU01WWXphREpQVlhSWVYwWkdkMDlJVGtoWmVtUm1XbXhXZGs1VVdsbFRhM0JSWW5wb1YxRnRVa2RhYlZrMVdURmFOV0V3YUZkV1JUVk5WMVZrVGxreFRuTmtNMUkyVFc1Q2VGVXhWa3BoVXpGRFlsUmFkRnBJVmxCaGJHeFlXVzVKTVdKdFZqQlJNMmh5VFROd2RGWkhVbEpNVld4RVRGUlZNbFV6YkUxWGJEbHRXakJvU0dORVNreGpiRnBYVlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVrelkwZFJNbU13U20xV1IxSjVXREpvVUZkc1RYcE9SVkphVFZoU05sRlhkRkpUTVU0d1lVUlNSVk15YUhwak1HaHNWMVpHVkdGRVFucEpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzA1TkdKdFJtWlphbVJ5WlVWV2VFNXRkR3haTVZVellXdzRlRkZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJGbHBabEV1YjNGR1duTm5TSGxvZEVKcE1UUklXV1l0U1Y5RWRqUkNjR3BLVm5oak1WQnZkVGxVWkRSdFlsSnlXbkpTUzJaYVIwNVhZMUI0ZW5OMlFqQmlhMWR2TTJJdFdETjZaVXAyYmpOWVdHUmlWalpRWjFkc1pXbFlkVU0wWDNsblZFcFRNV28wWnpWUWJrTnBNakZYTTBKU1JETjNjWEpZVVVaeVVEbEhRbEpUTWxsck9EUkZPRWhzY1dZM04yUnVUamMwYldaaVZETkdZMVpWVkVSaVowMWxSbEpSTW1ORlpFaEJUMWg2VmxKM01scGtaMmgzVDE5aFlrbHdiMU5TWTNscFJsVTROblpLVEhGaU5uTkZRVWhqWkRsVFRpMXhUWEZQUTBoeWR6VXdNRFE0Y0hkMGNrczVZbU13WmxKSFUyNXROekpVYTJSaFoxOUdNMG8yUVZoNlNUZEdkREphYkhKeVExbzBNa0pITW5oRE5YaGxNMjl3YzJGelZqWnZaVzFOYkRNelRrUlRlRXhuZDFsMFIxcFJOVWw2YWxsUFlXVm5aMUZuV0VzNWNHbDVOSGRFZW5sQlRuazRabkJrYjNWcGFYWnRjRWxuSWl3aWRITWlPakUzTWpBMU5EVTBNalVzSW1JaU9pSnhVVXR2ZG1Ob2JrTkJUVWxKTWt3d2NVRmxiM1pxWkRobFdYZzVTRGhVYm1kblJuaHRZbnB5WkZaVklpd2libTl1WTJVaU9pSXlORE5tTUdVNU0yUTNOMkkwTkdaaVlUUm1aVFF6TWpNMVlqazROR016WWlJc0ltTnVaaUk2ZXlKcWQyc2lPbnNpYTJsa0lqb2lTbGh0VWt0RFdUSmthVzB4ZFd0UlRuaEhXVFJQUzFabFluWjVlR1ptTVdkVFQyMXFOa3RVY0ZOMWF5SXNJbVVpT2lKQlVVRkNJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJakJyTlhGa2VtTnBUbFpQUW5aSk1YQktibGRuUm0xemJERnFUalpHWVV4bFVVSXhaamgyWlZka1NFbzJUVVJCZEdkMk1uY3dhVFEyVmpSU1RtdzVOamxyZEdoTmN5MVNVVXh6VjJsS1JFcGxaV2RHTVZoRWJHWm1aMjF2UlhWdFZYZHdRVTV5ZWxWYU0wZFhhbE5hZFZkNFVHdHRNMFpTUlRNMVpVRldUMEpCYzJ3NVNuUlhVbkZEWkhoU1ZsaDJhVzVyYlhkamQwSldRa2R5UVd0WFJFNXpSV2xKVVhsUmMyUmtVRmxpV0hnMU5VdGtlV1J1V0ZKa1QydFVWV2hGV25Kc1Zra3hWSEJ6VW0xaVZqVklPVmxVTjFOcU5YSnFOMGQ2TWtWbFUyMWlUazlzT0hKTk9WOU5ValIxVjNoMk9VdFhXRkZ3T0hOSFl6ZGZabFZ2TlRaWVNrcFFiemhXUW1SR1ptWTVZMVo1YTBoV1ZFNU1XVWROWTFOc2QzUjZNbkJ4VTFWSmFTMUNiVFp0WkhWUGFsbFhZbkkxYm1WMFEzaHJNM3B0VkdSUkxVbERMVFUyVTNsTVdsOW1aMGhIY0RKTGNsWldVU0o5ZlgwLk42UkpFMmFDM2diRHRaV3NVMWFvRlBjamhBTUlWUXVDZ1h1RFYyQmgzZ2d4dzZNVHJ0UkVNUFNwLWlPc2ZvVkNidzdYRVVXYkhVMGxQVGZoZEw0X3JRWUZJYnpPbllrbkJUWDUyQXVvUnFPUjdoZENjcHR1UzdLd1ZpTnVrbHdVZ2t3a0ZmQnM3azFHWnpuM3hGUkFJbkJGU3h4ak51NFladndFczhfQ2hjV3ZVc0dqSGotdG1VYWRfTGtBWEdDU0FwY0RIZ0JBTS1yS2hjd1psdTFQaU1USjR5emVsQkg0d3YyNWVkTFdxN1M3R005NnVVWGs5a1dubWl5WDJ5eHl0Y1Y4N1gxeE5aMVB2d242M09DSDUxcVFYN2RiSEl3ZEtqZW15bE95UTFZNkN1bk9TZUdKWVRCQU1TczNqeWZlXzd2UkRHM3p2amJzM1ZEWHNOSVFxQSJ9.","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767"} +[{"id":"5a33e50e-84ff-4aeb-94e5-d2a74db4bf64","source":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"CancelMediaAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-568d-4f02-b8df-e6851e4b6cf9","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:06.8264065+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9"}] +[{"id":"0e276235-a9f9-4ed2-9394-7ce4c5f60a40","source":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-568d-4f02-b8df-e6851e4b6cf9","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:06.8486044+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9"}] +[{"id":"8e2f4228-f169-488e-b477-bf0dfda4e2e4","source":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"CancelMediaCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-7865-4c92-957a-fcd8de3ea3ef","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:06.9006638+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef"}] +[{"id":"6f89c42b-7a6c-4c3f-9f8f-84a4d8a8488a","source":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-51ec-71d3-44482200c137"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-5157-eedc-44482200b965"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-7865-4c92-957a-fcd8de3ea3ef","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:06.9038621+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef"}] +[{"id":"c1709167-b64d-4870-bfeb-4060d7096802","source":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef","type":"Microsoft.Communication.PlayCanceled","data":{"operationContext":"CancelplayToAllAudio","version":"2024-06-15-preview","callConnectionId":"31002180-7865-4c92-957a-fcd8de3ea3ef","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.PlayCanceled"},"time":"2024-07-09T17:17:08.4812728+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef"}] +[{"id":"57a8909a-8c6c-40c5-bf10-995340f6345e","source":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"CancelMediaCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-7865-4c92-957a-fcd8de3ea3ef","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:09.7069692+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7865-4c92-957a-fcd8de3ea3ef"}] +[{"id":"9151f360-8d6f-45d1-9ddc-b8da3bfd4551","source":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"CancelMediaAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-568d-4f02-b8df-e6851e4b6cf9","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9naTlfRnEzeUdVZWxfUXlnQ2V0MHZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"d02c2a1f-f835-451e-9b75-a6f7d33c7767","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:09.7837989+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-568d-4f02-b8df-e6851e4b6cf9"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..json new file mode 100644 index 000000000000..6a47a0774edd --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..json @@ -0,0 +1,266 @@ +[ + { + "to": { + "kind": "phoneNumber", + "rawId": "sanitized", + "phoneNumber": { + "value": "sanitized" + } + }, + "from": { + "kind": "phoneNumber", + "rawId": "sanitized", + "phoneNumber": { + "value": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "657ec326-7b4e-4ae8-a7ca-5f317e63755a" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "serverCallId": "sanitized", + "correlationId": "657ec326-7b4e-4ae8-a7ca-5f317e63755a", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:17.4198581+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "phoneNumber", + "phoneNumber": { + "value": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-46e0-4cae-a3b1-4c7830888355", + "serverCallId": "sanitized", + "correlationId": "01f1dd5b-c7f9-4dd9-b1e9-da7a1982505e", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:17.4028727+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-46e0-4cae-a3b1-4c7830888355", + "serverCallId": "sanitized", + "correlationId": "01f1dd5b-c7f9-4dd9-b1e9-da7a1982505e", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:17.5490791+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "phoneNumber", + "phoneNumber": { + "value": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "serverCallId": "sanitized", + "correlationId": "657ec326-7b4e-4ae8-a7ca-5f317e63755a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:17.6849339+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355", + "type": "Microsoft.Communication.MediaStreamingStarted", + "data": { + "mediaStreamingUpdate": { + "contentType": "Audio", + "mediaStreamingStatus": "mediaStreamingStarted", + "mediaStreamingStatusDetails": "subscriptionStarted" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-46e0-4cae-a3b1-4c7830888355", + "serverCallId": "sanitized", + "correlationId": "01f1dd5b-c7f9-4dd9-b1e9-da7a1982505e", + "publicEventType": "Microsoft.Communication.MediaStreamingStarted" + }, + "time": "2024-11-22T12:29:19.6415582+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355", + "type": "Microsoft.Communication.MediaStreamingStopped", + "data": { + "mediaStreamingUpdate": { + "contentType": "Audio", + "mediaStreamingStatus": "mediaStreamingStopped", + "mediaStreamingStatusDetails": "subscriptionStopped" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-46e0-4cae-a3b1-4c7830888355", + "serverCallId": "sanitized", + "correlationId": "01f1dd5b-c7f9-4dd9-b1e9-da7a1982505e", + "publicEventType": "Microsoft.Communication.MediaStreamingStopped" + }, + "time": "2024-11-22T12:29:20.8715126+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-46e0-4cae-a3b1-4c7830888355", + "serverCallId": "sanitized", + "correlationId": "01f1dd5b-c7f9-4dd9-b1e9-da7a1982505e", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:29:21.9892526+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-46e0-4cae-a3b1-4c7830888355" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 5002, + "message": "The conversation has ended. DiagCode: 0#5002.@" + }, + "callConnectionId": "21001e80-7962-4c2d-a73a-4b2aa51fd9d1", + "serverCallId": "sanitized", + "correlationId": "657ec326-7b4e-4ae8-a7ca-5f317e63755a", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:29:22.2892104+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7962-4c2d-a73a-4b2aa51fd9d1" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..txt new file mode 100644 index 000000000000..df2e692f1d25 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_media_streaming,_and_hangs_up..txt @@ -0,0 +1,9 @@ +{"to":{"kind":"phoneNumber","rawId":"4:+18447649276","phoneNumber":{"value":"+18447649276"}},"from":{"kind":"phoneNumber","rawId":"4:+18662315126","phoneNumber":{"value":"+18662315126"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9NN3o1MDcxWlBVS1ZTZHh5UWhLSzdnP2k9MTAtNjAtMTctMTcyJmU9NjM4NTU1Mzk0NzIwOTQxNDEw","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVhiVy9qdUJIK0s0SUw5RU52YVpIVU93R2pjQno3MXBlTE4xa242V2JyTnFCSVNsWWlTeW9sdjJWdi8zdUhzcE4xenNGdVdyVEFPWWxpa3NOblhqZ2FQdk9sSTNpZVQ4b21TekxCbTZ3c091eExKOUhsd3Z6UFpJZDFYUFlUQ1gyZk9zUWoxTys4Njhpc3JuSytuZkNGNnJCaW1lZnZPcXFRVlprVnpkaHNDTjBBKzRHS1VSekhFcmtpOUZIc1N3OUZvUWhqVE9Jb2FXRnlYcVJMbmlxelo0ZFNjZDFrSXF2NEhrZ3BUQ0xYYzVGSVNJTGNLTVlvaWtpSVBELzBFeVZjamlNQlFQTk1TZ1YySnp5dkZhRG9zbEs2Mlo3d2RBZjg5VjJuS1ovZENSa1hOU094NUp6R0VZbzhIQ0RRUWNGYTMwVThpQ2tWR1BOUXVuZDQvMEd2UEo0K2I0akhHMkYrSEE4Y2VVUVExMGRKUWhSeVhYaEVNc0ZJU2ovQ2hFU3huN3dTRDYzcWNxbEZpOXQ1aTkrZDEyT1laOFZEYmNMSW00YUxPWURObTZhcW1XM3pLdXNtZVpiT0c5aTMyWGJyaDIybHVxSmNtQlY3UlcxUjJVS2daYTA0d2c0Q0lZbjRROTBWNGtCVUNIdEY3S1RVRDByYUlwQStwbDZJdUV3YzVEbytSenhTR0NXT1J3S2hmQktyd0thQm5SSGJjU043WjlGZnN4N0J5TWVJRUVROTQ4WkN5WXozaTNxdE5KZ3JCTmk2NER2M1VnaEwvVWZ5NGNtbVl5KzB1bGVpK1NQWnVyUG8yTktscks0MEwrcXExTVplR0lLMUh1MFNRcnZVNlZLZk9XNFEycDJ2KzZNWmxFV2pDaEQ5MGhHN3IxZGdIdXprVlpYdjY1RmR5d29WcVVDNDY0R0tPQzlqRUZqMThFelBpcktITEM4Z25tTmhhenl4eGhldVJXalF4ZkJEekhyZHF5R2tnR0lHb3JjWG9iaExNVmdWMFc3UWlzVzl3UlVqKzFmUlREUTliTFZmRmoyK2xGbHB1VkhrdTliSHF3dTdmM05oRVJ6Q24ydEY4SFFzUW9oRlFyQWd0S0lBWm1Ca0prR0U0dS9yNVQzZGlBcnBPbnRVQitNa1puK3hObWdCcGtNOXNDQVlWZzBWaGNsNmJta2xWdWJMVG55RDZpd3RPTHlhNmZkMlBRdTNoUURWalZaOGtVbDJZQVF6SG5xN2NRWXl5MFR6bEkxVi8rSGJYTFdXN01SZWZmYXZ2VStyNmNxOXdjUDM0OEVuWHR6d3pZSDVpK1YrSkhnaE04a2J4U0FrMXZYcGhVV0pnK0Z5Y0IzeU1oajcrRFpic0ZrbitjYlNYRW9Oc1lTRE5QbmpoWlkyU2JXVE8wYW5CK2dlWEJHdm9IdHZSUGQrajA3QmR1TVdGdzFvb0pBbVBnNk9OUkNQdmtrRHlCMXJvUDhYRFRtUFZjNFdQQ3RRbThXNzJZT0QzNkI0clhpZWxqcHI1Z3VtSVhlYWJNR2JVbHZ4V2xnVkZ3K3FxWGltcmJXSzRXejNodXR0MVpRUTlmNXdlamM0dnlNMHZIdC8zaC9jVGQvM3lWMklyYXlBaEZSTTNkNWYzamNqcHhvRm45M05TS1gvc2tlVGh0L09WNmUvYlA0V3JjNGNUU2M2bi94Ry8rbVEzOGlUVVh0NCtpUDRpeUNTMC92aHVKeHN0K0c5NDk5dXhQQ1IzcXBRMzB5Y1h6WkpXQzd1aDQvdjcxdjRwL1NzRnJ5Q056MjBwdjJyOGNSMncvMExmN0RtV3RQeHIyYzI4WCsvRkZrL0I1VGFyMnh4ZGx1T1Y2QXlUTWNmaDVORHRHVFI3RmJpck5Gdy9MMWpUWkRBb0NvNkFOeHRDaTFlRkdvVDk0cnloVHkyTGdibjE4ZjZRelBmUDU2SE12VnhlUHFhSjVEcUtsZlZ2Q3dVVWlzb3lFYzJnQWhVZlAvbFBzY2FURjV6UHpUenIvaEhzVms0aUg0RmVRY3Z3cE1tcUdkS1Z4b1lGS3ZuSEc0WDN3b284MFBXajFqZlkwUENUZ04yNmpEcXNDRk1Cc3lKV0JDeUVXWXVaUUZtZ3hFYnVJeWNNdGRsNFNrYndKTFAraUh6VHRpb3o0SUJDMGJ0ZDVlTkFqYnNzLzdwVHJIYU5LMTlscmxxMlF3KzYvVzZ1MHYrYnFuVDJVeHRnQmlCclVWVHoyYmdEcHBMRGJ0bU14N1h5TlJiWkR4NWdlWjhRM3UrZnI4RGxQQzZ1WXVoT0t3ejJjenZFcVZrREMvaW4xWUs3b215dUhOZWdIc3ZUYzFVayt3TXplUnNKalZQR2pRdjg0WFNTQy9nUWtYTjAvMk1BRjRob0FrQXBBcURYQ1A4WEJmcVdnc0VvaWxVVjhOVnpjT3NQWkdxWDFYYThra3ZDTEFqSW1BS29ZeVJHd0FialVKZm9UaHdzVWV3SUtybHRxcUdOcU85emo4SXNkUndzT2t6UHkzVStrT1NHSWEybjRCcWxHYUZxVUtnWUNGT2FHd0lBNUNKTTdVMVZHRi9wYmVqenNsOThOand4L2pUSlJZL0VTYzhIZFdyeVdXdkIwcUJPMFA1QXBtclc2KzQxMk4vbEgvWWZCNXRWcGMvMzR3ZTF5QURzUE9zQmtYYmNaRkFpL0QzTDBDMkdxNVQ5VVJFTW5sZG1SbzlLdlVVK1AxVnU5WjV0akhmVCt5N0pOY05mRGVpZ1g4a01kdzNCSHRZcVJLK3pBMVE4Z0xsZjkrY0pHK3c0ZGxVa3h0d0VpYndMZW4vaHlHZk1nUE9ZWTd1WXRjVVpLcnRBckw2NDM2cG4rZmxXa0UyTkhxcHZrSk1nY3VaWkczUGUxeXNzdWE1c1R4Y01lUlBsM25lY3ZQL2lOb0N5SjdjMGdOeUM3T0g5QmFHOW5ud0NCRWtueSt1ejI2bWNyTzluSitkQmVrMzNockFMLzJ6NnZsTzZIbWVFN2tCeFpGTFhHSWlsOVhuRUo3c0FwcXc3WE51WnZXSkxya1U4STd1NThCZnFlSmxlc2hsb2FYZU5iQU9oUjVWaGtnbWdZdGNIaWNvZEwwQWFEV09GZmFsakhBSW1pQ3d3dVIwa1E1ZzU3ZTRqSXU2NFlVd2gvVVVueC9TZXRQZGxNYVFqT2NHN2JDMW43YjJQYlhKLzAxekNjNm11bHhXcmJNYkFHdlQ1TjkwOXRtWFJSQUFBQT09Iiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkTlJFVXlUMFJqZDB4RFNuVlpiVmxwVDJwRk0wMXFRWGROVkZrMFRucEJjMGx0VmpSalEwazJUVlJqZVUxRVJYZE5lbFV6VFVOM2FWbFhiSFpKYW05cFVsUkthMW94YkUxaFZ6aHlWVVJPTWxKcmRHeFVWRkpHV210M00xUXdiRkJsYlZFeVN6Qm9NMUZVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1c1S1YyVnNhRmxPTVhBMlUxUlNWMU5FYkd0amEwNDFZVmh3VUZremJGTmlWbXhMV2pKYVIwMUZTbmRVUkdoQ1VsVjRTRlpXT1d4YVZsSjJWa1JzUzFnelVscGxhbHBTVWtWa2QwMVlValpVYlhCbVlVUlNabVJVUmt0V1ZUbFZWREpXV21KdFNtRmpWMnN6VGpOa1RGWnFTblZOV0VWNFUxVlZOR0pXY0V4YVdHTjNUMVpvTTFSdVNsWlRiVW95VXpJMU5HSnJhSE5WYlZJd1pWWlNkRlF3YURCVk0xSnRaRVY0YkZKR1pFMVVNamt5VkZjd00wMXVUWFJTUlhCelZWUkplRmxYTVc5aU1uaHFWRWQ0YzAxV2NFMU9NRVV3VG10YWExWXpiRXBqYkU1TlpGUlZlazVyVWxOamJHY3dVakk1Y1dWV1FUQmpiR3h5VWpOYVVHUXlNV2xoTUZFd1pXcEdjRTlWYUhCVVIwNXpZMVJPYkdScVZUTmpiRVpWVG0xR2JGSXdjRlZYU0VvMllVVnNTRmg2VmpGTVYzaG9XakZ3UTJWc1VsTlRWa3BRVjJwT1dGcFZXbTFPVlhCNFRsaFdkbVZIYzNoWFJsSnFZMFZXTldGRWEzaE5WVkY2VDBWa2RXSXhRbFpaYkRsSlUwVk9lRTR4UVhsaU1VVXpZV3BDTVdFelpFTlViV040VW01V2RWRllRbkZsU0VsNlZGaGtZVTR5V2pGalJUbEpVMVJyTUZSSGJ6UmtiRGxUWVVkYVNGWnNVbWhXVlRGV1RWUktRMDFZVG14VmVrNXNWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVW95VlZaT1RGb3lPVE5oTUhCSVZGaFpNbEpIZURCalNFSXhZVWROTVV4WE1XMVBSMHBQVVZWVmVVMVhhRUpsUjAxNVZHNXNNbEZ1YkdwSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXMU9RMUZwTVVoVE1UaDNVMnRXTlZsdVVteE9hekI2VldwR2RGRldSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkdkcFpsRXVVMkp1ZUVOUFZFTkhWRTVvV2tkNFJHMVdiVGhETkMxUFUyOHRia1JhTTNKNVpIcG9Ta3BtWm1Gd1VtMU5Oa1JxV2pnMGVuaHhUMUExTTFwSVZFRXhOMGt6ZVVoMGJ6SjFVRWhoYzFOcU9FbzBWMkpxZVVjeU5IaEdhREJPYmpCclpsSjNOekEzU2pKeVQwSnBhbTlFWkVKbk5VdE1hRFJ6TTB4MmVVTjBZbFp6Y1U5U1NuVk1jM1kwZUdsMmFEZDBkR3AwYVcxNWRESmhPWGhCUlhkVFUwWnFTa1ZHV20xUVdtdFZTR1pGTURaUFN6UlBXWEp5WkZOalRHUjFVWHBJY0hKbVVWRmZkVFF4WDNOeVUyRlZNVW96UW5sdVVVSlZOVmQwTXpSRmNsaGljME16Umw5d2NrbGZkaloyYlhsVWNFWnVlbFJwVWkxVFZGOWxhalpFU2pONlQwRk5XRkl3Wm1wTlFrRndRa0pUV2pWaE4wbG1kVmM1YlZscU5VRTBkRkZIZFc5SVkzbGlObXRSWkhKVlgwRkNOVkYwTFZkcVZFWnlaa1ZzY0hsa2VYcFBlQzFmYW5SSUxUQTJaa05JWjJ0VWF6aDNJaXdpZEhNaU9qRTNNakF3TVRnMk5ESXNJbUlpT2lJNGIydzBiRmw2VEVGMFVHTnhkRnBHU1VoWmNEZDFOMUppU2t4NWFqRlFWVkpyVEdSaVFXMVVabFZaSWl3aWJtOXVZMlVpT2lJM01EZzRabVl5T0RNeE1HTTBOamsyT1dNek9UVXhPRFpsWlRNelpUaG1ZU0lzSW1OdVppSTZleUpxZDJzaU9uc2lhMmxrSWpvaWJFMXplbWRzTm5KRlMybGhlVzVsVUZGR1dFRnNiQzF3U3pObWVHUndMV0p3VXpaTmRqQnZkMUJqT0NJc0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNkluSldlbGhZTjFwNlNUUldTRGxrY2tONWFYcFBZM2xTYlZsS1oyWkdNRUp3VERoQlJVeEhWVjlsWlZSdlZEbEtYM1JaZWpaUlJFZHdNWFI2VG1wZmFEUmZkVEZLVlU5VVQyVlpibUphY1drM04zZExWakp1TVhFeFNVVTRiVnBMWlhjd09WaDNUbkpWU21KMlMyNTRia2hzVW1SMGVWUnRUMGgwVTNSbWRFeGxSRmRNVDI5MlRXMDNNbk10UkVwc1VUSXhZVzFvYjJ4alRHeHNNVnBNTjBFME5rWmtWM2xKY2xOTWRUVXpOa1JTY2xnMFIyOXFlVkEwY2xsclIzWlBkMjFpYTBRMGVqRnBPVWhwVEdOc2NUTmxkalUzY2xGVU5tRmxSMHBVV0hKNmFFbEhYelYxTFd4aFoxcENlbFJTU1ZKUFdqTlhaVVptTlVweE5YVnZlR3N4V0ZSamNFVjVhRGt4TVVRek9FZHViMUJWWWw5SVNFTnhOMUF5YjFFM2FqQjFhM2RDVG1jeFJuVnVRWEJxZUhJelRYZGFOMloxY0U5SVNUazBUR280ZGw5U2FHWkhWbFJoVlUxVk1USkNNWE5sVXpObFVTSjlmWDAuYW5HQ0wwajY5R3dXRnQyV2dVVWtSbUNCdjFNbHhrdXpmSXFPMENyd1NJNTBXdWxxSXBzeVBZTl80b3F5Ty1oaER2N0xNOXU3TFQ2enA1Q1h0Znd1bDgwNE1RSG1qWE82RmJZNU1WR1MyNVpJNVJBRmY5bThEeDlpdi1IbEZwNG5tREwzaUUxZkdhS2hQdlZqVFIyc0EwS0pEUnN1c2FTVGdLOHAwYkNEOWljNVhfTmhERVJtNlVYX1BCSUljRk9vaG84bkZiY3ZtLXdKMlAzZnR0OVQ2RmxTOHhadDMtMFVaQy1hQU10UEtkMWVadDNWZzNNV3VfZEx6NzNkdUFFVi1OZUdqYlE1SU14YzZWQ3dvSzUtXzVJWmRlM2owWXRRbnozOXJibmFucy0tR1hrbmlsWlVwQzlUOEVMSFFIcXZWWGZ4ZUFWU18wc1dZQUFId0dXUGtBIn0.","correlationId":"e32a09d8-df74-4abf-8457-f30be06dd908"} +[{"id":"b173b856-043c-482d-a37d-9bf9c889f138","source":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fb-3f90-ceb1-a43a0d007667","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fb-3f90-ceb1-a43a0d007667"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"4:+18447649276","kind":"phoneNumber","phoneNumber":{"value":"+18447649276"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"401f0b00-1bb7-44d5-91f3-2cc16362ae7d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252L2lxQ3RCcldFcGtHUUJFejA1Z1V0T1E/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"7bf9142f-23d5-497d-9459-552a1f4bfdfa","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:57:25.4249602+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d"}] +[{"id":"f0263894-53df-4a57-ae70-28cfc396e20e","source":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"401f0b00-1bb7-44d5-91f3-2cc16362ae7d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252L2lxQ3RCcldFcGtHUUJFejA1Z1V0T1E/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"7bf9142f-23d5-497d-9459-552a1f4bfdfa","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-03T14:57:25.4249602+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d"}] +[{"id":"9177e44f-f0c6-477d-9585-82438e8dde35","source":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"401f0b00-0e21-41ba-8b67-0f65e94dd235","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9NN3o1MDcxWlBVS1ZTZHh5UWhLSzdnP2k9MTAtNjAtMTctMTcyJmU9NjM4NTU1Mzk0NzIwOTQxNDEw","correlationId":"e32a09d8-df74-4abf-8457-f30be06dd908","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-03T14:57:25.4249602+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235"}] +[{"id":"d426fe29-1867-45f2-bb20-f46ad1b4e6b9","source":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"4:+18662315126","kind":"phoneNumber","phoneNumber":{"value":"+18662315126"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fb-4025-edbe-a43a0d009b74","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fb-4025-edbe-a43a0d009b74"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"401f0b00-0e21-41ba-8b67-0f65e94dd235","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9NN3o1MDcxWlBVS1ZTZHh5UWhLSzdnP2k9MTAtNjAtMTctMTcyJmU9NjM4NTU1Mzk0NzIwOTQxNDEw","correlationId":"e32a09d8-df74-4abf-8457-f30be06dd908","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:57:25.7062926+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235"}] +[{"id":"c860339c-8d8d-46fe-a1cd-298b96cee2a4","source":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","type":"Microsoft.Communication.MediaStreamingStarted","data":{"eventSource":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"mediaStreamingUpdate":{"contentType":"Audio","mediaStreamingStatus":"mediaStreamingStarted","mediaStreamingStatusDetails":"subscriptionStarted"},"version":"2024-06-15-preview","callConnectionId":"401f0b00-1bb7-44d5-91f3-2cc16362ae7d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252L2lxQ3RCcldFcGtHUUJFejA1Z1V0T1E/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"7bf9142f-23d5-497d-9459-552a1f4bfdfa","publicEventType":"Microsoft.Communication.MediaStreamingStarted"},"time":"2024-07-03T14:57:26.8469172+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d"}] +[{"id":"64e5177d-48b2-4631-a24c-4bf9738b8b9a","source":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","type":"Microsoft.Communication.MediaStreamingStopped","data":{"eventSource":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"mediaStreamingUpdate":{"contentType":"Audio","mediaStreamingStatus":"mediaStreamingStopped","mediaStreamingStatusDetails":"subscriptionStopped"},"version":"2024-06-15-preview","callConnectionId":"401f0b00-1bb7-44d5-91f3-2cc16362ae7d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252L2lxQ3RCcldFcGtHUUJFejA1Z1V0T1E/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"7bf9142f-23d5-497d-9459-552a1f4bfdfa","publicEventType":"Microsoft.Communication.MediaStreamingStopped"},"time":"2024-07-03T14:57:27.9094883+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d"}] +[{"id":"3b2a7c3f-a81d-4735-aa29-baf683a464ea","source":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"401f0b00-1bb7-44d5-91f3-2cc16362ae7d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252L2lxQ3RCcldFcGtHUUJFejA1Z1V0T1E/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"7bf9142f-23d5-497d-9459-552a1f4bfdfa","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-03T14:57:29.1126015+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-1bb7-44d5-91f3-2cc16362ae7d"}] +[{"id":"27c35a0a-78fd-42c5-9830-9364adb22249","source":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"401f0b00-0e21-41ba-8b67-0f65e94dd235","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzZWEtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9NN3o1MDcxWlBVS1ZTZHh5UWhLSzdnP2k9MTAtNjAtMTctMTcyJmU9NjM4NTU1Mzk0NzIwOTQxNDEw","correlationId":"e32a09d8-df74-4abf-8457-f30be06dd908","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-03T14:57:29.3313575+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-0e21-41ba-8b67-0f65e94dd235"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_transcription,_and_hangs_up..json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_transcription,_and_hangs_up..json new file mode 100644 index 000000000000..246f88844ece --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Creates_a_call,_start_transcription,_and_hangs_up..json @@ -0,0 +1,264 @@ +[ + { + "to": { + "kind": "phoneNumber", + "rawId": "sanitized", + "phoneNumber": { + "value": "sanitized" + } + }, + "from": { + "kind": "phoneNumber", + "rawId": "sanitized", + "phoneNumber": { + "value": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "62500efc-dacd-4a65-bc80-bf24ca0060c7" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-28e4-4146-8d28-d76147240805", + "serverCallId": "sanitized", + "correlationId": "62500efc-dacd-4a65-bc80-bf24ca0060c7", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:46.3663009+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "phoneNumber", + "phoneNumber": { + "value": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-28e4-4146-8d28-d76147240805", + "serverCallId": "sanitized", + "correlationId": "62500efc-dacd-4a65-bc80-bf24ca0060c7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:46.4240202+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "phoneNumber", + "phoneNumber": { + "value": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-804c-49f9-b4ad-13432633f0bb", + "serverCallId": "sanitized", + "correlationId": "a3709f94-226b-47fd-9a24-d48cd8b7367c", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:46.6169203+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-804c-49f9-b4ad-13432633f0bb", + "serverCallId": "sanitized", + "correlationId": "a3709f94-226b-47fd-9a24-d48cd8b7367c", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:46.7223617+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb", + "type": "Microsoft.Communication.TranscriptionStarted", + "data": { + "transcriptionUpdate": { + "transcriptionStatus": "transcriptionStarted", + "transcriptionStatusDetails": "subscriptionStarted" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "04002280-804c-49f9-b4ad-13432633f0bb", + "serverCallId": "sanitized", + "correlationId": "a3709f94-226b-47fd-9a24-d48cd8b7367c", + "publicEventType": "Microsoft.Communication.TranscriptionStarted" + }, + "time": "2024-11-22T12:31:48.4471993+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb", + "type": "Microsoft.Communication.TranscriptionStopped", + "data": { + "transcriptionUpdate": { + "transcriptionStatus": "transcriptionStopped", + "transcriptionStatusDetails": "subscriptionStopped" + }, + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "04002280-804c-49f9-b4ad-13432633f0bb", + "serverCallId": "sanitized", + "correlationId": "a3709f94-226b-47fd-9a24-d48cd8b7367c", + "publicEventType": "Microsoft.Communication.TranscriptionStopped" + }, + "time": "2024-11-22T12:31:51.8311687+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "04002280-804c-49f9-b4ad-13432633f0bb", + "serverCallId": "sanitized", + "correlationId": "a3709f94-226b-47fd-9a24-d48cd8b7367c", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:51.9975046+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-804c-49f9-b4ad-13432633f0bb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 540000, + "message": "The conversation has ended" + }, + "callConnectionId": "04002280-28e4-4146-8d28-d76147240805", + "serverCallId": "sanitized", + "correlationId": "62500efc-dacd-4a65-bc80-bf24ca0060c7", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:52.2229062+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-28e4-4146-8d28-d76147240805" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.json new file mode 100644 index 000000000000..31c15c4edfaa --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.json @@ -0,0 +1,618 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:26.5023215+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:26.4859766+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:26.5035609+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:26.5096844+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:30.7720645+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:30.7720645+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:34.1309082+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:34.1309082+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:37.9941646+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 7, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:37.9941646+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.HoldFailed", + "data": { + "version": "2024-11-15-preview", + "operationContext": "holdFailedContext", + "resultInformation": { + "code": 400, + "subCode": 8535, + "message": "Action failed, file format is invalid." + }, + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.HoldFailed" + }, + "time": "2024-11-22T12:31:38.608983+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:38.6364768+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 9, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:38.6359061+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "04002280-c625-4f66-ac71-abe3012c320d", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:39.2595268+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-c625-4f66-ac71-abe3012c320d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "04002280-b11e-497c-8400-cb4fef840333", + "serverCallId": "sanitized", + "correlationId": "7a2d3c2f-5230-4626-88ef-740e8c79bf47", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:39.3220895+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-b11e-497c-8400-cb4fef840333" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.txt new file mode 100644 index 000000000000..384991a372b2 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Hold_Unhold_participant_in_a_call.txt @@ -0,0 +1,17 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVliVy9iT0JMK0s0SVAyQSs3cFVWU0w2UUlHQWNuOFhhZE5tbmFKTjI5d3JpQUlpbGJqU3dwbEJ3NzZmYS8zMUMyRTZmdWRuTjNXMkFkd0pISTRUUFBETitlOGFlZWtrVnhXclY1bGl2WjVsWFpFNTk2bWEzbTduK3VlNkxIaFZTTklLbVdrcVlKU2lMTVVCaUZGS1ZwSENMSlVrb1Z4cExyOEFwM0gwcFF3R09LYUJneGxFWnBpbVFZU0t3eFR0STQ2YjNvNmJ5cEMzbDNLdWVtSjhwRlViem9tVkxYVlY2MlkrY1JYSVhjcUJpRmtrc1U2b0NEVjNpU3FjS1pEREFQNHhSZ0NsbE9GM0pxM0pnMVNpMXRtNnU4bGhzZ0hLcVVjc01RbzVFR0lDWlJFak9Eb2dRZ0Fwb3B4Z2tBelhLdERRU2V5YUl4ajF3dTdtcmcxMnVNdlRWMldOZGdXZHVxTnJhOU81RFR0Yy9QTDNwdDlWZWt5a2hrakZZb0RFTk9LY1pwSXNrelVyV0d3Umg5NVd2N2VWYXFBcDNGWWFKakZBUXBSbUVRdzZ4cHlWRm1xSmFNUlRqVmJEOVYxalRWd3FvT3QvZWN1UDhnaDBWZVhqY3VqYkp0cFpvQjJLeHQ2MGI0dnF6emZsYmswMWtMNDFaMy9lWWFacVd2cXJucjhXK3ByMnBmS2JSb2xnYmhDSUdSUnZLNjZTdTFZNnFVZjB2OHJMTFhSdnMwQ0ZnVUptQ09nVnpJZVlTU05Fa1JaNFlSclpSaWFlWlQ1dWZFRHlMc3J4bjlNeDhRakdLTVNJS29TOFRjNkZ3T1MzQnJnYTFTUUhVdTE5Rk5JU3ZOM3ltRUxhZTlJS3o1YUZUN2Q2SzZaclJIZEtIckN5dkxwcTZzb3d1dlFEYWlmVUpvbjhkOWxvZ2daTnp2ZmQ1TXpHRlZ0cVlFMDA4OXRYN2NiR1paMThYbW9QTWI3YlowV2xRcGROd084TVJPeW1xQXZDQmhjWXc5N0kxUHZmRlo2QkhLK2hqK2lETm9CZzFrRW9hN0Z6WFltZ1I5enZ0eDBDYzBjQjNwNFBCQ2tNMytjdzN0QUFEZHczd2dGenF2dkFpSExQYmVYWno1dy9kbkhzR2hsOEIzNEJGQ1BNTEJPZmNTQmkzdzVocjVOOTNKZ1cxVmpXeVQzNXVkOXl3VlAzb3JOQWZDc1BjOWlOMXI0UFFRdXBsNTFxaGI5N0EyWDZFbW41WVN0dUgwVzZNZXNZWGp6OWJ2dVRKb2tWazVGZmMreng3YjZxVVdJWjYxYjFwejgvWmpFdkMzMDEvUFhyT0xKaDRkNzdDY0wxYnJOeVZMbld2WkdnRkJlNWRIWng0bEFXYXdiZ0x5Sk9STjh0bzdZR2F6WXVWWnFiV0ZaUFVwNFc2aXFHZmRTbG5iN1lQVEhmQW9nV3p2Z2JObmdyTXZ3U2t3ZDBGSjFZSURDa3NneHV3TEIyRkNJdm9NQjUzZHZnUDZmUjNBYXV2U1EyakVhWUlKaTd4dW8wVjlFakZBaUQzWWFrbUhiZzFjVFZ2MFhRSTcyZmRPTGk3Zm5ZNlBZRkZqeW1Ga0dBV2N4N0RGZ29qdis2YVB2bmtTeC9ULzhjMGVmQ2M0WmpIbUNjTVlMdGVBc0dCdjRtQlRkWG10WmRPQS81QVRjSS9qWGY4a2dNVUJ5aUY4Rm9HQTRMMmxGMjRtNzdzNmlYYVdvUE1SOFFUTS9tb2Y5RHY1S0dScUNqR1hlWW02ZzNMZE9zKzFJTnVqS2wwYVdVd3JtN2V6dVVpWHlxdWx1alp0TFhQckxVMEtoOHFHcnIycjJ3cjIrM0IwZm5WNGNrVW92L3JsWkhoNGRmN0xrRnh4N09VbEhIaEczR2pXanBJUG84dkxZazdHNmN1aW5oODBOL2ZIUjljTk8vNXdjQk9QcnNmdCsreitkL3J2Z1B4T3RrUTI4UFRQNEUvT3ozbExnL3JtUW9lWDkvbDBkQ2QvMDFOenVpRHkxZkpmTlpkblB5bitvVngxOE50enNaN0xHaTZRMERzZnYzN2xrM2h6alR4MEpkNUxScW5QdjJ4M1YwZzNaTDhITHBiejhidlI2UzVhTm0vWFBXbmVXcGpZd2I0bk9CN0JWYklEdUI3RVBWbVdacFVPeXVxSlBmYk9Eazh1OS8xejF6N2NiNGRiN3QzbzZHdVJ3REkyaGFsblZXbVF1WVU3Zkk4RG1JQkdpSitPQzd6RDA2K0Z6MTM3VG54MW04L2hQTjBDd3RWbmJHMUJXSXRtSmhHTll1OG9Fa2RVaExFSWZoYmtRQndsWW5Rb09Ed01CY09DVVVHaDVVRDh6QVNOQlJ1SmcwREVWTVJIZ2pMQnNRaGlFY0pxT1JBUkYwUGljSkpJakxBWUhvaGhMQTQzanMycTdmaDVUb09KQ1h5V3kyVi92WTc3bFoxT0ptWUZlaG00bG0wem1VQTRhS1l0akpwTVpOb2dkelVqRjhrVHRPQVI3VUdYZlFNb2swMTdsY0x1WHVhNm5WMWxVSW1rc0tmK0FYV1BrenBYd1JQdzZDblYzTFRabW1pdUp4TnRaZGFpV1ZYTWpVVjJEbElMdFZ2bGhnRGVJTkNQQUdSS2g5d2cvTEN0bThZcUJLWlR1S0pkQ2VPK1hOOVdiTDgyMDY3TVlDb0xBcHdRVUpTU29EQkpNNVJ3enBHa1hHY21aWVFUVjJhWUJpcmJUdWk5VVdwaFlXS25EMlZMYVpadnNzd3A5NjRCVkNNb3lsZm16dW5GamJ6cjNucmxZYXZmeC9ieVY2WFN4ZGxQeC9uTDBMOFpEZ2FBRDlVVEhEcGc4N1l1UHg1ZkRJLzFkYkR3UHd6VDBmTDkyNU1wMkFDc0JlS2d0QnlMczNYWms1dXV6c21iZDV1dVlWRlVTd09CdFhaaFBzTVlFS3d1N3gzMWNYbWJ0dzlsK1c2UFU3aTJLb3F1L1BpdjVEdUFiQVE4M1JIdzBMb3I0ZUhWZnpWbTdMSStraW0rbTkxZkp4ZXZmbHZka3VtRE5nOFlsSzAvbUVFYzhDaUMyeGJtQzQ2a0FNNEt5RTdlbkN5S05qK0RLdlB1SWUxNWMyQXJxUldzdHNmTWE1TXVwcnQ2SFg2UDZPWlpjaDZtTEkyUmprTW8zbDBaTDdPVUlHVkNhc0NmQm1rQ25pQ3Z5azFaT1QyRWtZOXBHWmROSzB2bFJQODJQWDlhdWJqNnJYSkVjbGs0dE4zZlJjNDdmcHRJL3FmcUdZS2QybXBSZDhHdUFLd3JmdjhEMUF0S3RZSVJBQUE9Iiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkT1ZGRjVUbnBSTkV4RFNuVlpiVmxwVDJwRk0wMXFRVEZPUkVrelRrUm5jMGx0VmpSalEwazJUVlJqZVUxRVdYbFBWRkV3VDBOM2FWbFhiSFpKYW05cFVsUkthMW94YkVkUmVscHlUVmRHZEU0eFFrVmhNRXB5WkZab1ZscFdUbmxWYlZwMFdUQkdRbEJVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1c1UmVVMXRlRzVSVjFKb1RVZDROVk5IV1hwVWJsb3hZMFZHVUZaclRUVldhMlJoWVZZNWVHSkdXak5QUjJSTVQxaG9iRlpVVmt4ak1XOHpWRmQ0YzFaSVpFbFBTR2h0WXpGV1VWSkliSFpYU0d4VFZtNUNhMUV6WnpGamVteEZVakpzZUZVeldsRk5hMnhDWTFka2RHVllWbTVhVm1oMFlXMVdibVZWV1hsaFZVWnhWMFZPY21KR1pHWmxhMGw2V2tNeGNHRldXVEZrTUVwd1lrZHZkMUpFVG5Wa01EbHlXbFpvTVZaR1ZrbFdia0p0VGxod01tSnJOVzFOYlZwbVVqQldSVlpJV25KTlJFcFlVM3BLTmxOR1pGVk9XRkUwVVd0MGFsVldVa2hrYlVwV1RXNU5OR0V6VmxaaFYwMHhXa1ZyZVdSNlRrdGhhbVJSVkd0WmVWSnNRblZQVjJoaFpWaFpOVTVGZURWUmEyd3pUbnBXVEdOR1JteFVSMlI1VDFWU2QxSjZRbFpqUjJzMFUyNWtTVll4UWxkVlZUVm1ZVEpTWVZWWFpGaGtiRlkwVFhwV2FtUkdiR3BsYlVwdVQxUk9XR1ZxVmpSamJtd3pWVWhhVjJKSVRUUlBWM0J6VFRGT1JFeFZOWEJhVkZZMFRUTkNWazVWT1ZCamFrRjZXbTV3U2xveVpIaFdSbVJZVEZkS05XTkhaRmhYUmxveFpWWndZV0ZWU1RKT2VscENZM3BhYjJGc2JEUmhXRnB1WTI1dmVHUXpXak5WYm5CNVlrUk9hV1Z1YjNSaFZuQnlWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVXB3VlVWR1JXTnJXbmxPU0VsNFdYcFNhbVJ1UmtKalJ6RktZVEEwTTFnemJGQk5NVlpNVFZoV2EyVkdXbkJTUm14M1YyeENNRTB6WkZaSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXdFNlR1ZZYUZGU1JVNTJWa1JDTlZrelpFbGFNakZJVmtZNVNsRlZSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkZGcFpsRXVhVVIxZVRKQllsSmpjMWRFY2pGemFqVXdOMVl3ZUZaU2FqZ3lZVkV6Y2pWMU5XWnJNMUpWVm1aNFRWSndaRU5MYUVSMVRsbFdWblpOU2xKaFZuazJRVWRrZGtVemNHeHpaV1JxWVVjd2RucENNek4xVERsTWNGOXNORXBvUm1KS1drZG1NbmhEVEZJd2FVNURiR1pIUkUxUFRrcGtZVVZCTWxaWVZ5MU1NMnBCT1doQ2FWUm5ZVlZxWkhNeFRWcHNTMjFDY1ZnNFozTjNlSEo2Vld0c05XdFZPVFYxVUZkR2VYQXlaV3RrU0RoMlNIZHNVbTFFTUZOdFJHWTBWa0ZzYzFrdE5HcFJjRGRhTmxOTFluTjBWMGhWUjJkTldHeG5SRVJ2TkVndFVuUkNaRTlWY2tscWFGa3dSSFpXWkU1eFZuazNNVnBOZVVaM1ZHOU5SbFZQYjJwcFltaHVURmRCYVdabFJVMXdSMWwxTkRSS00wVkRObkpMUWxGcFZrbGtMVFZGTkZCU1NHcFJOM05IYVdzeGN5MXNWalE0TFVwc1JXSjFSM1JCY1U5QldDMUVlbmRFUzFkcGIyOXhYMDlxWTFjeVUxVjNJaXdpZEhNaU9qRTNNakExTkRVME9ERXNJbUlpT2lKeGVrVlNiV1l3Y1VaS1dtbFFXRGhEU3pKdk5GOTFZM05WTWtaSE5YRnBSVE50TmtsMFRGVk5UMDVWSWl3aWJtOXVZMlVpT2lKbFpUSXhNMkZoWkRFNFlUQTBNemt3T0RSbE5qYzNaVEJtTmpWaU1ERTFNaUlzSW1OdVppSTZleUpxZDJzaU9uc2lhMmxrSWpvaU1GaHVSa3RSUnpGUWVEQlVhVWszZDBwdVlVaHNNa1ZDWkd0cU5HNHdWMWs1TldwSWVHbFdSalpLYnlJc0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNkluUXlNbXhuUVdSaE1HeDVTR1l6VG5aMWNFRlBWa001VmtkYWFWOXhiRlozT0dkTE9YaGxWVFZMYzFvM1RXeHNWSGRJT0hobWMxVlFSSGx2V0hsU1ZuQmtRM2cxY3psRVIybHhVM1pRTWtsQmNXZHRlWFZuWlZodGFtVm5lVVl5YVVGcVdFTnJiRmRmZWtJelpDMXBhVlkxZDBKcGJHb3dSRE51ZDA5clpWaDFWRlZJVm5CbU5YcDJiazVtTW1aZlIwVkVWSFpyTURKWFN6SjZTRmRVTlhRNFFrdGpVVlJIZG1KVk1uTTRhM1ZWYVdNMVpFa3lkek5LYWpkUVRrWXlSbEJ1T1doYWVYWTVORXg1UWtsM056VkxjRkZsVEdkeU9VUndSekJWY0drNFNuZElWMUJXVVU1ZmEyUmFVV2RYZGxWNE16VmpkRmxqZW1Kbk9UTlhlalY0Y25sM1VIWldiSE00T1dwc00xTkRMVTVwWlRWNE0zQlZOVTlQY2pBelpucEpaMmR4VkZkWExXSjVjR2RYV0ZaMWVWcGFhVUkyTnpaQmN6Wm9hbGw0YVhabmNub3hkM1ozVW5weWJETmllbm90YVZwclVTSjlmWDAuUjJPUzJoN1FHSlJOUnBVMC13d2NLa1NyZzUxcWFiMXJfX0dwQVdkWmh0bjVkcS1jM0JJRUFPTUhjVUxrRUd3cEs3eE1uajE4eVVkZmdXdjM3RXNqS3Z1WkFtQlQxdUJrMW5jYjJlTVZKX012ZURWMlNjOWc0UUdqbWhWZ0lYbTluZ1RzNzlBSHZUMjA0WklrMEJXb0VGck1VTEFiR1NpSGZfQWxyN0x2dGFVd1NHdFhNZHhlM292R09UOHpTc0ZPdEpBYlVZU1pOcVZKektmdmdaNlhjcEd4U0RrM3FjaFJ2VHN1YkNSMDh6cmVTaGxYaVdwTEE0V0QycC1ZSU9oTXN2TnBsalRFVjI3S196NEI4M0NocF9VSFlhbzNtUVpkU0tWUFp4MmJZMzBjaTg1dGRfUWVaYzhqallNWi0wVlRIQVJvVEpYeHpOaTN3R2I3RTc1OWJ3In0.","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175"} +[{"id":"c1f8de64-51f4-4b79-9905-3e20a3a5b233","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:18:03.2872339+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"8ab06108-4de1-45bb-8ae2-2b43c624e39a","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":0,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:03.2848791+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"fea48c30-ab56-4eca-9958-0997066f3972","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:03.3028311+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"2fc4659d-46cd-47cc-bae1-0e56dec26078","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:18:03.3028311+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"81cc96de-cf61-4a61-9abd-13e562ad1ee7","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:03.8670803+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"ded355d2-506a-4f2f-ba1a-d5fb0d416f81","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:06.7975504+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"d38b0af4-12b0-4b4d-a0fb-c7e22d099691","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:06.8501589+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"fb465ff7-4e3c-4534-8737-0dc56db98d4b","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:09.9814456+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"55854447-67c3-476d-90ce-b198c98f4300","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:09.9814456+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"bec7a3da-3443-4086-885a-8c78956f7736","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":8,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:14.0439653+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"1dfd28da-849d-4dcb-8e0c-2068024ac49c","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":8,"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:14.0434135+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"7e71abd3-6eef-4dd0-88df-6ac8ce5179dd","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.HoldFailed","data":{"operationContext":"holdFailedContext","resultInformation":{"code":400,"subCode":8536,"message":"Action failed, file could not be downloaded."},"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.HoldFailed"},"time":"2024-07-09T17:18:14.6862919+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"a4a12c63-0215-4366-aebd-7c8a234700cd","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":9,"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:14.7176261+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] +[{"id":"ed246a6c-aa10-404f-b564-a2c4509eb0ae","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-2457-b5bb-a43a0d009b69"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3862-24ea-eedc-44482200b9a1"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":9,"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:18:14.7176261+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"f67da7b5-8f0c-4262-8ed1-30c45621cfa0","source":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-7a00-49b9-b68b-062276d7d577","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:18:16.3757166+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-7a00-49b9-b68b-062276d7d577"}] +[{"id":"7082a27b-2c0d-4130-8ac2-9534745ddbdb","source":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-21d6-4c18-95eb-ee43f883012d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LSTc3VXBEYWIweWh6azlUS1h4djFnP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"a884b7b6-d64d-48e7-afb1-ce42e477d175","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:18:16.470239+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-21d6-4c18-95eb-ee43f883012d"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.json index 2be2bce78d17..a1d837161a31 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.json @@ -17,35 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", - "operationContext": "playToAllAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-7d30-4c7e-bd99-05a35aa38603", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:38:52.3016596+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", + "source": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", "participants": [ { "identifier": { @@ -71,25 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-7d30-4c7e-bd99-05a35aa38603", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4c82-4192-8711-4376d8f484c9", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:52.3172836+00:00", + "time": "2024-11-22T12:28:40.7422925+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603" + "subject": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "source": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", "participants": [ { "identifier": { @@ -115,101 +98,165 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-07b8-4cd1-a03f-c919e28a3971", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:52.3642538+00:00", + "time": "2024-11-22T12:28:40.7336511+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playToAllAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-07b8-4cd1-a03f-c919e28a3971", + "serverCallId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:40.8002486+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325" + "subject": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "source": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "version": "2024-11-15-preview", "operationContext": "playToAllCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-4c82-4192-8711-4376d8f484c9", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:38:52.3642538+00:00", + "time": "2024-11-22T12:28:40.8318726+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325" + "subject": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", - "type": "Microsoft.Communication.PlayCompleted", + "source": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9", + "type": "Microsoft.Communication.PlayStarted", "data": { - "eventSource": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "version": "2024-11-15-preview", + "operationContext": "playToAllAudio", "resultInformation": { "code": 200, "subCode": 0, "message": "Action completed successfully." }, + "callConnectionId": "21001e80-4c82-4192-8711-4376d8f484c9", + "serverCallId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:28:42.5330257+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", "operationContext": "playToAllAudio", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-4c82-4192-8711-4376d8f484c9", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.PlayCompleted" }, - "time": "2024-03-08T21:38:58.1299007+00:00", + "time": "2024-11-22T12:28:46.7402399+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325" + "subject": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "source": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "version": "2024-11-15-preview", "operationContext": "playToAllCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-190f-4eb1-ae5b-37dadd8c0325", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-4c82-4192-8711-4376d8f484c9", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:38:59.0048585+00:00", + "time": "2024-11-22T12:28:47.6363885+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-190f-4eb1-ae5b-37dadd8c0325" + "subject": "calling/callConnections/21001e80-4c82-4192-8711-4376d8f484c9" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", + "source": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603", + "version": "2024-11-15-preview", "operationContext": "playToAllAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-7d30-4c7e-bd99-05a35aa38603", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "21001e80-07b8-4cd1-a03f-c919e28a3971", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "7d3321e9-33f0-4545-8d28-3726033de03b", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:38:59.0673616+00:00", + "time": "2024-11-22T12:28:47.6531476+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-7d30-4c7e-bd99-05a35aa38603" + "subject": "calling/callConnections/21001e80-07b8-4cd1-a03f-c919e28a3971" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.txt new file mode 100644 index 000000000000..a0ba0cf66ce5 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_all_participants.txt @@ -0,0 +1,9 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVliVy9iT0JMK0s0SVB1QTkzcFUxU3BFUVJNQmFPbmFacG04VE5TN2RkR0JkUUZHV3JrU1V0SmNmMmR2dmZieWpiaVZQM3VybTdMYkFLNElqazhKbG5odVJ3UnA4N1d1WDVlZGxrYWFaVms1VkZSMzd1cExhY3UvOVowcEVkSVpXdUpZa1RwV2djb1lqakVESE9LSXJqZ0NFVnhwUnFqSlZJMkMxdUgwcVFMd0tDU0Fyak1ZOWpwSml2Y0lKeEZPT2c4NktUWkhXVnEvVzVtcHVPTEJaNS9xSmppcVFxczZJNWRScmppQ3NmK3dvRkxGR0lHUk9qT0l4VEZGRS9FcHB5ckpXRHlWVXhYYWlwY1hNMktKV3lUYWF6U20yQmpPSXBENmlQREExVHhEU05BWU5yNUF4UlNvazA1QXFBWmxtU0dEQThWWGx0SHJsY3J5dmcxNm1OdlRkMlVGVWdXZG15TXJaWkg2bnBSdWVYRjUybS9ETmNsUVlvSkltUEdHT0NVb3cxb2RFelhMV0J3Umg5NDJmM1BNdFZQS0dSb0w1QVlSZ0p4RkltVUJ5UkZCR21tQkE0OElrdkRsMWxUVjB1ckc1eE84K3grei80TU0rS3U5cTVVVFdOMGpNQW16Vk5WY3RlVDFWWk44Mno2YXlCZWF0MXQ3NkRWZW5xY3U1R2V2ZTBwNnVlMW1oUkx3M0NISUZRZ3RSZDNkVjZUMVRyM2ozcHBhVzlNMG1QUkFrTm1STElNRU5oZHdVaEVncjJTRXBZSkh3aVFvRkZqNGE5alBSOGpuc2JSajlsZllKUmdCR0pFQTNCaXJsSk1qVW9RSzBGdGxvRDFibmJTMEJnQ2w2cC8wb203RGdkR0dITko2T2J2eExWRGFNRG9vdWt1cmFxcUt2U09yclFCTEtjZGdtaFhSRjB3MGo2TEJTOXpwZnR3Z3pMb2pFRmlIN3U2TTNyOWpDcnFzcTNnYTVYSis1SXgza1p3OEI5SDAvc3BDajd5SU1nRXpIdVllLzAzRHNkTTQvUXNJdmhqemlCdWwrREoyRzZhK2orVHNUdkN0RU5mQ0FVdW9HNFA3eVdaSHYrWEVmVHgxNzdNdStyUlpLVkhvdG93THpMNjNGdjhIN3NFY3k4Q0g1OWp4RGlFUUhLaFJlRjBBTXQxeW0rcTA3MWJhTXJaT3ZzTjdQWFRtUDVEMitGNWtBWXpyNEh0bnMxUkErWjFEUFBHbjN2WGpiaUsxUm4wMExCTVp4K2I5WWp0blQ4K2FhZGFZTVdxVlZUR1k5WDBXTmZ0VXpraWUzVitkcXZmN1lmTDJlNFhOMmNqWkwxNi9TWFBaYnp4V3JUMHFwSXNrUTFSb0xSM3MxbzdGSGk0eEFIekNkUFRONDZyMWtETTV2bUs4K3FKTEhnckM0bHdpMFU4YXpiS1J1NVEzQzZCODRqOFBZQk9IOG1PUDhhbkFKelo1VFNEU2lnc0FVQ0hCNG9JSncrU3dISUhTcWdQMVlCN0xiV1BZUnlRU05NUXU2MUI0MTNDUWQ0amowNGFsR0xiZzFjVFR2MGZRSjczdmZPcm04dXowOUhIZzJKNEg3QVNZU0RLTURDRjRlYTZhTm1FUVVCL1g4MDh3Zk5ZVUN4RDllcFlJU0tnQVpSR0h5dEdvNVU2OVZLMVRYb1o0S0FlaHc4MGM4OEhnUVJmbzUrVHYzd3dMRnN1M0kvVWdmZjIzNU9CUmVSVC9DZnJJTCtHQlc1aWswdTV5b3JVQnNpTjczekxKRmtGNlRpcFZINXRMUlpNNXZMZUttOVN1azcwMVFxczk3U3hCQk90bXp0dW1wS09PbUQ0NnZiNGRrdHJQdnRxN1BCOFBicTFZRGNDdXhsQllRNkkwK1duOHluYWNiZlUzYjA2blZ5bVo3ZXZIODN1UDY0MWgvTmIvYisvdTVFS1oxOUlML1RmL25rZDdJanNvV25md1EvNE95cS9IV3E4ZW5GM1h5b2czODJSOUUwRXE5bXIrZlhvMUY0ZDdLK1hrLzF1NU1XZmhjUnE3bXE0T3BnM3RYcDJ6YzlFbXd2a0llaHlEc0pLZTJKci92ZDVkRk9PUnlCQTM5MWVubDh2bytXenB2TlNKdzFGdGExZjZnSkFpT29pdllBTjVPRXA0ckNyT0orVVQ2Ung5NTRlSFp6cUYrNC9zRmhQOXh2bDhlamIxa0NtOWprcHBxVmhVSG1IbTd2QXc0Z0F0bEI4SFNlN3czUHYyVytjUDE3OWxWTk5vZEl1Z09FUzgvWXlrSktMZXVaUXBRSFhuUXNCNkVjUlZKUWVVUWxld2xrWlRDU1F5R2pJeGt5R1J5Qk9zbVlESW1rWElxQjlMbUVXZVNsSEI3SjBVdDV6Q1E1bGtlaEZMNFVUUHBZdmlUU0J3RVFHMjBVbTFYVDh2TmM5aVVuOEN5WHkrNW1IM2RMTzUxTXpBb3laZUJhTlBWa0F1YWdXV0poMW1TaTRocTVTeGs1UzU2ZytZOW9EeG5aZDRCU1ZUZTNNUnp1WlpZMHM5dlVtQ1NHTS9VM3FIaGNrblByUHdIblQ2bG1wa2szUkxOa01rbXNTaHMwSy9PNXNjak9JY2xDelM1blF3QnZFR1NPQUdRS2gxd2ovSENzNjlwcUJLSlR1SnhkOGVKKzNOZ3V6WDVycG0yQkVUSmhxRW9pUkVRQWRTR1BERlNXTEVBcEJIVVRLb3ExY0RXVHFhR21iVk84QzYwWEZoWjIrbEN3RkdaNWthWXVaMjg3SUYrRVhQS05XYnRNY1p2WXRhM091ekd6MFhyNDlzUEZpYzlmaFRmSHdsd09CLzArNEVQZEJFRUhaT3k3Z3IyKzhEK01oejY5c2FQUis4dlZLRjZDRE1CYUlBNDVsbU14M2hROG1Xa3JuS3krM0E0TjhyeGNHakNzc1F2ekJlWkFxdXI4M2xJL0xlNno1cUVnM3g5eHVhMHQ4N3d0UFA2cnhCMUF0cWs3M1V2ZG9YYy9lWWRtTC96bEtHRjNrZnB3RTV6WFYrK3FaUHpoeldENWtKWDdJYUxzNzZZZitJSnpGb2F3WGhDU0lKQTc3MmYxMlNKdnNqSFVsK3NIdDJmMWtTMVZvbUczUFhvK01mRml1cCtwdzVlSVRkbE9TS0JUeFJFWExFWXNpRFdVN1F5cWVFUGhrNExHU1JTNFdoVDhxdDJTRmRNaHpIeDB5MmxSTjZyUUx0M2Z1ZWNQYXhaWHVaV09TS1p5aDdiL1JlU3E1YmUxNUgrcW04SFlxUzBYVld2c0NzRGFzdmZmZXJ4YVdId1JBQUE9Iiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkT1ZGRjVUbnBCZWt4RFNuVlpiVmxwVDJwRk0wMXFRVEZPUkVrelRVUk5jMGx0VmpSalEwazJUVlJqZVUxRVdYbFBWRkYzVFhsM2FWbFhiSFpKYW05cFVsUkthMW94YkUxYU1qVmFWMFpXYjFreU9EVldiRVpPVG10b2FFeDZUa3RoUkZaNlREQkdibEZVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1dwQ2NrNVlSbXRsYlU1d1ZHeGFVRkZ1V2twTldFSkxZbXhrYmxKdE1YcGlSRVp4VkdwYVIxbFZlR3hWVlVsNFdtcG9NbHBXWkd0VFJXOHlWRlZTUW1SSFpESk5ibU4zWVZSUk1sWnFVbE5VYlhjMVRtcHNjbVJIYUU1amVURlRWVlY0ZWxZeWJFdFNSWEJzV2xka1IwMVdhRVZpUjFwdFdqSXhkbEpZVm5SV1dHUjNVVlUxZVdWc1ZtRk5NR1JZWVd4T1lXUldaRFJWUjNSMFRUQmFVMUpVVFRGYVZVWlhWREJLUW1NeWR6VlRibEpZVlc1R1JGcElhRk5XYkdneVlWYzFjbUpZWkdwa01FcFhVV3RrZVZGWGRGaFNSVFY2VWxkc1NsVlliRkpqTWxKclZVWnNhVmRJWnpGT1ZYUnJaVmRTZFZkR1NtdFVNblJWVmxkb1JsZHVTbk5XYTJ0NFZraENlbFZ0TVdsV2FsWkpUMVpzVlU0eFRuRk9XRXB4VGpCa05rMXJWbXhWTWpGcFZHczVjMDlJU2s1UFZqbE9WV3BTTVZZemFESlBWWFJZVjBaR2QwOUlUa2haZW1SbVdteFdkazVVV2xsVGEzQlJZbnBvVjFGdFVrZGFiVmsxV1RGYU5XRXdhRmRXUlRWTlYxVmtUbGt4VG5Oa00xSTJUVzVDZUZVeFZrcGhVekZEWWxSYWRGcElWbEJoYkd4WVdXNUpNV0p0VmpCUk0yaHlUVE53ZEZaSFVsSk1WV3hFVEZSVk1sVXpiRTFYYkRsdFdqQm9TR05FU2t4amJGcFhWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVWt6WTBkUk1tTXdTbTFXUjFKNVdESm9VRmRzVFhwT1JWSmFUVmhTTmxGWGRGSlRNVTR3WVVSU1JWTXlhSHBqTUdoc1YxWkdWR0ZFUW5wSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXcGtSVlpYT1hwU01HeDNVakowVEZSSFduTmhSR2g1VVRJMVRGRlZSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkVVMFNXNHdMbkprUkU0d05uaDNOV3R3VjNkb1YwMURYMGxKUm0xQ1VrRmxZWGhOVW1FemEycGxkWFppTUV4VFZuRjFUVzlDYWxCWU0wSjVkVzFSYmxFd2NsZHJOM1JDVjFkRE1XVTRjVjl6U1RGWWFIbG1kMUZLUTJkMFoxSlZVMWMzTVZaNVZXbzFOVGxMUzNwdWVHcFFhekF5VTNFeVZuTTJSMnhMWTBOV2RFVTFiVFY0TkhWNE5sTk9XbXRvYVc1SlVXcHpWRW95WjNWWmFIRTRlVmx6WlY5QlYxTjRkVkJaYVVsNGNVRlJWMHBCYjJoNWJrUkliVWgxYVhoV1dIZHVYM2RVYlRCdkxYRmpVV0ZFWjFnNFdXZzNWVEppUVZKV05FSnVlV0ZRUTFOR1ZtbEtNblZyWVRKbU5HZ3hVRlZNWW1ORlZWVk5URlowUjBwblRFSmZSRTlSYm1WME9WRnFORXR5YURZeldGcHVkazVZU1ZKQkxWUjNlWEU1YTJObFdtOTFibDlaZURaUk5TMUhUakJEYm0wNFVEVXdRMVJJWDJaRlNFOWpkVVZhV1RoR1dXVnlORnBvTXpGVVMwdG5ORXgwYkMxYVRFeEpkeUlzSW5Seklqb3hOekl3TlRRMU5ERXlMQ0ppSWpvaVYwVndTbFZUUWxnMGRVVkNVbW8wVGxacFRrRTRhVWhDZVMxc1ZuQk1YM1ZoTFdsemVsUTJlVXAyWnlJc0ltNXZibU5sSWpvaU9HRXpPV0ppWW1FeE4yRmxOREkxTUdGbE5ETmhPRFF5Wm1ReU1qVTFaV1FpTENKamJtWWlPbnNpYW5kcklqcDdJbXRwWkNJNklrcFliVkpMUTFreVpHbHRNWFZyVVU1NFIxazBUMHRXWldKMmVYaG1aakZuVTA5dGFqWkxWSEJUZFdzaUxDSmxJam9pUVZGQlFpSXNJbXQwZVNJNklsSlRRU0lzSW00aU9pSXdhelZ4WkhwamFVNVdUMEoyU1RGd1NtNVhaMFp0YzJ3eGFrNDJSbUZNWlZGQ01XWTRkbVZYWkVoS05rMUVRWFJuZGpKM01HazBObFkwVWs1c09UWTVhM1JvVFhNdFVsRk1jMWRwU2tSS1pXVm5SakZZUkd4bVptZHRiMFYxYlZWM2NFRk9jbnBWV2pOSFYycFRXblZYZUZCcmJUTkdVa1V6TldWQlZrOUNRWE5zT1VwMFYxSnhRMlI0VWxaWWRtbHVhMjEzWTNkQ1ZrSkhja0ZyVjBST2MwVnBTVkY1VVhOa1pGQlpZbGg0TlRWTFpIbGtibGhTWkU5clZGVm9SVnB5YkZaSk1WUndjMUp0WWxZMVNEbFpWRGRUYWpWeWFqZEhlakpGWlZOdFlrNVBiRGh5VFRsZlRWSTBkVmQ0ZGpsTFYxaFJjRGh6UjJNM1gyWlZielUyV0VwS1VHODRWa0prUm1abU9XTldlV3RJVmxST1RGbEhUV05UYkhkMGVqSndjVk5WU1drdFFtMDJiV1IxVDJwWlYySnlOVzVsZEVONGF6TjZiVlJrVVMxSlF5MDFObE41VEZwZlptZElSM0F5UzNKV1ZsRWlmWDE5LmxOamdEeHhLZnlYbTA2TjVhc2tqWndINnpsS08tY2NEdnJRUmVKWVpIbFlWZEFscUhvVkpHYWo4RXg3R19vRDEyRkRfVTdZZ0xsWWZDbDctSHRocm9veU1fNmxLbGlCdWZzMUNRTGpOblk5RlprdWttckxOQTlJdU9FdDRWRWh0aTVkRmFnbmFHcEFEb3BBRGRNRDdWS1pnVjZ0TjlmYUlqdHBDSlFIenBMVDB4M3NtbVZsb0V6aDgzTzROUjNDWlQwQ1d6MG41T2d5UmFZN0pzTnFkQTZ2VU9jWHBERkJHMlBpWHFKUjN6RWxKVm83TTYydDRaUFJadzRzMGhBMGJwM09EU2xLZEpMaUFldGtvLVUzd0E4ZWdQUnEzU202MENxN0hzdEpaQTZibjQ2R0ZCSUtKeHpOVk1kNTNmbU5QVUNvVlp2UUpFZm5xaDZwRnRQWGtyZyJ9.","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968"} +[{"id":"ef91b474-b89e-4899-bf15-7252407e743c","source":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playToAllAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-a6eb-4411-9598-126bf270a6ad","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:53.8609524+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad"}] +[{"id":"cae176b0-47cb-41d7-bf74-83e1e271cba8","source":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-a6eb-4411-9598-126bf270a6ad","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:53.8904596+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad"}] +[{"id":"d6401551-c2c6-42de-8466-3641c0b76a1b","source":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playToAllCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-72a4-493b-a959-ae8359a6a9c5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:16:53.9363146+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5"}] +[{"id":"88b35de8-27e4-4e08-91d8-5da8db09b6c4","source":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1f64-b5bb-a43a0d009b06"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-1ff6-71d3-44482200c129"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-72a4-493b-a959-ae8359a6a9c5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:16:53.9335589+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5"}] +[{"id":"d54e4f6c-0ad0-4f4d-8519-4efb82114089","source":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5","type":"Microsoft.Communication.PlayStarted","data":{"operationContext":"playToAllAudio","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-72a4-493b-a959-ae8359a6a9c5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.PlayStarted"},"time":"2024-07-09T17:16:55.8989695+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5"}] +[{"id":"4e728df8-e84e-4106-a377-5d382bab1d31","source":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5","type":"Microsoft.Communication.PlayCompleted","data":{"operationContext":"playToAllAudio","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-72a4-493b-a959-ae8359a6a9c5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.PlayCompleted"},"time":"2024-07-09T17:17:00.1226389+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5"}] +[{"id":"d54a010c-84e7-40f9-ae79-c780934d094b","source":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playToAllCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-72a4-493b-a959-ae8359a6a9c5","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:01.6959247+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-72a4-493b-a959-ae8359a6a9c5"}] +[{"id":"54ece39a-7220-4e64-b7c6-9bc747e23378","source":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playToAllAnswer","version":"2024-06-15-preview","callConnectionId":"31002180-a6eb-4411-9598-126bf270a6ad","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi83WkJkNGs5YVhVNk5zU1FwZFBYS0F3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"e116cfa5-584b-46bc-9243-ee2f64c0d968","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:01.774268+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-a6eb-4411-9598-126bf270a6ad"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.json index a173c1890ef5..997cd6b72562 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.json @@ -17,35 +17,14 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", - "operationContext": "playAudioAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-abd6-405b-adcd-379e020f1e79", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:38:36.0029069+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", + "source": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", "participants": [ { "identifier": { @@ -71,25 +50,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-abd6-405b-adcd-379e020f1e79", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-8c42-4a81-a69a-667887187a11", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:36.0341077+00:00", + "time": "2024-11-22T12:28:25.1426095+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79" + "subject": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", "participants": [ { "identifier": { @@ -115,45 +98,77 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:36.0653533+00:00", + "time": "2024-11-22T12:28:25.1512759+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "source": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "version": "2024-11-15-preview", + "operationContext": "playAudioAnswer", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-8c42-4a81-a69a-667887187a11", + "serverCallId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:28:25.1782175+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", "operationContext": "playAudioCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:38:36.0653533+00:00", + "time": "2024-11-22T12:28:25.3059871+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", "participants": [ { "identifier": { @@ -179,25 +194,29 @@ } ], "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-abd6-405b-adcd-379e020f1e79", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:39.7372743+00:00", + "time": "2024-11-22T12:28:28.1262442+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "source": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", "participants": [ { "identifier": { @@ -223,50 +242,53 @@ } ], "sequenceNumber": 3, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-8c42-4a81-a69a-667887187a11", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:39.7372743+00:00", + "time": "2024-11-22T12:28:28.13656+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", - "type": "Microsoft.Communication.PlayCompleted", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", + "type": "Microsoft.Communication.PlayStarted", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "version": "2024-11-15-preview", + "operationContext": "playAudio", "resultInformation": { "code": 200, "subCode": 0, "message": "Action completed successfully." }, - "operationContext": "playAudio", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.PlayCompleted" + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", + "publicEventType": "Microsoft.Communication.PlayStarted" }, - "time": "2024-03-08T21:38:44.6123274+00:00", + "time": "2024-11-22T12:28:28.6879527+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", "participants": [ { "identifier": { @@ -292,25 +314,53 @@ } ], "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-abd6-405b-adcd-379e020f1e79", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:44.6435749+00:00", + "time": "2024-11-22T12:28:32.9627092+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playAudio", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", + "serverCallId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:28:32.9364235+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", "participants": [ { "identifier": { @@ -336,56 +386,69 @@ } ], "sequenceNumber": 5, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-8c42-4a81-a69a-667887187a11", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:38:44.6592091+00:00", + "time": "2024-11-22T12:28:32.9621008+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "source": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "version": "2024-11-15-preview", "operationContext": "playAudioCreateCall", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-0c00-44cd-bcf7-dbf37e55eca3", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-a362-4b58-85b4-4fee3ae40423", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:38:46.2061446+00:00", + "time": "2024-11-22T12:28:34.4525818+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-0c00-44cd-bcf7-dbf37e55eca3" + "subject": "calling/callConnections/21001e80-a362-4b58-85b4-4fee3ae40423" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", + "source": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79", + "version": "2024-11-15-preview", "operationContext": "playAudioAnswer", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-abd6-405b-adcd-379e020f1e79", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "21001e80-8c42-4a81-a69a-667887187a11", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "27d50f5a-b880-4dea-9066-10ac63613dbc", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:38:46.2842181+00:00", + "time": "2024-11-22T12:28:34.4831632+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-abd6-405b-adcd-379e020f1e79" + "subject": "calling/callConnections/21001e80-8c42-4a81-a69a-667887187a11" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.txt new file mode 100644 index 000000000000..e2477d0a88d1 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_audio_to_target_participant.txt @@ -0,0 +1,12 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVgyQTg3cGNXSEhoUUJZK0JIMGhwNTFFbVRkcm93TnFBb1NsWXRTeHBLanAxMit0LzMwby9FR1hlNjJkMHBNRFpnbStUbHVlZGU4WEd1djNTVUxJckxxczNUWE1rMnI4cU8rTkpKVGJXdzMzblNFUjB1cEdvRWlSTXBhUnloeU1jaDhueVBvamdPUENURG1GS0ZzZVNKZDRjM0wwb1E0YWxFUEFvSlVqb21TSHBNNGdUak1LQmg1MVVueVp1NmtBK1hjcUU3b2x3V3hhdU9McE82eXN0MmJEM0ttQVRNcHdyNUtVbVJoeU9NWXMwMDRqUk50VXhTTGpFSG1FS1cyVkptMnM3Wm90VFN0TG5LYTdrRDhpTWVSRFNteUUrSVFwNUhNWkthU3lTNVpuR2tmQWJmQURUTGswUkQ0S2tzR3YzRTVlYWhCbjZkUnB0N2JmcDFEWmExcVdwdDJvZUJ6TFkrdjc3cXROV2ZrQ3FKQTZTVFdEK21Lb29aZVVHcXRqQVlvMjk4N0Y4dlNwWDBrNEFua2lNcFV4OXk3aEVVWVI4eUZ3WTRZcGhUbXNqalZCbmRWRXVqTnJpZGw4VDlCemtzOG5MZTJEVEt0cFZxQm1DenRxMGI0YnF5enJ0cGtXZXpGdWF0SDdyTkhKNUtWMVVMTytMZVUxZlZybEpvMmF3MHdyU3IxSUdGVXU0OWNkUEt6SFhpc2toU2tzWVNKWkl4NUtYRVF6d2hNVXBUcmxKS1V4cVExS1dobXhPWCtkamRFdms1NzFuS0M1M2tzbCtDRHdQVWxBSmVDNXNOb0pSQkNwcS9BTjg5bFIxam96OXAxZjRGZUcySjdGZ3RrL3JHeUxLcEsyTzVRUk9ZK2JSTENPM3lvRXN4RWN3THVkdjV1c3Y1c0NwYlhZTHRsNDdhL3R4dFNsblh4ZTdBY3B2RWJzMjRxR0lZdU8vaHFabVdWUTg1Skl3NFlRNTJ4cGZPZU9JNWhJWmRERzlpRFpwZUE5bUM2YmFoZW5zVDF1Vzh5M0NYZXA0ZGlIdkRHMEYyKzhoMnREM3NiSDRzZW5LWjVKWGpSYUhIbmV1YmlkdC9QM0VJOXB3SVBwbERDSEVJQitmY2lVTG9nWmJ0NU45MUozdW1WVFV5VGY1Wkg3VFRXUHpEV2FNRkVJWTk3RURzVGdPbmdFaWFtV08wdXJjL3R1WnIxT1JaS1dFN1pkK2I5WVF0TFA5bzI4NlZSc3ZVeUV4Y25WelBuL3JxVlNLSytZbTNuRnhQNXI4TzlmalQrOVBpYWpTOE54Tjh3SEt4WEc5YlNwWkpuc2hXQ3dqYXVSMU5IRW9ZRG5IZ01mSXM1RjN5MmdkZ1p0Smk3UmlaSkFhUzFhV0V3NFB5SEdOWHl0YnNHSnNlWVBzUkpQc0lPM29aZHZSN2JBcThiVWhTdFlCUFlRRUVPRHpDSno1OUNUNllIZVBUSDRvUEsyMlRHMEo5VGlOTVF0L1o3REsvUy93UXZwa0QyMnliSEtQaGV0bURIL28vU0wxemNYTjdmVGtlT1RTa2hJUkJZRzl5Rm5pYzhHKzRwayt1ZVJRRTlQOXhIVDI1aGlTeE1BUXh3RWlFSTBxRG94VUIrMm1UMVZvMkRmZ0hldUFlQjAvK3ZTNmx6UEU5RnZDWEVQQUp2SStkMEIvdnhEOVlmOWFIenlGcS9HZjdvRC9JUnlGalhZaUZ6RXUwT1NPM3ZZczhFV1IvU3NVckxZdXNNbms3VzRoNHBaeGFxcmx1YTVrYlo2VmpPRTkyZE0xRDNWYXcxL3NuNys2R0YzZUU4cnMzRi8zaDNiczNmWExIc1pPWGNOWnBjZjVoZkoyZHVuemN2RjVmM0dZUEg2TzNueHYvZnVqZHZtL1BQdCtFMWR2aDFaeC9jbitqLzJMa043SW5zb09uL3drK0RoYnIwV3hlWG4wTS8ra3ZmM216aXE3bzVPeHN1VnFzWGpmS1AxZVhiSmlPVmJDQjN4K0o5VUxXY0hkNHpydngrWmxMWU5QZ1owT1I4enFrMU9XLzc3ZTN4MmJLOFFqY0tlL0cxeWVYaDJqcG90Mk94SGxyNE1IMmpqM0IwUWl1b2dQQTdTVHV5TExVNjdoWFZzL3NzVE1aWHR3ZSsrZTJ2My9jRHhmYzljbm9XNUhBTXRhRnJtZFZxWkcraCt2N2lBT1lZRVNDNS9PWU03ejhWdmpjOWgvRVY3ZjVBazdUUFNEY2V0clVCclN4YUdZU1VUOXdjRjl3SnZ5UjhIM1JKeUxDZ29YaWRHZy9SME54NG9uVFFQaGNlSUVZbklvUkU1RW5oakE2Rk9SRW5HTGhjVUZETVFqRjBJT2JVbmdEY1RvUVVTVDRRSVI5MFQvZE90YnJkc1BQc1dKTFRPRzFXcTI2MjNYY3JVdzJuZW8xU0Y3Z1dyYk5kQXJob0ZsaVlOWjBLdU1HMlZzWjJVaWVvYkVudEVjbDloMmdWRGJ0WFF5N2U1VW43ZXd1MVZCTndKNzZHNVF1VnVYY3NXZmcvbk9xdVc3VExkRThtVTRUSTlNV3phcGlvUTB5QzFCWnFOMnJOZ1R3R29GUUJDQmRXdVFHNGNkdDNUUkdJVERONEhxMlZZajlzR043Q1gydXMwMmxvSFNVUXBVamtSOHBpVHlhS0JUQmNZOFU5YjJVcFRqUUpJSTV1b0hpZEtQeDNpcTFOUEJnczhmS285U3J0MUFObWwwSENFWlFrMmY2d1VyRm5iTGJ0RHJuZGM1R3E0V2Y1Y0g4K2llZmpQSVBINi83dlI3Z1F3RUVodzdZbE13YmMvb0pCRXBXaDROa1FmaFBmWk9CRGNBYUlBNGl5N0tZYkN1WFhHOUtsYnk1M2czMWk2SmFhUWlzTlV2OUZlYUFWclY1MzFBZmwvZDUrMWhaSDQ1WWNXdXFvdGdVRmYrVlRnZVF2VkpIVFpJaU9XL0FwTHcvMU96UWRIazlTSzdVZ0ozYy9ubzMvM0J5ZS80NVdaLzBRWXdUakFKNFBBeUJldnE3N2dXTSs3N1BBa1pDa0NJc2lteDVuVGNYeTZMTkoxQW9QanltUFc4R3BwS0pndFgybFBsRXg4dnNVS3JEWHdyYm9qSmdVaWNzUkNIWEdIbUV4aWhPUVZIR01aYlNDOFBRMy93ZkFIbFY5cEdWMlJCbVBxVmxYRGF0TEpYVisvdjAvRUdKWXM4UjdMbTJKS3NzaTF3V0Z1cndmNDEzRzNLN01QNm42aGNpelV5MXJEZVJyZ0ZzVTd6K0c4azFBVzVDRVFBQSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE5SRVV6VG5wTmVFeERTblZaYlZscFQycEZNMDFxUVhkTlZHTXpUWHBGYzBsdFZqUmpRMGsyVFZSamVVMUVSWGRPUkZGNlRWTjNhVmxYYkhaSmFtOXBVbFJLYTFveGJFdFNSbEpvWWtoQ00xWXlVWGRpUkU1WVRETkdjRlZyVGpGT00yUnpXbXRHVWxCVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXNVNiRTFGYkRaT1dGcDVWVmRrYldNd1ZrZE9TR2h2WlVWc1RsTkZOVVpaTTA1R1kyMHdNRmRzU205Uk1EVjVUMFpvYTFwSE5EUlRWR1IzVmxaR2QxUXlXalpPUm1oWVdtcE9jMVZyT0hwU1F6Rm1WRlZ3TVdSc2NEUlNSRnB3WkRKV2Fsb3lTWGxhYTJ4NFltdEdhbGxXV21wa01FNXRWMFpPUWxwc1RuSlNNbFl4WTFWdmVWSklTVEpNVm5CWFQxaG9XbEV3U25kalZVNUlUa2hXTTJGVlJscFNhM0JGVDBSR1prNVlaSEpOVmxveVpXNWtWbGR0YTNSV2JWcGhaR3RLYlZaWGRETk9TRUoyVVcweFdVNHdVbGhXV0ZweVZIcHJlR0l5U2pWaVYxSkZWREZyTVU1RlJrOVZRekF3VmxaT1Yxa3hTa1ZoVm1oRVQwWkNkR014Wkcxa2JXTTBXVEJHZDFVd1VqUldNVVV3Wkc1T2ExSXdhRWxsV0dRelQwVnNjbFV5V2xkTmJrWkdWVVpHYTFScmFFbFpiVlpLWTIxdk1HRlhiRzlhYms1aFVXcG5kRmxyTURKUlZ6RnhaRE5STVZGVWJERlBXSEJEWWxoSk0yRlhSbnBVUkVwMFkycE9NMDFHVWsxVFJFWlpXVzFPY0ZwV1FUQlZhekYzV210MFYxRnNXa1phV0dSS1ZucFdSVTB5U2s5aFNGcDBaRWM1TUdONlJtaE9NSEJ4V0RKb1dHSnVVblZaTUdoeVpWVldkbVZzUms5aFJHdDZXVzFvYzJONmFGZGxWMXB2VlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVsNVVtMVdhbUpXVmtKTk1XaGhaVVZHZEdGWFNuTk5ibVJzV1RGVmVrMUhVVFZaZWs1V1RqSmFhbU5GZUU5V1IwWldZbXhXUTB4WVdtNUpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzA1UTA5SFdtMWFWV2MwVkRKMFNGVXdlSEprVm1RMVZURnNSbEZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJFVjNTVzR3TG5sQ1ZHaFJOM05RVFRSS2QwcFJNMlY0WlVwNVRUQnRRbDltVWpZNGFISTRTR2RmYW5KWFpHeDVPVzV6T1ZGeGVubFpjMXBTWmtWbk56TjVkazlEZW1WVVRtaFdkMGd3T0hGd2JXVnZiVTFaWWpoV04yNHlPWEJTWDFRdE9WSlNiWGswWldacmIyaHVTbTVITUZkc1lVWTJNWGxTUlhoUE9WWmhRMmRLWm1aQlJEVlpNa2xMZUVKTVJGUklaR013YjNKVVpFVXpWVXhKY0daNVVUZG5ZMkkzTjJFMlN6Tm5kelpRZFdWeGMwaFNYM1pXVG0wMU1FaEZVVWt4Y2w5UGEyNTZSVTQzYVV0aGFFNDBSRU5hYm5kRmMydFJVMTgyUm1wbE1tSTJZbUZxVDBkMFZrVkxibWh0YmtGS1kwdERhWFJQTkhReFFtTmFTazlYYlU4NVJETmZabUpYTFdKR1VWTnZMWGxCV0d4VFRrTjFNekl4V0RneWFYSkZSbUZaY1U1b2FuWkJTVEZVZVZWQlNXSlVNbTlWVVhaUWJHWTNZbU54VG1oalpVUXdOVFV6YWxreVVrSk9jMnhxVUhFeVJGOXdjbTl0WnlJc0luUnpJam94TnpJd01ERTROVGsxTENKaUlqb2lVa3RuUjBJMWExVmZXV3AyUTBkb2FtOWlZbmxLTFZGRlMyaFBWbnBDV0c1VE0wTnZSWGRtYldnNWF5SXNJbTV2Ym1ObElqb2lZakprTkdWa05HRmpNREZrTkdWbVl6azVNemt3TkRRNVl6RTJOMlpoWlRJaUxDSmpibVlpT25zaWFuZHJJanA3SW10cFpDSTZJblp5TmpKS1kwOTBRVU53WVVOSVJFOUNValZzUW1wb01rZEhTbnBaVlRWMFkwVnlWV2QzZVZwcFFWRWlMQ0psSWpvaVFWRkJRaUlzSW10MGVTSTZJbEpUUVNJc0ltNGlPaUowWlRCSmVqVjJjbEZuWm5ORlJqUjRhSGhKVFVoT1JXTnpSWEp0TkZwU2FFTk9jamhZWkdSdU9FazNjRlZSY0U5bWVqUllWMll6YkZKUE0wUXRYMDFLZFhaYWVFUTJhWGRsWTJkaU1tWkpjVzVCWTJGV1kzZERabGhUUVdaVGEwZGxkWEZLTWtSeU5pMWFWamw0V1VOQ2NIRkRSelIxZDJsQldVWktSRGd4WHpWM2F6RldkbnAzVlZwcExWWm1XblpDWmxWcmR6UndiMEp0V0RkRVYxVjJhMDg1TVc5aWVXMWtSRTlaTlRSQlRsQXRORlZUVm1OU1JHbFlRemhRYlhOWFpuWm5PR05CY0ZORWVGZFJOSFp6WkVkSVNIbDNkemhKYTFObVZqSnhSVkJSWkU1SVNHSmxTWEpxTkdscGFHWnpXa0k0TFdKTk5rRnRhbmQwTlVFNWRUbDZRbTF5TjJsaGMwd3liWEl6ZHpCVVRFZ3hXR0pqYVdWUU5GSk5jR1pMVmtKV1JXVjNTVmMxUkROaVRtaDJiWFJ2ZEhNeFlUZEthbDlvVjI1MGJtTklhM2xGYjNwUlRtZzVNMkpvYkhNNFZubG1hRkVpZlgxOS5LeDByZE8tTGpJMmhOZ3NWeXFSOWhEalh2Q19QSXRCQ1QxWktLZ1BIdHJzQk5BSy1lUE1JSlF1eTNIb0hpVWNPcmZ3TDRWY2x5SXRnMVRlZUJ4UVk4LU5Oa3pOOEY5Wk9pZ21XUTZQTlJyMVN3a0EzeGZwRFhVU2tmd1dQV0s4UnhsZ1dZSlBhVmU2YldURTE2TkhOMllJLXRKcmszaVU2R3VrbDNjZGpZRFBkOWFrVGZqTlJtVm9nb1llZEhBWUJwZ3p2anFScmNxYnY2UU5zVmhObnp5cl9LWDI5SEp3VW1SUWxiRzBKdERfUzhBa1ZucEZtU1VJTzQ0Y2lfaDUxR3RQY3pLZHk4VjgwSExDUlFrRHY5YWttS0hEcGViNFFpRktUT3EzWmRmX0FveFhqR3k4ZWVxMTZxUXZmd2V3OEoyTWVqd1ltZzdlcjBSQWxubi0tU2cifQ.","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527"} +[{"id":"af4d8a67-82c4-40ed-aa82-3c752db3a2bd","source":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playAudioAnswer","version":"2024-06-15-preview","callConnectionId":"401f0b00-660f-41c6-bb3f-961adcb139e3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-03T14:56:37.0637192+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3"}] +[{"id":"8d871b78-49e0-40a0-8607-2a6dee762dc9","source":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"401f0b00-660f-41c6-bb3f-961adcb139e3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:37.0793874+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3"}] +[{"id":"a562f8bf-c2c4-420c-a0b1-572b5d7d5606","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:37.1263007+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] +[{"id":"305d4af1-4ebb-481d-8f62-442f7b026d38","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playAudioCreateCall","version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-03T14:56:37.1263007+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] +[{"id":"1803c774-1d2d-4666-8dbd-eaddc00814fe","source":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"401f0b00-660f-41c6-bb3f-961adcb139e3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:40.3606406+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3"}] +[{"id":"3e4af2b4-f66b-426d-ba1d-6691382c5048","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":true}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:40.3606406+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] +[{"id":"76fc2598-9be2-4586-ab52-9223966e26f0","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.PlayCompleted","data":{"operationContext":"playAudio","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.PlayCompleted"},"time":"2024-07-03T14:56:45.1420327+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] +[{"id":"62a4774d-b806-4963-8d50-e06111c40beb","source":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"401f0b00-660f-41c6-bb3f-961adcb139e3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:45.1732776+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3"}] +[{"id":"dfb38f1f-3046-4fb8-911a-64cf8b83721a","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8971-ceb1-a43a0d007627"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-18fa-8a06-edbe-a43a0d009b31"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":5,"version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-03T14:56:45.1732776+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] +[{"id":"1ecc1575-68d0-45d8-8e02-5f4bebbe9e82","source":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playAudioAnswer","version":"2024-06-15-preview","callConnectionId":"401f0b00-660f-41c6-bb3f-961adcb139e3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-03T14:56:46.6888767+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-660f-41c6-bb3f-961adcb139e3"}] +[{"id":"1cada999-eb41-4533-bf25-a74ad0325a4a","source":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playAudioCreateCall","version":"2024-06-15-preview","callConnectionId":"401f0b00-e13e-44e2-bbc0-edc34634fadb","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItc2RmLWFrcy5jb252LnNreXBlLmNvbS9jb252LzhwQmRRY0IzRVVxX2tXRVVMemR4RUE/aT0xMC02MC0xMy0yMTMmZT02Mzg1NTUzNjMxNzAwNjM5OTg=","correlationId":"a63aed37-78e0-412b-bfce-bb0aa4777527","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-03T14:56:46.7357499+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/401f0b00-e13e-44e2-bbc0-edc34634fadb"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_play.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_play.json new file mode 100644 index 000000000000..8f8205ad5cfc --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_play.json @@ -0,0 +1,406 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-074a-4324-abe2-a8aa8262f001", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:49.1345432+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:49.1345432+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-074a-4324-abe2-a8aa8262f001", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:49.1874362+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:49.2243014+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:52.6802821+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-074a-4324-abe2-a8aa8262f001", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:52.6802821+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleSourceToTargetContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:30:52.8325568+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleSourceToTargetContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:30:59.1998311+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-074a-4324-abe2-a8aa8262f001", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:59.2275617+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-074a-4324-abe2-a8aa8262f001" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-dc58-4106-b9b0-4413bedf84a9", + "serverCallId": "sanitized", + "correlationId": "3acb59ae-e574-45df-a93d-9589b44ff1e7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:59.2275617+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-dc58-4106-b9b0-4413bedf84a9" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_playall.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_playall.json new file mode 100644 index 000000000000..41524ff77fa0 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_combined_text_and_file_sources_with_playall.json @@ -0,0 +1,214 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-edde-415a-861d-28e24061c683", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-edde-415a-861d-28e24061c683", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:34.7133616+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-edde-415a-861d-28e24061c683" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-a1fa-42da-b2cb-786e8e7570b3", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:34.7214982+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-edde-415a-861d-28e24061c683", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-edde-415a-861d-28e24061c683", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:34.7871469+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-edde-415a-861d-28e24061c683" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-a1fa-42da-b2cb-786e8e7570b3", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:34.8136558+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-a1fa-42da-b2cb-786e8e7570b3", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:30:36.6488254+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-a1fa-42da-b2cb-786e8e7570b3", + "serverCallId": "sanitized", + "correlationId": "d7fe99af-b15e-4662-857c-c481da1a336c", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:30:42.8498067+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-a1fa-42da-b2cb-786e8e7570b3" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.json new file mode 100644 index 000000000000..62eecf8f827b --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.json @@ -0,0 +1,214 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-3314-4f11-b051-2951296e9c3b", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:38.7198925+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4feb-431b-87bb-72dd9e6a44b9", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-4feb-431b-87bb-72dd9e6a44b9", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:38.732148+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4feb-431b-87bb-72dd9e6a44b9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-4feb-431b-87bb-72dd9e6a44b9", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-4feb-431b-87bb-72dd9e6a44b9", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:38.8111606+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-4feb-431b-87bb-72dd9e6a44b9" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-3314-4f11-b051-2951296e9c3b", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:38.9041689+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleFileSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-3314-4f11-b051-2951296e9c3b", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:29:40.6467932+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleFileSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-3314-4f11-b051-2951296e9c3b", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:29:53.423184+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.txt new file mode 100644 index 000000000000..20e65ce1f182 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_file_sources_with_play_and_playall.txt @@ -0,0 +1,7 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVlhMi9iT0JiOUs0SVgyQSs3cGMySFJGRUVqSVh0T0dtUzVwMTJwZ05qQTRxaWJHMWtTVVBKY2R4Ty8vdGV5bmJpMU4xT2RuY0tqQU00RW5sNXpybVhyM3Y5dWFOVm5wK1hUWlptV2pWWldYVGs1MDVxeTduN255VWQyUkZTNlZxU09GR0t4aEdLQWh3aVAvQXBpbVB1SXhYR2xHcU1sVWo4Tzl4K0tFRk1jSUtVSDROUkVNZnd4QlJPTUk1aXhqdHZPa2xXVjdsYW5hdTU2Y2hpa2Vkdk9xWklxaklybW1QSFNEQlRVWnd5bElURUlGOHhnUVNPQldKWXhTU0tFaHdhQmpDNUtxWUxOVFZ1ekJxbFVyYkpkRmFwRFZCcXFCL3dsQ01zSWhBZEVvWWlFb1lvVG1uTVFIQ1VVQWMweTVMRWdPT3B5bXZ6ck9WMlZZRytUbTNzZzdHRHFnTEx5cGFWc2MxcXFLWnJ6aTl2T2szNUI0UXFDQWdLU2NLUTcvdUNVb3cxOGZVclFyV0d3Umg5NDJ2N2VWV293aWppUVNnVUNyQ0lJZVlwUlZGRVVrUWlpblZLbFJGcHNoOHFhK3B5WVhXTDIzbU4zLzhoaG5sVzNOY3VqS3BwbEo0QjJLeHBxbHIyZXFyS3VtbWVUV2NOakh0Y2RldDdtSld1THVldXAvZEFlN3JxYVkwVzlkSWdIQ0F3U3BDNnI3dGE3NWhxM1hzZ3ZiUzA5eWJwK1lZcGJyQUJYY1pIUHFjYVJZa09FRFQ1S2tsMXFsalFvMkV2SXowVzRONWEwVCt5UHNHSVk0Z0hvaUY0TVRkSnBnWUYwRnBRcXpWSW5hdTFkMU9JU3YxbmNtR3JhYzhKYS81bGRQTm5rcnBXdENkMGtWUzNWaFYxVlZvbkYxNUJiRUM3aE5DdTROMHdrc3dQUmEvelpUTXhvN0pvVEFHbW56dDYvYmpaektxcThzMUIxNnNUdDZYanZJeWg0NkdQSjNaU2xIM2tzVWhFbkhuWU96NzNqaTk5ajlDd2krR1BPSU82WDBNa1liaDcwZjJ0Q2VzSzBlVU1CSVd1SSs2UGJpWFo3RC9YMFBTeDF6N00rMnFSWktYblI1eHk3L3Iyc2pmNGNPa1I3SHNSZkRPUEVPSVJBZVRDaTBKb2dUZlhLTDVMcC9xMjBSV3lkZmJKN0x5bnNmeWI5NGptSUJqMnZnZStleldjSGpLcFo1NDErc0U5ck0wZlVaMU5Dd1hiY1BxOVVjL1kwdW5mY0dmYW9FVnExVlIrck1icGMxdTFUT1FuYzNpN25Gb3Jya2p1dnl2bzJ3dU8xZHVQK1k3SytlSngvYVpWa1dTSmFvd0VwNzMzQjVjZUpReUhtUHVNdkhCNUU3eG1CY3BzbWo5NlZpV0poV0IxS1JGdW9vaG4zVXBaMisyRDB4M3dJSUpvNzRHSHJ3UVB2d2Fub053NXBYUURCQlNXQU1maEhnRUo2S3NJd0c2ZmdQNVlBbGh0YlhnSURRU05NQWtEcjkxb1FaY0VmbGNFSHV5MHFBVzNCbTZtTGZndS8wN3d2YlBiOTlmbnh3ZXdwaGswY0V4eHhEQU9LQ2M4MnFlbXo5U3dCem45UDZqREoycTRqbnpNSWthWkR4Y3J3U0hIWHpQRGxtcWpXcW02Qm5wZkVLZVY3OUpUQ0dsQUNTZXZFUkJRRnU2dERYOHpkVCtVSk5oWmdJNGpFQkVqK0kvbW9EK0lJMWV4eWVWY1pRVnFqOGwxNnp4TEpOa2VWUEhTcUh4YTJxeVp6V1c4MUY2bDlMMXBLcFZaYjJsaU9GSTJjdTJxYWtyWTdZUHh6ZDNvN0k1UWNmZjJiREM2dTNrN0lIY0NlMWtCeDUyUkorbTkrV1UxclE2dWJxOE96MmZ4YUp3Y2hkRm95YzZYMVMrSDluVDRjTEdvVjJkbnY5Ri9NdkliMlFyWndOUGZnNzhlM2RxRDZ0Y1A1VS92Ukc4VVQvblJ6WWZoNG1oRlRtL3crTFM0b2hja2prV2R0ZkRiVTdHYXF3cXVEOSs3T1g1MzJpTjhjNGs4ZFVYZVVVaHBUM3pkN2k2UWRzaCtEMno2bStQcjhma3VXanB2MWoxeDFsaVkyUDQrRXh5T1FCWHRBSzRIQ1U4VmhYbU0rMFg1d2g1N2w2T3o5L3Y4d3JVUDl0dmhqcnNlSDN6TEUxZzZKamZWckN3TU1nOXdnKzlwQUJQSUVQakxjY3diblgvTGZlSGFkL3lybW13T3Ara1dFQzQrWXlzTGFiV3Nad3JSZ0h2UldBNUNlUkJKUWVXUVN2OFF4RXArSUVkQ1JrTVorcElQZ1U3NnZneUpwSUVVQThrQ0NhUElvUndONWNHaEhQdVNqT1V3bElKSjRVdUc1U0dSREF6QTdHQk5iQjZiVnAvbk1qQTVnYzl5dWV5dTEzRzN0TlBKeER4Q3RneGFpNmFlVE1BZE5Fc3NqSnBNVkZ3amR6RWo1OGtMTlBhTTlwU1ZmUWNvVlhWekY4UHVYbVpKTTd0TGpVbGkyRk4vZ2FySEpUcDM3QVY0OEZKcVpwcDBMVFJMSnBQRXFyUkJzektmRzR2c0hCSXQxR3p6TmdUd0JrSDJDRUNtY01nMXdrL2J1cTZ0Um1BNmhRdmFGVER1eS9WdFUrMTNadG9XR1VZeHJUV1VoVW5Db1ZveUNtckRrR0prT0ZSellZU05vaTROTnpYVXRXMmFkNkgxd3NMRVRwK0tsc0lzTDlMVTVlMXRBK1NNa0UrZW1wWExGamZKWGZ2V3lYOGRyQzZ1VDhYMVBUOGNuZndkUjhmam4yK1cvVDdnUSswRWh3N1lER3owY0dwUC9IakpmeDUrUEpuKzlIYkZreXV3QVZnTHdpSFBjaW91MTBWUFp0b3FKNnV2TjEyRFBDK1hCaHhyN01KOGdUR1FycnE0dDlLUGk0ZXNlU3JLZDN0Y2ZtdkxQRytMai84cWVRZVFUZnBPZDlKM2FOMU40T0cxVngveHdma25kaEtQZVhVM1B5aXVGM3gxUDNqS3pGbUlxUDlYMCtkTUJJRWZoakJmY0NReE9Dc2dPbGw5dHNpYjdCSnF6TlZUMkxONmFFdVZhRmh0ejVGUFRMeVk3bWJyOEd0RU84OVFTWktFbXhRSlAxVlFqL29DS2doSUtra2FjS1cxSU5nUVlJSzRhamRseFhRRUk1L0RjbHpValNxMFMvbTM0Zm5kdXNWVmI2VVRrcW5jb2UzK0tuTFQ2dHQ0OGovVnp1RHMxSmFMcW5YMkVjRGEwdmZma1BiTmRZQVJBQUE9Iiwic2hyVG9rZW4iOiJleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0k2SW5CdmNDSjkuZXlKaGRDSTZJbVY1U2pCbFdFRnBUMmxLUzFZeFVXbE1RMHBvWWtkamFVOXBTbE5WZWtreFRtbEpjMGx1WnpGa1EwazJTV3N4U0ZSSVJuRlBWR2hYVkd0NGRsZEhSa2RhYmtKTFVUQktkMW93U1RCVGJVWk1ZM2xKYzBsdGRIQmFRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsS09TNWxlVXBvWkZkUmFVOXBTbWxPUkZac1RVUnJkMWxUTVd0WlYwcHRURlJSZUU1RVZYUlpWRUV5VDBNd2QwOUhSVFJOYW14cFRYcENiRTlIVVdsTVEwcHdZek5OYVU5cFNtOWtTRkozWTNwdmRrd3pUakJqZVRVellWYzFhMkl6WkhwTWJUVnNaRU01YWxwSFRURlpWMVpzV1ZNd2VFNVhUVEZNVkZKcldXcFpkRmxxUVROUFV6RnRXVEpHYTFwRVNURk5SRlpyV1hwSmRrbHBkMmxoVjBZd1NXcHZlRTU2U1hkT1ZGRjZUVVJSZDB4RFNuVlpiVmxwVDJwRk0wMXFRVEZPUkUxM1RrUkJjMGx0VmpSalEwazJUVlJqZVUxRVdYbFBWR013VFVOM2FWbFhiSFpKYW05cFVsUkthMW94YkUxYWVrSk1UbTVhY1dSRldsRmtSMnd3Vkhwb1NXTXdjRWRqVjA1cllsVkdRbEZVTUdsTVEwcG9ZMGhDY0ZwRFNUWkpiVVY2V1ZSTmVsbDZTbWhNVkVrMVQwZFZkRTVFUm10TlV6QTFUVlJOTTB4WFJURk9SRmw1VFcxVk1rOUVSbXBaZVVselNXMUdkMk5IYkd0WlYwNTVTV3B2YVUxcFNYTkpiVTUxV21sSk5tVjVTbkZrTW5OcFQyNXphV0V6VWpWSmFtOXBWV3hPUWtscGQybGlhVWsyU1dwQ2NrNVlSbXRsYlU1d1ZHeGFVRkZ1V2twTldFSkxZbXhrYmxKdE1YcGlSRVp4VkdwYVIxbFZlR3hWVlVsNFdtcG9NbHBXWkd0VFJXOHlWRlZTUW1SSFpESk5ibU4zWVZSUk1sWnFVbE5VYlhjMVRtcHNjbVJIYUU1amVURlRWVlY0ZWxZeWJFdFNSWEJzV2xka1IwMVdhRVZpUjFwdFdqSXhkbEpZVm5SV1dHUjNVVlUxZVdWc1ZtRk5NR1JZWVd4T1lXUldaRFJWUjNSMFRUQmFVMUpVVFRGYVZVWlhWREJLUW1NeWR6VlRibEpZVlc1R1JGcElhRk5XYkdneVlWYzFjbUpZWkdwa01FcFhVV3RrZVZGWGRGaFNSVFY2VWxkc1NsVlliRkpqTWxKclZVWnNhVmRJWnpGT1ZYUnJaVmRTZFZkR1NtdFVNblJWVmxkb1JsZHVTbk5XYTJ0NFZraENlbFZ0TVdsV2FsWkpUMVpzVlU0eFRuRk9XRXB4VGpCa05rMXJWbXhWTWpGcFZHczVjMDlJU2s1UFZqbE9WV3BTTVZZemFESlBWWFJZVjBaR2QwOUlUa2haZW1SbVdteFdkazVVV2xsVGEzQlJZbnBvVjFGdFVrZGFiVmsxV1RGYU5XRXdhRmRXUlRWTlYxVmtUbGt4VG5Oa00xSTJUVzVDZUZVeFZrcGhVekZEWWxSYWRGcElWbEJoYkd4WVdXNUpNV0p0VmpCUk0yaHlUVE53ZEZaSFVsSk1WV3hFVEZSVk1sVXpiRTFYYkRsdFdqQm9TR05FU2t4amJGcFhWVk5KYzBsdFZXbFBhVXBDVlZWR1EwbHBkMmxaVjNodVNXcHZhVlZzVFhsT1ZGbHBURU5LY21GWFVXbFBhVWt6WTBkUk1tTXdTbTFXUjFKNVdESm9VRmRzVFhwT1JWSmFUVmhTTmxGWGRGSlRNVTR3WVVSU1JWTXlhSHBqTUdoc1YxWkdWR0ZFUW5wSmJqRTVURU5LY0ZwSVFXbFBhVXB2WkVoU2QyTjZiM1pNTTA0d1kzazFNMkZYTld0aU0yUjZURzAxYkdSRE9XcGFSMDB4V1ZkV2JGbFRNSGhPVjAweFRGUlNhMWxxV1hSWmFrRXpUMU14YlZreVJtdGFSRWt4VFVSV2ExbDZTWFpKYVhkcFlWZFNNR1ZZUVdsUGFVcG9ZMGhCYVV4RFNuWmhWMUZwVDJsSmVWbDZZelZaTWtrelQwTXdlbGt5VG1oTVZGRjZXbGRKZEZsdFZtbE5hVEZwVFVSck1scFhTVFZOYWxFeVdWUm5hVXhEU25saFEwazJTV3BCZFZGV1NrcFJWRnA0VGpCYU5sa3hWbGRrUjNONVpESldiV1ZZVVhkaVJVcHJaREprZGxOc2FIbFZNVGg1WVRGYVEySXdaRzVUV0VaRVlsaHdSV0o2UWxSUlZVWkNUR2xKYzBsdVRqRlphVWsyU1dwS2FrNTZiR3BaYW1NMFRGUk9hbGt5UlhST1JFNXNXV2t4YVZwWFNYbE1WMGwzVDFSYWJGbHFhM2xPUkZwb1QwTkpjMGx1VW5CYVEwazJTVzFPYTFsNlZtaGFWMVpvVEZSRk1WbDZWWFJPUjFKcFRta3hhVTFFWXpWTVYxcHFXVmRTYTAxcVZYZE9WMUpxVFdsSmMwbHVWakJoVTBrMlNXNXNhazV0Y0ZGV2JFNDBWRmR6ZVZKR09VcFZSa0l3WkRJd2VGRlZSV2xNUTBveVdsaEphVTlwU1hoTWFrRnBURU5LTkdKWVRtWmhWMUo1V2xkM2FVOXBTVE5KUkZGcFpsRXVhRVkyWjFGZmMyZElTWEV4YW5GTFdXSjNNR1pDZW5KT1ZXRXRiR3BMTWxCRGEwcE9kMUpCVURKS01GcEZVVkZFY1ZSU1ZHZGZVR3BFZGpnMU0xcHJORmxpWmpOaFdGb3RPRzU1V0hKQ1FWbzFVVWRzTm1GNmFFSkVUMmRzVDNJeWVISlhhbWRsUjI1bVJ6TlZVamN3VVhCWlVGRmZTVEpGZFhSQ056SlNjWGRXV25SZmRqVllNMFEyYkZoRlJrNW1SV3hEVmxNM1dXNTNZbmR3VmpselVXaENUVk5xTVdSQ1lVZEZjMVUxUTJwcmVtVnBUbVJqVVhkcWRrUkNjRWxmYUROelExbHlZM0ZtYW5GT1UxTTVNWEpqYzBGbGNFNUhlWFptZWxVeVIwcGhTRzFWVFdwUVdtUlZjVUkxZGpGT01GbDZTRlpsVlRkRlFXNHpNa2xYVUZWak0wUlNibkpyUW5nM1gzRkZRakEwVUZJNWMzWjJYMkkxVnpOUGFGODBOM3B3WkVGWFpGTmlVVXRoTjFBd2NWZFJSQzFaV2pSWWIxRndWbTlaWWtjM1ZWVkNialoxTFU1RFN6QnBZVWsxTkhkbWF6VlJJaXdpZEhNaU9qRTNNakExTkRVME5EWXNJbUlpT2lKeU0wb3dXR2hsV2tOdVExUTFkbmMxUkdaVGEwOHlRVzFxYVhkNlNrdzNWV2cxUmpkalNsOUpMV2xWSWl3aWJtOXVZMlVpT2lKbVpqUTVPVFF6TVdJMU1tUTBOV0pqT0RVNU9EVm1aVEF6WTJGa05XSTBZaUlzSW1OdVppSTZleUpxZDJzaU9uc2lhMmxrSWpvaVNsaHRVa3REV1RKa2FXMHhkV3RSVG5oSFdUUlBTMVpsWW5aNWVHWm1NV2RUVDIxcU5rdFVjRk4xYXlJc0ltVWlPaUpCVVVGQ0lpd2lhM1I1SWpvaVVsTkJJaXdpYmlJNklqQnJOWEZrZW1OcFRsWlBRblpKTVhCS2JsZG5SbTF6YkRGcVRqWkdZVXhsVVVJeFpqaDJaVmRrU0VvMlRVUkJkR2QyTW5jd2FUUTJWalJTVG13NU5qbHJkR2hOY3kxU1VVeHpWMmxLUkVwbFpXZEdNVmhFYkdabVoyMXZSWFZ0Vlhkd1FVNXllbFZhTTBkWGFsTmFkVmQ0VUd0dE0wWlNSVE0xWlVGV1QwSkJjMnc1U25SWFVuRkRaSGhTVmxoMmFXNXJiWGRqZDBKV1FrZHlRV3RYUkU1elJXbEpVWGxSYzJSa1VGbGlXSGcxTlV0a2VXUnVXRkprVDJ0VVZXaEZXbkpzVmtreFZIQnpVbTFpVmpWSU9WbFVOMU5xTlhKcU4wZDZNa1ZsVTIxaVRrOXNPSEpOT1Y5TlVqUjFWM2gyT1V0WFdGRndPSE5IWXpkZlpsVnZOVFpZU2twUWJ6aFdRbVJHWm1ZNVkxWjVhMGhXVkU1TVdVZE5ZMU5zZDNSNk1uQnhVMVZKYVMxQ2JUWnRaSFZQYWxsWFluSTFibVYwUTNock0zcHRWR1JSTFVsRExUVTJVM2xNV2w5bVowaEhjREpMY2xaV1VTSjlmWDAuVE1qX01QSm01alhRMUJMVVJBRWxHTW5IUWNZYW5odXhwbE1tOVJCNnFaRFpaSE1oU21zRUtKRnpYZXpPU0w5UjlwX2JNWFBNTGNZQWVIVlAydERuRDJYVlB0ZHdFemhlTmxNc0UzZGhIS0duVzVqb0Z4TFhpM0VieDdGaVJ6d1pTd0tkdGZnQzZsU2R3RnVoOGZtOG5VS0YwM2ZqbjF6UVlYRW1TWVB0NHN4NHFSWUJ5TmhFSGZNWVJMc21xZjF6U0w0b28xWFU4WkU5RGFWWGM2U1VobG9ZV0U0Q3F2cy1peElUVkVfZ0ZENG03QVJNcHlYNXY3dXRfUVF3R25Pc3FkYWlCelJyUEwwNDhaN0E5c1I1Z2U1QzJpNkEwWkZxdGhhOE9yRlAtbEwwcTZtR3dkRlFjNE1qTEJBWXFWbGprNHo5ZFRGb1JTdnU3RlpyR3lsLTZRIn0.","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1"} +[{"id":"f339a889-922a-4420-b035-689ecbb6b8a3","source":"calling/callConnections/31002180-fda3-4987-a120-9b91c788310d","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playMultipleSourcesAnswerCall","version":"2024-06-15-preview","callConnectionId":"31002180-fda3-4987-a120-9b91c788310d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:27.9712787+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-fda3-4987-a120-9b91c788310d"}] +[{"id":"f77e79ce-a504-48ab-850a-521035f277dc","source":"calling/callConnections/31002180-fda3-4987-a120-9b91c788310d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-fda3-4987-a120-9b91c788310d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:27.9973979+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-fda3-4987-a120-9b91c788310d"}] +[{"id":"a507cd35-6668-4524-b743-54b0fc64e817","source":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a551-71d3-44482200c14c"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-a4b2-b5bb-a43a0d009b36"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-4a59-4308-88f7-a06c1eb8da4b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:28.0439519+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b"}] +[{"id":"180d21ee-eecc-4cdd-9267-5306b18e82b8","source":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playMultipleSourcesCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-4a59-4308-88f7-a06c1eb8da4b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:28.0416426+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b"}] +[{"id":"1bf0a959-dec8-481d-ba50-1802a04bfbce","source":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b","type":"Microsoft.Communication.PlayStarted","data":{"operationContext":"multipleFileSourceContext","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-4a59-4308-88f7-a06c1eb8da4b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.PlayStarted"},"time":"2024-07-09T17:17:29.5776137+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b"}] +[{"id":"eaaf11fb-7917-4433-aab5-6ec287161cc0","source":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b","type":"Microsoft.Communication.PlayCompleted","data":{"operationContext":"multipleFileSourceContext","resultInformation":{"code":200,"subCode":0,"message":"Action completed successfully."},"version":"2024-06-15-preview","callConnectionId":"31002180-4a59-4308-88f7-a06c1eb8da4b","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9zRzZBTnozSmJFNnBfbURuUnU2eWtBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"aa21d6ef-84fa-4a48-a7ce-1f56acc810e1","publicEventType":"Microsoft.Communication.PlayCompleted"},"time":"2024-07-09T17:17:42.3536616+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-4a59-4308-88f7-a06c1eb8da4b"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_play.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_play.json new file mode 100644 index 000000000000..d30a68ecde29 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_play.json @@ -0,0 +1,406 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-7aec-4e45-bfdc-1c9174c57313", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:17.6459219+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:17.640902+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-7aec-4e45-bfdc-1c9174c57313", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:17.7302666+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:17.7816005+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-7aec-4e45-bfdc-1c9174c57313", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:20.8062169+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:20.8062169+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleTextSourceToTargetContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:30:21.7774584+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleTextSourceToTargetContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:30:28.3664732+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-b76d-453e-a868-b61d9058aadf", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:28.3928675+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-b76d-453e-a868-b61d9058aadf" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-7aec-4e45-bfdc-1c9174c57313", + "serverCallId": "sanitized", + "correlationId": "573a10af-e399-441a-b6c2-1fa352e46dc8", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:28.3979292+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7aec-4e45-bfdc-1c9174c57313" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_playall.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_playall.json new file mode 100644 index 000000000000..37234a2802e2 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_multiple_text_sources_with_playall.json @@ -0,0 +1,262 @@ +[ + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-3314-4f11-b051-2951296e9c3b", + "serverCallId": "sanitized", + "correlationId": "21c9d7c9-ef36-47ca-8977-8f1dd32331c3", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:29:56.2541955+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-3314-4f11-b051-2951296e9c3b" + } + ], + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-7544-4526-9b54-0acc0f720357", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:02.447014+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-ab2f-4044-8610-974d85c04ef7", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-ab2f-4044-8610-974d85c04ef7", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:30:02.4434167+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-ab2f-4044-8610-974d85c04ef7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-ab2f-4044-8610-974d85c04ef7", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-ab2f-4044-8610-974d85c04ef7", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:02.4778397+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-ab2f-4044-8610-974d85c04ef7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-7544-4526-9b54-0acc0f720357", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:30:02.5426054+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357", + "type": "Microsoft.Communication.PlayStarted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleTextSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-7544-4526-9b54-0acc0f720357", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.PlayStarted" + }, + "time": "2024-11-22T12:30:04.7851799+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357", + "type": "Microsoft.Communication.PlayCompleted", + "data": { + "version": "2024-11-15-preview", + "operationContext": "multipleTextSourceContext", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "Action completed successfully." + }, + "callConnectionId": "21001e80-7544-4526-9b54-0acc0f720357", + "serverCallId": "sanitized", + "correlationId": "2601eab4-70dc-436e-9e6e-6e3edec886a7", + "publicEventType": "Microsoft.Communication.PlayCompleted" + }, + "time": "2024-11-22T12:30:11.3447662+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-7544-4526-9b54-0acc0f720357" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play.json new file mode 100644 index 000000000000..f96048fb07f8 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play.json @@ -0,0 +1,431 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-6feb-4b5f-811c-393fdd357d7d", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:05.0620757+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:05.0667216+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-6feb-4b5f-811c-393fdd357d7d", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:05.15715+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:05.2486831+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:09.1812041+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + } + ], + "sequenceNumber": 3, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-6feb-4b5f-811c-393fdd357d7d", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:09.1771781+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.PlayFailed", + "data": { + "failedPlaySourceIndex": 0, + "version": "2024-11-15-preview", + "operationContext": "playFailContext", + "resultInformation": { + "code": 400, + "subCode": 8535, + "message": "Action failed, file format is invalid." + }, + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.PlayFailed" + }, + "time": "2024-11-22T12:31:10.17738+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-6feb-4b5f-811c-393fdd357d7d", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:10.1962947+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 5, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:10.1956916+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-f452-48d2-aea6-6c2731b7b95b", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:11.47028+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-f452-48d2-aea6-6c2731b7b95b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "21001e80-6feb-4b5f-811c-393fdd357d7d", + "serverCallId": "sanitized", + "correlationId": "3f0486a2-f4a0-4dcc-b08f-d9fbedbffa2a", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:11.4895231+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-6feb-4b5f-811c-393fdd357d7d" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.json new file mode 100644 index 000000000000..1a03b0a6506e --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.json @@ -0,0 +1,295 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "sanitized" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b", + "type": "Microsoft.Communication.CallConnected", + "data": { + "operationContext": "playMultipleSourcesAnswerCall", + "version": "2024-06-15-preview", + "callConnectionId": "09002280-bbd5-44f4-b3d7-140ff2acb13b", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-07-15T23:18:52.5943117+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "version": "2024-06-15-preview", + "callConnectionId": "09002280-bbd5-44f4-b3d7-140ff2acb13b", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-07-15T23:18:52.6243046+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "version": "2024-06-15-preview", + "callConnectionId": "09002280-abe7-4f25-ada8-89f936975461", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-07-15T23:18:52.6595996+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461", + "type": "Microsoft.Communication.CallConnected", + "data": { + "operationContext": "playMultipleSourcesCreateCall", + "version": "2024-06-15-preview", + "callConnectionId": "09002280-abe7-4f25-ada8-89f936975461", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-07-15T23:18:52.6595996+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461", + "type": "Microsoft.Communication.PlayFailed", + "data": { + "operationContext": "playFailContext", + "resultInformation": { + "code": 400, + "subCode": 8536, + "message": "Action failed, file could not be downloaded." + }, + "failedPlaySourceIndex": 0, + "version": "2024-06-15-preview", + "callConnectionId": "09002280-abe7-4f25-ada8-89f936975461", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.PlayFailed" + }, + "time": "2024-07-15T23:18:54.310961+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 4, + "version": "2024-06-15-preview", + "callConnectionId": "09002280-bbd5-44f4-b3d7-140ff2acb13b", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-07-15T23:18:57.8596848+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": true + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 4, + "version": "2024-06-15-preview", + "callConnectionId": "09002280-abe7-4f25-ada8-89f936975461", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-07-15T23:18:57.8597128+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "operationContext": "playMultipleSourcesCreateCall", + "version": "2024-06-15-preview", + "callConnectionId": "09002280-abe7-4f25-ada8-89f936975461", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-07-15T23:18:58.1171907+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-abe7-4f25-ada8-89f936975461" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "operationContext": "playMultipleSourcesAnswerCall", + "version": "2024-06-15-preview", + "callConnectionId": "09002280-bbd5-44f4-b3d7-140ff2acb13b", + "serverCallId": "sanitized", + "correlationId": "sanitized", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-07-15T23:18:58.2182414+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/09002280-bbd5-44f4-b3d7-140ff2acb13b" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.txt new file mode 100644 index 000000000000..c4f33a8e2c20 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_play_and_playall.txt @@ -0,0 +1,10 @@ +{"to":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998"}},"from":{"kind":"communicationUser","rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVliVy9iT0JMK0s0SVB1QTkzcGMxWGlTSmdIQnpuWmQxTjBpQkp1OTNDdUlDaUtGdU5MT2tvT1hiYTdYL2ZvZXdrVHQxdGUzZGJZQlZBRWNuaE04OE1PZVNNUC9hTUxvcnpxczJ6M09nMnI4cWUrdGpMWExYdy8vTzBwM3BTYWRNb2txUmEweVJHc2NBUjRvSlRsQ1FoUnpwS0tEVVlhNW55Rzl3OWxDQW1RNEt5V0lPUVNCS2tPZE00eFRpR1Z1OUZMODJidXREMzUzcGhlNnBjRnNXTG5pM1R1c3JMZHVJMXByR04wMWhhbEdVRWRNbklJQ2xpamF5VTFBb3NaY3dGd0JTNm5DMzF6UG81RzVSYXV6WTNlYTIzUUp4SUhmSk1veEJqaTdqVkFpVlJKaEJPVXF1bFlaaHlBMER6UEUwdEdKN3BvckZQWEs3dmErRFhhNnk3czI1VTF5Qlp1NnEycnIwLzBMT056azh2ZW0zMUo3aEtzd2habXhyRU9aZVVZcHpFc2Z3T1YyMWdNRVpmZUQwODMrVXFrYVVpaW1LTGhHWU1jWlpZV0xWRUlweXlKSXlGQ1lYRSs2NXl0cW1Xem5TNHZlK3grdzk4V09UbGJlUGRxTnRXbXptQXpkdTJidFJnb091OG54WDViTjdDdlBWOXY3bUZWZW1iYXVGSEJuZDBZT3FCTVdqWnJDekNBb0ZRaXZSdDB6ZG1SOVNZd1IwWlpKVzd0ZW5BQ2tLMElCSmxraE93Tkl0Z2t4S0tiRVlUWnJEQnpFWURHZzF5TW1BQ0R6YU0vcFVQQ1ladGhFaU1hQVJXTEd5YTYxRUphaDJ3TlFhb0x2VEd1aGw0cGZrcm1mREFhYzhJWjk5YjAvNlZxRzRZN1JGZHB2VzEwMlZUVjg3VGhTYVFGYlJQQ08zTHNCL0ZpdkZJRG5xZnRnc3pyc3JXbGlENnNXYzJuOXRnMW5WZGJBKzZRWlA2a0U2S0tvR0J1eUdldW1sWkRWSEE0aWdVTE1EQjVEeVlYUENBMEtpUDRZOTRnV2JZZ0NkaHVtK1k0WU1JNjB2Wlo3aFBPZmNEeVhCOHJjZzIvbnhITzhSQjk3RVk2bVdhVjRHZ05NVEI1ZlhGWVBUbUlpQ1lCekc4V1VBSUNZZ0U1VEtJSStpQmx1K1VYMVduaDY0MU5YSk4vc0h1dExORS9TTllvd1VRaHRnUHdQYWdnZE5EcGMwOGNOYmMrWStOK0JvMSthelVFSWF6cjgxNndsYWVmK2NRUGN5TlJjdk02Wms2Zk1OL2VlcXJWNm1hcE1rb2FkMEh6Rzdkc3N4cWVyeHUxL0h0eXgyV2krVjYweks2VFBOVXQxYUIwY0hydzR1QUVvWWpISEpHbnBtOGRWNTdEOHhjVnF3RHA5UFVnYlA2bEVoWUtCNDR2MUUyWXZ2WWRBZGJ4T0RzUFd6eWZkamtjMndLdkwxSjJyU0FUMkVEaERqNkRKL0hSTkJ2NDNkaSsvajBoK0xEVHV0OFE2aVFOTVlrRWtFWFpLSlBSTlRuVVFCUkZuZll6c0t0OUlDOXEzN0g4OEhaOWV2TDg4a2hLQmNSWTB3eXltR2pzNURKT054WFRaOVV3M2hJL3cvVjVGRjFDTUhNWWl3RlpSTEhJZ3I1M29hQWNPcWNXdXVtQWZWY0V0Q093MTMxUk1DK0lJemg3eUxBd01aOUpmVEhLeEU3MjgvckVESm1CUC9aT3VnUDBsSG94Qlpxb2ZNU2RVZmtwbmVScDJvYloydVVyS3d1WnBYTDIvbENKU3NUMU5yYzJyYld1UXRXTm9IalpFdlgzZGR0QmFFK09ycTZHWi9kRUNwdmZqb2JqVyt1ZmhxUkc0bUR2SVNqRGpiZGJmRStmZnZoNWNIVnUxRitOVGYyN2VUaTlMcjQ1ZlhzZGJxbWIwNU85T25CWlhGeStodjlOeU8va1FjaVczajZMZmdWbWJ5WnNOWDZ6cnkvNGp3cUY4Y25zcmJuN2NXYU5hZkxEL09sVEk3ZXYvcDExc0UvbklqMVF0ZHdkZkRnYW5MNjg0QkE1b3FmRGNYQlNVVHBRSDdlN3krUGJzcitDRndwVjVQTG8vTmR0R3pSYmthU3ZIV3dzTU45VFhBeWdxcDRCM0F6U1FhNkxPMDZHWmJWTTNrY1hJelBYdS9ybDc1L3ROOFA5OXZsMGVHWExJRnRiQXRiejZ2U0luc0h0L2NlQnhDQjdDQjhQbzhGNC9Ndm1TOTkvNDU5ZFpzdjREQjlBSVJMejdyYVFVcXRtcmxHVklRQkhpbkpsRGhVUXFnUlVURldMRkxIWS84K0hLc2pybzVESmFUaW9UbzRWb2RNeFZ5TllYU3N5SkU2eG9wTFJTTjFFS2t4Vnp4Vy9FQWRINmc0VnZKQVJTTTFPdDRvdHV1MjR4ZjQ3RXRONFZtdFZ2M05QdTVYYmphZDJqVmt5c0MxYkp2cEZNeEI4OVRCck9sVUp3M3lsekx5bGp4RFkwOW9qeG5aVjRBeTNiUTNDVVQzS2svYitVMEdOVWdDTWZVM3FIaDhrblBEbm9HTDUxUnoyMllib25rNm5hWk9aeTJhVjhYQ091UVdrR1NoOWlGblF3QnZFV1NPQUdSTGo5d2cvQmpXVGVNTUF0RVozTTYrZVBFdlAvYVFacC9hV1ZkZ1JISEk0TXlCNURHaEFncU1GR3FMbUVCMWwwVWhWQm9SeVlTdlVXd0ROVzJYNHIweVp1bGdZV2VQQlV0cFY2K3l6T2ZzWFFma2k1QkwvbXp2ZmFhNFRleTZWbzlrK09yVW5waENnQkZ2eE9yOFBqNzc1Mnc0Qkh5b20rRFE4WlVobmMzRDVGY3hmM2QxV2k3R3hIejR6N3RtQlRJQTY0QTQ1RmlleGNXbTRNbHRWK0hremVWMmFGUVUxY3FDWWExYjJrOHdCMUpWNy9lTytxUzh5OXZIZ254M3hPZTJyaXFLcnZENHJ4SjNBTm1tN25RbmRZZmUzZVFkbW9PTDZPeHRYUmJ2cTF0cjMyYXJsMGRSZlJlT0hyTnlxRlVwLzdzZHdrVXVCSThpV0M4NGtoaWNGZUNkdkRsYkZtMStBZlhsL2FQYjgrYkFWVG8xc051ZVBKL2FaRG5iemRUaGw0aHVuYTNoM0dKSlFGY010V2dhTVNTak5JVElUSEJpNFNwaHhJSW04S3Z4UzFiT3hqRHp5UzJUc21sMWFYeTYvK0NlYjlZc3ZuS3JQSkZjRng1dDl4ZVJxNDdmMXBML3FXNEdZMmV1V3RhZHNXc0E2OHJlM3dFcUtrTHNmQkVBQUE9PSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE9WRkY1VGxSak5VeERTblZaYlZscFQycEZNMDFxUVRGT1JFa3hUbnByYzBsdFZqUmpRMGsyVFZSamVVMUVXWGxQVkVrelQxTjNhVmxYYkhaSmFtOXBVbFJLYTFveGJFOWhWa1pYVlVWWmVFNUVaRlJsVkZveFpHeENVV050VGpCYVYwcDFZVlU1TTFGVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXNVJlVTF0ZUc1UlYxSm9UVWQ0TlZOSFdYcFVibG94WTBWR1VGWnJUVFZXYTJSaFlWWTVlR0pHV2pOUFIyUk1UMWhvYkZaVVZreGpNVzh6VkZkNGMxWklaRWxQU0dodFl6RldVVkpJYkhaWFNHeFRWbTVDYTFFelp6RmplbXhGVWpKc2VGVXpXbEZOYTJ4Q1kxZGtkR1ZZVm01YVZtaDBZVzFXYm1WVldYbGhWVVp4VjBWT2NtSkdaR1psYTBsNldrTXhjR0ZXV1RGa01FcHdZa2R2ZDFKRVRuVmtNRGx5V2xab01WWkdWa2xXYmtKdFRsaHdNbUpyTlcxTmJWcG1VakJXUlZaSVduSk5SRXBZVTNwS05sTkdaRlZPV0ZFMFVXdDBhbFZXVWtoa2JVcFdUVzVOTkdFelZsWmhWMDB4V2tWcmVXUjZUa3RoYW1SUlZHdFplVkpzUW5WUFYyaGhaVmhaTlU1RmVEVlJhMnd6VG5wV1RHTkdSbXhVUjJSNVQxVlNkMUo2UWxaalIyczBVMjVrU1ZZeFFsZFZWVFZtWVRKU1lWVlhaRmhrYkZZMFRYcFdhbVJHYkdwbGJVcHVUMVJPV0dWcVZqUmpibXd6VlVoYVYySklUVFJQVjNCelRURk9SRXhWTlhCYVZGWTBUVE5DVms1Vk9WQmpha0Y2V201d1Nsb3laSGhXUm1SWVRGZEtOV05IWkZoWFJsb3haVlp3WVdGVlNUSk9lbHBDWTNwYWIyRnNiRFJoV0ZwdVkyNXZlR1F6V2pOVmJuQjVZa1JPYVdWdWIzUmhWbkJ5VlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVwd1ZVVkdSV05yV25sT1NFbDRXWHBTYW1SdVJrSmpSekZLWVRBME0xZ3piRkJOTVZaTVRWaFdhMlZHV25CU1JteDNWMnhDTUUwelpGWkpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzB4VEZKVVpHRmtiRGx4VEZWV2JGWnFiRTFrV0hCV1ZFTXdlVkZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJFVXlTVzR3TG0xTmFrTkVSMFphTW1wa2VuUlhlRGh5YTIxb1RXODFaVnBsYUV4cFlUYzFZVTB3T0dwM1ZqVk9RalZKVjNGVE5URkZOalJ0WjIxR056ZEhkRFZJUVdSTlNGTldjMjF4VGpsNGIwVlRjRVZRVUhWelZXNHpTRXhWVjFOR1NXeEtkM2R6ZEd3NWJFOTBTVTE1Y3pGTVpucERVR0Z3ZUdGMWRFcFJXR05FWnpOcVRHSnNURE41UjA1NGFURmtWR1ZETkU0M1dsSk5iVGN5YUhFd2VYazBMV2RGZVdSU1VXa3lNREJoUTBWdGNIQnJURTl3VXpscVVGRlVOSEo1UjNjek1FcDRaa1p5UWtWdFJXSnVielF0T0RCUVVWVmhORzFUTkdjMFprSlBWell3YTBwSmVYUm5hVGhwT1ZWT1prbFllR0pxUm5wNFYzTjNORzVMYkdkU1ZFVldWVkZ0Vms5VlVpMXlVa3AzUzE5YVVXTnFVakJyUVcxallVTnNTbEYyVkVGRGEwaHRWekV4TFZCdVZsQlpXak5GUTNWT1kwWlliVzVJVlZoaE1XNDJWMEZvZW5GaVkyeDZPRTA0VDBoVU0yNHROV1F4WnlJc0luUnpJam94TnpJd05UUTFORFk0TENKaUlqb2lOM2R6YlVaUE1rWm5NalJzZURWVmRrVjRZbTlYUWkxWFNuTjFObXcxTVhWYVoxTmFkRzFWYzBwclNTSXNJbTV2Ym1ObElqb2lOMlkwWkRnNE5qRXhaRFV3TkRneU9XSXpabUl3WXpneE9XTTRNVGxtWlRJaUxDSmpibVlpT25zaWFuZHJJanA3SW10cFpDSTZJakJZYmtaTFVVY3hVSGd3VkdsSk4zZEtibUZJYkRKRlFtUnJhalJ1TUZkWk9UVnFTSGhwVmtZMlNtOGlMQ0psSWpvaVFWRkJRaUlzSW10MGVTSTZJbEpUUVNJc0ltNGlPaUowTWpKc1owRmtZVEJzZVVobU0wNTJkWEJCVDFaRE9WWkhXbWxmY1d4V2R6aG5Temw0WlZVMVMzTmFOMDFzYkZSM1NEaDRabk5WVUVSNWIxaDVVbFp3WkVONE5YTTVSRWRwY1ZOMlVESkpRWEZuYlhsMVoyVlliV3BsWjNsR01tbEJhbGhEYTJ4WFgzcENNMlF0YVdsV05YZENhV3hxTUVRemJuZFBhMlZZZFZSVlNGWndaalY2ZG01T1pqSm1YMGRGUkZSMmF6QXlWMHN5ZWtoWFZEVjBPRUpMWTFGVVIzWmlWVEp6T0d0MVZXbGpOV1JKTW5jelNtbzNVRTVHTWtaUWJqbG9XbmwyT1RSTWVVSkpkemMxUzNCUlpVeG5jamxFY0Vjd1ZYQnBPRXAzU0ZkUVZsRk9YMnRrV2xGblYzWlZlRE0xWTNSWlkzcGlaemt6VjNvMWVISjVkMUIyVm14ek9EbHFiRE5UUXkxT2FXVTFlRE53VlRWUFQzSXdNMlo2U1dkbmNWUlhWeTFpZVhCblYxaFdkWGxhV21sQ05qYzJRWE0yYUdwWmVHbDJaM0o2TVhkMmQxSjZjbXd6WW5wNkxXbGFhMUVpZlgxOS5YdHBsclJYNzJkbjk3b0h2MFZRY1FCclJUQXFwdUJ4ZVBIWlc3UExhLWZRdDhhSDlLdnlpdjREeGxtMDc1ZkdpYWRjN3luLURueXVnbkY4Q0pSM3Fja1FYVzFKVnRCU0RqRnA4X3lFc2lZZ1FVYWR1NW1MR1E3NlhCanRPc0szYnhZLW5kNnZITFJabDJDdV9KTEtzWUQ5VU9TRmtnRi1ENlhxVjZtNC1EQktqUjhOaDl3WHl6X1ZaRXd3RFhhLTR1d3dmVzcxNjRiWVIyZG1HX0pqWEFwM2JvMlVURUJtcXI1d04wSC1TdTAtaGgwX0NycnAxSmpORDFGREJPeEFndmlEcUZhdWZpRF9Udzk1cmhPR01udEhiSzJjVlVCdG53elJhSUtWYXduUTRnNmY1WXY1cDV1ZTlGTVRZVEdYTTNpU3dubzdEVlE5LXE5WW9DQ09kR3cifQ.","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e"} +[{"id":"fe2e5243-434e-420a-ae94-019868e20ea3","source":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playMultipleSourcesAnswerCall","version":"2024-06-15-preview","callConnectionId":"31002180-99c4-4a05-ba40-ab163f8da50f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:50.9378799+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f"}] +[{"id":"de2fcd5c-c82e-4aab-a90e-2d6d89e6ab3b","source":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-99c4-4a05-ba40-ab163f8da50f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:50.9535035+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f"}] +[{"id":"af29a77a-e130-4898-8e4b-f4c460c6ad6a","source":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3","type":"Microsoft.Communication.CallConnected","data":{"operationContext":"playMultipleSourcesCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-e999-4a1a-a692-3631a0e416f3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:51.0029736+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3"}] +[{"id":"c53025c5-5f6a-46ec-b99d-1333c582f7ce","source":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-e999-4a1a-a692-3631a0e416f3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:51.0029736+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3"}] +[{"id":"999cc70c-c935-443b-93d2-92dd3f0ed47c","source":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3","type":"Microsoft.Communication.PlayFailed","data":{"operationContext":"playFailContext","resultInformation":{"code":400,"subCode":8536,"message":"Action failed, file could not be downloaded."},"failedPlaySourceIndex":0,"version":"2024-06-15-preview","callConnectionId":"31002180-e999-4a1a-a692-3631a0e416f3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.PlayFailed"},"time":"2024-07-09T17:17:52.6764217+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3"}] +[{"id":"e8c0bc99-b12e-4205-9c5a-e0eb22085e24","source":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998"}},"isMuted":false,"isOnHold":true},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-e999-4a1a-a692-3631a0e416f3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:55.4148033+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3"}] +[{"id":"00a09f13-12be-432a-ad80-c37d39254617","source":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-fa37-eedc-44482200b998"}},"isMuted":false,"isOnHold":true},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-f9a2-b5bb-a43a0d009b5b"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":4,"version":"2024-06-15-preview","callConnectionId":"31002180-99c4-4a05-ba40-ab163f8da50f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:55.4148033+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f"}] +[{"id":"0c7a0c59-c43d-4dd2-bea4-73ba5ad04fe6","source":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playMultipleSourcesCreateCall","version":"2024-06-15-preview","callConnectionId":"31002180-e999-4a1a-a692-3631a0e416f3","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:55.7124016+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e999-4a1a-a692-3631a0e416f3"}] +[{"id":"8e93d5b6-8c0f-4e2d-8aea-e7b6a672dacf","source":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f","type":"Microsoft.Communication.CallDisconnected","data":{"operationContext":"playMultipleSourcesAnswerCall","version":"2024-06-15-preview","callConnectionId":"31002180-99c4-4a05-ba40-ab163f8da50f","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9QN01YcG5sam9rZWVYZndKRTdwdjZBP2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"ec44e081-6093-4d73-87d6-25b0beadd31e","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:55.8074117+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-99c4-4a05-ba40-ab163f8da50f"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_playall.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_playall.json new file mode 100644 index 000000000000..56a0f014bc04 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Play_wrong_source_with_playall.json @@ -0,0 +1,239 @@ +[ + { + "to": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "from": { + "kind": "communicationUser", + "rawId": "sanitized", + "communicationUser": { + "id": "sanitized" + } + }, + "serverCallId": "sanitized", + "callerDisplayName": "", + "incomingCallContext": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12" + }, + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-1fe5-48c4-a524-d3858ff6d8fb", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:18.1641131+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-fda2-49ac-a443-e85570c8c1d7", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:18.2083945+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb", + "type": "Microsoft.Communication.ParticipantsUpdated", + "data": { + "participants": [ + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + }, + { + "identifier": { + "rawId": "sanitized", + "kind": "communicationUser", + "communicationUser": { + "id": "sanitized" + } + }, + "isMuted": false, + "isOnHold": false + } + ], + "sequenceNumber": 1, + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "04002280-1fe5-48c4-a524-d3858ff6d8fb", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.ParticipantsUpdated" + }, + "time": "2024-11-22T12:31:18.2083945+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "04002280-fda2-49ac-a443-e85570c8c1d7", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:31:18.2401985+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7", + "type": "Microsoft.Communication.PlayFailed", + "data": { + "failedPlaySourceIndex": 0, + "version": "2024-11-15-preview", + "operationContext": "playFailContext", + "resultInformation": { + "code": 400, + "subCode": 8535, + "message": "Action failed, file format is invalid." + }, + "callConnectionId": "04002280-fda2-49ac-a443-e85570c8c1d7", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.PlayFailed" + }, + "time": "2024-11-22T12:31:19.7063351+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesCreateCall", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "04002280-fda2-49ac-a443-e85570c8c1d7", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:20.6926109+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-fda2-49ac-a443-e85570c8c1d7" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb", + "type": "Microsoft.Communication.CallDisconnected", + "data": { + "version": "2024-11-15-preview", + "operationContext": "playMultipleSourcesAnswerCall", + "resultInformation": { + "code": 200, + "subCode": 5001, + "message": "This conversation has ended.. DiagCode: 0#5001.@" + }, + "callConnectionId": "04002280-1fe5-48c4-a524-d3858ff6d8fb", + "serverCallId": "sanitized", + "correlationId": "7b4291ff-975c-4154-8db8-c9eff97c7b12", + "publicEventType": "Microsoft.Communication.CallDisconnected" + }, + "time": "2024-11-22T12:31:20.8369968+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/04002280-1fe5-48c4-a524-d3858ff6d8fb" + } + ] +] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.json b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.json index 201def493756..9104f0565696 100644 --- a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.json +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.json @@ -17,34 +17,37 @@ "serverCallId": "sanitized", "callerDisplayName": "", "incomingCallContext": "sanitized", - "correlationId": "sanitized" + "correlationId": "758b6553-729d-411c-9443-6d0e8656d9ac" }, [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "source": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21", "type": "Microsoft.Communication.CallConnected", "data": { - "eventSource": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-bad1-454d-b3c5-8864182de29d", + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-82f4-44fb-bdef-b8b63acc7d21", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "758b6553-729d-411c-9443-6d0e8656d9ac", "publicEventType": "Microsoft.Communication.CallConnected" }, - "time": "2024-03-08T21:39:16.1300989+00:00", + "time": "2024-11-22T12:29:02.8716496+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d" + "subject": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "source": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", "participants": [ { "identifier": { @@ -70,44 +73,29 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-bad1-454d-b3c5-8864182de29d", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-cafb-4217-9313-7e72c26e7b29", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "93ee4962-146f-4a57-aadd-36f9846942a9", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:16.1300989+00:00", + "time": "2024-11-22T12:29:02.9133455+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d" + "subject": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", - "type": "Microsoft.Communication.CallConnected", - "data": { - "eventSource": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-df51-4e90-a348-c1afd0559a7d", - "serverCallId": "sanitized", - "correlationId": "sanitized", - "publicEventType": "Microsoft.Communication.CallConnected" - }, - "time": "2024-03-08T21:39:16.2082231+00:00", - "specversion": "1.0", - "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d" - } - ], - [ - { - "id": "sanitized", - "source": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", + "source": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21", "type": "Microsoft.Communication.ParticipantsUpdated", "data": { - "eventSource": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", "participants": [ { "identifier": { @@ -133,94 +121,138 @@ } ], "sequenceNumber": 1, - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-df51-4e90-a348-c1afd0559a7d", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "version": "2024-11-15-preview", + "callConnectionId": "21001e80-82f4-44fb-bdef-b8b63acc7d21", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "758b6553-729d-411c-9443-6d0e8656d9ac", "publicEventType": "Microsoft.Communication.ParticipantsUpdated" }, - "time": "2024-03-08T21:39:16.4454559+00:00", + "time": "2024-11-22T12:29:02.8925353+00:00", + "specversion": "1.0", + "datacontenttype": "application/json", + "subject": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21" + } + ], + [ + { + "id": "sanitized", + "source": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29", + "type": "Microsoft.Communication.CallConnected", + "data": { + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-cafb-4217-9313-7e72c26e7b29", + "serverCallId": "sanitized", + "correlationId": "93ee4962-146f-4a57-aadd-36f9846942a9", + "publicEventType": "Microsoft.Communication.CallConnected" + }, + "time": "2024-11-22T12:29:03.0383823+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d" + "subject": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "source": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29", "type": "Microsoft.Communication.SendDtmfTonesCompleted", "data": { - "eventSource": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "version": "2024-11-15-preview", "operationContext": "ContinuousDtmfRecognitionSend", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-bad1-454d-b3c5-8864182de29d", + "resultInformation": { + "code": 200, + "subCode": 0, + "message": "" + }, + "callConnectionId": "21001e80-cafb-4217-9313-7e72c26e7b29", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "93ee4962-146f-4a57-aadd-36f9846942a9", "publicEventType": "Microsoft.Communication.SendDtmfTonesCompleted" }, - "time": "2024-03-08T21:39:21.1954969+00:00", + "time": "2024-11-22T12:29:06.5299757+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d" + "subject": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "source": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29", "type": "Microsoft.Communication.ContinuousDtmfRecognitionStopped", "data": { - "eventSource": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "version": "2024-11-15-preview", "operationContext": "ContinuousDtmfRecognitionStop", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-bad1-454d-b3c5-8864182de29d", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-cafb-4217-9313-7e72c26e7b29", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "93ee4962-146f-4a57-aadd-36f9846942a9", "publicEventType": "Microsoft.Communication.ContinuousDtmfRecognitionStopped" }, - "time": "2024-03-08T21:39:21.8830024+00:00", + "time": "2024-11-22T12:29:07.371724+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d" + "subject": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", + "source": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-bad1-454d-b3c5-8864182de29d", + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 7000, + "message": "The conversation has ended. DiagCode: 0#7000.@" + }, + "callConnectionId": "21001e80-cafb-4217-9313-7e72c26e7b29", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "93ee4962-146f-4a57-aadd-36f9846942a9", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:39:23.0548241+00:00", + "time": "2024-11-22T12:29:08.4963285+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-bad1-454d-b3c5-8864182de29d" + "subject": "calling/callConnections/21001e80-cafb-4217-9313-7e72c26e7b29" } ], [ { "id": "sanitized", - "source": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", + "source": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21", "type": "Microsoft.Communication.CallDisconnected", "data": { - "eventSource": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d", - "version": "2023-10-03-preview", - "callConnectionId": "421f0b00-df51-4e90-a348-c1afd0559a7d", + "version": "2024-11-15-preview", + "resultInformation": { + "code": 200, + "subCode": 540000, + "message": "The conversation has ended" + }, + "callConnectionId": "21001e80-82f4-44fb-bdef-b8b63acc7d21", "serverCallId": "sanitized", - "correlationId": "sanitized", + "correlationId": "758b6553-729d-411c-9443-6d0e8656d9ac", "publicEventType": "Microsoft.Communication.CallDisconnected" }, - "time": "2024-03-08T21:39:23.2892567+00:00", + "time": "2024-11-22T12:29:08.6783843+00:00", "specversion": "1.0", "datacontenttype": "application/json", - "subject": "calling/callConnections/421f0b00-df51-4e90-a348-c1afd0559a7d" + "subject": "calling/callConnections/21001e80-82f4-44fb-bdef-b8b63acc7d21" } ] ] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.txt b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.txt new file mode 100644 index 000000000000..d65a50eccda2 --- /dev/null +++ b/sdk/communication/communication-call-automation/recordings/Call_Media_Client_Live_Tests_Trigger_DTMF_actions.txt @@ -0,0 +1,9 @@ +{"to":{"kind":"phoneNumber","rawId":"4:+18447649276","phoneNumber":{"value":"+18447649276"}},"from":{"kind":"phoneNumber","rawId":"4:+18662315126","phoneNumber":{"value":"+18662315126"}},"serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDUtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9tTUhUUDVUVDlrR01ZNnlNLVVHYUZBP2k9MTAtNjAtMTAtMTgmZT02Mzg1NTIxMTkxMTAwNzUxNTM=","callerDisplayName":"","incomingCallContext":"eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJjYyI6Ikg0c0lBQUFBQUFBQUNzMVhiVy9iT0JMK0s0SVB1QStiMGlLcGR3TEd3bkdjeG8yZHVMRVQ3Tzc1THFBb1N1WkdsclNVSE52dDlyL2YwSFpTcHc3YTNPRU9XQVdSUlhMNHpNUGhjRGp6dVNWNG5sK1ZqVXFWNEkwcWl4YjczRXAxdVRDL0ttbXhsc3RPU09qNzFDRWVvWDdyWFN0UmRaWHp6UlZmeUJZcmxubityaVdMcENwVjBRek1oTWhMbkpCempzTFlKY2lsbEtCWTRnaEpub1lCaGljS0NNRGt2TWlXUEpObXpnNmw0cnBSUWxWOER5UUpqM0Vhdy9SSVlPVEt3RWM4RmdMSk5QR3h4QUVONHdDQTVpcEpKUEJPZVY1TFFORmxKWFd6T2VYWkR2akx1MVpUUGk4blpGelVqTVFKNXpTT1VPVGhBTG1lUzFFYyt5N2lRVXlwd0ppSGlYdHZ1Sm9IdmZKNmV0NWdqemZDL05nZW1OTW80RDVIbU1nWXVRS0hLSFFsUnBIcnk4Z2pBZUdFSHR0RHk3cGNhckhGYmIxbDNhM1hiWmlyNHFFMlp1Uk53OFVjd09aTlU5WE10bm1sMm1tdXNua0Q4OWFiZHYyd3FXUmJsQXN6WWo5U1cxUTJiTnV5RmhLb0l4QktFSCtvMjBJY2lBcGhQeEk3TGZXRFRPdzBEbDB2QW5JOGNSMmdLVkxFWlVKUkZIbEJ5RjBYZWx5YkJyWWl0dU5HOW83Uno2cERNQ0kwUko2UENER3V1cENKNHQyaVhra05mSVVBc2d1K1cxOEdkcW4vU290NDR2VEtNclQ4WFlybXIwUjJ4K2dWcXN1a21tcGUxRldwRFdGb0FsMlB0Z2wxMmlUMDROZGpqaHVFZHV2TGZudDZaZEhJQW9RL3Q4VHVjd29NWVM2dnFud2ZsT3c2cVZDUkNZVGJIaWlKOHpJR2djY09udWxaVVhhUVJVSVhlOVRDMXVES0dveGRpOUNnamVHUEdJRzZVNE5kQWNZMFJHY3ZRbkdiWXRvT296WWxyaG1KTzcwcEkvc0RhVHFhRHJhMkg0c09YeWFxdER6cStOUzZtWTd0N3QzWUlqaUVmOWVLNE8xWWhCQmdBUXhDS3dxZ0IxcW1FMFFvL3I1ZTN0R05xSkN1MVNkNTBFNWo5cE8xUmd1Z0RsSEJBbXRZTmNRVmx0UnpTMHZ4YUQ1MjRtdFVxNnpnY0VDejc4MTZGdDZHQTFRM1d2S0ZTaGo1cXBTWkZUcTd0Z0taWmFwNXh1NldnK0hYdm1xVnNGK202V2hpRng4ZU45ZmxZRFJjL1JLS2Mxa0Y2b0QrWXJuZXRRUXZFcFh3UmpJd2lYVjdOcllvY1hDQWZkY2hMNDJ4dDIrekFjNDZ6ZGVXNWttaXdaWm1JNE93VFJ6UDBzYXhkb0xIOFBRQTNvdkE5c2Z3emx2aG5XL2hLYkEzQytPaUFSVVVITVhId2JjcTNJaUFHNzVCeFZid1dBWDkvNmpJZVN4enR1Q3FRRnRQM3ZVZWJQNGF4U3ZKODZ6VXFwa3ZtQWIvYWRTQ042VzI0cFd3S2k0ZVpGTnhwYTJWakdGLzk4ejFwbXBLTUh5M1A3bnZqZTRoRXR4ZmpMcTkrOGxGbDl5SDJGSUZPS1ZrMFowelZFUHY0L1RSdVQ3NWZmQUpxNDhubDJkK1BycWFicTZtalM3Ry9mVnYyZnJ1VC9vdmgveEpua2p0NGVtUDRKMjROOG16NVVmeDZjTEdkVnA5b0plM3A5anQrZTgvMFFmL0Q1SGN4Ujk2RGw1czRaOWN0RnJ3Q2s1N2FFMjYwOEdWN1liN1EzOHc1bHFUd2ZEU0p2NjNRNUgxUHFEVWZtV0tzNXR5UEFMUllUSzQ2Vjhkb3FXTFpqY1NxMGJEL25lT05ZRVBnNnJvQUhBM0tiUjRVY2gxM0NuS0YvTFlHdmRHdDhmNlE5UGZQZTZIVUhYVFAzdHRKZURzTXBmVnZDd2trbzhRbFk4NGdBZ0VmLy9sUE1mcVhiMjIvTkQwdjdJK2lzM0FnZlVyOERzNENVK2FJS1pKWFduSXBWZzk1NGg2dmhYMG1ldXgweDdEZlhZV011d3h1Rk1peXZ4ejVwMngwR0dSYjk3ZGMrWkVMRHd6SDBHUCtYM1d4OHdOMkhtWDBWTjJUaGp1c3Y0cFVHUG5BSEptQUYyZjRXQ25XSzZiTFQvTFhMbHNCczlxdFdydm5MOWQ2bXcyazJ0SWtZQnIwZFN6R1N3SHpSTU5zMll6SHRmSXhGeGtWdklDemZtSzlud05md2NvNVhWekgwTjBXS21rbWQrblVpWXhITVMvUFVxNEs4cmkzbmtCN3Iya3FtU1Q3b2lxWkRaTE5FOGJOQy96aGRSSUwrQldSYzNUTlkwQVhpS1RWNi9oOWpYSU5TUU56N2RGclFVQzBRd0NyTWxhemN1TVBXVlhRNWx0TTB1SHUyRUFtVGtLbzlCSHJwdDZpTHNPNUtxZUwxSk1VaDVUazZ6TEdncU83WjErTGNSU3c4Wm16NWxxSVZmWGFXcFN0WDBIUktOTUZTWUtnWUtGT0tXeHlSb2dwN2lVRzVNdjdLLzFiYXRGcjhmOHR5RzVjVWJEdTQrNmZyaThHR2FiYnFjRFNpR0xodkFGTWxlck9HcHU3MDV1aHBPbVp6L1VUdnByY2JJQ0dZQ2RxeG9VYlFaRkNzWENQejVEMHRWd25jbW5iRVFsdDVVSjB1ZWxua0NtUDkyT3RaNDU1dnVPZmIza3VvSHZSalR3anlUNis5SmdENXZJbEM5ekE1UytRUG5mbHlucEd6ZzhVelcrQVR0aERMOU4vLzlwa3RCRVFkNWh0bTY4S3crVTNOWURxcjdaRDNYenZGeEo4SVpHTCtVWHNDa2tkTVpadC9zOUtCNVY4MXhpSG82WURGQ1hlYjVOMHYrakZCZEE5a211ZDVEa1F1OWhtZ3ROZXpHNm1JNjk2VFI2ZUQvNjFkK00wTzE3ZnQ3ZDVhKytjV3BFd3IvTGp1K0Vua2NKaVFpNGVlQVJ6d0dqcUhvRTFsRmpxTVkyejY2cDZsTmQ4a1RBRWQzM3dYSVRHUyt6dzN3V2F1dGRKUnR4RWtxUElPSVNVeEw3RGdwbEVzSXhpZDBvaVdTUVlBR2F3SzdDdUhTUjlXRG1WN01NaXJyaGhUQjc5V1NlSDJiM3Bzb3BEUkhGYzROMldPTlB0dnllNnVYL3BzcUV4V2E2WEZiYnhhNEJiT3NsL3dhTU4yK1VUaEFBQUE9PSIsInNoclRva2VuIjoiZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJNkluQnZjQ0o5LmV5SmhkQ0k2SW1WNVNqQmxXRUZwVDJsS1MxWXhVV2xNUTBwb1lrZGphVTlwU2xOVmVra3hUbWxKYzBsdVp6RmtRMGsyU1dzeFNGUklSbkZQVkdoWFZHdDRkbGRIUmtkYWJrSkxVVEJLZDFvd1NUQlRiVVpNWTNsSmMwbHRkSEJhUTBrMlNXc3hTRlJJUm5GUFZHaFhWR3Q0ZGxkSFJrZGFia0pMVVRCS2Qxb3dTVEJUYlVaTVkzbEtPUzVsZVVwb1pGZFJhVTlwU21sT1JGWnNUVVJyZDFsVE1XdFpWMHB0VEZSUmVFNUVWWFJaVkVFeVQwTXdkMDlIUlRSTmFteHBUWHBDYkU5SFVXbE1RMHB3WXpOTmFVOXBTbTlrU0ZKM1kzcHZka3d6VGpCamVUVXpZVmMxYTJJelpIcE1iVFZzWkVNNWFscEhUVEZaVjFac1dWTXdlRTVYVFRGTVZGSnJXV3BaZEZscVFUTlBVekZ0V1RKR2ExcEVTVEZOUkZacldYcEpka2xwZDJsaFYwWXdTV3B2ZUU1NlNYZE9WRkY0VDBSWmVreERTblZaYlZscFQycEZNMDFxUVRGT1JFVTBUbXBOYzBsdFZqUmpRMGsyVFZSamVVMUVXWGxQUkZVeVRYbDNhVmxYYkhaSmFtOXBVbFJLYTFveGJFOWhhMnQyVFRCNGMyRldWWGRqYXpCM1UyMVdiMkl6V1RCTU1HZ3lVbFZPTTFGVU1HbE1RMHBvWTBoQ2NGcERTVFpKYlVWNldWUk5lbGw2U21oTVZFazFUMGRWZEU1RVJtdE5VekExVFZSTk0weFhSVEZPUkZsNVRXMVZNazlFUm1wWmVVbHpTVzFHZDJOSGJHdFpWMDU1U1dwdmFVMXBTWE5KYlU1MVdtbEpObVY1U25Ga01uTnBUMjV6YVdFelVqVkphbTlwVld4T1FrbHBkMmxpYVVrMlNXcENjazVZUm10bGJVNXdWR3hhVUZGdVdrcE5XRUpMWW14a2JsSnRNWHBpUkVaeFZHcGFSMWxWZUd4VlZVbDRXbXBvTWxwV1pHdFRSVzh5VkZWU1FtUkhaREpOYm1OM1lWUlJNbFpxVWxOVWJYYzFUbXBzY21SSGFFNWplVEZUVlZWNGVsWXliRXRTUlhCc1dsZGtSMDFXYUVWaVIxcHRXakl4ZGxKWVZuUldXR1IzVVZVMWVXVnNWbUZOTUdSWVlXeE9ZV1JXWkRSVlIzUjBUVEJhVTFKVVRURmFWVVpYVkRCS1FtTXlkelZUYmxKWVZXNUdSRnBJYUZOV2JHZ3lZVmMxY21KWVpHcGtNRXBYVVd0a2VWRlhkRmhTUlRWNlVsZHNTbFZZYkZKak1sSnJWVVpzYVZkSVp6Rk9WWFJyWlZkU2RWZEdTbXRVTW5SVlZsZG9SbGR1U25OV2EydDRWa2hDZWxWdE1XbFdhbFpKVDFac1ZVNHhUbkZPV0VweFRqQmtOazFyVm14Vk1qRnBWR3M1YzA5SVNrNVBWamxPVldwU01WWXphREpQVlhSWVYwWkdkMDlJVGtoWmVtUm1XbXhXZGs1VVdsbFRhM0JSWW5wb1YxRnRVa2RhYlZrMVdURmFOV0V3YUZkV1JUVk5WMVZrVGxreFRuTmtNMUkyVFc1Q2VGVXhWa3BoVXpGRFlsUmFkRnBJVmxCaGJHeFlXVzVKTVdKdFZqQlJNMmh5VFROd2RGWkhVbEpNVld4RVRGUlZNbFV6YkUxWGJEbHRXakJvU0dORVNreGpiRnBYVlZOSmMwbHRWV2xQYVVwQ1ZWVkdRMGxwZDJsWlYzaHVTV3B2YVZWc1RYbE9WRmxwVEVOS2NtRlhVV2xQYVVrelkwZFJNbU13U20xV1IxSjVXREpvVUZkc1RYcE9SVkphVFZoU05sRlhkRkpUTVU0d1lVUlNSVk15YUhwak1HaHNWMVpHVkdGRVFucEpiakU1VEVOS2NGcElRV2xQYVVwdlpFaFNkMk42YjNaTU0wNHdZM2sxTTJGWE5XdGlNMlI2VEcwMWJHUkRPV3BhUjAweFdWZFdiRmxUTUhoT1YwMHhURlJTYTFscVdYUlpha0V6VDFNeGJWa3lSbXRhUkVreFRVUldhMWw2U1haSmFYZHBZVmRTTUdWWVFXbFBhVXBvWTBoQmFVeERTblpoVjFGcFQybEplVmw2WXpWWk1ra3pUME13ZWxreVRtaE1WRkY2V2xkSmRGbHRWbWxOYVRGcFRVUnJNbHBYU1RWTmFsRXlXVlJuYVV4RFNubGhRMGsyU1dwQmRWRldTa3BSVkZwNFRqQmFObGt4Vmxka1IzTjVaREpXYldWWVVYZGlSVXByWkRKa2RsTnNhSGxWTVRoNVlURmFRMkl3Wkc1VFdFWkVZbGh3UldKNlFsUlJWVVpDVEdsSmMwbHVUakZaYVVrMlNXcEthazU2YkdwWmFtTTBURlJPYWxreVJYUk9SRTVzV1dreGFWcFhTWGxNVjBsM1QxUmFiRmxxYTNsT1JGcG9UME5KYzBsdVVuQmFRMGsyU1cxT2ExbDZWbWhhVjFab1RGUkZNVmw2VlhST1IxSnBUbWt4YVUxRVl6Vk1WMXBxV1ZkU2EwMXFWWGRPVjFKcVRXbEpjMGx1VmpCaFUwazJTVzA1TkdKdFJtWlphbVJ5WlVWV2VFNXRkR3haTVZVellXdzRlRkZWUldsTVEwb3lXbGhKYVU5cFNYaE1ha0ZwVEVOS05HSllUbVpoVjFKNVdsZDNhVTlwU1ROSlJGbHBabEV1YjNGR1duTm5TSGxvZEVKcE1UUklXV1l0U1Y5RWRqUkNjR3BLVm5oak1WQnZkVGxVWkRSdFlsSnlXbkpTUzJaYVIwNVhZMUI0ZW5OMlFqQmlhMWR2TTJJdFdETjZaVXAyYmpOWVdHUmlWalpRWjFkc1pXbFlkVU0wWDNsblZFcFRNV28wWnpWUWJrTnBNakZYTTBKU1JETjNjWEpZVVVaeVVEbEhRbEpUTWxsck9EUkZPRWhzY1dZM04yUnVUamMwYldaaVZETkdZMVpWVkVSaVowMWxSbEpSTW1ORlpFaEJUMWg2VmxKM01scGtaMmgzVDE5aFlrbHdiMU5TWTNscFJsVTROblpLVEhGaU5uTkZRVWhqWkRsVFRpMXhUWEZQUTBoeWR6VXdNRFE0Y0hkMGNrczVZbU13WmxKSFUyNXROekpVYTJSaFoxOUdNMG8yUVZoNlNUZEdkREphYkhKeVExbzBNa0pITW5oRE5YaGxNMjl3YzJGelZqWnZaVzFOYkRNelRrUlRlRXhuZDFsMFIxcFJOVWw2YWxsUFlXVm5aMUZuV0VzNWNHbDVOSGRFZW5sQlRuazRabkJrYjNWcGFYWnRjRWxuSWl3aWRITWlPakUzTWpBMU5EVTBNelFzSW1JaU9pSnZia2R4VGxkS1FrcFBWRTVCZFdNeFNqaHViMVp3Y2xGV01VZDBlbFphU1RodVZXeHBUVEZIYUZoaklpd2libTl1WTJVaU9pSTRZVFUwTmpCbFpqY3hOVGswTWprek9XWTRObU14TldabFpUTTNZbUUzTVNJc0ltTnVaaUk2ZXlKcWQyc2lPbnNpYTJsa0lqb2lTbGh0VWt0RFdUSmthVzB4ZFd0UlRuaEhXVFJQUzFabFluWjVlR1ptTVdkVFQyMXFOa3RVY0ZOMWF5SXNJbVVpT2lKQlVVRkNJaXdpYTNSNUlqb2lVbE5CSWl3aWJpSTZJakJyTlhGa2VtTnBUbFpQUW5aSk1YQktibGRuUm0xemJERnFUalpHWVV4bFVVSXhaamgyWlZka1NFbzJUVVJCZEdkMk1uY3dhVFEyVmpSU1RtdzVOamxyZEdoTmN5MVNVVXh6VjJsS1JFcGxaV2RHTVZoRWJHWm1aMjF2UlhWdFZYZHdRVTV5ZWxWYU0wZFhhbE5hZFZkNFVHdHRNMFpTUlRNMVpVRldUMEpCYzJ3NVNuUlhVbkZEWkhoU1ZsaDJhVzVyYlhkamQwSldRa2R5UVd0WFJFNXpSV2xKVVhsUmMyUmtVRmxpV0hnMU5VdGtlV1J1V0ZKa1QydFVWV2hGV25Kc1Zra3hWSEJ6VW0xaVZqVklPVmxVTjFOcU5YSnFOMGQ2TWtWbFUyMWlUazlzT0hKTk9WOU5ValIxVjNoMk9VdFhXRkZ3T0hOSFl6ZGZabFZ2TlRaWVNrcFFiemhXUW1SR1ptWTVZMVo1YTBoV1ZFNU1XVWROWTFOc2QzUjZNbkJ4VTFWSmFTMUNiVFp0WkhWUGFsbFhZbkkxYm1WMFEzaHJNM3B0VkdSUkxVbERMVFUyVTNsTVdsOW1aMGhIY0RKTGNsWldVU0o5ZlgwLmduUVZnMnVnLXJIbTI0VDhRZUpmNFpFMGo2bndjT0ZaOEZoUFVGZklVS2JDYmpzWWw3TkRwYWlZdmhEdzE5VlNCOGg1QnJkUml3WjREMTN4eXZBX1VBTGtQY1N2NFBvYlVCNFRYLUZCU2k4RVRLSk5UQnNXOEdUcEd5U2gtY1pidEtRSG9vMm1LSWUxSWtPTnpsdVlhLXEyZnpkSGplbWhtcndGcEhRTDVMZUptUUVDWHcyRklGLVo4cHlINE92Q2JlSy1JUkg2cm5hUWJuTmRIQjlqb3pXeHo5bDZXeHRyMEZYV1IyM1V5RnJ5ZHVMalRiLTF3bVRQemdCYVFxakl5b0tkMmN6TjJNMGhDU1VuaTVOVTJIdENlYW10UDRTV1ZCTUlRYWNvRFZXaGxoQkVJSTB6bWVTT2dxVDA1UjNiQm40eEotQ0hScFROMXI5OUNjNXBCUSJ9.","correlationId":"e9a18e51-1411-4263-8ed8-44b49d9e7d0c"} +[{"id":"572bb6aa-439f-4e49-87c3-0e9022a50575","source":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-6546-4903-82aa-fcf1c8291647","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDUtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9tTUhUUDVUVDlrR01ZNnlNLVVHYUZBP2k9MTAtNjAtMTAtMTgmZT02Mzg1NTIxMTkxMTAwNzUxNTM=","correlationId":"e9a18e51-1411-4263-8ed8-44b49d9e7d0c","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:17.2349739+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647"}] +[{"id":"32e1b5bd-0cf3-44b9-ad3a-51605012ab9d","source":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"4:+18447649276","kind":"phoneNumber","phoneNumber":{"value":"+18447649276"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-70aa-71d3-44482200c13c","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-70aa-71d3-44482200c13c"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-e991-450d-b5a6-f4267470972d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi8tbGdTUnQ5R2drYVJiY1JaWU9RZXZ3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"64714576-c550-4310-95fc-7e3212aa9d7a","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:17.3942631+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d"}] +[{"id":"374ddb68-72e8-4ff9-b50f-e9781949b1ab","source":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d","type":"Microsoft.Communication.CallConnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-e991-450d-b5a6-f4267470972d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi8tbGdTUnQ5R2drYVJiY1JaWU9RZXZ3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"64714576-c550-4310-95fc-7e3212aa9d7a","publicEventType":"Microsoft.Communication.CallConnected"},"time":"2024-07-09T17:17:17.3942631+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d"}] +[{"id":"96fb099a-5848-4b30-8f2f-ecc107aa1899","source":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647","type":"Microsoft.Communication.ParticipantsUpdated","data":{"participants":[{"identifier":{"rawId":"4:+18662315126","kind":"phoneNumber","phoneNumber":{"value":"+18662315126"}},"isMuted":false,"isOnHold":false},{"identifier":{"rawId":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-7139-b5bb-a43a0d009b1f","kind":"communicationUser","communicationUser":{"id":"8:acs:1bdaa2b9-9507-4542-bb64-a7b22c00a8d4_00000021-3861-7139-b5bb-a43a0d009b1f"}},"isMuted":false,"isOnHold":false}],"sequenceNumber":1,"version":"2024-06-15-preview","callConnectionId":"31002180-6546-4903-82aa-fcf1c8291647","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDUtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9tTUhUUDVUVDlrR01ZNnlNLVVHYUZBP2k9MTAtNjAtMTAtMTgmZT02Mzg1NTIxMTkxMTAwNzUxNTM=","correlationId":"e9a18e51-1411-4263-8ed8-44b49d9e7d0c","publicEventType":"Microsoft.Communication.ParticipantsUpdated"},"time":"2024-07-09T17:17:17.4409253+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647"}] +[{"id":"c63dcfae-1b7c-441a-bd60-c8d4af8d5592","source":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d","type":"Microsoft.Communication.SendDtmfTonesCompleted","data":{"operationContext":"ContinuousDtmfRecognitionSend","version":"2024-06-15-preview","callConnectionId":"31002180-e991-450d-b5a6-f4267470972d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi8tbGdTUnQ5R2drYVJiY1JaWU9RZXZ3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"64714576-c550-4310-95fc-7e3212aa9d7a","publicEventType":"Microsoft.Communication.SendDtmfTonesCompleted"},"time":"2024-07-09T17:17:21.0872786+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d"}] +[{"id":"79a24354-6af2-47ec-8270-42c6ef8cc335","source":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d","type":"Microsoft.Communication.ContinuousDtmfRecognitionStopped","data":{"operationContext":"ContinuousDtmfRecognitionStop","version":"2024-06-15-preview","callConnectionId":"31002180-e991-450d-b5a6-f4267470972d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi8tbGdTUnQ5R2drYVJiY1JaWU9RZXZ3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"64714576-c550-4310-95fc-7e3212aa9d7a","publicEventType":"Microsoft.Communication.ContinuousDtmfRecognitionStopped"},"time":"2024-07-09T17:17:21.8096443+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d"}] +[{"id":"5fa84f6c-8306-4872-9ac5-60a0392952c8","source":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-e991-450d-b5a6-f4267470972d","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDItcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi8tbGdTUnQ5R2drYVJiY1JaWU9RZXZ3P2k9MTAtNjAtMzctMjQmZT02Mzg1NTQ3NzEwMDcyMjM3Mjk=","correlationId":"64714576-c550-4310-95fc-7e3212aa9d7a","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:23.020395+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-e991-450d-b5a6-f4267470972d"}] +[{"id":"231bf8af-7209-4bbf-af09-e08bed043679","source":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647","type":"Microsoft.Communication.CallDisconnected","data":{"version":"2024-06-15-preview","callConnectionId":"31002180-6546-4903-82aa-fcf1c8291647","serverCallId":"aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDUtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9tTUhUUDVUVDlrR01ZNnlNLVVHYUZBP2k9MTAtNjAtMTAtMTgmZT02Mzg1NTIxMTkxMTAwNzUxNTM=","correlationId":"e9a18e51-1411-4263-8ed8-44b49d9e7d0c","publicEventType":"Microsoft.Communication.CallDisconnected"},"time":"2024-07-09T17:17:23.2573557+00:00","specversion":"1.0","datacontenttype":"application/json","subject":"calling/callConnections/31002180-6546-4903-82aa-fcf1c8291647"}] \ No newline at end of file diff --git a/sdk/communication/communication-call-automation/review/communication-call-automation.api.md b/sdk/communication/communication-call-automation/review/communication-call-automation.api.md index 0e9d28d0adb7..fe81131c4e21 100644 --- a/sdk/communication/communication-call-automation/review/communication-call-automation.api.md +++ b/sdk/communication/communication-call-automation/review/communication-call-automation.api.md @@ -4,27 +4,17 @@ ```ts -import type { AbortSignalLike } from '@azure/abort-controller'; -import type { CommonClientOptions } from '@azure/core-client'; -import type { CommunicationIdentifier } from '@azure/communication-common'; -import type { CommunicationUserIdentifier } from '@azure/communication-common'; +import { CommonClientOptions } from '@azure/core-client'; +import { CommunicationIdentifier } from '@azure/communication-common'; +import { CommunicationUserIdentifier } from '@azure/communication-common'; import * as coreClient from '@azure/core-client'; -import type { KeyCredential } from '@azure/core-auth'; -import type { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; -import type { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; -import type { OperationOptions } from '@azure/core-client'; -import type { PhoneNumberIdentifier } from '@azure/communication-common'; -import type { TokenCredential } from '@azure/core-auth'; +import { KeyCredential } from '@azure/core-auth'; +import { MicrosoftTeamsAppIdentifier } from '@azure/communication-common'; +import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common'; +import { OperationOptions } from '@azure/core-client'; +import { PhoneNumberIdentifier } from '@azure/communication-common'; +import { TokenCredential } from '@azure/core-auth'; -// @public -export interface AddParticipantEventResult { - failureResult?: AddParticipantFailed; - isSuccess: boolean; - successResult?: AddParticipantSucceeded; -} - -// Warning: (ae-forgotten-export) The symbol "RestAddParticipantFailed" needs to be exported by the entry point index.d.ts -// // @public export interface AddParticipantFailed extends Omit { callConnectionId: string; @@ -47,11 +37,8 @@ export interface AddParticipantResult { invitationId?: string; operationContext?: string; participant?: CallParticipant; - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; } -// Warning: (ae-forgotten-export) The symbol "RestAddParticipantSucceeded" needs to be exported by the entry point index.d.ts -// // @public export interface AddParticipantSucceeded extends Omit { callConnectionId: string; @@ -62,50 +49,58 @@ export interface AddParticipantSucceeded extends Omit; -} +export type AnswerCallResult = CallResult; -// Warning: (ae-forgotten-export) The symbol "RestAnswerFailed" needs to be exported by the entry point index.d.ts -// // @public (undocumented) export interface AnswerFailed extends Omit { callConnectionId: string; correlationId: string; kind: "AnswerFailed"; - // Warning: (ae-forgotten-export) The symbol "RestResultInformation" needs to be exported by the entry point index.d.ts - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; serverCallId: string; } +// @public +export interface AudioData { + data: string; + isSilent?: boolean; + participant?: CommunicationIdentifier | undefined; + timestamp?: Date; +} + +// @public +export type AudioFormat = string; + +// @public +export interface AudioMetadata { + channels: Channel; + encoding: string; + length: number; + sampleRate: number; + subscriptionId: string; +} + // @public export class CallAutomationClient { constructor(connectionString: string, options?: CallAutomationClientOptions); constructor(endpoint: string, credential: TokenCredential | KeyCredential, options?: CallAutomationClientOptions); answerCall(incomingCallContext: string, callbackUrl: string, options?: AnswerCallOptions): Promise; + connectCall(callLocator: CallLocator, callbackUrl: string, options?: ConnectCallOptions): Promise; createCall(targetParticipant: CallInvite, callbackUrl: string, options?: CreateCallOptions): Promise; createGroupCall(targetParticipants: CommunicationIdentifier[], callbackUrl: string, options?: CreateCallOptions): Promise; getCallConnection(callConnectionId: string): CallConnection; getCallRecording(): CallRecording; - getEventProcessor(): CallAutomationEventProcessor; getSourceIdentity(): CommunicationUserIdentifier | undefined; redirectCall(incomingCallContext: string, targetParticipant: CallInvite, options?: RedirectCallOptions): Promise; rejectCall(incomingCallContext: string, options?: RejectCallOptions): Promise; @@ -117,30 +112,21 @@ export interface CallAutomationClientOptions extends CommonClientOptions { } // @public -export type CallAutomationEvent = AddParticipantSucceeded | AddParticipantFailed | RemoveParticipantSucceeded | RemoveParticipantFailed | CallConnected | CallDisconnected | CallTransferAccepted | CallTransferFailed | ParticipantsUpdated | RecordingStateChanged | PlayCompleted | PlayFailed | PlayCanceled | RecognizeCompleted | RecognizeCanceled | RecognizeFailed | ContinuousDtmfRecognitionToneReceived | ContinuousDtmfRecognitionToneFailed | ContinuousDtmfRecognitionStopped | SendDtmfTonesCompleted | SendDtmfTonesFailed | CancelAddParticipantSucceeded | CancelAddParticipantFailed | TranscriptionStarted | TranscriptionStopped | TranscriptionUpdated | TranscriptionFailed | CreateCallFailed | AnswerFailed | HoldFailed; - -// @public -export class CallAutomationEventProcessor { - attachOngoingEventProcessor(callConnectionId: string, eventTypeKind: CallAutomationEvent["kind"], eventProcessor: (event: CallAutomationEvent) => Promise): Promise; - detachOngoingEventProcessor(callConnectionId: string, eventTypeKind: CallAutomationEvent["kind"]): Promise; - processEvents(event: string | Record | CallAutomationEvent): void; - waitForEventProcessor(predicate: (event: CallAutomationEvent) => boolean, abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; -} +export type CallAutomationEvent = AddParticipantSucceeded | AddParticipantFailed | RemoveParticipantSucceeded | RemoveParticipantFailed | CallConnected | CallDisconnected | CallTransferAccepted | CallTransferFailed | ParticipantsUpdated | RecordingStateChanged | PlayStarted | PlayCompleted | PlayFailed | PlayCanceled | RecognizeCompleted | RecognizeCanceled | RecognizeFailed | ContinuousDtmfRecognitionToneReceived | ContinuousDtmfRecognitionToneFailed | ContinuousDtmfRecognitionStopped | SendDtmfTonesCompleted | SendDtmfTonesFailed | CancelAddParticipantSucceeded | CancelAddParticipantFailed | ConnectFailed | TranscriptionStarted | TranscriptionStopped | TranscriptionUpdated | TranscriptionFailed | HoldFailed | MediaStreamingStarted | MediaStreamingStopped | MediaStreamingFailed | CreateCallFailed | AnswerFailed; -// Warning: (ae-forgotten-export) The symbol "RestCallConnected" needs to be exported by the entry point index.d.ts -// // @public -export interface CallConnected extends Omit { +export interface CallConnected extends Omit { callConnectionId: string; correlationId: string; kind: "CallConnected"; + resultInformation?: ResultInformation; serverCallId: string; } // @public export class CallConnection { // Warning: (ae-forgotten-export) The symbol "CallAutomationApiClientOptionalParams" needs to be exported by the entry point index.d.ts - constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, eventProcessor: CallAutomationEventProcessor, options?: CallAutomationApiClientOptionalParams); + constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, options?: CallAutomationApiClientOptionalParams); addParticipant(targetParticipant: CallInvite, options?: AddParticipantOptions): Promise; cancelAddParticipantOperation(invitationId: string, options?: CancelAddParticipantOperationOptions): Promise; getCallConnectionProperties(options?: GetCallConnectionPropertiesOptions): Promise; @@ -156,28 +142,29 @@ export class CallConnection { // @public export interface CallConnectionProperties { answeredby?: CommunicationUserIdentifier; + answeredFor?: PhoneNumberIdentifier; callbackUrl?: string; callConnectionId?: string; callConnectionState?: CallConnectionStateModel; correlationId?: string; - mediaSubscriptionId?: string; + mediaStreamingSubscription?: MediaStreamingSubscription; serverCallId?: string; source?: CommunicationIdentifier; sourceCallerIdNumber?: PhoneNumberIdentifier; sourceDisplayName?: string; targetParticipants?: CommunicationIdentifier[]; + transcriptionSubscription?: TranscriptionSubscription; } // @public export type CallConnectionStateModel = string; -// Warning: (ae-forgotten-export) The symbol "RestCallDisconnected" needs to be exported by the entry point index.d.ts -// // @public -export interface CallDisconnected extends Omit { +export interface CallDisconnected extends Omit { callConnectionId: string; correlationId: string; kind: "CallDisconnected"; + resultInformation?: ResultInformation; serverCallId: string; } @@ -204,29 +191,27 @@ export interface CallLocator { } // @public -export type CallLocatorType = "serverCallLocator" | "groupCallLocator"; +export type CallLocatorType = "serverCallLocator" | "groupCallLocator" | "roomCallLocator"; // @public export class CallMedia { - constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, eventProcessor: CallAutomationEventProcessor, options?: CallAutomationApiClientOptionalParams); - cancelAllOperations(): Promise; + constructor(callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, options?: CallAutomationApiClientOptionalParams); + cancelAllOperations(): Promise; hold(targetParticipant: CommunicationIdentifier, options?: HoldOptions): Promise; - play(playSources: (FileSource | TextSource | SsmlSource)[], playTo: CommunicationIdentifier[], options?: PlayOptions): Promise; - playToAll(playSources: (FileSource | TextSource | SsmlSource)[], options?: PlayOptions): Promise; + play(playSources: (FileSource | TextSource | SsmlSource)[], playTo: CommunicationIdentifier[], options?: PlayOptions): Promise; + playToAll(playSources: (FileSource | TextSource | SsmlSource)[], options?: PlayToAllOptions): Promise; sendDtmfTones(tones: Tone[] | DtmfTone[], targetParticipant: CommunicationIdentifier, options?: SendDtmfTonesOptions): Promise; startContinuousDtmfRecognition(targetParticipant: CommunicationIdentifier, options?: ContinuousDtmfRecognitionOptions): Promise; + startMediaStreaming(options?: StartMediaStreamingOptions): Promise; // @deprecated - startHoldMusic(targetParticipant: CommunicationIdentifier, playSource?: FileSource | TextSource | SsmlSource | undefined, loop?: boolean, operationContext?: string | undefined, operationCallbackUri?: string | undefined): Promise; - // @deprecated - startRecognizing(targetParticipant: CommunicationIdentifier, maxTonesToCollect: number, options: CallMediaRecognizeDtmfOptions): Promise; - startRecognizing(targetParticipant: CommunicationIdentifier, options: CallMediaRecognizeDtmfOptions | CallMediaRecognizeChoiceOptions | CallMediaRecognizeSpeechOptions | CallMediaRecognizeSpeechOrDtmfOptions): Promise; + startRecognizing(targetParticipant: CommunicationIdentifier, maxTonesToCollect: number, options: CallMediaRecognizeDtmfOptions): Promise; + startRecognizing(targetParticipant: CommunicationIdentifier, options: CallMediaRecognizeDtmfOptions | CallMediaRecognizeChoiceOptions | CallMediaRecognizeSpeechOptions | CallMediaRecognizeSpeechOrDtmfOptions): Promise; startTranscription(options?: StartTranscriptionOptions): Promise; stopContinuousDtmfRecognition(targetParticipant: CommunicationIdentifier, options?: ContinuousDtmfRecognitionOptions): Promise; - // @deprecated - stopHoldMusic(targetParticipant: CommunicationIdentifier, operationContext?: string | undefined): Promise; + stopMediaStreaming(options?: StopMediaStreamingOptions): Promise; stopTranscription(options?: StopTranscriptionOptions): Promise; unhold(targetParticipant: CommunicationIdentifier, options?: UnholdOptions): Promise; - updateTranscription(locale: string): Promise; + updateTranscription(locale: string, options?: UpdateTranscriptionOptions): Promise; } // @public @@ -255,7 +240,7 @@ export interface CallMediaRecognizeOptions extends OperationOptions { operationCallbackUrl?: string; operationContext?: string; playPrompt?: FileSource | TextSource | SsmlSource; - speechModelEndpointId?: string; + playPrompts?: (FileSource | TextSource | SsmlSource)[]; // @deprecated (undocumented) stopCurrentOperations?: boolean; } @@ -305,8 +290,6 @@ export class CallRecording { // @public export type CallRejectReason = string; -// Warning: (ae-forgotten-export) The symbol "RestCallTransferAccepted" needs to be exported by the entry point index.d.ts -// // @public export interface CallTransferAccepted extends Omit { callConnectionId: string; @@ -318,8 +301,6 @@ export interface CallTransferAccepted extends Omit { callConnectionId: string; @@ -329,15 +310,6 @@ export interface CallTransferFailed extends Omit { callConnectionId: string; @@ -358,30 +330,24 @@ export interface CancelAddParticipantOperationOptions extends OperationOptions { export interface CancelAddParticipantOperationResult { invitationId?: string; operationContext?: string; - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; } -// Warning: (ae-forgotten-export) The symbol "RestCancelAddParticipantSucceeded" needs to be exported by the entry point index.d.ts -// // @public -export interface CancelAddParticipantSucceeded extends Omit { +export interface CancelAddParticipantSucceeded extends Omit { callConnectionId: string; correlationId: string; invitationId: string; kind: "CancelAddParticipantSucceeded"; + resultInformation?: ResultInformation; serverCallId: string; } -// @public -export interface CancelAllMediaOperationsEventResult { - isSuccess: boolean; - playCanceledSuccessResult?: PlayCanceled; - recognizeCanceledSuccessResult?: RecognizeCanceled; -} - -// @public -export interface CancelAllMediaOperationsResult { - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; +// @public (undocumented) +export enum Channel { + // (undocumented) + Mono = 1, + // (undocumented) + Unknown = 0 } // @public @@ -396,14 +362,31 @@ export interface ChoiceResult { recognizedPhrase?: string; } +// @public +export interface ConnectCallOptions extends OperationOptions { + callIntelligenceOptions?: CallIntelligenceOptions; + mediaStreamingOptions?: MediaStreamingOptions; + operationContext?: string; + transcriptionOptions?: TranscriptionOptions; +} + +// @public +export type ConnectCallResult = CallResult; + +// @public (undocumented) +export interface ConnectFailed extends Omit { + callConnectionId: string; + correlationId: string; + kind: "ConnectFailed"; + resultInformation?: ResultInformation; +} + // @public export interface ContinuousDtmfRecognitionOptions extends OperationOptions { operationCallbackUrl?: string; operationContext?: string; } -// Warning: (ae-forgotten-export) The symbol "RestContinuousDtmfRecognitionStopped" needs to be exported by the entry point index.d.ts -// // @public export interface ContinuousDtmfRecognitionStopped extends Omit { callConnectionId: string; @@ -413,8 +396,6 @@ export interface ContinuousDtmfRecognitionStopped extends Omit { callConnectionId: string; @@ -424,8 +405,6 @@ export interface ContinuousDtmfRecognitionToneFailed extends Omit { callConnectionId: string; @@ -437,41 +416,27 @@ export interface ContinuousDtmfRecognitionToneReceived extends Omit { callConnectionId: string; correlationId: string; kind: "CreateCallFailed"; - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; serverCallId: string; } // @public export interface CreateCallOptions extends OperationOptions { callIntelligenceOptions?: CallIntelligenceOptions; - customCallingContext?: CustomCallingContext; - mediaStreamingConfiguration?: MediaStreamingConfiguration; + mediaStreamingOptions?: MediaStreamingOptions; operationContext?: string; sourceCallIdNumber?: PhoneNumberIdentifier; sourceDisplayName?: string; - transcriptionConfiguration?: TranscriptionConfiguration; + transcriptionOptions?: TranscriptionOptions; } // @public -export interface CreateCallResult { - callConnection: CallConnection; - callConnectionProperties: CallConnectionProperties; - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; -} +export type CreateCallResult = CallResult; // @public export type CustomCallingContext = (VoipHeader | SipUserToUserHeader | SipCustomHeader)[]; @@ -534,20 +499,18 @@ export type GetRecordingPropertiesOptions = OperationOptions; // @public export type HangUpOptions = OperationOptions; -// Warning: (ae-forgotten-export) The symbol "RestHoldFailed" needs to be exported by the entry point index.d.ts -// // @public (undocumented) export interface HoldFailed extends Omit { callConnectionId: string; correlationId: string; kind: "HoldFailed"; - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; serverCallId: string; } // @public export interface HoldOptions extends OperationOptions { - operationCallbackUri?: string; + operationCallbackUrl?: string; operationContext?: string; playSource?: FileSource | TextSource | SsmlSource; } @@ -581,20 +544,63 @@ export interface ListParticipantsResult { values?: CallParticipant[]; } +// @public (undocumented) +export enum MediaKind { + AudioData = "audioData", + StopAudio = "stopAudio" +} + // @public export type MediaStreamingAudioChannelType = string; // @public -export interface MediaStreamingConfiguration { +export type MediaStreamingContentType = string; + +// @public (undocumented) +export interface MediaStreamingFailed extends Omit { + callConnectionId: string; + correlationId: string; + kind: "MediaStreamingFailed"; + resultInformation?: ResultInformation; + serverCallId: string; +} + +// @public +export interface MediaStreamingOptions { audioChannelType: MediaStreamingAudioChannelType; + audioFormat?: AudioFormat; contentType: MediaStreamingContentType; + enableBidirectional?: boolean; startMediaStreaming?: boolean; transportType: MediaStreamingTransportType; transportUrl: string; } +// @public (undocumented) +export interface MediaStreamingStarted extends Omit { + callConnectionId: string; + correlationId: string; + kind: "MediaStreamingStarted"; + resultInformation?: ResultInformation; + serverCallId: string; +} + +// @public (undocumented) +export interface MediaStreamingStopped extends Omit { + callConnectionId: string; + correlationId: string; + kind: "MediaStreamingStopped"; + resultInformation?: ResultInformation; + serverCallId: string; +} + // @public -export type MediaStreamingContentType = string; +export interface MediaStreamingSubscription { + id?: string; + // Warning: (ae-forgotten-export) The symbol "MediaStreamingSubscriptionState" needs to be exported by the entry point index.d.ts + state?: MediaStreamingSubscriptionState; + subscribedContentTypes?: MediaStreamingContentType[]; +} // @public export type MediaStreamingTransportType = string; @@ -609,35 +615,41 @@ export interface MuteParticipantResult { operationContext?: string; } +// @public (undocumented) +export class OutStreamingData { + constructor(kind: MediaKind); + audioData?: AudioData; + static getStopAudioForOutbound(): string; + static getStreamingDataForOutbound(data: string): string; + kind: MediaKind; + stopAudio?: StopAudio; +} + // @public export function parseCallAutomationEvent(encodedEvents: string | Record): CallAutomationEvent; -// Warning: (ae-forgotten-export) The symbol "RestParticipantsUpdated" needs to be exported by the entry point index.d.ts -// // @public -export interface ParticipantsUpdated extends Omit { +export interface ParticipantsUpdated extends Omit { callConnectionId: string; correlationId: string; kind: "ParticipantsUpdated"; participants: CallParticipant[]; + resultInformation?: ResultInformation; serverCallId: string; } // @public export type PauseRecordingOptions = OperationOptions; -// Warning: (ae-forgotten-export) The symbol "RestPlayCanceled" needs to be exported by the entry point index.d.ts -// // @public -export interface PlayCanceled extends Omit { +export interface PlayCanceled extends Omit { callConnectionId: string; correlationId: string; kind: "PlayCanceled"; + resultInformation?: ResultInformation; serverCallId: string; } -// Warning: (ae-forgotten-export) The symbol "RestPlayCompleted" needs to be exported by the entry point index.d.ts -// // @public export interface PlayCompleted extends Omit { callConnectionId: string; @@ -647,15 +659,6 @@ export interface PlayCompleted extends Omit { callConnectionId: string; @@ -672,16 +675,24 @@ export interface PlayOptions extends OperationOptions { operationContext?: string; } -// @public -export interface PlayResult { - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; -} - // @public export interface PlaySource { // @deprecated (undocumented) playsourcacheid?: string; - playSourceCacheId?: string; +} + +// @public +export interface PlayStarted extends Omit { + callConnectionId: string; + correlationId: string; + kind: "PlayStarted"; + resultInformation?: ResultInformation; + serverCallId: string; +} + +// @public +export interface PlayToAllOptions extends PlayOptions { + interruptCallMediaOperation?: boolean; } // @public @@ -695,18 +706,15 @@ export interface RecognitionChoice { // @public export type RecognitionType = string; -// Warning: (ae-forgotten-export) The symbol "RestRecognizeCanceled" needs to be exported by the entry point index.d.ts -// // @public -export interface RecognizeCanceled extends Omit { +export interface RecognizeCanceled extends Omit { callConnectionId: string; correlationId: string; kind: "RecognizeCanceled"; + resultInformation?: ResultInformation; serverCallId: string; } -// Warning: (ae-forgotten-export) The symbol "RestRecognizeCompleted" needs to be exported by the entry point index.d.ts -// // @public export interface RecognizeCompleted extends Omit { callConnectionId: string; @@ -716,8 +724,6 @@ export interface RecognizeCompleted extends Omit { callConnectionId: string; @@ -729,7 +735,6 @@ export interface RecognizeFailed extends Omit { +export interface RecordingStateChanged extends Omit { callConnectionId: string; correlationId: string; kind: "RecordingStateChanged"; + resultInformation?: ResultInformation; serverCallId: string; } @@ -762,8 +766,10 @@ export interface RecordingStateChanged extends Omit { callConnectionId: string; @@ -809,7 +804,6 @@ export interface RemoveParticipantFailed extends Omit; } // @public @@ -818,8 +812,6 @@ export interface RemoveParticipantsOption extends OperationOptions { operationContext?: string; } -// Warning: (ae-forgotten-export) The symbol "RestRemoveParticipantSucceeded" needs to be exported by the entry point index.d.ts -// // @public export interface RemoveParticipantSucceeded extends Omit { callConnectionId: string; @@ -830,6 +822,362 @@ export interface RemoveParticipantSucceeded extends Omit { code: number; @@ -840,15 +1188,6 @@ export interface ResultInformation extends Omit { callConnectionId: string; @@ -858,8 +1197,6 @@ export interface SendDtmfTonesCompleted extends Omit { callConnectionId: string; @@ -878,7 +1215,6 @@ export interface SendDtmfTonesOptions extends OperationOptions { // @public export interface SendDtmfTonesResult { operationContext?: string; - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; } // Warning: (ae-forgotten-export) The symbol "CustomCallingContextHeader" needs to be exported by the entry point index.d.ts @@ -911,15 +1247,9 @@ export interface SsmlSource extends PlaySource { } // @public -export interface StartRecognizingEventResult { - failureResult?: RecognizeFailed; - isSuccess: boolean; - successResult?: RecognizeCompleted; -} - -// @public -export interface StartRecognizingResult { - waitForEventProcessor(abortSignal?: AbortSignalLike, timeoutInMs?: number): Promise; +export interface StartMediaStreamingOptions extends OperationOptions { + operationCallbackUrl?: string; + operationContext?: string; } // @public @@ -939,6 +1269,17 @@ export interface StartRecordingOptions extends OperationOptions { export interface StartTranscriptionOptions extends OperationOptions { locale?: string; operationContext?: string; + speechRecognitionModelEndpointId?: string; +} + +// @public (undocumented) +export interface StopAudio { +} + +// @public +export interface StopMediaStreamingOptions extends OperationOptions { + operationCallbackUrl?: string; + operationContext?: string; } // @public @@ -949,6 +1290,33 @@ export interface StopTranscriptionOptions extends OperationOptions { operationContext?: string; } +// @public +export class StreamingData { + // (undocumented) + static getStreamingKind(): StreamingDataKind; + static parse(data: string | ArrayBuffer): StreamingDataResult; +} + +// @public (undocumented) +export enum StreamingDataKind { + // (undocumented) + AudioData = "AudioData", + // (undocumented) + AudioMetadata = "AudioMetadata", + // (undocumented) + TranscriptionData = "TranscriptionData", + // (undocumented) + TranscriptionMetadata = "TranscriptionMetadata" +} + +// @public (undocumented) +export type StreamingDataResult = TranscriptionMetadata | TranscriptionData | AudioData | AudioMetadata; + +// @public +export enum TextFormat { + Display = "display" +} + // @public export interface TextSource extends PlaySource { // (undocumented) @@ -969,15 +1337,18 @@ export interface TextSource extends PlaySource { export type Tone = string; // @public -export interface TranscriptionConfiguration { - locale: string; - startTranscription: boolean; - transportType: TranscriptionTransportType; - transportUrl: string; +export interface TranscriptionData { + confidence: number; + durationInTicks: number; + format: TextFormat; + offsetInTicks: number; + participant: CommunicationIdentifier; + // Warning: (ae-forgotten-export) The symbol "TranscriptionResultState" needs to be exported by the entry point index.d.ts + resultState: TranscriptionResultState; + text: string; + words: WordData[]; } -// Warning: (ae-forgotten-export) The symbol "RestTranscriptionFailed" needs to be exported by the entry point index.d.ts -// // @public (undocumented) export interface TranscriptionFailed extends Omit { callConnectionId: string; @@ -987,8 +1358,24 @@ export interface TranscriptionFailed extends Omit { callConnectionId: string; @@ -998,8 +1385,6 @@ export interface TranscriptionStarted extends Omit { callConnectionId: string; @@ -1009,11 +1394,17 @@ export interface TranscriptionStopped extends Omit { callConnectionId: string; @@ -1026,14 +1417,6 @@ export interface TranscriptionUpdated extends Omit; -} - -// @public -export interface TransferCallToParticipantEventResult { - failureResult?: CallTransferFailed; - isSuccess: boolean; - successResult?: CallTransferAccepted; } // @public @@ -1050,6 +1433,12 @@ export interface UnholdOptions extends OperationOptions { operationContext?: string; } +// @public +export interface UpdateTranscriptionOptions extends OperationOptions { + operationContext?: string; + speechRecognitionModelEndpointId?: string; +} + // @public export enum VoiceKind { Female = "female", @@ -1062,6 +1451,13 @@ export interface VoipHeader extends CustomCallingContextHeader { kind: "voip"; } +// @public +export interface WordData { + durationInTicks: number; + offsetInTicks: number; + text: string; +} + // (No @packageDocumentation comment for this package) ``` diff --git a/sdk/communication/communication-call-automation/src/callAutomationClient.ts b/sdk/communication/communication-call-automation/src/callAutomationClient.ts index 71b43e879940..e046fa208ad5 100644 --- a/sdk/communication/communication-call-automation/src/callAutomationClient.ts +++ b/sdk/communication/communication-call-automation/src/callAutomationClient.ts @@ -1,34 +1,36 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { KeyCredential, TokenCredential } from "@azure/core-auth"; -import { isTokenCredential } from "@azure/core-auth"; -import type { CommonClientOptions } from "@azure/core-client"; -import type { InternalPipelineOptions } from "@azure/core-rest-pipeline"; -import type { +import { KeyCredential, TokenCredential, isTokenCredential } from "@azure/core-auth"; +import { CommonClientOptions } from "@azure/core-client"; +import { InternalPipelineOptions } from "@azure/core-rest-pipeline"; +import { + parseClientArguments, + isKeyCredential, + createCommunicationAuthPolicy, CommunicationIdentifier, CommunicationUserIdentifier, } from "@azure/communication-common"; -import { parseClientArguments, isKeyCredential } from "@azure/communication-common"; import { logger } from "./models/logger"; -import type { +import { AnswerCallRequest, CallAutomationApiClient, CommunicationUserIdentifierModel, + ConnectRequest, CreateCallRequest, RedirectCallRequest, RejectCallRequest, - CustomCallingContextInternal, } from "./generated/src"; import { CallConnection } from "./callConnection"; import { CallRecording } from "./callRecording"; -import type { +import { AnswerCallOptions, + ConnectCallOptions, CreateCallOptions, RedirectCallOptions, RejectCallOptions, } from "./models/options"; -import type { AnswerCallResult, CreateCallResult } from "./models/responses"; -import type { CallConnectionProperties, CallInvite, CustomCallingContext } from "./models/models"; +import { AnswerCallResult, ConnectCallResult, CreateCallResult } from "./models/responses"; +import { CallConnectionProperties, CallInvite, CallLocator } from "./models/models"; import { communicationIdentifierConverter, communicationIdentifierModelConverter, @@ -38,9 +40,7 @@ import { PhoneNumberIdentifierModelConverter, } from "./utli/converters"; import { randomUUID } from "@azure/core-util"; -import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; -import { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; -import type { AnswerCallEventResult, CreateCallEventResult } from "./eventprocessor/eventResponses"; + /** * Client options used to configure CallAutomation Client API requests. */ @@ -67,8 +67,6 @@ export class CallAutomationClient { private readonly sourceIdentity?: CommunicationUserIdentifierModel; private readonly credential: TokenCredential | KeyCredential; private readonly internalPipelineOptions: InternalPipelineOptions; - private readonly callAutomationEventProcessor: CallAutomationEventProcessor; - private readonly endpoint: string; /** * Initializes a new instance of the CallAutomationClient class. * @param connectionString - Connection string to connect to an Azure Communication Service resource. @@ -112,20 +110,12 @@ export class CallAutomationClient { }; const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions); - this.endpoint = url; - this.credential = credential; - - // create event processor - this.callAutomationEventProcessor = new CallAutomationEventProcessor(); - - // create api client (using custom api endpoint if available) - this.callAutomationApiClient = createCustomCallAutomationApiClient( - credential, - this.internalPipelineOptions, - this.endpoint, - ); + const authPolicy = createCommunicationAuthPolicy(credential); + this.credential = credential; + this.callAutomationApiClient = new CallAutomationApiClient(url, this.internalPipelineOptions); + this.callAutomationApiClient.pipeline.addPolicy(authPolicy); this.sourceIdentity = communicationUserIdentifierModelConverter(options.sourceIdentity); } @@ -136,9 +126,8 @@ export class CallAutomationClient { public getCallConnection(callConnectionId: string): CallConnection { return new CallConnection( callConnectionId, - this.endpoint, + this.callAutomationApiClient.endpoint, this.credential, - this.callAutomationEventProcessor, this.internalPipelineOptions, ); } @@ -147,7 +136,11 @@ export class CallAutomationClient { * Initializes a new instance of CallRecording. */ public getCallRecording(): CallRecording { - return new CallRecording(this.endpoint, this.credential, this.internalPipelineOptions); + return new CallRecording( + this.callAutomationApiClient.endpoint, + this.credential, + this.internalPipelineOptions, + ); } /** @@ -157,13 +150,6 @@ export class CallAutomationClient { return communicationUserIdentifierConverter(this.sourceIdentity); } - /** - * Get event processor to work with call automation events - */ - public getEventProcessor(): CallAutomationEventProcessor { - return this.callAutomationEventProcessor; - } - private async createCallInternal( request: CreateCallRequest, options?: CreateCallOptions, @@ -173,8 +159,15 @@ export class CallAutomationClient { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID(), }; - const { callConnectionId, answeredBy, targets, sourceCallerIdNumber, source, ...result } = - await this.callAutomationApiClient.createCall(request, optionsInternal); + const { + callConnectionId, + answeredBy, + targets, + sourceCallerIdNumber, + source, + answeredFor, + ...result + } = await this.callAutomationApiClient.createCall(request, optionsInternal); if (callConnectionId) { const callConnectionPropertiesDto: CallConnectionProperties = { @@ -182,6 +175,7 @@ export class CallAutomationClient { callConnectionId: callConnectionId, source: source ? communicationIdentifierConverter(source) : undefined, answeredby: communicationUserIdentifierConverter(answeredBy), + answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined, targetParticipants: targets?.map((returnedTarget) => communicationIdentifierConverter(returnedTarget), ), @@ -191,41 +185,13 @@ export class CallAutomationClient { }; const callConnection = new CallConnection( callConnectionId, - this.endpoint, + this.callAutomationApiClient.endpoint, this.credential, - this.callAutomationEventProcessor, this.internalPipelineOptions, ); const createCallResult: CreateCallResult = { callConnectionProperties: callConnectionPropertiesDto, callConnection: callConnection, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const createCallEventResult: CreateCallEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === callConnectionId && event.kind === "CallConnected") { - createCallEventResult.isSuccess = true; - createCallEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === callConnectionId && - event.kind === "CreateCallFailed" - ) { - createCallEventResult.isSuccess = false; - createCallEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - - return createCallEventResult; - }, }; return createCallResult; } @@ -249,11 +215,8 @@ export class CallAutomationClient { callbackUri: callbackUrl, operationContext: options.operationContext, callIntelligenceOptions: options.callIntelligenceOptions, - mediaStreamingConfiguration: options.mediaStreamingConfiguration, - transcriptionConfiguration: options.transcriptionConfiguration, - customCallingContext: this.createCustomCallingContextInternal( - targetParticipant.customCallingContext!, - ), + mediaStreamingOptions: options.mediaStreamingOptions, + transcriptionOptions: options.transcriptionOptions, sourceCallerIdNumber: PhoneNumberIdentifierModelConverter( targetParticipant.sourceCallIdNumber, ), @@ -281,7 +244,8 @@ export class CallAutomationClient { callbackUri: callbackUrl, operationContext: options.operationContext, callIntelligenceOptions: options.callIntelligenceOptions, - transcriptionConfiguration: options.transcriptionConfiguration, + mediaStreamingOptions: options.mediaStreamingOptions, + transcriptionOptions: options.transcriptionOptions, sourceCallerIdNumber: PhoneNumberIdentifierModelConverter(options.sourceCallIdNumber), sourceDisplayName: options.sourceDisplayName, }; @@ -302,15 +266,15 @@ export class CallAutomationClient { ): Promise { const { callIntelligenceOptions, - mediaStreamingConfiguration, - transcriptionConfiguration, + mediaStreamingOptions, + transcriptionOptions, operationContext, ...operationOptions } = options; const request: AnswerCallRequest = { incomingCallContext: incomingCallContext, - mediaStreamingConfiguration: mediaStreamingConfiguration, - transcriptionConfiguration: transcriptionConfiguration, + mediaStreamingOptions: mediaStreamingOptions, + transcriptionOptions: transcriptionOptions, callIntelligenceOptions: callIntelligenceOptions, operationContext: operationContext, callbackUri: callbackUrl, @@ -321,8 +285,15 @@ export class CallAutomationClient { repeatabilityFirstSent: new Date(), repeatabilityRequestID: randomUUID(), }; - const { callConnectionId, targets, sourceCallerIdNumber, answeredBy, source, ...result } = - await this.callAutomationApiClient.answerCall(request, optionsInternal); + const { + callConnectionId, + targets, + sourceCallerIdNumber, + answeredBy, + source, + answeredFor, + ...result + } = await this.callAutomationApiClient.answerCall(request, optionsInternal); if (callConnectionId) { const callConnectionProperties: CallConnectionProperties = { @@ -330,6 +301,7 @@ export class CallAutomationClient { callConnectionId: callConnectionId, source: source ? communicationIdentifierConverter(source) : undefined, answeredby: communicationUserIdentifierConverter(answeredBy), + answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined, targetParticipants: targets?.map((target) => communicationIdentifierConverter(target)), sourceCallerIdNumber: sourceCallerIdNumber ? phoneNumberIdentifierConverter(sourceCallerIdNumber) @@ -337,38 +309,13 @@ export class CallAutomationClient { }; const callConnection = new CallConnection( callConnectionId, - this.endpoint, + this.callAutomationApiClient.endpoint, this.credential, - this.callAutomationEventProcessor, this.internalPipelineOptions, ); const answerCallResult: AnswerCallResult = { callConnectionProperties: callConnectionProperties, callConnection: callConnection, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const answerCallEventResult: AnswerCallEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === callConnectionId && event.kind === "CallConnected") { - answerCallEventResult.isSuccess = true; - answerCallEventResult.successResult = event; - return true; - } - if (event.callConnectionId === callConnectionId && event.kind === "AnswerFailed") { - answerCallEventResult.isSuccess = false; - answerCallEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return answerCallEventResult; - }, }; return answerCallResult; } @@ -390,9 +337,6 @@ export class CallAutomationClient { const request: RedirectCallRequest = { incomingCallContext: incomingCallContext, target: communicationIdentifierModelConverter(targetParticipant.targetParticipant), - customCallingContext: this.createCustomCallingContextInternal( - targetParticipant.customCallingContext!, - ), }; const optionsInternal = { ...options, @@ -426,22 +370,77 @@ export class CallAutomationClient { return this.callAutomationApiClient.rejectCall(request, optionsInternal); } - private createCustomCallingContextInternal( - customCallingContext: CustomCallingContext, - ): CustomCallingContextInternal { - const sipHeaders: { [key: string]: string } = {}; - const voipHeaders: { [key: string]: string } = {}; - if (customCallingContext) { - for (const header of customCallingContext) { - if (header.kind === "sipuui") { - sipHeaders[`User-To-User`] = header.value; - } else if (header.kind === "sipx") { - sipHeaders[`X-MS-Custom-${header.key}`] = header.value; - } else if (header.kind === "voip") { - voipHeaders[`${header.key}`] = header.value; - } - } + /** + * Create connection to room call. + * @param callLocator - Call locator to create connection. + * @param callbackUrl - The callback url + * @param options - Additional request options contains connect api options. + */ + public async connectCall( + callLocator: CallLocator, + callbackUrl: string, + options: ConnectCallOptions = {}, + ): Promise { + const connectRequest: ConnectRequest = { + callLocator: callLocator, + callbackUri: callbackUrl, + operationContext: options.operationContext, + callIntelligenceOptions: options.callIntelligenceOptions, + mediaStreamingOptions: options.mediaStreamingOptions, + transcriptionOptions: options.transcriptionOptions, + }; + + if (callLocator.kind === "groupCallLocator") { + connectRequest.callLocator.kind = "groupCallLocator"; + connectRequest.callLocator.groupCallId = callLocator.id; + } else if (callLocator.kind === "roomCallLocator") { + connectRequest.callLocator.kind = "roomCallLocator"; + connectRequest.callLocator.roomId = callLocator.id; + } else { + connectRequest.callLocator.kind = "serverCallLocator"; + connectRequest.callLocator.serverCallId = callLocator.id; + } + + const optionsInternal = { + ...options, + repeatabilityFirstSent: new Date(), + repeatabilityRequestID: randomUUID(), + }; + + const { + callConnectionId, + targets, + sourceCallerIdNumber, + answeredBy, + source, + answeredFor, + ...result + } = await this.callAutomationApiClient.connect(connectRequest, optionsInternal); + + if (callConnectionId) { + const callConnectionProperties: CallConnectionProperties = { + ...result, + callConnectionId: callConnectionId, + source: source ? communicationIdentifierConverter(source) : undefined, + answeredby: answeredBy ? communicationUserIdentifierConverter(answeredBy) : undefined, + targetParticipants: targets?.map((target) => communicationIdentifierConverter(target)), + answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined, + sourceCallerIdNumber: sourceCallerIdNumber + ? phoneNumberIdentifierConverter(sourceCallerIdNumber) + : undefined, + }; + const callConnection = new CallConnection( + callConnectionId, + this.callAutomationApiClient.endpoint, + this.credential, + this.internalPipelineOptions, + ); + const connectResult: ConnectCallResult = { + callConnectionProperties: callConnectionProperties, + callConnection: callConnection, + }; + return connectResult; } - return { sipHeaders: sipHeaders, voipHeaders: voipHeaders }; + throw "callConnectionProperties / callConnectionId is missing in connect result"; } } diff --git a/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts b/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts index 1636a5f59ca4..bd447a6431a0 100644 --- a/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts +++ b/sdk/communication/communication-call-automation/src/callAutomationEventParser.ts @@ -15,6 +15,7 @@ import type { CallTransferFailed, ParticipantsUpdated, RecordingStateChanged, + PlayStarted, PlayCompleted, PlayFailed, PlayCanceled, @@ -30,13 +31,17 @@ import type { SendDtmfTonesFailed, CancelAddParticipantSucceeded, CancelAddParticipantFailed, + ConnectFailed, TranscriptionStarted, TranscriptionStopped, TranscriptionUpdated, TranscriptionFailed, + HoldFailed, + MediaStreamingStarted, + MediaStreamingStopped, + MediaStreamingFailed, CreateCallFailed, AnswerFailed, - HoldFailed, } from "./models/events"; import { CloudEventMapper } from "./models/mapper"; @@ -96,6 +101,9 @@ export function parseCallAutomationEvent( case "Microsoft.Communication.RecordingStateChanged": callbackEvent = { kind: "RecordingStateChanged" } as RecordingStateChanged; break; + case "Microsoft.Communication.PlayStarted": + callbackEvent = { kind: "PlayStarted" } as PlayStarted; + break; case "Microsoft.Communication.PlayCompleted": callbackEvent = { kind: "PlayCompleted" } as PlayCompleted; break; @@ -141,6 +149,9 @@ export function parseCallAutomationEvent( case "Microsoft.Communication.CancelAddParticipantFailed": callbackEvent = { kind: "CancelAddParticipantFailed" } as CancelAddParticipantFailed; break; + case "Microsoft.Communication.ConnectFailed": + callbackEvent = { kind: "ConnectFailed" } as ConnectFailed; + break; case "Microsoft.Communication.TranscriptionStarted": callbackEvent = { kind: "TranscriptionStarted" } as TranscriptionStarted; break; @@ -153,15 +164,24 @@ export function parseCallAutomationEvent( case "Microsoft.Communication.TranscriptionFailed": callbackEvent = { kind: "TranscriptionFailed" } as TranscriptionFailed; break; + case "Microsoft.Communication.HoldFailed": + callbackEvent = { kind: "HoldFailed" } as HoldFailed; + break; + case "Microsoft.Communication.MediaStreamingStarted": + callbackEvent = { kind: "MediaStreamingStarted" } as MediaStreamingStarted; + break; + case "Microsoft.Communication.MediaStreamingStopped": + callbackEvent = { kind: "MediaStreamingStopped" } as MediaStreamingStopped; + break; + case "Microsoft.Communication.MediaStreamingFailed": + callbackEvent = { kind: "MediaStreamingFailed" } as MediaStreamingFailed; + break; case "Microsoft.Communication.CreateCallFailed": callbackEvent = { kind: "CreateCallFailed" } as CreateCallFailed; break; case "Microsoft.Communication.AnswerFailed": callbackEvent = { kind: "AnswerFailed" } as AnswerFailed; break; - case "Microsoft.Communication.HoldFailed": - callbackEvent = { kind: "HoldFailed" } as HoldFailed; - break; default: throw new TypeError(`Unknown Call Automation Event type: ${eventType}`); } diff --git a/sdk/communication/communication-call-automation/src/callConnection.ts b/sdk/communication/communication-call-automation/src/callConnection.ts index 44ef5622f019..fe11e65c7ba5 100644 --- a/sdk/communication/communication-call-automation/src/callConnection.ts +++ b/sdk/communication/communication-call-automation/src/callConnection.ts @@ -1,9 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { CommunicationIdentifier } from "@azure/communication-common"; +import { + CommunicationIdentifier, + createCommunicationAuthPolicy, +} from "@azure/communication-common"; import { CallMedia } from "./callMedia"; -import type { +import { AddParticipantRequest, CallAutomationApiClient, CallAutomationApiClientOptionalParams, @@ -13,13 +16,13 @@ import type { TransferToParticipantRequest, } from "./generated/src"; import { CallConnectionImpl } from "./generated/src/operations"; -import type { +import { CallConnectionProperties, CallInvite, CallParticipant, CustomCallingContext, } from "./models/models"; -import type { +import { AddParticipantOptions, CancelAddParticipantOperationOptions, GetCallConnectionPropertiesOptions, @@ -29,7 +32,7 @@ import type { RemoveParticipantsOption, TransferCallToParticipantOptions, } from "./models/options"; -import type { +import { ListParticipantsResult, TransferCallResult, AddParticipantResult, @@ -46,15 +49,7 @@ import { PhoneNumberIdentifierModelConverter, } from "./utli/converters"; import { randomUUID } from "@azure/core-util"; -import type { KeyCredential, TokenCredential } from "@azure/core-auth"; -import type { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; -import type { - AddParticipantEventResult, - CancelAddParticipantEventResult, - RemoveParticipantEventResult, - TransferCallToParticipantEventResult, -} from "./eventprocessor/eventResponses"; -import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; +import { KeyCredential, TokenCredential } from "@azure/core-auth"; /** * CallConnection class represents call connection based APIs. @@ -66,24 +61,19 @@ export class CallConnection { private readonly endpoint: string; private readonly credential: TokenCredential | KeyCredential; private readonly callAutomationApiClientOptions?: CallAutomationApiClientOptionalParams; - private readonly callAutomationEventProcessor: CallAutomationEventProcessor; constructor( callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, - eventProcessor: CallAutomationEventProcessor, options?: CallAutomationApiClientOptionalParams, ) { - this.callAutomationApiClient = createCustomCallAutomationApiClient( - credential, - options, - endpoint, - ); + this.callAutomationApiClient = new CallAutomationApiClient(endpoint, options); + const authPolicy = createCommunicationAuthPolicy(credential); + this.callAutomationApiClient.pipeline.addPolicy(authPolicy); this.callConnectionId = callConnectionId; this.callConnection = new CallConnectionImpl(this.callAutomationApiClient); this.endpoint = endpoint; this.credential = credential; - this.callAutomationEventProcessor = eventProcessor; this.callAutomationApiClientOptions = options; } @@ -95,7 +85,6 @@ export class CallConnection { this.callConnectionId, this.endpoint, this.credential, - this.callAutomationEventProcessor, this.callAutomationApiClientOptions, ); } @@ -106,12 +95,13 @@ export class CallConnection { public async getCallConnectionProperties( options: GetCallConnectionPropertiesOptions = {}, ): Promise { - const { targets, sourceCallerIdNumber, answeredBy, source, ...result } = + const { targets, sourceCallerIdNumber, answeredBy, source, answeredFor, ...result } = await this.callConnection.getCall(this.callConnectionId, options); const callConnectionProperties: CallConnectionProperties = { ...result, source: source ? communicationIdentifierConverter(source) : undefined, answeredby: communicationUserIdentifierConverter(answeredBy), + answeredFor: answeredFor ? phoneNumberIdentifierConverter(answeredFor) : undefined, targetParticipants: targets?.map((target) => communicationIdentifierConverter(target)), sourceCallerIdNumber: sourceCallerIdNumber ? phoneNumberIdentifierConverter(sourceCallerIdNumber) @@ -157,6 +147,7 @@ export class CallConnection { ? communicationIdentifierConverter(result.identifier) : undefined, isMuted: result.isMuted, + isOnHold: result.isOnHold, }; return callParticipant; } @@ -219,7 +210,7 @@ export class CallConnection { ), sourceDisplayName: targetParticipant.sourceDisplayName, invitationTimeoutInSeconds: options.invitationTimeoutInSeconds, - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, customCallingContext: this.createCustomCallingContextInternal( targetParticipant.customCallingContext!, @@ -243,37 +234,6 @@ export class CallConnection { ? communicationIdentifierConverter(result.participant?.identifier) : undefined, }, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const addParticipantEventResult: AddParticipantEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "AddParticipantSucceeded" && - event.operationContext === addParticipantRequest.operationContext - ) { - addParticipantEventResult.isSuccess = true; - addParticipantEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "AddParticipantFailed" && - event.operationContext === addParticipantRequest.operationContext - ) { - addParticipantEventResult.isSuccess = false; - addParticipantEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return addParticipantEventResult; - }, }; return addParticipantsResult; } @@ -289,7 +249,7 @@ export class CallConnection { ): Promise { const transferToParticipantRequest: TransferToParticipantRequest = { targetParticipant: communicationIdentifierModelConverter(targetParticipant), - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, transferee: options.transferee && communicationIdentifierModelConverter(options.transferee), customCallingContext: this.createCustomCallingContextInternal(options.customCallingContext!), @@ -307,37 +267,6 @@ export class CallConnection { ); const transferCallResult: TransferCallResult = { ...result, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const transferCallToParticipantEventResult: TransferCallToParticipantEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "CallTransferAccepted" && - event.operationContext === transferToParticipantRequest.operationContext - ) { - transferCallToParticipantEventResult.isSuccess = true; - transferCallToParticipantEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "CallTransferFailed" && - event.operationContext === transferToParticipantRequest.operationContext - ) { - transferCallToParticipantEventResult.isSuccess = false; - transferCallToParticipantEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return transferCallToParticipantEventResult; - }, }; return transferCallResult; } @@ -353,7 +282,7 @@ export class CallConnection { ): Promise { const removeParticipantRequest: RemoveParticipantRequest = { participantToRemove: communicationIdentifierModelConverter(participant), - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, }; const optionsInternal = { @@ -368,37 +297,6 @@ export class CallConnection { ); const removeParticipantsResult: RemoveParticipantResult = { ...result, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const removeParticipantEventResult: RemoveParticipantEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "RemoveParticipantSucceeded" && - event.operationContext === removeParticipantRequest.operationContext - ) { - removeParticipantEventResult.isSuccess = true; - removeParticipantEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "RemoveParticipantFailed" && - event.operationContext === removeParticipantRequest.operationContext - ) { - removeParticipantEventResult.isSuccess = false; - removeParticipantEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return removeParticipantEventResult; - }, }; return removeParticipantsResult; } @@ -433,9 +331,10 @@ export class CallConnection { return muteParticipantResult; } - /** Cancel add participant request. + /** Cancel add participant operation. * * @param invitationId - Invitation ID used to cancel the add participant request. + * @param options - Additional attributes for cancel add participant operation. */ public async cancelAddParticipantOperation( invitationId: string, @@ -448,7 +347,7 @@ export class CallConnection { } = options; const cancelAddParticipantRequest = { invitationId, - operationContext: operationContext ? operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri, }; const optionsInternal = { @@ -465,37 +364,6 @@ export class CallConnection { const cancelAddParticipantResult: CancelAddParticipantOperationResult = { ...result, - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const cancelAddParticipantEventResult: CancelAddParticipantEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "CancelAddParticipantSucceeded" && - event.operationContext === cancelAddParticipantRequest.operationContext - ) { - cancelAddParticipantEventResult.isSuccess = true; - cancelAddParticipantEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "CancelAddParticipantFailed" && - event.operationContext === cancelAddParticipantRequest.operationContext - ) { - cancelAddParticipantEventResult.isSuccess = false; - cancelAddParticipantEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return cancelAddParticipantEventResult; - }, }; return cancelAddParticipantResult; diff --git a/sdk/communication/communication-call-automation/src/callMedia.ts b/sdk/communication/communication-call-automation/src/callMedia.ts index 0bcd081438e0..a1c68205c1cd 100644 --- a/sdk/communication/communication-call-automation/src/callMedia.ts +++ b/sdk/communication/communication-call-automation/src/callMedia.ts @@ -1,13 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { +import { PlayRequest, PlaySourceInternal, FileSourceInternal, TextSourceInternal, SsmlSourceInternal, + KnownPlaySourceType, RecognizeRequest, + KnownRecognizeInputType, RecognizeOptions, DtmfOptions, CallAutomationApiClient, @@ -16,24 +18,27 @@ import type { SendDtmfTonesRequest, Tone, SpeechOptions, - StartHoldMusicRequest, - StopHoldMusicRequest, StartTranscriptionRequest, StopTranscriptionRequest, UpdateTranscriptionRequest, HoldRequest, UnholdRequest, + StopMediaStreamingRequest, + StartMediaStreamingRequest, } from "./generated/src"; -import { KnownPlaySourceType, KnownRecognizeInputType } from "./generated/src"; import { CallMediaImpl } from "./generated/src/operations"; -import type { CommunicationIdentifier } from "@azure/communication-common"; -import { serializeCommunicationIdentifier } from "@azure/communication-common"; +import { + CommunicationIdentifier, + createCommunicationAuthPolicy, + serializeCommunicationIdentifier, +} from "@azure/communication-common"; -import type { FileSource, TextSource, SsmlSource, DtmfTone } from "./models/models"; -import type { +import { FileSource, TextSource, SsmlSource, DtmfTone } from "./models/models"; +import { PlayOptions, + PlayToAllOptions, CallMediaRecognizeDtmfOptions, CallMediaRecognizeChoiceOptions, ContinuousDtmfRecognitionOptions, @@ -44,23 +49,13 @@ import type { StopTranscriptionOptions, HoldOptions, UnholdOptions, + StopMediaStreamingOptions, + StartMediaStreamingOptions, + UpdateTranscriptionOptions, } from "./models/options"; -import type { KeyCredential, TokenCredential } from "@azure/core-auth"; -import type { - CancelAllMediaOperationsResult, - PlayResult, - SendDtmfTonesResult, - StartRecognizingResult, -} from "./models/responses"; -import type { - CancelAllMediaOperationsEventResult, - PlayEventResult, - SendDtmfEventResult, - StartRecognizingEventResult, -} from "./eventprocessor/eventResponses"; -import type { CallAutomationEventProcessor } from "./eventprocessor/callAutomationEventProcessor"; +import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { SendDtmfTonesResult } from "./models/responses"; import { randomUUID } from "@azure/core-util"; -import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; /** * CallMedia class represents call media related APIs. @@ -69,21 +64,16 @@ export class CallMedia { private readonly callConnectionId: string; private readonly callMedia: CallMediaImpl; private readonly callAutomationApiClient: CallAutomationApiClient; - private readonly callAutomationEventProcessor: CallAutomationEventProcessor; constructor( callConnectionId: string, endpoint: string, credential: KeyCredential | TokenCredential, - eventProcessor: CallAutomationEventProcessor, options?: CallAutomationApiClientOptionalParams, ) { - this.callAutomationApiClient = createCustomCallAutomationApiClient( - credential, - options, - endpoint, - ); + this.callAutomationApiClient = new CallAutomationApiClient(endpoint, options); + const authPolicy = createCommunicationAuthPolicy(credential); + this.callAutomationApiClient.pipeline.addPolicy(authPolicy); this.callConnectionId = callConnectionId; - this.callAutomationEventProcessor = eventProcessor; this.callMedia = new CallMediaImpl(this.callAutomationApiClient); } @@ -97,9 +87,7 @@ export class CallMedia { return { kind: KnownPlaySourceType.File, file: fileSource, - playSourceCacheId: playSource.playSourceCacheId - ? playSource.playSourceCacheId - : playSource.playsourcacheid, + playSourceCacheId: playSource.playsourcacheid, }; } else if (playSource.kind === "textSource") { const textSource: TextSourceInternal = { @@ -112,9 +100,7 @@ export class CallMedia { return { kind: KnownPlaySourceType.Text, text: textSource, - playSourceCacheId: playSource.playSourceCacheId - ? playSource.playSourceCacheId - : playSource.playsourcacheid, + playSourceCacheId: playSource.playsourcacheid, }; } else if (playSource.kind === "ssmlSource") { const ssmlSource: SsmlSourceInternal = { @@ -124,9 +110,7 @@ export class CallMedia { return { kind: KnownPlaySourceType.Ssml, ssml: ssmlSource, - playSourceCacheId: playSource.playSourceCacheId - ? playSource.playSourceCacheId - : playSource.playsourcacheid, + playSourceCacheId: playSource.playsourcacheid, }; } throw new Error("Invalid play source"); @@ -143,14 +127,14 @@ export class CallMedia { playSources: (FileSource | TextSource | SsmlSource)[], playTo: CommunicationIdentifier[], options: PlayOptions = { loop: false }, - ): Promise { + ): Promise { const playRequest: PlayRequest = { playSources: playSources.map((source) => this.createPlaySourceInternal(source)), playTo: playTo.map((identifier) => serializeCommunicationIdentifier(identifier)), playOptions: { loop: false, }, - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, }; @@ -158,42 +142,7 @@ export class CallMedia { playRequest.playOptions = playRequest.playOptions || { loop: false }; // Ensure playOptions is defined playRequest.playOptions.loop = options.loop; } - await this.callMedia.play(this.callConnectionId, playRequest, options); - - const playResult: PlayResult = { - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const playEventResult: PlayEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "PlayCompleted" && - event.operationContext === playRequest.operationContext - ) { - playEventResult.isSuccess = true; - playEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "PlayFailed" && - event.operationContext === playRequest.operationContext - ) { - playEventResult.isSuccess = false; - playEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return playEventResult; - }, - }; - return playResult; + return this.callMedia.play(this.callConnectionId, playRequest, options); } /** @@ -204,15 +153,19 @@ export class CallMedia { */ public async playToAll( playSources: (FileSource | TextSource | SsmlSource)[], - options: PlayOptions = { loop: false }, - ): Promise { + options: PlayToAllOptions = { loop: false }, + ): Promise { const playRequest: PlayRequest = { playSources: playSources.map((source) => this.createPlaySourceInternal(source)), playTo: [], playOptions: { loop: false, }, - operationContext: options.operationContext ? options.operationContext : randomUUID(), + interruptCallMediaOperation: + options.interruptCallMediaOperation !== undefined + ? options.interruptCallMediaOperation + : false, + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, }; @@ -220,42 +173,7 @@ export class CallMedia { playRequest.playOptions = playRequest.playOptions || { loop: false }; // Ensure playOptions is defined playRequest.playOptions.loop = options.loop; } - await this.callMedia.play(this.callConnectionId, playRequest, options); - - const playResult: PlayResult = { - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const playEventResult: PlayEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "PlayCompleted" && - event.operationContext === playRequest.operationContext - ) { - playEventResult.isSuccess = true; - playEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "PlayFailed" && - event.operationContext === playRequest.operationContext - ) { - playEventResult.isSuccess = false; - playEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return playEventResult; - }, - }; - return playResult; + return this.callMedia.play(this.callConnectionId, playRequest, options); } private createRecognizeRequest( @@ -287,6 +205,10 @@ export class CallMedia { playPrompt: recognizeOptions.playPrompt ? this.createPlaySourceInternal(recognizeOptions.playPrompt) : undefined, + playPrompts: + recognizeOptions.playPrompts !== undefined + ? recognizeOptions.playPrompts.map((source) => this.createPlaySourceInternal(source)) + : undefined, interruptCallMediaOperation: recognizeOptions.interruptCallMediaOperation, recognizeOptions: recognizeOptionsInternal, operationContext: recognizeOptions.operationContext, @@ -308,6 +230,10 @@ export class CallMedia { playPrompt: recognizeOptions.playPrompt ? this.createPlaySourceInternal(recognizeOptions.playPrompt) : undefined, + playPrompts: + recognizeOptions.playPrompts !== undefined + ? recognizeOptions.playPrompts.map((source) => this.createPlaySourceInternal(source)) + : undefined, interruptCallMediaOperation: recognizeOptions.interruptCallMediaOperation, recognizeOptions: recognizeOptionsInternal, operationContext: recognizeOptions.operationContext, @@ -334,6 +260,10 @@ export class CallMedia { playPrompt: recognizeOptions.playPrompt ? this.createPlaySourceInternal(recognizeOptions.playPrompt) : undefined, + playPrompts: + recognizeOptions.playPrompts !== undefined + ? recognizeOptions.playPrompts.map((source) => this.createPlaySourceInternal(source)) + : undefined, interruptCallMediaOperation: recognizeOptions.interruptCallMediaOperation, recognizeOptions: recognizeOptionsInternal, operationContext: recognizeOptions.operationContext, @@ -367,6 +297,10 @@ export class CallMedia { playPrompt: recognizeOptions.playPrompt ? this.createPlaySourceInternal(recognizeOptions.playPrompt) : undefined, + playPrompts: + recognizeOptions.playPrompts !== undefined + ? recognizeOptions.playPrompts.map((source) => this.createPlaySourceInternal(source)) + : undefined, interruptCallMediaOperation: recognizeOptions.interruptCallMediaOperation, recognizeOptions: recognizeOptionsInternal, operationContext: recognizeOptions.operationContext, @@ -387,7 +321,7 @@ export class CallMedia { targetParticipant: CommunicationIdentifier, maxTonesToCollect: number, options: CallMediaRecognizeDtmfOptions, - ): Promise; + ): Promise; /** * Recognize participant input. @@ -401,7 +335,7 @@ export class CallMedia { | CallMediaRecognizeChoiceOptions | CallMediaRecognizeSpeechOptions | CallMediaRecognizeSpeechOrDtmfOptions, - ): Promise; + ): Promise; async startRecognizing( targetParticipant: CommunicationIdentifier, maxTonesOrOptions: @@ -411,62 +345,25 @@ export class CallMedia { | CallMediaRecognizeSpeechOptions | CallMediaRecognizeSpeechOrDtmfOptions, options?: CallMediaRecognizeDtmfOptions, - ): Promise { + ): Promise { if (typeof maxTonesOrOptions === "number" && options) { // Old function signature logic console.warn( "Deprecated function signature used. Please use the new signature with targetParticipant and options params instead, and set maxTonesToCollect in options.", ); options.maxTonesToCollect = maxTonesOrOptions; - await this.callMedia.recognize( + return this.callMedia.recognize( this.callConnectionId, this.createRecognizeRequest(targetParticipant, options), {}, ); } else if (typeof maxTonesOrOptions !== "number" && !options) { - maxTonesOrOptions.operationContext = maxTonesOrOptions.operationContext - ? maxTonesOrOptions.operationContext - : randomUUID(); // New function signature logic - await this.callMedia.recognize( + return this.callMedia.recognize( this.callConnectionId, this.createRecognizeRequest(targetParticipant, maxTonesOrOptions), {}, ); - const startRecognizingResult: StartRecognizingResult = { - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const startRecognizingEventResult: StartRecognizingEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "RecognizeCompleted" && - event.operationContext === maxTonesOrOptions.operationContext - ) { - startRecognizingEventResult.isSuccess = true; - startRecognizingEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "RecognizeFailed" && - event.operationContext === maxTonesOrOptions.operationContext - ) { - startRecognizingEventResult.isSuccess = false; - startRecognizingEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return startRecognizingEventResult; - }, - }; - return startRecognizingResult; } throw new Error("Invalid params"); } @@ -474,38 +371,8 @@ export class CallMedia { /** * Cancels all the queued media operations. */ - public async cancelAllOperations(): Promise { - await this.callMedia.cancelAllMediaOperations(this.callConnectionId, {}); - - const cancelAllMediaOperationsResult: CancelAllMediaOperationsResult = { - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const cancelAllMediaOperationsEventResult: CancelAllMediaOperationsEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === this.callConnectionId && event.kind === "PlayCanceled") { - cancelAllMediaOperationsEventResult.isSuccess = true; - cancelAllMediaOperationsEventResult.playCanceledSuccessResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "RecognizeCanceled" - ) { - cancelAllMediaOperationsEventResult.isSuccess = false; - cancelAllMediaOperationsEventResult.recognizeCanceledSuccessResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return cancelAllMediaOperationsEventResult; - }, - }; - return cancelAllMediaOperationsResult; + public async cancelAllOperations(): Promise { + return this.callMedia.cancelAllMediaOperations(this.callConnectionId, {}); } /** @@ -519,7 +386,7 @@ export class CallMedia { ): Promise { const continuousDtmfRecognitionRequest: ContinuousDtmfRecognitionRequest = { targetParticipant: serializeCommunicationIdentifier(targetParticipant), - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, }; return this.callMedia.startContinuousDtmfRecognition( this.callConnectionId, @@ -539,7 +406,7 @@ export class CallMedia { ): Promise { const continuousDtmfRecognitionRequest: ContinuousDtmfRecognitionRequest = { targetParticipant: serializeCommunicationIdentifier(targetParticipant), - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, }; return this.callMedia.stopContinuousDtmfRecognition( @@ -563,43 +430,22 @@ export class CallMedia { const sendDtmfTonesRequest: SendDtmfTonesRequest = { tones: tones, targetParticipant: serializeCommunicationIdentifier(targetParticipant), - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, operationCallbackUri: options.operationCallbackUrl, }; - await this.callMedia.sendDtmfTones(this.callConnectionId, sendDtmfTonesRequest, {}); + const optionsInternal = { + ...options, + repeatabilityFirstSent: new Date(), + repeatabilityRequestID: randomUUID(), + }; + const result = await this.callMedia.sendDtmfTones( + this.callConnectionId, + sendDtmfTonesRequest, + optionsInternal, + ); const sendDtmfTonesResult: SendDtmfTonesResult = { - waitForEventProcessor: async (abortSignal, timeoutInMs) => { - const sendDtmfEventResult: SendDtmfEventResult = { - isSuccess: false, - }; - await this.callAutomationEventProcessor.waitForEventProcessor( - (event) => { - if ( - event.callConnectionId === this.callConnectionId && - event.kind === "SendDtmfTonesCompleted" && - event.operationContext === sendDtmfTonesResult.operationContext - ) { - sendDtmfEventResult.isSuccess = true; - sendDtmfEventResult.successResult = event; - return true; - } else if ( - event.callConnectionId === this.callConnectionId && - event.kind === "SendDtmfTonesFailed" && - event.operationContext === sendDtmfTonesResult.operationContext - ) { - sendDtmfEventResult.isSuccess = false; - sendDtmfEventResult.failureResult = event; - return true; - } else { - return false; - } - }, - abortSignal, - timeoutInMs, - ); - return sendDtmfEventResult; - }, + ...result, }; return sendDtmfTonesResult; } @@ -623,7 +469,7 @@ export class CallMedia { operationContext: options.operationContext !== undefined ? options.operationContext : undefined, operationCallbackUri: - options.operationCallbackUri !== undefined ? options.operationCallbackUri : undefined, + options.operationCallbackUrl !== undefined ? options.operationCallbackUrl : undefined, }; return this.callMedia.hold(this.callConnectionId, holdRequest); } @@ -646,54 +492,6 @@ export class CallMedia { return this.callMedia.unhold(this.callConnectionId, unholdRequest); } - /** - * Put participant on hold while playing audio. - * - * @deprecated - This operations is deprecated, please use hold instead. - * @param targetParticipant - The targets to play to. - * @param playSource - A PlaySource representing the source to play. - * @param operationContext - Operation Context. - * @param operationCallbackUri - Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. - */ - public async startHoldMusic( - targetParticipant: CommunicationIdentifier, - playSource: FileSource | TextSource | SsmlSource | undefined = undefined, - loop?: boolean, - operationContext: string | undefined = undefined, - operationCallbackUri: string | undefined = undefined, - ): Promise { - const holdRequest: StartHoldMusicRequest = { - targetParticipant: serializeCommunicationIdentifier(targetParticipant), - playSourceInfo: - playSource !== undefined ? this.createPlaySourceInternal(playSource) : undefined, - operationContext: operationContext, - operationCallbackUri: operationCallbackUri, - }; - if (loop) { - // Do nothing. Added since it needs to be backwards compatible. - } - return this.callMedia.startHoldMusic(this.callConnectionId, holdRequest); - } - - /** - * Remove participant from hold. - * - * @deprecated - This operations is deprecated, please use unhold instead. - * @param targetParticipant - The targets to play to. - * @param operationContext - Operation Context. - */ - public async stopHoldMusic( - targetParticipant: CommunicationIdentifier, - operationContext: string | undefined = undefined, - ): Promise { - const unholdRequest: StopHoldMusicRequest = { - targetParticipant: serializeCommunicationIdentifier(targetParticipant), - operationContext: operationContext, - }; - - return this.callMedia.stopHoldMusic(this.callConnectionId, unholdRequest); - } - /** * Starts transcription in the call * @param options - Additional attributes for start transcription. @@ -701,7 +499,8 @@ export class CallMedia { public async startTranscription(options: StartTranscriptionOptions = {}): Promise { const startTranscriptionRequest: StartTranscriptionRequest = { locale: options.locale, - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, + speechRecognitionModelEndpointId: options.speechRecognitionModelEndpointId, }; return this.callMedia.startTranscription(this.callConnectionId, startTranscriptionRequest, {}); } @@ -712,7 +511,7 @@ export class CallMedia { */ public async stopTranscription(options: StopTranscriptionOptions = {}): Promise { const stopTranscriptionRequest: StopTranscriptionRequest = { - operationContext: options.operationContext ? options.operationContext : randomUUID(), + operationContext: options.operationContext, }; return this.callMedia.stopTranscription(this.callConnectionId, stopTranscriptionRequest, {}); } @@ -721,9 +520,14 @@ export class CallMedia { * Update transcription language. * @param locale - Defines new locale for transcription. */ - public async updateTranscription(locale: string): Promise { + public async updateTranscription( + locale: string, + options?: UpdateTranscriptionOptions, + ): Promise { const updateTranscriptionRequest: UpdateTranscriptionRequest = { locale: locale, + speechRecognitionModelEndpointId: options?.speechRecognitionModelEndpointId, + operationContext: options?.operationContext, }; return this.callMedia.updateTranscription( this.callConnectionId, @@ -731,4 +535,36 @@ export class CallMedia { {}, ); } + + /** + * Starts media streaming in the call. + * @param options - Additional attributes for start media streaming. + */ + public async startMediaStreaming(options: StartMediaStreamingOptions = {}): Promise { + const startMediaStreamingRequest: StartMediaStreamingRequest = { + operationContext: options.operationContext, + operationCallbackUri: options.operationCallbackUrl, + }; + return this.callMedia.startMediaStreaming( + this.callConnectionId, + startMediaStreamingRequest, + options, + ); + } + + /** + * Stops media streaming in the call. + * @param options - Additional attributes for stop media streaming. + */ + public async stopMediaStreaming(options: StopMediaStreamingOptions = {}): Promise { + const stopMediaStreamingRequest: StopMediaStreamingRequest = { + operationCallbackUri: options.operationCallbackUrl, + operationContext: options?.operationContext, + }; + return this.callMedia.stopMediaStreaming( + this.callConnectionId, + stopMediaStreamingRequest, + options, + ); + } } diff --git a/sdk/communication/communication-call-automation/src/callRecording.ts b/sdk/communication/communication-call-automation/src/callRecording.ts index c02f240dee3e..4b83b62b7f82 100644 --- a/sdk/communication/communication-call-automation/src/callRecording.ts +++ b/sdk/communication/communication-call-automation/src/callRecording.ts @@ -1,12 +1,12 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. import { CallRecordingImpl } from "./generated/src/operations"; -import type { +import { CallAutomationApiClientOptionalParams, StartCallRecordingRequest, } from "./generated/src/models/index"; -import type { RecordingStateResult } from "./models/responses"; -import type { +import { RecordingStateResult } from "./models/responses"; +import { StartRecordingOptions, StopRecordingOptions, PauseRecordingOptions, @@ -19,9 +19,9 @@ import { communicationIdentifierModelConverter } from "./utli/converters"; import { ContentDownloaderImpl } from "./contentDownloader"; import * as fs from "fs"; import { randomUUID } from "@azure/core-util"; -import type { KeyCredential, TokenCredential } from "@azure/core-auth"; -import type { CallAutomationApiClient } from "./generated/src"; -import { createCustomCallAutomationApiClient } from "./credential/callAutomationAuthPolicy"; +import { KeyCredential, TokenCredential } from "@azure/core-auth"; +import { CallAutomationApiClient } from "./generated/src"; +import { createCommunicationAuthPolicy } from "@azure/communication-common"; /** * CallRecording class represents call recording related APIs. @@ -36,12 +36,9 @@ export class CallRecording { credential: KeyCredential | TokenCredential, options?: CallAutomationApiClientOptionalParams, ) { - this.callAutomationApiClient = createCustomCallAutomationApiClient( - credential, - options, - endpoint, - ); - + this.callAutomationApiClient = new CallAutomationApiClient(endpoint, options); + const authPolicy = createCommunicationAuthPolicy(credential); + this.callAutomationApiClient.pipeline.addPolicy(authPolicy); this.callRecordingImpl = new CallRecordingImpl(this.callAutomationApiClient); this.contentDownloader = new ContentDownloaderImpl(this.callAutomationApiClient); } @@ -85,6 +82,9 @@ export class CallRecording { if (options.callLocator.kind === "groupCallLocator") { startCallRecordingRequest.callLocator.kind = "groupCallLocator"; startCallRecordingRequest.callLocator.groupCallId = options.callLocator.id; + } else if (options.callLocator.kind === "roomCallLocator") { + startCallRecordingRequest.callLocator.kind = "roomCallLocator"; + startCallRecordingRequest.callLocator.roomId = options.callLocator.id; } else { startCallRecordingRequest.callLocator.kind = "serverCallLocator"; startCallRecordingRequest.callLocator.serverCallId = options.callLocator.id; diff --git a/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts b/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts deleted file mode 100644 index 753595b480e2..000000000000 --- a/sdk/communication/communication-call-automation/src/eventprocessor/callAutomationEventProcessor.ts +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { EventEmitter } from "events"; -import type { CallAutomationEvent } from "../models/events"; -import { parseCallAutomationEvent } from "../callAutomationEventParser"; -import type { AbortSignalLike } from "@azure/abort-controller"; - -/** - * Call Automation's EventProcessor for incoming events for ease of use. - */ -export class CallAutomationEventProcessor { - private readonly defaultTimeout = 240000; // 240 seconds in milliseconds - private readonly defaultEventBacklogTimeout = 5000; // 5 seconds in milliseconds - private readonly emitter = new EventEmitter(); - private readonly eventsBacklog: Array = []; - private readonly ongoingEvents: Map = new Map(); - - /** - * Process incoming events. Pass incoming events to get it processed to have other method like WaitForEventProcessor to function. - * @param event - Incoming CloudEvent object. - */ - public processEvents(event: string | Record | CallAutomationEvent): void { - if (event) { - let callAutomationEvent: CallAutomationEvent; - // parse the event if not parsed already - if (typeof event === "string" || Array.isArray(event)) { - callAutomationEvent = parseCallAutomationEvent( - (event as string) || (event as Record), - ); - } else { - callAutomationEvent = event as CallAutomationEvent; - } - - // add to eventbacklog - this.eventsBacklog.push(callAutomationEvent); - setTimeout(() => { - const index = this.eventsBacklog.indexOf(callAutomationEvent); - if (index !== -1) { - this.eventsBacklog.splice(index, 1); - } - }, this.defaultEventBacklogTimeout); - - // parse event if needed - this.emitter.emit("event", callAutomationEvent); - - // check if event is disconnect, remove all related items in memory - if (callAutomationEvent.kind === "CallDisconnected") { - // remove from ongoingevent list - for (const [key, evProcessor] of this.ongoingEvents.entries()) { - if (key.includes(callAutomationEvent.callConnectionId)) { - // Deregister the event listener - this.ongoingEvents.delete(key); - this.emitter.off("event", evProcessor); - } - } - } - } - } - - /** - * Wait for matching incoming event. This is blocking Call. Returns the CallAutomationEvent once it arrives in ProcessEvent method. - * @param predicate - Conditional Predicate for waiting on event. - * @param abortSignal - Abort signal to abort the operation. - * @param timeoutInMs - maximum timeout in milliseconds for the operation. - */ - public async waitForEventProcessor( - predicate: (event: CallAutomationEvent) => boolean, - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise { - const controller = new AbortController(); - if (!timeoutInMs) { - timeoutInMs = this.defaultTimeout; - } - - const filteredEvents = this.eventsBacklog.filter((event) => predicate(event)); - if (filteredEvents.length > 0) { - // item found - delete from the list and return the event - this.eventsBacklog.splice(0, this.eventsBacklog.length, ...filteredEvents); - return filteredEvents[0]; - } - - // await for this event to comeback - let eventAwaiter: (event: CallAutomationEvent) => void; - - const eventPromise = new Promise((resolve, reject) => { - // set abort signal - if (abortSignal) { - // If an external abortSignal is provided, link it with the controller. - abortSignal.addEventListener("abort", () => { - controller.abort(); - this.emitter.off("event", eventAwaiter); - reject(new Error("Abort: Operation was aborted.")); - }); - } - - // set timeout for this event - const timer = setTimeout(() => { - this.emitter.off("event", eventAwaiter); - reject(new Error("Timeout: Matching event did not arrive within timeout.")); - }, timeoutInMs); - - eventAwaiter = (event: CallAutomationEvent) => { - if (predicate(event)) { - // Deregister timer and the event listener - clearTimeout(timer); - this.emitter.off("event", eventAwaiter); - - // Resolve with the matching event - resolve(event); - } - }; - - // Register the event awaiter - this.emitter.on("event", eventAwaiter); - }); - - return eventPromise; - } - - /** - * Attach Ongoing EventProcessor for specific event for a call. - * @param eventTypeKind - Matching event. - * @param callConnectionId - CallConnectionId of the call. - * @param eventProcessor - Method that will execute once the matching event arrives. - */ - public async attachOngoingEventProcessor( - callConnectionId: string, - eventTypeKind: CallAutomationEvent["kind"], - eventProcessor: (event: CallAutomationEvent) => Promise, - ): Promise { - const eventAwaiter = (event: CallAutomationEvent) => { - if (event.callConnectionId === callConnectionId && event.kind === eventTypeKind) { - eventProcessor(event); - } - }; - // Register the event awaiter - this.emitter.on("event", eventAwaiter); - - // attach the ongoing event processor to the map - const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind); - this.ongoingEvents.set(uniqueId, eventAwaiter); - } - - /** - * Detach Ongoing EventProcessor for specific event. - * @param eventTypeKind - Matching event. - * @param callConnectionId - CallConnectionId of the call. - */ - public async detachOngoingEventProcessor( - callConnectionId: string, - eventTypeKind: CallAutomationEvent["kind"], - ): Promise { - const uniqueId = this.generateIdTypeKey(callConnectionId, eventTypeKind); - const value = this.ongoingEvents.get(uniqueId); - - if (value) { - // Deregister the event listener - this.ongoingEvents.delete(uniqueId); - this.emitter.off("event", value); - } - } - - private generateIdTypeKey(callConnectionId: string, eventType: string): string { - return `${callConnectionId}:${eventType}`; - } -} diff --git a/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts b/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts deleted file mode 100644 index 6acec873b3b6..000000000000 --- a/sdk/communication/communication-call-automation/src/eventprocessor/eventResponses.ts +++ /dev/null @@ -1,146 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import type { - AddParticipantSucceeded, - AddParticipantFailed, - CallConnected, - PlayCanceled, - RecognizeCanceled, - PlayCompleted, - PlayFailed, - RemoveParticipantSucceeded, - RemoveParticipantFailed, - SendDtmfTonesCompleted, - SendDtmfTonesFailed, - RecognizeCompleted, - RecognizeFailed, - CallTransferAccepted, - CallTransferFailed, - CancelAddParticipantSucceeded, - CancelAddParticipantFailed, - CreateCallFailed, - AnswerFailed, -} from "../models/events"; - -/** - * AddParticipant event result - */ -export interface AddParticipantEventResult { - /** returns true if add participant was successful */ - isSuccess: boolean; - - /** contains success event if the result was successful */ - successResult?: AddParticipantSucceeded; - - /** contains failure event if the result was failure */ - failureResult?: AddParticipantFailed; -} - -/** - * AnswerCall event result - */ -export interface AnswerCallEventResult { - /** returns true if answer call was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: CallConnected; - /** contains failure event if the result was failure */ - failureResult?: AnswerFailed; -} - -/** - * CancelAllMediaOperations event result - */ -export interface CancelAllMediaOperationsEventResult { - /** returns true if cancel all media was successful */ - isSuccess: boolean; - /** contains play cancel event if play media was canceled */ - playCanceledSuccessResult?: PlayCanceled; - /** contains recognize cancel event if recognize media was canceled */ - recognizeCanceledSuccessResult?: RecognizeCanceled; -} - -/** - * CreateCall event result - */ -export interface CreateCallEventResult { - /** returns true if create call was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: CallConnected; - /** contains failure event if the result was failure */ - failureResult?: CreateCallFailed; -} - -/** - * Play event result - */ -export interface PlayEventResult { - /** returns true if play was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: PlayCompleted; - /** contains failure event if the result was failure */ - failureResult?: PlayFailed; -} - -/** - * RemoveParticipant event result - */ -export interface RemoveParticipantEventResult { - /** returns true if remove participant was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: RemoveParticipantSucceeded; - /** contains failure event if the result was failure */ - failureResult?: RemoveParticipantFailed; -} - -/** - * SendDtmf event result - */ -export interface SendDtmfEventResult { - /** returns true if send dtmf was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: SendDtmfTonesCompleted; - /** contains failure event if the result was failure */ - failureResult?: SendDtmfTonesFailed; -} - -/** - * StartRecognizing event result - */ -export interface StartRecognizingEventResult { - /** returns true if recognize was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: RecognizeCompleted; - /** contains failure event if the result was failure */ - failureResult?: RecognizeFailed; -} - -/** - * TransferCallToParticipant event result - */ -export interface TransferCallToParticipantEventResult { - /** returns true if transfer call to participant was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: CallTransferAccepted; - /** contains failure event if the result was failure */ - failureResult?: CallTransferFailed; -} - -/** - * TransferCallToParticipant event result - */ -export interface CancelAddParticipantEventResult { - /** returns true if cancel add participant was successful */ - isSuccess: boolean; - /** contains success event if the result was successful */ - successResult?: CancelAddParticipantSucceeded; - /** contains failure event if the result was failure */ - failureResult?: CancelAddParticipantFailed; -} diff --git a/sdk/communication/communication-call-automation/src/generated/src/callAutomationApiClient.ts b/sdk/communication/communication-call-automation/src/generated/src/callAutomationApiClient.ts index 017c7964ea4f..f4419512f728 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/callAutomationApiClient.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/callAutomationApiClient.ts @@ -15,13 +15,11 @@ import { import { CallConnectionImpl, CallMediaImpl, - CallDialogImpl, CallRecordingImpl, } from "./operations"; import { CallConnection, CallMedia, - CallDialog, CallRecording, } from "./operationsInterfaces"; import * as Parameters from "./models/parameters"; @@ -38,6 +36,9 @@ import { RedirectCallOptionalParams, RejectCallRequest, RejectCallOptionalParams, + ConnectRequest, + ConnectOptionalParams, + ConnectResponse, } from "./models"; export class CallAutomationApiClient extends coreClient.ServiceClient { @@ -65,7 +66,7 @@ export class CallAutomationApiClient extends coreClient.ServiceClient { requestContentType: "application/json; charset=utf-8", }; - const packageDetails = `azsdk-js-communication-call-automation/1.3.0-beta.1`; + const packageDetails = `azsdk-js-communication-call-automation/1.3.0-beta.3`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -84,10 +85,9 @@ export class CallAutomationApiClient extends coreClient.ServiceClient { this.endpoint = endpoint; // Assigning values to Constant parameters - this.apiVersion = options.apiVersion || "2023-10-03-preview"; + this.apiVersion = options.apiVersion || "2024-11-15-preview"; this.callConnection = new CallConnectionImpl(this); this.callMedia = new CallMediaImpl(this); - this.callDialog = new CallDialogImpl(this); this.callRecording = new CallRecordingImpl(this); this.addCustomApiVersionPolicy(options.apiVersion); } @@ -180,9 +180,23 @@ export class CallAutomationApiClient extends coreClient.ServiceClient { ); } + /** + * Create a connection to a CallLocator. + * @param connectRequest The create connection request. + * @param options The options parameters. + */ + connect( + connectRequest: ConnectRequest, + options?: ConnectOptionalParams, + ): Promise { + return this.sendOperationRequest( + { connectRequest, options }, + connectOperationSpec, + ); + } + callConnection: CallConnection; callMedia: CallMedia; - callDialog: CallDialog; callRecording: CallRecording; } // Operation Specifications @@ -276,3 +290,26 @@ const rejectCallOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; +const connectOperationSpec: coreClient.OperationSpec = { + path: "/calling/callConnections:connect", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.CallConnectionPropertiesInternal, + }, + default: { + bodyMapper: Mappers.CommunicationErrorResponse, + }, + }, + requestBody: Parameters.connectRequest, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.endpoint], + headerParameters: [ + Parameters.contentType, + Parameters.accept, + Parameters.repeatabilityRequestID, + Parameters.repeatabilityFirstSent, + ], + mediaType: "json", + serializer, +}; diff --git a/sdk/communication/communication-call-automation/src/generated/src/models/index.ts b/sdk/communication/communication-call-automation/src/generated/src/models/index.ts index 8033a147ae4d..86e9009869b9 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/models/index.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/models/index.ts @@ -8,12 +8,6 @@ import * as coreClient from "@azure/core-client"; -export type BaseDialogUnion = - | BaseDialog - | AzureOpenAIDialog - | PowerVirtualAgentsDialog; -export type DialogUpdateBaseUnion = DialogUpdateBase | AzureOpenAIDialogUpdate; - /** The request payload for creating the call. */ export interface CreateCallRequest { /** The targets of the call. */ @@ -31,14 +25,12 @@ export interface CreateCallRequest { operationContext?: string; /** The callback URI. */ callbackUri: string; - /** Media Streaming Configuration. */ - mediaStreamingConfiguration?: MediaStreamingConfiguration; - /** Live Transcription Configuration. */ - transcriptionConfiguration?: TranscriptionConfiguration; /** AI options for the call. */ callIntelligenceOptions?: CallIntelligenceOptionsInternal; - /** Used by customer to send custom calling context to targets */ - customCallingContext?: CustomCallingContextInternal; + /** Media Streaming Options. */ + mediaStreamingOptions?: MediaStreamingOptions; + /** Transcription Options. */ + transcriptionOptions?: TranscriptionOptions; } /** Identifies a participant in Azure Communication services. A participant is, for example, a phone number or an Azure communication user. This model is polymorphic: Apart from kind and rawId, at most one further property may be set which must match the kind enum value. */ @@ -87,8 +79,14 @@ export interface MicrosoftTeamsAppIdentifierModel { cloud?: CommunicationCloudEnvironmentModel; } +/** AI options for the call. */ +export interface CallIntelligenceOptionsInternal { + /** The identifier of the Cognitive Service resource assigned to this call. */ + cognitiveServicesEndpoint?: string; +} + /** Configuration of Media streaming. */ -export interface MediaStreamingConfiguration { +export interface MediaStreamingOptions { /** Transport URL for media streaming */ transportUrl: string; /** The type of transport to be used for media streaming, eg. Websocket */ @@ -99,31 +97,26 @@ export interface MediaStreamingConfiguration { audioChannelType: MediaStreamingAudioChannelType; /** Determines if the media streaming should be started immediately after call is answered or not. */ startMediaStreaming?: boolean; + /** A value indicating whether bidirectional streaming is enabled. */ + enableBidirectional?: boolean; + /** Specifies the audio format used for encoding, including sample rate and channel type. */ + audioFormat?: AudioFormat; } /** Configuration of live transcription. */ -export interface TranscriptionConfiguration { +export interface TranscriptionOptions { /** Transport URL for live transcription */ transportUrl: string; /** The type of transport to be used for live transcription, eg. Websocket */ transportType: TranscriptionTransportType; /** Defines the locale for the data e.g en-CA, en-AU */ locale: string; + /** Endpoint where the custom model was deployed. */ + speechRecognitionModelEndpointId?: string; /** Determines if the transcription should be started immediately after call is answered or not. */ startTranscription: boolean; -} - -/** AI options for the call. */ -export interface CallIntelligenceOptionsInternal { - /** The identifier of the Cognitive Service resource assigned to this call. */ - cognitiveServicesEndpoint?: string; -} - -export interface CustomCallingContextInternal { - /** Dictionary of */ - voipHeaders?: { [propertyName: string]: string }; - /** Dictionary of */ - sipHeaders?: { [propertyName: string]: string }; + /** Enables intermediate results for the transcribed speech. */ + enableIntermediateResults?: boolean; } /** Properties of a call connection */ @@ -138,10 +131,6 @@ export interface CallConnectionPropertiesInternal { callConnectionState?: CallConnectionStateModel; /** The callback URI. */ callbackUri?: string; - /** SubscriptionId for media streaming */ - mediaSubscriptionId?: string; - /** SubscriptionId for transcription */ - dataSubscriptionId?: string; /** * The source caller Id, a phone number, that's shown to the PSTN participant being invited. * Required only when calling a PSTN callee. @@ -155,10 +144,34 @@ export interface CallConnectionPropertiesInternal { correlationId?: string; /** Identity of the answering entity. Only populated when identity is provided in the request. */ answeredBy?: CommunicationUserIdentifierModel; + /** The state of media streaming subscription for the call */ + mediaStreamingSubscription?: MediaStreamingSubscription; + /** Transcription Subscription. */ + transcriptionSubscription?: TranscriptionSubscription; /** Identity of the original Pstn target of an incoming Call. Only populated when the original target is a Pstn number. */ answeredFor?: PhoneNumberIdentifierModel; } +/** Media streaming Subscription Object. */ +export interface MediaStreamingSubscription { + /** Subscription Id. */ + id?: string; + /** Media streaming subscription state. */ + state?: MediaStreamingSubscriptionState; + /** Subscribed media streaming content types. */ + subscribedContentTypes?: MediaStreamingContentType[]; +} + +/** Transcription Subscription Object. */ +export interface TranscriptionSubscription { + /** Subscription Id. */ + id?: string; + /** Transcription subscription state. */ + state?: TranscriptionSubscriptionState; + /** Subscribed transcription result types. */ + subscribedResultStates?: TranscriptionResultState[]; +} + /** The Communication Services error. */ export interface CommunicationErrorResponse { /** The Communication Services error. */ @@ -196,14 +209,14 @@ export interface AnswerCallRequest { callbackUri: string; /** A customer set value used to track the answering of a call. */ operationContext?: string; - /** Media Streaming Configuration. */ - mediaStreamingConfiguration?: MediaStreamingConfiguration; - /** Live Transcription Configuration. */ - transcriptionConfiguration?: TranscriptionConfiguration; /** AI options for the call. */ callIntelligenceOptions?: CallIntelligenceOptionsInternal; /** The identifier of the call automation entity which answers the call */ answeredBy?: CommunicationUserIdentifierModel; + /** Media Streaming Options. */ + mediaStreamingOptions?: MediaStreamingOptions; + /** Transcription Options. */ + transcriptionOptions?: TranscriptionOptions; } /** The request payload for redirecting the call. */ @@ -212,8 +225,6 @@ export interface RedirectCallRequest { incomingCallContext: string; /** The target identity to redirect the call to. */ target: CommunicationIdentifierModel; - /** Used by customer to send custom calling context to targets */ - customCallingContext?: CustomCallingContextInternal; } /** The request payload for rejecting the call. */ @@ -224,12 +235,38 @@ export interface RejectCallRequest { callRejectReason?: CallRejectReason; } +/** The request payload for creating a connection to a CallLocator. */ +export interface ConnectRequest { + /** The call locator. */ + callLocator: CallLocator; + /** The callback URI. */ + callbackUri: string; + /** Used by customers to correlate the request to the response event. */ + operationContext?: string; + /** AI options for the call. */ + callIntelligenceOptions?: CallIntelligenceOptionsInternal; + /** Media Streaming Configuration. */ + mediaStreamingOptions?: MediaStreamingOptions; + /** Live Transcription Configuration. */ + transcriptionOptions?: TranscriptionOptions; +} + +/** The locator used for joining or taking action on a call */ +export interface CallLocator { + /** The group call id */ + groupCallId?: string; + /** The server call id. */ + serverCallId?: string; + /** The Acs room id */ + roomId?: string; + /** The call locator kind. */ + kind?: CallLocatorKind; +} + /** The request payload for transferring call to a participant. */ export interface TransferToParticipantRequest { /** The identity of the target where call should be transferred to. */ targetParticipant: CommunicationIdentifierModel; - /** Used by customer to send custom calling context to targets */ - customCallingContext?: CustomCallingContextInternal; /** Used by customers when calling mid-call actions to correlate the request to the response event. */ operationContext?: string; /** Transferee is the participant who is transferred away. */ @@ -239,10 +276,20 @@ export interface TransferToParticipantRequest { * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. */ operationCallbackUri?: string; + /** Used by customer to send custom calling context to targets */ + customCallingContext?: CustomCallingContextInternal; /** The source caller Id, a phone number, that will be used as the transferor's caller Id when transferring a call to a Pstn target. */ sourceCallerIdNumber?: PhoneNumberIdentifierModel; } +/** The custom calling context which will be sent to the target */ +export interface CustomCallingContextInternal { + /** Custom calling context VoiP headers */ + voipHeaders?: { [propertyName: string]: string }; + /** Custom calling context SIP headers */ + sipHeaders?: { [propertyName: string]: string }; +} + /** The response payload for transferring the call. */ export interface TransferCallResponse { /** The operation context provided by client. */ @@ -257,6 +304,8 @@ export interface PlayRequest { * Plays to everyone in the call when not provided. */ playTo?: CommunicationIdentifierModel[]; + /** If set play can barge into other existing queued-up/currently-processing requests. */ + interruptCallMediaOperation?: boolean; /** Defines options for playing the audio. */ playOptions?: PlayOptionsInternal; /** The value to identify context of the operation. */ @@ -315,13 +364,13 @@ export interface SsmlSourceInternal { export interface PlayOptionsInternal { /** The option to play the provided audio source in loop when set to true */ loop: boolean; - /** If set play can barge into other existing queued-up/currently-processing requests. */ - interruptCallMediaOperation?: boolean; } export interface StartTranscriptionRequest { /** Defines Locale for the transcription e,g en-US */ locale?: string; + /** Endpoint where the custom model was deployed. */ + speechRecognitionModelEndpointId?: string; /** The value to identify context of the operation. */ operationContext?: string; } @@ -331,6 +380,15 @@ export interface StopTranscriptionRequest { operationContext?: string; } +export interface UpdateTranscriptionRequest { + /** Sets new locale for transcription. */ + locale: string; + /** Sets Endpoint id where the custom model was deployed. */ + speechRecognitionModelEndpointId?: string; + /** The value to identify context of the operation. */ + operationContext?: string; +} + export interface RecognizeRequest { /** Determines the type of the recognition. */ recognizeInputType: RecognizeInputType; @@ -425,11 +483,6 @@ export interface SendDtmfTonesResult { operationContext?: string; } -export interface UpdateTranscriptionRequest { - /** Defines new locale for transcription. */ - locale: string; -} - /** The request payload for holding participant from the call. */ export interface HoldRequest { /** Participant to be held from the call. */ @@ -456,32 +509,6 @@ export interface UnholdRequest { operationContext?: string; } -/** The request payload for holding participant from the call. */ -export interface StartHoldMusicRequest { - /** Participant to be held from the call. */ - targetParticipant: CommunicationIdentifierModel; - /** Prompt to play while in hold. */ - playSourceInfo?: PlaySourceInternal; - /** Used by customers when calling mid-call actions to correlate the request to the response event. */ - operationContext?: string; - /** - * Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. - * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. - */ - operationCallbackUri?: string; -} - -/** The request payload for holding participant from the call. */ -export interface StopHoldMusicRequest { - /** - * Participants to be hold from the call. - * Only ACS Users are supported. - */ - targetParticipant: CommunicationIdentifierModel; - /** Used by customers when calling mid-call actions to correlate the request to the response event. */ - operationContext?: string; -} - export interface StartMediaStreamingRequest { /** * Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. @@ -498,55 +525,10 @@ export interface StopMediaStreamingRequest { * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. */ operationCallbackUri?: string; -} - -export interface StartDialogRequest { - /** Defines the dialog. */ - dialog: BaseDialogUnion; - /** - * Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. - * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. - */ - operationCallbackUri?: string; - /** The value to identify context of the operation. */ - operationContext?: string; -} - -export interface BaseDialog { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "azureOpenAI" | "powerVirtualAgents"; - /** Dialog context. */ - context: { [propertyName: string]: Record }; -} - -export interface DialogStateResponse { - /** The dialog ID. */ - dialogId?: string; - /** Defines dialog. */ - dialog?: BaseDialogUnion; - /** The value to identify context of the operation. */ - operationContext?: string; -} - -export interface UpdateDialogRequest { - /** Dialog context. */ - dialog: DialogUpdateBaseUnion; - /** - * Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. - * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. - */ - operationCallbackUri?: string; /** The value to identify context of the operation. */ operationContext?: string; } -export interface DialogUpdateBase { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "azureOpenAI"; - /** Dialog context. */ - context?: { [propertyName: string]: Record }; -} - /** The response payload for getting participants of the call. */ export interface GetParticipantsResponse { /** List of the current participants in the call. */ @@ -586,13 +568,13 @@ export interface AddParticipantRequest { invitationTimeoutInSeconds?: number; /** Used by customers when calling mid-call actions to correlate the request to the response event. */ operationContext?: string; - /** Used by customer to send custom calling context to targets */ - customCallingContext?: CustomCallingContextInternal; /** * Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. */ operationCallbackUri?: string; + /** Used by customer to send custom calling context to targets */ + customCallingContext?: CustomCallingContextInternal; } /** The response payload for adding participants to the call. */ @@ -641,23 +623,6 @@ export interface MuteParticipantsResult { operationContext?: string; } -/** The request payload for unmuting participant from the call. */ -export interface UnmuteParticipantsRequest { - /** - * Participants to be unmuted from the call. - * Only ACS Users are supported. - */ - targetParticipants: CommunicationIdentifierModel[]; - /** Used by customers when calling mid-call actions to correlate the request to the response event. */ - operationContext?: string; -} - -/** The response payload for unmuting participants from the call. */ -export interface UnmuteParticipantsResponse { - /** The operation context provided by client. */ - operationContext?: string; -} - /** Request payload for cancelling add participant request. */ export interface CancelAddParticipantRequest { /** Invitation ID used to add a participant. */ @@ -705,20 +670,10 @@ export interface StartCallRecordingRequest { * /// */ channelAffinity?: ChannelAffinity[]; - /** Optional property to specify location where recording will be stored */ - recordingStorage?: RecordingStorage; /** When set to true will start recording in Pause mode, which can be resumed. */ pauseOnStart?: boolean; -} - -/** The locator used for joining or taking action on a call. */ -export interface CallLocator { - /** The group call id */ - groupCallId?: string; - /** The server call id. */ - serverCallId?: string; - /** The call locator kind. */ - kind?: CallLocatorKind; + /** Optional property to specify location where recording will be stored */ + recordingStorage?: RecordingStorage; } /** Channel affinity for a participant */ @@ -745,68 +700,23 @@ export interface RecordingStateResponse { recordingKind?: RecordingKind; } -export interface CollectTonesResult { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly tones?: Tone[]; -} - -export interface DtmfResult { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly tones?: Tone[]; -} - -/** The speech recognition status as a result. */ -export interface SpeechResult { - /** The recognized speech in string. */ - speech?: string; -} - -export interface ChoiceResult { - /** Label is the primary identifier for the choice detected */ - label?: string; - /** - * Phrases are set to the value if choice is selected via phrase detection. - * If Dtmf input is recognized, then Label will be the identifier for the choice detected and phrases will be set to null - */ - recognizedPhrase?: string; -} - -export interface DialogCompleted { - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The failed to add participants event. */ +export interface AddParticipantFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Participant */ + participant?: CommunicationIdentifierModel; } -export interface RestResultInformation { +export interface ResultInformation { /** Code of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected. */ code?: number; /** Subcode of the current result. This can be helpful to Call Automation team to troubleshoot the issue if this result was unexpected. */ @@ -815,1395 +725,577 @@ export interface RestResultInformation { message?: string; } -export interface DialogFailed { - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogConsent { - /** - * UserConsent data from the Conversation Conductor - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly userConsent?: UserConsent; - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The participants successfully added event. */ +export interface AddParticipantSucceeded { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Participant */ + participant?: CommunicationIdentifierModel; } -export interface UserConsent { - recording?: number; -} - -export interface DialogStarted { - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogHangup { - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Ivr Context - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly ivrContext?: Record; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogTransfer { - /** - * Transfer type - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transferType?: string; - /** - * Transfer destination - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transferDestination?: string; - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Ivr Context - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly ivrContext?: Record; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogLanguageChange { - /** - * Selected Language - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly selectedLanguage?: string; - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Ivr Context - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly ivrContext?: Record; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogSensitivityUpdate { - /** - * SensitiveMask - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly sensitiveMask?: boolean; - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface DialogUpdated { - /** - * Used by customers when calling answerCall action to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** Determines the type of the dialog. */ - dialogInputType?: DialogInputType; - /** - * Dialog ID - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dialogId?: string; - /** - * Ivr Context - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly ivrContext?: Record; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface TranscriptionUpdate { - transcriptionStatus?: TranscriptionStatus; - transcriptionStatusDetails?: TranscriptionStatusDetails; -} - -export interface MediaStreamingFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for audio streaming update with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly mediaStreamingUpdate?: MediaStreamingUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface MediaStreamingUpdate { - contentType?: string; - mediaStreamingStatus?: MediaStreamingStatus; - mediaStreamingStatusDetails?: MediaStreamingStatusDetails; -} - -export interface MediaStreamingStarted { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for audio streaming update with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly mediaStreamingUpdate?: MediaStreamingUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface MediaStreamingStopped { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for audio streaming update with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly mediaStreamingUpdate?: MediaStreamingUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -/** The participant successfully added event. */ -export interface RestAddParticipantSucceeded { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Participant - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly participant?: CommunicationIdentifierModel; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -/** The failed to add participant event. */ -export interface RestAddParticipantFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Participant - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly participant?: CommunicationIdentifierModel; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -/** The participant removed event. */ -export interface RestRemoveParticipantSucceeded { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Participant - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly participant?: CommunicationIdentifierModel; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -/** The failed to remove participant event. */ -export interface RestRemoveParticipantFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Participant - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly participant?: CommunicationIdentifierModel; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -/** The call connected event. */ -export interface RestCallConnected { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The call connected event. */ +export interface CallConnected { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } /** The call disconnected event. */ -export interface RestCallDisconnected { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface CallDisconnected { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } /** The call transfer accepted event. */ -export interface RestCallTransferAccepted { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Target who the call is transferred to. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transferTarget?: CommunicationIdentifierModel; - /** - * the participant who is being transferred away. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transferee?: CommunicationIdentifierModel; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface CallTransferAccepted { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Target who the call is transferred to. */ + transferTarget?: CommunicationIdentifierModel; + /** the participant who is being transferred away. */ + transferee?: CommunicationIdentifierModel; } /** The call transfer failed event. */ -export interface RestCallTransferFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestRecordingStateChanged { - /** - * The call recording id - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly recordingId?: string; - state?: RecordingState; - /** - * The time of the recording started - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly startDateTime?: Date; - recordingKind?: RecordingKind; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface CallTransferFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } /** The participants updated in a call event. */ -export interface RestParticipantsUpdated { - /** - * The list of participants in the call. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly participants?: CallParticipantInternal[]; - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sequenceNumber?: number; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestPlayCompleted { - /** - * Result information defines the code, subcode and message - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestPlayFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Indicates the index of the failed play source. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly failedPlaySourceIndex?: number; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestPlayCanceled { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestRecognizeCompleted { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Result information defines the code, subcode and message - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Determines the sub-type of the recognize operation. - * In case of cancel operation the this field is not set and is returned empty - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly recognitionType?: RecognitionType; - /** - * Defines the result for RecognitionType = Dtmf - * Would be replaced by DtmfResult after server sdk renewed - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly collectTonesResult?: CollectTonesResult; - /** - * Defines the result for RecognitionType = Dtmf - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly dtmfResult?: DtmfResult; - /** - * Defines the result for RecognitionType = Speech and SpeechOrDtmf - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly speechResult?: SpeechResult; - /** - * Defines the result for RecognitionType = Choices - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly choiceResult?: ChoiceResult; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; -} - -export interface RestRecognizeFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Indicates the index of the failed play source. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly failedPlaySourceIndex?: number; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface ParticipantsUpdated { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** The Sequence Number of the event */ + sequenceNumber?: number; + /** The list of participants in the call. */ + participants?: CallParticipantInternal[]; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestRecognizeCanceled { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The participant removed event. */ +export interface RemoveParticipantSucceeded { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Participant */ + participant?: CommunicationIdentifierModel; } -export interface RestContinuousDtmfRecognitionToneReceived { - /** - * Result information defines the code, subcode and message - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * The sequence id which can be used to determine if the same tone was played multiple times or if any tones were missed. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly sequenceId?: number; - tone?: Tone; - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The failed to remove participant event. */ +export interface RemoveParticipantFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Participant */ + participant?: CommunicationIdentifierModel; } -export interface RestContinuousDtmfRecognitionToneFailed { - /** - * Result information defines the code, subcode and message - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** Successful cancel add participant event. */ +export interface CancelAddParticipantSucceeded { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Invitation ID used to cancel the request. */ + invitationId?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -/** Call connection ID. */ -export interface RestContinuousDtmfRecognitionStopped { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code/sub-code and message from NGC services. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** Failed cancel add participant event. */ +export interface CancelAddParticipantFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Invitation ID used to cancel the request. */ + invitationId?: string; } -export interface RestSendDtmfTonesCompleted { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The failed to answer call event. */ +export interface AnswerFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestSendDtmfTonesFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The create call failed event. */ +export interface CreateCallFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -/** Successful cancel add participant event. */ -export interface RestCancelAddParticipantSucceeded { - /** - * Invitation ID used to cancel the request. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly invitationId?: string; - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** The ConnectFailed event. */ +export interface ConnectFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -/** Failed cancel add participant event. */ -export interface RestCancelAddParticipantFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Invitation ID used to cancel the request. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly invitationId?: string; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; +export interface RecordingStateChanged { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; /** - * Server call ID. + * The call recording id * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverCallId?: string; + readonly recordingId?: string; + state?: RecordingState; /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. + * The time of the recording started * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly correlationId?: string; + readonly startDateTime?: Date; + recordingKind?: RecordingKind; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestTranscriptionStarted { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for TranscriptionUpdate with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transcriptionUpdate?: TranscriptionUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +/** Play started event. */ +export interface PlayStarted { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestTranscriptionStopped { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for TranscriptionUpdate with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transcriptionUpdate?: TranscriptionUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface PlayCompleted { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestTranscriptionUpdated { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for TranscriptionUpdate with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transcriptionUpdate?: TranscriptionUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; +export interface PlayFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Contains the index of the failed play source. */ + failedPlaySourceIndex?: number; +} + +export interface PlayCanceled { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface RecognizeCompleted { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. + * Determines the sub-type of the recognize operation. + * In case of cancel operation the this field is not set and is returned empty */ - readonly serverCallId?: string; + recognitionType?: RecognitionType; + /** Defines the result for RecognitionType = Dtmf */ + dtmfResult?: DtmfResult; + /** Defines the result for RecognitionType = Choices */ + choiceResult?: ChoiceResult; /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. + * Defines the result for RecognitionType = Speech and SpeechOrDtmf * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly correlationId?: string; + readonly speechResult?: SpeechResult; } -export interface RestTranscriptionFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Defines the result for TranscriptionUpdate with the current status and the details about the status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly transcriptionUpdate?: TranscriptionUpdate; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; - /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationId?: string; +export interface DtmfResult { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly tones?: Tone[]; } -/** The CreateCallFailed event */ -export interface RestCreateCallFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; - /** - * Call connection ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly callConnectionId?: string; - /** - * Server call ID. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly serverCallId?: string; +export interface ChoiceResult { + /** Label is the primary identifier for the choice detected */ + label?: string; /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. - * NOTE: This property will not be serialized. It can only be populated by the server. + * Phrases are set to the value if choice is selected via phrase detection. + * If Dtmf input is recognized, then Label will be the identifier for the choice detected and phrases will be set to null */ - readonly correlationId?: string; + recognizedPhrase?: string; } -/** AnswerFailed event */ -export interface RestAnswerFailed { - /** - * Used by customers when calling mid-call actions to correlate the request to the response event. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationContext?: string; - /** - * Contains the resulting SIP code, sub-code and message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resultInformation?: RestResultInformation; +/** The speech status as a result. */ +export interface SpeechResult { + /** The recognized speech in string. */ + speech?: string; +} + +export interface RecognizeFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Contains the index of the failed play source. */ + failedPlaySourceIndex?: number; +} + +export interface RecognizeCanceled { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface ContinuousDtmfRecognitionToneFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; +} + +export interface ContinuousDtmfRecognitionToneReceived { /** - * Call connection ID. + * The sequence id which can be used to determine if the same tone was played multiple times or if any tones were missed. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly callConnectionId?: string; + readonly sequenceId?: number; + tone?: Tone; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface ContinuousDtmfRecognitionStopped { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface SendDtmfTonesCompleted { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface SendDtmfTonesFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface MediaStreamingFailed { /** - * Server call ID. + * Defines the result for MediaStreamingUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverCallId?: string; + readonly mediaStreamingUpdate?: MediaStreamingUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface MediaStreamingUpdate { + contentType?: string; + mediaStreamingStatus?: MediaStreamingStatus; + mediaStreamingStatusDetails?: MediaStreamingStatusDetails; +} + +export interface MediaStreamingStarted { /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. + * Defines the result for MediaStreamingUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly correlationId?: string; + readonly mediaStreamingUpdate?: MediaStreamingUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } -export interface RestHoldFailed { +export interface MediaStreamingStopped { /** - * Used by customers when calling mid-call actions to correlate the request to the response event. + * Defines the result for MediaStreamingUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly operationContext?: string; + readonly mediaStreamingUpdate?: MediaStreamingUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface HoldFailed { + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface TranscriptionFailed { /** - * Contains the resulting SIP code, sub-code and message. + * Defines the result for TranscriptionUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resultInformation?: RestResultInformation; + readonly transcriptionUpdate?: TranscriptionUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface TranscriptionUpdate { + transcriptionStatus?: TranscriptionStatus; + transcriptionStatusDetails?: TranscriptionStatusDetails; +} + +export interface TranscriptionStarted { /** - * Call connection ID. + * Defines the result for TranscriptionUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly callConnectionId?: string; + readonly transcriptionUpdate?: TranscriptionUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface TranscriptionStopped { /** - * Server call ID. + * Defines the result for TranscriptionUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverCallId?: string; + readonly transcriptionUpdate?: TranscriptionUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; +} + +export interface TranscriptionUpdated { /** - * Correlation ID for event to call correlation. Also called ChainId for skype chain ID. + * Defines the result for TranscriptionUpdate with the current status and the details about the status * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly correlationId?: string; -} - -/** Azure Open AI Dialog */ -export interface AzureOpenAIDialog extends BaseDialog { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "azureOpenAI"; -} - -/** Power Virtual Agents Dialog */ -export interface PowerVirtualAgentsDialog extends BaseDialog { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "powerVirtualAgents"; - /** Bot identifier. */ - botAppId: string; - /** Language. */ - language?: string; -} - -/** Azure Open AI Dialog for UpdateDialog API Call */ -export interface AzureOpenAIDialogUpdate extends DialogUpdateBase { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "azureOpenAI"; + readonly transcriptionUpdate?: TranscriptionUpdate; + /** Call connection ID. */ + callConnectionId?: string; + /** Server call ID. */ + serverCallId?: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId?: string; + /** Used by customers when calling mid-call actions to correlate the request to the response event. */ + operationContext?: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; } /** Known values of {@link CommunicationIdentifierModelKind} that the service accepts. */ @@ -2302,6 +1394,24 @@ export enum KnownMediaStreamingAudioChannelType { */ export type MediaStreamingAudioChannelType = string; +/** Known values of {@link AudioFormat} that the service accepts. */ +export enum KnownAudioFormat { + /** Pcm16KMono */ + Pcm16KMono = "Pcm16KMono", + /** Pcm24KMono */ + Pcm24KMono = "Pcm24KMono", +} + +/** + * Defines values for AudioFormat. \ + * {@link KnownAudioFormat} can be used interchangeably with AudioFormat, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Pcm16KMono**: Pcm16KMono \ + * **Pcm24KMono**: Pcm24KMono + */ +export type AudioFormat = string; + /** Known values of {@link TranscriptionTransportType} that the service accepts. */ export enum KnownTranscriptionTransportType { /** Websocket */ @@ -2315,40 +1425,100 @@ export enum KnownTranscriptionTransportType { * ### Known values supported by the service * **websocket** */ -export type TranscriptionTransportType = string; +export type TranscriptionTransportType = string; + +/** Known values of {@link CallConnectionStateModel} that the service accepts. */ +export enum KnownCallConnectionStateModel { + /** Unknown */ + Unknown = "unknown", + /** Connecting */ + Connecting = "connecting", + /** Connected */ + Connected = "connected", + /** Transferring */ + Transferring = "transferring", + /** TransferAccepted */ + TransferAccepted = "transferAccepted", + /** Disconnecting */ + Disconnecting = "disconnecting", + /** Disconnected */ + Disconnected = "disconnected", +} + +/** + * Defines values for CallConnectionStateModel. \ + * {@link KnownCallConnectionStateModel} can be used interchangeably with CallConnectionStateModel, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **unknown** \ + * **connecting** \ + * **connected** \ + * **transferring** \ + * **transferAccepted** \ + * **disconnecting** \ + * **disconnected** + */ +export type CallConnectionStateModel = string; + +/** Known values of {@link MediaStreamingSubscriptionState} that the service accepts. */ +export enum KnownMediaStreamingSubscriptionState { + /** Disabled */ + Disabled = "disabled", + /** Inactive */ + Inactive = "inactive", + /** Active */ + Active = "active", +} + +/** + * Defines values for MediaStreamingSubscriptionState. \ + * {@link KnownMediaStreamingSubscriptionState} can be used interchangeably with MediaStreamingSubscriptionState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **disabled** \ + * **inactive** \ + * **active** + */ +export type MediaStreamingSubscriptionState = string; + +/** Known values of {@link TranscriptionSubscriptionState} that the service accepts. */ +export enum KnownTranscriptionSubscriptionState { + /** Disabled */ + Disabled = "disabled", + /** Inactive */ + Inactive = "inactive", + /** Active */ + Active = "active", +} + +/** + * Defines values for TranscriptionSubscriptionState. \ + * {@link KnownTranscriptionSubscriptionState} can be used interchangeably with TranscriptionSubscriptionState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **disabled** \ + * **inactive** \ + * **active** + */ +export type TranscriptionSubscriptionState = string; -/** Known values of {@link CallConnectionStateModel} that the service accepts. */ -export enum KnownCallConnectionStateModel { - /** Unknown */ - Unknown = "unknown", - /** Connecting */ - Connecting = "connecting", - /** Connected */ - Connected = "connected", - /** Transferring */ - Transferring = "transferring", - /** TransferAccepted */ - TransferAccepted = "transferAccepted", - /** Disconnecting */ - Disconnecting = "disconnecting", - /** Disconnected */ - Disconnected = "disconnected", +/** Known values of {@link TranscriptionResultState} that the service accepts. */ +export enum KnownTranscriptionResultState { + /** Final */ + Final = "final", + /** Intermediate */ + Intermediate = "intermediate", } /** - * Defines values for CallConnectionStateModel. \ - * {@link KnownCallConnectionStateModel} can be used interchangeably with CallConnectionStateModel, + * Defines values for TranscriptionResultState. \ + * {@link KnownTranscriptionResultState} can be used interchangeably with TranscriptionResultState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **unknown** \ - * **connecting** \ - * **connected** \ - * **transferring** \ - * **transferAccepted** \ - * **disconnecting** \ - * **disconnected** + * **final** \ + * **intermediate** */ -export type CallConnectionStateModel = string; +export type TranscriptionResultState = string; /** Known values of {@link CallRejectReason} that the service accepts. */ export enum KnownCallRejectReason { @@ -2371,6 +1541,30 @@ export enum KnownCallRejectReason { */ export type CallRejectReason = string; +/** Known values of {@link CallLocatorKind} that the service accepts. */ +export enum KnownCallLocatorKind { + /** Unknown */ + Unknown = "unknown", + /** GroupCallLocator */ + GroupCallLocator = "groupCallLocator", + /** ServerCallLocator */ + ServerCallLocator = "serverCallLocator", + /** RoomCallLocator */ + RoomCallLocator = "roomCallLocator", +} + +/** + * Defines values for CallLocatorKind. \ + * {@link KnownCallLocatorKind} can be used interchangeably with CallLocatorKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **unknown** \ + * **groupCallLocator** \ + * **serverCallLocator** \ + * **roomCallLocator** + */ +export type CallLocatorKind = string; + /** Known values of {@link PlaySourceType} that the service accepts. */ export enum KnownPlaySourceType { /** File */ @@ -2494,42 +1688,6 @@ export enum KnownTone { */ export type Tone = string; -/** Known values of {@link DialogInputType} that the service accepts. */ -export enum KnownDialogInputType { - /** PowerVirtualAgents */ - PowerVirtualAgents = "powerVirtualAgents", - /** AzureOpenAI */ - AzureOpenAI = "azureOpenAI", -} - -/** - * Defines values for DialogInputType. \ - * {@link KnownDialogInputType} can be used interchangeably with DialogInputType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **powerVirtualAgents** \ - * **azureOpenAI** - */ -export type DialogInputType = string; - -/** Known values of {@link CallLocatorKind} that the service accepts. */ -export enum KnownCallLocatorKind { - /** GroupCallLocator */ - GroupCallLocator = "groupCallLocator", - /** ServerCallLocator */ - ServerCallLocator = "serverCallLocator", -} - -/** - * Defines values for CallLocatorKind. \ - * {@link KnownCallLocatorKind} can be used interchangeably with CallLocatorKind, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **groupCallLocator** \ - * **serverCallLocator** - */ -export type CallLocatorKind = string; - /** Known values of {@link RecordingContentType} that the service accepts. */ export enum KnownRecordingContentType { /** Audio */ @@ -2589,10 +1747,10 @@ export type RecordingFormatType = string; /** Known values of {@link RecordingStorageKind} that the service accepts. */ export enum KnownRecordingStorageKind { - /** AzureCommunicationServices */ - AzureCommunicationServices = "azureCommunicationServices", - /** AzureBlobStorage */ - AzureBlobStorage = "azureBlobStorage", + /** Storage managed by Azure Communication Services */ + AzureCommunicationServices = "AzureCommunicationServices", + /** Storage managed by provided Azure blob */ + AzureBlobStorage = "AzureBlobStorage", } /** @@ -2600,8 +1758,8 @@ export enum KnownRecordingStorageKind { * {@link KnownRecordingStorageKind} can be used interchangeably with RecordingStorageKind, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **azureCommunicationServices** \ - * **azureBlobStorage** + * **AzureCommunicationServices**: Storage managed by Azure Communication Services \ + * **AzureBlobStorage**: Storage managed by provided Azure blob */ export type RecordingStorageKind = string; @@ -2625,12 +1783,12 @@ export type RecordingState = string; /** Known values of {@link RecordingKind} that the service accepts. */ export enum KnownRecordingKind { - /** AzureCommunicationServices */ - AzureCommunicationServices = "azureCommunicationServices", - /** Teams */ - Teams = "teams", - /** TeamsCompliance */ - TeamsCompliance = "teamsCompliance", + /** Recording initiated by Azure Communication Services */ + AzureCommunicationServices = "AzureCommunicationServices", + /** Recording initiated by Teams user */ + Teams = "Teams", + /** Recording initiated by Teams compliance policy */ + TeamsCompliance = "TeamsCompliance", } /** @@ -2638,44 +1796,59 @@ export enum KnownRecordingKind { * {@link KnownRecordingKind} can be used interchangeably with RecordingKind, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **azureCommunicationServices** \ - * **teams** \ - * **teamsCompliance** + * **AzureCommunicationServices**: Recording initiated by Azure Communication Services \ + * **Teams**: Recording initiated by Teams user \ + * **TeamsCompliance**: Recording initiated by Teams compliance policy */ export type RecordingKind = string; -/** Known values of {@link TranscriptionStatus} that the service accepts. */ -export enum KnownTranscriptionStatus { - /** TranscriptionStarted */ - TranscriptionStarted = "transcriptionStarted", - /** TranscriptionFailed */ - TranscriptionFailed = "transcriptionFailed", - /** TranscriptionResumed */ - TranscriptionResumed = "transcriptionResumed", - /** TranscriptionUpdated */ - TranscriptionUpdated = "transcriptionUpdated", - /** TranscriptionStopped */ - TranscriptionStopped = "transcriptionStopped", +/** Known values of {@link RecognitionType} that the service accepts. */ +export enum KnownRecognitionType { + /** Dtmf */ + Dtmf = "dtmf", + /** Speech */ + Speech = "speech", + /** Choices */ + Choices = "choices", +} + +/** + * Defines values for RecognitionType. \ + * {@link KnownRecognitionType} can be used interchangeably with RecognitionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **dtmf** \ + * **speech** \ + * **choices** + */ +export type RecognitionType = string; + +/** Known values of {@link MediaStreamingStatus} that the service accepts. */ +export enum KnownMediaStreamingStatus { + /** MediaStreamingStarted */ + MediaStreamingStarted = "mediaStreamingStarted", + /** MediaStreamingFailed */ + MediaStreamingFailed = "mediaStreamingFailed", + /** MediaStreamingStopped */ + MediaStreamingStopped = "mediaStreamingStopped", /** UnspecifiedError */ UnspecifiedError = "unspecifiedError", } /** - * Defines values for TranscriptionStatus. \ - * {@link KnownTranscriptionStatus} can be used interchangeably with TranscriptionStatus, + * Defines values for MediaStreamingStatus. \ + * {@link KnownMediaStreamingStatus} can be used interchangeably with MediaStreamingStatus, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **transcriptionStarted** \ - * **transcriptionFailed** \ - * **transcriptionResumed** \ - * **transcriptionUpdated** \ - * **transcriptionStopped** \ + * **mediaStreamingStarted** \ + * **mediaStreamingFailed** \ + * **mediaStreamingStopped** \ * **unspecifiedError** */ -export type TranscriptionStatus = string; +export type MediaStreamingStatus = string; -/** Known values of {@link TranscriptionStatusDetails} that the service accepts. */ -export enum KnownTranscriptionStatusDetails { +/** Known values of {@link MediaStreamingStatusDetails} that the service accepts. */ +export enum KnownMediaStreamingStatusDetails { /** SubscriptionStarted */ SubscriptionStarted = "subscriptionStarted", /** StreamConnectionReestablished */ @@ -2704,13 +1877,13 @@ export enum KnownTranscriptionStatusDetails { Forbidden = "forbidden", /** ServiceTimeout */ ServiceTimeout = "serviceTimeout", - /** TranscriptionLocaleUpdated */ - TranscriptionLocaleUpdated = "transcriptionLocaleUpdated", + /** InitialWebSocketConnectionFailed */ + InitialWebSocketConnectionFailed = "initialWebSocketConnectionFailed", } /** - * Defines values for TranscriptionStatusDetails. \ - * {@link KnownTranscriptionStatusDetails} can be used interchangeably with TranscriptionStatusDetails, + * Defines values for MediaStreamingStatusDetails. \ + * {@link KnownMediaStreamingStatusDetails} can be used interchangeably with MediaStreamingStatusDetails, * this enum contains the known values that the service supports. * ### Known values supported by the service * **subscriptionStarted** \ @@ -2727,36 +1900,42 @@ export enum KnownTranscriptionStatusDetails { * **tooManyRequests** \ * **forbidden** \ * **serviceTimeout** \ - * **transcriptionLocaleUpdated** + * **initialWebSocketConnectionFailed** */ -export type TranscriptionStatusDetails = string; +export type MediaStreamingStatusDetails = string; -/** Known values of {@link MediaStreamingStatus} that the service accepts. */ -export enum KnownMediaStreamingStatus { - /** MediaStreamingStarted */ - MediaStreamingStarted = "mediaStreamingStarted", - /** MediaStreamingFailed */ - MediaStreamingFailed = "mediaStreamingFailed", - /** MediaStreamingStopped */ - MediaStreamingStopped = "mediaStreamingStopped", +/** Known values of {@link TranscriptionStatus} that the service accepts. */ +export enum KnownTranscriptionStatus { + /** TranscriptionStarted */ + TranscriptionStarted = "transcriptionStarted", + /** TranscriptionFailed */ + TranscriptionFailed = "transcriptionFailed", + /** TranscriptionResumed */ + TranscriptionResumed = "transcriptionResumed", + /** TranscriptionUpdated */ + TranscriptionUpdated = "transcriptionUpdated", + /** TranscriptionStopped */ + TranscriptionStopped = "transcriptionStopped", /** UnspecifiedError */ UnspecifiedError = "unspecifiedError", } /** - * Defines values for MediaStreamingStatus. \ - * {@link KnownMediaStreamingStatus} can be used interchangeably with MediaStreamingStatus, + * Defines values for TranscriptionStatus. \ + * {@link KnownTranscriptionStatus} can be used interchangeably with TranscriptionStatus, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **mediaStreamingStarted** \ - * **mediaStreamingFailed** \ - * **mediaStreamingStopped** \ + * **transcriptionStarted** \ + * **transcriptionFailed** \ + * **transcriptionResumed** \ + * **transcriptionUpdated** \ + * **transcriptionStopped** \ * **unspecifiedError** */ -export type MediaStreamingStatus = string; +export type TranscriptionStatus = string; -/** Known values of {@link MediaStreamingStatusDetails} that the service accepts. */ -export enum KnownMediaStreamingStatusDetails { +/** Known values of {@link TranscriptionStatusDetails} that the service accepts. */ +export enum KnownTranscriptionStatusDetails { /** SubscriptionStarted */ SubscriptionStarted = "subscriptionStarted", /** StreamConnectionReestablished */ @@ -2785,13 +1964,13 @@ export enum KnownMediaStreamingStatusDetails { Forbidden = "forbidden", /** ServiceTimeout */ ServiceTimeout = "serviceTimeout", - /** InitialWebSocketConnectionFailed */ - InitialWebSocketConnectionFailed = "initialWebSocketConnectionFailed", + /** TranscriptionLocaleUpdated */ + TranscriptionLocaleUpdated = "transcriptionLocaleUpdated", } /** - * Defines values for MediaStreamingStatusDetails. \ - * {@link KnownMediaStreamingStatusDetails} can be used interchangeably with MediaStreamingStatusDetails, + * Defines values for TranscriptionStatusDetails. \ + * {@link KnownTranscriptionStatusDetails} can be used interchangeably with TranscriptionStatusDetails, * this enum contains the known values that the service supports. * ### Known values supported by the service * **subscriptionStarted** \ @@ -2808,30 +1987,9 @@ export enum KnownMediaStreamingStatusDetails { * **tooManyRequests** \ * **forbidden** \ * **serviceTimeout** \ - * **initialWebSocketConnectionFailed** - */ -export type MediaStreamingStatusDetails = string; - -/** Known values of {@link RecognitionType} that the service accepts. */ -export enum KnownRecognitionType { - /** Dtmf */ - Dtmf = "dtmf", - /** Speech */ - Speech = "speech", - /** Choices */ - Choices = "choices", -} - -/** - * Defines values for RecognitionType. \ - * {@link KnownRecognitionType} can be used interchangeably with RecognitionType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **dtmf** \ - * **speech** \ - * **choices** + * **transcriptionLocaleUpdated** */ -export type RecognitionType = string; +export type TranscriptionStatusDetails = string; /** Optional parameters. */ export interface CreateCallOptionalParams extends coreClient.OperationOptions { @@ -2872,6 +2030,17 @@ export interface RejectCallOptionalParams extends coreClient.OperationOptions { repeatabilityFirstSent?: Date; } +/** Optional parameters. */ +export interface ConnectOptionalParams extends coreClient.OperationOptions { + /** If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID. */ + repeatabilityRequestID?: string; + /** If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT. */ + repeatabilityFirstSent?: Date; +} + +/** Contains response data for the connect operation. */ +export type ConnectResponse = CallConnectionPropertiesInternal; + /** Optional parameters. */ export interface CallConnectionGetCallOptionalParams extends coreClient.OperationOptions {} @@ -2947,18 +2116,6 @@ export interface CallConnectionMuteOptionalParams /** Contains response data for the mute operation. */ export type CallConnectionMuteResponse = MuteParticipantsResult; -/** Optional parameters. */ -export interface CallConnectionUnmuteOptionalParams - extends coreClient.OperationOptions { - /** If specified, the client directs that the request is repeatable; that is, that the client can make the request multiple times with the same Repeatability-Request-Id and get back an appropriate response without the server executing the request multiple times. The value of the Repeatability-Request-Id is an opaque string representing a client-generated unique identifier for the request. It is a version 4 (random) UUID. */ - repeatabilityRequestID?: string; - /** If Repeatability-Request-ID header is specified, then Repeatability-First-Sent header must also be specified. The value should be the date and time at which the request was first created, expressed using the IMF-fixdate form of HTTP-date. Example: Sun, 06 Nov 1994 08:49:37 GMT. */ - repeatabilityFirstSent?: Date; -} - -/** Contains response data for the unmute operation. */ -export type CallConnectionUnmuteResponse = UnmuteParticipantsResponse; - /** Optional parameters. */ export interface CallConnectionCancelAddParticipantOptionalParams extends coreClient.OperationOptions { @@ -2998,6 +2155,10 @@ export interface CallMediaStartTranscriptionOptionalParams export interface CallMediaStopTranscriptionOptionalParams extends coreClient.OperationOptions {} +/** Optional parameters. */ +export interface CallMediaUpdateTranscriptionOptionalParams + extends coreClient.OperationOptions {} + /** Optional parameters. */ export interface CallMediaCancelAllMediaOperationsOptionalParams extends coreClient.OperationOptions {} @@ -3026,10 +2187,6 @@ export interface CallMediaSendDtmfTonesOptionalParams /** Contains response data for the sendDtmfTones operation. */ export type CallMediaSendDtmfTonesResponse = SendDtmfTonesResult; -/** Optional parameters. */ -export interface CallMediaUpdateTranscriptionOptionalParams - extends coreClient.OperationOptions {} - /** Optional parameters. */ export interface CallMediaHoldOptionalParams extends coreClient.OperationOptions {} @@ -3038,14 +2195,6 @@ export interface CallMediaHoldOptionalParams export interface CallMediaUnholdOptionalParams extends coreClient.OperationOptions {} -/** Optional parameters. */ -export interface CallMediaStartHoldMusicOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface CallMediaStopHoldMusicOptionalParams - extends coreClient.OperationOptions {} - /** Optional parameters. */ export interface CallMediaStartMediaStreamingOptionalParams extends coreClient.OperationOptions {} @@ -3054,24 +2203,6 @@ export interface CallMediaStartMediaStreamingOptionalParams export interface CallMediaStopMediaStreamingOptionalParams extends coreClient.OperationOptions {} -/** Optional parameters. */ -export interface CallDialogStartDialogOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the startDialog operation. */ -export type CallDialogStartDialogResponse = DialogStateResponse; - -/** Optional parameters. */ -export interface CallDialogStopDialogOptionalParams - extends coreClient.OperationOptions { - /** Operation callback URI. */ - operationCallbackUri?: string; -} - -/** Optional parameters. */ -export interface CallDialogUpdateDialogOptionalParams - extends coreClient.OperationOptions {} - /** Optional parameters. */ export interface CallRecordingStartRecordingOptionalParams extends coreClient.OperationOptions { diff --git a/sdk/communication/communication-call-automation/src/generated/src/models/mappers.ts b/sdk/communication/communication-call-automation/src/generated/src/models/mappers.ts index 0e121e804a3f..5f5c2d6d0e24 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/models/mappers.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/models/mappers.ts @@ -59,32 +59,25 @@ export const CreateCallRequest: coreClient.CompositeMapper = { name: "String", }, }, - mediaStreamingConfiguration: { - serializedName: "mediaStreamingConfiguration", - type: { - name: "Composite", - className: "MediaStreamingConfiguration", - }, - }, - transcriptionConfiguration: { - serializedName: "transcriptionConfiguration", + callIntelligenceOptions: { + serializedName: "callIntelligenceOptions", type: { name: "Composite", - className: "TranscriptionConfiguration", + className: "CallIntelligenceOptionsInternal", }, }, - callIntelligenceOptions: { - serializedName: "callIntelligenceOptions", + mediaStreamingOptions: { + serializedName: "mediaStreamingOptions", type: { name: "Composite", - className: "CallIntelligenceOptionsInternal", + className: "MediaStreamingOptions", }, }, - customCallingContext: { - serializedName: "customCallingContext", + transcriptionOptions: { + serializedName: "transcriptionOptions", type: { name: "Composite", - className: "CustomCallingContextInternal", + className: "TranscriptionOptions", }, }, }, @@ -222,10 +215,25 @@ export const MicrosoftTeamsAppIdentifierModel: coreClient.CompositeMapper = { }, }; -export const MediaStreamingConfiguration: coreClient.CompositeMapper = { +export const CallIntelligenceOptionsInternal: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CallIntelligenceOptionsInternal", + modelProperties: { + cognitiveServicesEndpoint: { + serializedName: "cognitiveServicesEndpoint", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const MediaStreamingOptions: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MediaStreamingConfiguration", + className: "MediaStreamingOptions", modelProperties: { transportUrl: { serializedName: "transportUrl", @@ -261,14 +269,26 @@ export const MediaStreamingConfiguration: coreClient.CompositeMapper = { name: "Boolean", }, }, + enableBidirectional: { + serializedName: "enableBidirectional", + type: { + name: "Boolean", + }, + }, + audioFormat: { + serializedName: "audioFormat", + type: { + name: "String", + }, + }, }, }, }; -export const TranscriptionConfiguration: coreClient.CompositeMapper = { +export const TranscriptionOptions: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TranscriptionConfiguration", + className: "TranscriptionOptions", modelProperties: { transportUrl: { serializedName: "transportUrl", @@ -291,49 +311,23 @@ export const TranscriptionConfiguration: coreClient.CompositeMapper = { name: "String", }, }, - startTranscription: { - serializedName: "startTranscription", - required: true, - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const CallIntelligenceOptionsInternal: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CallIntelligenceOptionsInternal", - modelProperties: { - cognitiveServicesEndpoint: { - serializedName: "cognitiveServicesEndpoint", + speechRecognitionModelEndpointId: { + serializedName: "speechRecognitionModelEndpointId", type: { name: "String", }, }, - }, - }, -}; - -export const CustomCallingContextInternal: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomCallingContextInternal", - modelProperties: { - voipHeaders: { - serializedName: "voipHeaders", + startTranscription: { + serializedName: "startTranscription", + required: true, type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "Boolean", }, }, - sipHeaders: { - serializedName: "sipHeaders", + enableIntermediateResults: { + serializedName: "enableIntermediateResults", type: { - name: "Dictionary", - value: { type: { name: "String" } }, + name: "Boolean", }, }, }, @@ -381,18 +375,6 @@ export const CallConnectionPropertiesInternal: coreClient.CompositeMapper = { name: "String", }, }, - mediaSubscriptionId: { - serializedName: "mediaSubscriptionId", - type: { - name: "String", - }, - }, - dataSubscriptionId: { - serializedName: "dataSubscriptionId", - type: { - name: "String", - }, - }, sourceCallerIdNumber: { serializedName: "sourceCallerIdNumber", type: { @@ -426,6 +408,20 @@ export const CallConnectionPropertiesInternal: coreClient.CompositeMapper = { className: "CommunicationUserIdentifierModel", }, }, + mediaStreamingSubscription: { + serializedName: "mediaStreamingSubscription", + type: { + name: "Composite", + className: "MediaStreamingSubscription", + }, + }, + transcriptionSubscription: { + serializedName: "transcriptionSubscription", + type: { + name: "Composite", + className: "TranscriptionSubscription", + }, + }, answeredFor: { serializedName: "answeredFor", type: { @@ -437,6 +433,70 @@ export const CallConnectionPropertiesInternal: coreClient.CompositeMapper = { }, }; +export const MediaStreamingSubscription: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MediaStreamingSubscription", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + state: { + serializedName: "state", + type: { + name: "String", + }, + }, + subscribedContentTypes: { + serializedName: "subscribedContentTypes", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + }, + }, +}; + +export const TranscriptionSubscription: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TranscriptionSubscription", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String", + }, + }, + state: { + serializedName: "state", + type: { + name: "String", + }, + }, + subscribedResultStates: { + serializedName: "subscribedResultTypes", + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + }, + }, +}; + export const CommunicationErrorResponse: coreClient.CompositeMapper = { type: { name: "Composite", @@ -528,32 +588,32 @@ export const AnswerCallRequest: coreClient.CompositeMapper = { name: "String", }, }, - mediaStreamingConfiguration: { - serializedName: "mediaStreamingConfiguration", + callIntelligenceOptions: { + serializedName: "callIntelligenceOptions", type: { name: "Composite", - className: "MediaStreamingConfiguration", + className: "CallIntelligenceOptionsInternal", }, }, - transcriptionConfiguration: { - serializedName: "transcriptionConfiguration", + answeredBy: { + serializedName: "answeredBy", type: { name: "Composite", - className: "TranscriptionConfiguration", + className: "CommunicationUserIdentifierModel", }, }, - callIntelligenceOptions: { - serializedName: "callIntelligenceOptions", + mediaStreamingOptions: { + serializedName: "mediaStreamingOptions", type: { name: "Composite", - className: "CallIntelligenceOptionsInternal", + className: "MediaStreamingOptions", }, }, - answeredBy: { - serializedName: "answeredBy", + transcriptionOptions: { + serializedName: "transcriptionOptions", type: { name: "Composite", - className: "CommunicationUserIdentifierModel", + className: "TranscriptionOptions", }, }, }, @@ -579,13 +639,6 @@ export const RedirectCallRequest: coreClient.CompositeMapper = { className: "CommunicationIdentifierModel", }, }, - customCallingContext: { - serializedName: "customCallingContext", - type: { - name: "Composite", - className: "CustomCallingContextInternal", - }, - }, }, }, }; @@ -612,23 +665,23 @@ export const RejectCallRequest: coreClient.CompositeMapper = { }, }; -export const TransferToParticipantRequest: coreClient.CompositeMapper = { +export const ConnectRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TransferToParticipantRequest", + className: "ConnectRequest", modelProperties: { - targetParticipant: { - serializedName: "targetParticipant", + callLocator: { + serializedName: "callLocator", type: { name: "Composite", - className: "CommunicationIdentifierModel", + className: "CallLocator", }, }, - customCallingContext: { - serializedName: "customCallingContext", + callbackUri: { + serializedName: "callbackUri", + required: true, type: { - name: "Composite", - className: "CustomCallingContextInternal", + name: "String", }, }, operationContext: { @@ -637,90 +690,56 @@ export const TransferToParticipantRequest: coreClient.CompositeMapper = { name: "String", }, }, - transferee: { - serializedName: "transferee", + callIntelligenceOptions: { + serializedName: "callIntelligenceOptions", type: { name: "Composite", - className: "CommunicationIdentifierModel", + className: "CallIntelligenceOptionsInternal", }, }, - operationCallbackUri: { - serializedName: "operationCallbackUri", + mediaStreamingOptions: { + serializedName: "mediaStreamingOptions", type: { - name: "String", + name: "Composite", + className: "MediaStreamingOptions", }, }, - sourceCallerIdNumber: { - serializedName: "sourceCallerIdNumber", + transcriptionOptions: { + serializedName: "transcriptionOptions", type: { name: "Composite", - className: "PhoneNumberIdentifierModel", + className: "TranscriptionOptions", }, }, }, }, }; -export const TransferCallResponse: coreClient.CompositeMapper = { +export const CallLocator: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TransferCallResponse", + className: "CallLocator", modelProperties: { - operationContext: { - serializedName: "operationContext", + groupCallId: { + serializedName: "groupCallId", type: { name: "String", }, }, - }, - }, -}; - -export const PlayRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PlayRequest", - modelProperties: { - playSources: { - serializedName: "playSources", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PlaySourceInternal", - }, - }, - }, - }, - playTo: { - serializedName: "playTo", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CommunicationIdentifierModel", - }, - }, - }, - }, - playOptions: { - serializedName: "playOptions", + serverCallId: { + serializedName: "serverCallId", type: { - name: "Composite", - className: "PlayOptionsInternal", + name: "String", }, }, - operationContext: { - serializedName: "operationContext", + roomId: { + serializedName: "roomId", type: { name: "String", }, }, - operationCallbackUri: { - serializedName: "operationCallbackUri", + kind: { + serializedName: "kind", type: { name: "String", }, @@ -729,10 +748,156 @@ export const PlayRequest: coreClient.CompositeMapper = { }, }; -export const PlaySourceInternal: coreClient.CompositeMapper = { +export const TransferToParticipantRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PlaySourceInternal", + className: "TransferToParticipantRequest", + modelProperties: { + targetParticipant: { + serializedName: "targetParticipant", + type: { + name: "Composite", + className: "CommunicationIdentifierModel", + }, + }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + transferee: { + serializedName: "transferee", + type: { + name: "Composite", + className: "CommunicationIdentifierModel", + }, + }, + operationCallbackUri: { + serializedName: "operationCallbackUri", + type: { + name: "String", + }, + }, + customCallingContext: { + serializedName: "customCallingContext", + type: { + name: "Composite", + className: "CustomCallingContextInternal", + }, + }, + sourceCallerIdNumber: { + serializedName: "sourceCallerIdNumber", + type: { + name: "Composite", + className: "PhoneNumberIdentifierModel", + }, + }, + }, + }, +}; + +export const CustomCallingContextInternal: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CustomCallingContextInternal", + modelProperties: { + voipHeaders: { + serializedName: "voipHeaders", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + sipHeaders: { + serializedName: "sipHeaders", + type: { + name: "Dictionary", + value: { type: { name: "String" } }, + }, + }, + }, + }, +}; + +export const TransferCallResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TransferCallResponse", + modelProperties: { + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const PlayRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PlayRequest", + modelProperties: { + playSources: { + serializedName: "playSources", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PlaySourceInternal", + }, + }, + }, + }, + playTo: { + serializedName: "playTo", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CommunicationIdentifierModel", + }, + }, + }, + }, + interruptCallMediaOperation: { + serializedName: "interruptCallMediaOperation", + type: { + name: "Boolean", + }, + }, + playOptions: { + serializedName: "playOptions", + type: { + name: "Composite", + className: "PlayOptionsInternal", + }, + }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + operationCallbackUri: { + serializedName: "operationCallbackUri", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const PlaySourceInternal: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PlaySourceInternal", modelProperties: { kind: { serializedName: "kind", @@ -862,12 +1027,6 @@ export const PlayOptionsInternal: coreClient.CompositeMapper = { name: "Boolean", }, }, - interruptCallMediaOperation: { - serializedName: "interruptCallMediaOperation", - type: { - name: "Boolean", - }, - }, }, }, }; @@ -883,6 +1042,12 @@ export const StartTranscriptionRequest: coreClient.CompositeMapper = { name: "String", }, }, + speechRecognitionModelEndpointId: { + serializedName: "speechRecognitionModelEndpointId", + type: { + name: "String", + }, + }, operationContext: { serializedName: "operationContext", type: { @@ -908,6 +1073,34 @@ export const StopTranscriptionRequest: coreClient.CompositeMapper = { }, }; +export const UpdateTranscriptionRequest: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UpdateTranscriptionRequest", + modelProperties: { + locale: { + serializedName: "locale", + required: true, + type: { + name: "String", + }, + }, + speechRecognitionModelEndpointId: { + serializedName: "speechRecognitionModelEndpointId", + type: { + name: "String", + }, + }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + }, + }, +}; + export const RecognizeRequest: coreClient.CompositeMapper = { type: { name: "Composite", @@ -1206,22 +1399,6 @@ export const SendDtmfTonesResult: coreClient.CompositeMapper = { }, }; -export const UpdateTranscriptionRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UpdateTranscriptionRequest", - modelProperties: { - locale: { - serializedName: "locale", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - export const HoldRequest: coreClient.CompositeMapper = { type: { name: "Composite", @@ -1279,23 +1456,15 @@ export const UnholdRequest: coreClient.CompositeMapper = { }, }; -export const StartHoldMusicRequest: coreClient.CompositeMapper = { +export const StartMediaStreamingRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StartHoldMusicRequest", + className: "StartMediaStreamingRequest", modelProperties: { - targetParticipant: { - serializedName: "targetParticipant", - type: { - name: "Composite", - className: "CommunicationIdentifierModel", - }, - }, - playSourceInfo: { - serializedName: "playSourceInfo", + operationCallbackUri: { + serializedName: "operationCallbackUri", type: { - name: "Composite", - className: "PlaySourceInternal", + name: "String", }, }, operationContext: { @@ -1304,26 +1473,19 @@ export const StartHoldMusicRequest: coreClient.CompositeMapper = { name: "String", }, }, - operationCallbackUri: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, }, }, }; -export const StopHoldMusicRequest: coreClient.CompositeMapper = { +export const StopMediaStreamingRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StopHoldMusicRequest", + className: "StopMediaStreamingRequest", modelProperties: { - targetParticipant: { - serializedName: "targetParticipant", + operationCallbackUri: { + serializedName: "operationCallbackUri", type: { - name: "Composite", - className: "CommunicationIdentifierModel", + name: "String", }, }, operationContext: { @@ -1336,207 +1498,26 @@ export const StopHoldMusicRequest: coreClient.CompositeMapper = { }, }; -export const StartMediaStreamingRequest: coreClient.CompositeMapper = { +export const GetParticipantsResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StartMediaStreamingRequest", + className: "GetParticipantsResponse", modelProperties: { - operationCallbackUri: { - serializedName: "operationCallbackUri", + value: { + serializedName: "value", + required: true, type: { - name: "String", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CallParticipantInternal", + }, + }, }, }, - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const StopMediaStreamingRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "StopMediaStreamingRequest", - modelProperties: { - operationCallbackUri: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const StartDialogRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "StartDialogRequest", - modelProperties: { - dialog: { - serializedName: "dialog", - type: { - name: "Composite", - className: "BaseDialog", - }, - }, - operationCallbackUri: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const BaseDialog: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BaseDialog", - uberParent: "BaseDialog", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind", - }, - modelProperties: { - kind: { - serializedName: "kind", - required: true, - type: { - name: "String", - }, - }, - context: { - serializedName: "context", - required: true, - type: { - name: "Dictionary", - value: { - type: { name: "Dictionary", value: { type: { name: "any" } } }, - }, - }, - }, - }, - }, -}; - -export const DialogStateResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogStateResponse", - modelProperties: { - dialogId: { - serializedName: "dialogId", - type: { - name: "String", - }, - }, - dialog: { - serializedName: "dialog", - type: { - name: "Composite", - className: "BaseDialog", - }, - }, - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const UpdateDialogRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UpdateDialogRequest", - modelProperties: { - dialog: { - serializedName: "dialog", - type: { - name: "Composite", - className: "DialogUpdateBase", - }, - }, - operationCallbackUri: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DialogUpdateBase: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogUpdateBase", - uberParent: "DialogUpdateBase", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind", - }, - modelProperties: { - kind: { - serializedName: "kind", - required: true, - type: { - name: "String", - }, - }, - context: { - serializedName: "context", - type: { - name: "Dictionary", - value: { - type: { name: "Dictionary", value: { type: { name: "any" } } }, - }, - }, - }, - }, - }, -}; - -export const GetParticipantsResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GetParticipantsResponse", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CallParticipantInternal", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", + nextLink: { + serializedName: "nextLink", type: { name: "String", }, @@ -1614,6 +1595,12 @@ export const AddParticipantRequest: coreClient.CompositeMapper = { name: "String", }, }, + operationCallbackUri: { + serializedName: "operationCallbackUri", + type: { + name: "String", + }, + }, customCallingContext: { serializedName: "customCallingContext", type: { @@ -1621,12 +1608,6 @@ export const AddParticipantRequest: coreClient.CompositeMapper = { className: "CustomCallingContextInternal", }, }, - operationCallbackUri: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, }, }, }; @@ -1745,49 +1726,6 @@ export const MuteParticipantsResult: coreClient.CompositeMapper = { }, }; -export const UnmuteParticipantsRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UnmuteParticipantsRequest", - modelProperties: { - targetParticipants: { - serializedName: "targetParticipants", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CommunicationIdentifierModel", - }, - }, - }, - }, - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const UnmuteParticipantsResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UnmuteParticipantsResponse", - modelProperties: { - operationContext: { - serializedName: "operationContext", - type: { - name: "String", - }, - }, - }, - }, -}; - export const CancelAddParticipantRequest: coreClient.CompositeMapper = { type: { name: "Composite", @@ -1897,44 +1835,17 @@ export const StartCallRecordingRequest: coreClient.CompositeMapper = { }, }, }, - recordingStorage: { - serializedName: "externalStorage", - type: { - name: "Composite", - className: "RecordingStorage", - }, - }, pauseOnStart: { serializedName: "pauseOnStart", type: { name: "Boolean", }, }, - }, - }, -}; - -export const CallLocator: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CallLocator", - modelProperties: { - groupCallId: { - serializedName: "groupCallId", - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - type: { - name: "String", - }, - }, - kind: { - serializedName: "kind", + recordingStorage: { + serializedName: "externalStorage", type: { - name: "String", + name: "Composite", + className: "RecordingStorage", }, }, }, @@ -2016,92 +1927,31 @@ export const RecordingStateResponse: coreClient.CompositeMapper = { }, }; -export const CollectTonesResult: coreClient.CompositeMapper = { +export const AddParticipantFailed: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CollectTonesResult", + className: "AddParticipantFailed", modelProperties: { - tones: { - serializedName: "tones", - readOnly: true, + callConnectionId: { + serializedName: "callConnectionId", type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, + name: "String", }, }, - }, - }, -}; - -export const DtmfResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DtmfResult", - modelProperties: { - tones: { - serializedName: "tones", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const SpeechResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SpeechResult", - modelProperties: { - speech: { - serializedName: "speech", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ChoiceResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ChoiceResult", - modelProperties: { - label: { - serializedName: "label", + serverCallId: { + serializedName: "serverCallId", type: { name: "String", }, }, - recognizedPhrase: { - serializedName: "recognizedPhrase", + correlationId: { + serializedName: "correlationId", type: { name: "String", }, }, - }, - }, -}; - -export const DialogCompleted: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogCompleted", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2110,51 +1960,24 @@ export const DialogCompleted: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, + participant: { + serializedName: "participant", type: { - name: "String", + name: "Composite", + className: "CommunicationIdentifierModel", }, }, }, }, }; -export const RestResultInformation: coreClient.CompositeMapper = { +export const ResultInformation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", modelProperties: { code: { serializedName: "code", @@ -2178,78 +2001,31 @@ export const RestResultInformation: coreClient.CompositeMapper = { }, }; -export const DialogFailed: coreClient.CompositeMapper = { +export const AddParticipantSucceeded: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DialogFailed", + className: "AddParticipantSucceeded", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const DialogConsent: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogConsent", - modelProperties: { - userConsent: { - serializedName: "userConsent", - type: { - name: "Composite", - className: "UserConsent", - }, - }, operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2258,493 +2034,45 @@ export const DialogConsent: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", + className: "ResultInformation", }, }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const UserConsent: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UserConsent", - modelProperties: { - recording: { - serializedName: "recording", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const DialogStarted: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogStarted", - modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DialogHangup: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogHangup", - modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - ivrContext: { - serializedName: "ivrContext", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DialogTransfer: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogTransfer", - modelProperties: { - transferType: { - serializedName: "transferType", - readOnly: true, - type: { - name: "String", - }, - }, - transferDestination: { - serializedName: "transferDestination", - readOnly: true, - type: { - name: "String", - }, - }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - ivrContext: { - serializedName: "ivrContext", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DialogLanguageChange: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogLanguageChange", - modelProperties: { - selectedLanguage: { - serializedName: "selectedLanguage", - readOnly: true, - type: { - name: "String", - }, - }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - ivrContext: { - serializedName: "ivrContext", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DialogSensitivityUpdate: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DialogSensitivityUpdate", - modelProperties: { - sensitiveMask: { - serializedName: "sensitiveMask", - readOnly: true, - type: { - name: "Boolean", - }, - }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", + participant: { + serializedName: "participant", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", + className: "CommunicationIdentifierModel", }, }, }, }, }; -export const DialogUpdated: coreClient.CompositeMapper = { +export const CallConnected: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DialogUpdated", + className: "CallConnected", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - dialogInputType: { - serializedName: "dialogInputType", - type: { - name: "String", - }, - }, - dialogId: { - serializedName: "dialogId", - readOnly: true, - type: { - name: "String", - }, - }, - ivrContext: { - serializedName: "ivrContext", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TranscriptionUpdate: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TranscriptionUpdate", - modelProperties: { - transcriptionStatus: { - serializedName: "transcriptionStatus", type: { name: "String", }, }, - transcriptionStatusDetails: { - serializedName: "transcriptionStatusDetails", + correlationId: { + serializedName: "correlationId", type: { name: "String", }, }, - }, - }, -}; - -export const MediaStreamingFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MediaStreamingFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2753,76 +2081,78 @@ export const MediaStreamingFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - mediaStreamingUpdate: { - serializedName: "mediaStreamingUpdate", - type: { - name: "Composite", - className: "MediaStreamingUpdate", + className: "ResultInformation", }, }, + }, + }, +}; + +export const CallDisconnected: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CallDisconnected", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const MediaStreamingUpdate: coreClient.CompositeMapper = { +export const CallTransferAccepted: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MediaStreamingUpdate", + className: "CallTransferAccepted", modelProperties: { - contentType: { - serializedName: "contentType", + callConnectionId: { + serializedName: "callConnectionId", type: { name: "String", }, }, - mediaStreamingStatus: { - serializedName: "mediaStreamingStatus", + serverCallId: { + serializedName: "serverCallId", type: { name: "String", }, }, - mediaStreamingStatusDetails: { - serializedName: "mediaStreamingStatusDetails", + correlationId: { + serializedName: "correlationId", type: { name: "String", }, }, - }, - }, -}; - -export const MediaStreamingStarted: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MediaStreamingStarted", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2831,49 +2161,52 @@ export const MediaStreamingStarted: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, - mediaStreamingUpdate: { - serializedName: "mediaStreamingUpdate", + transferTarget: { + serializedName: "transferTarget", type: { name: "Composite", - className: "MediaStreamingUpdate", + className: "CommunicationIdentifierModel", + }, + }, + transferee: { + serializedName: "transferee", + type: { + name: "Composite", + className: "CommunicationIdentifierModel", }, }, + }, + }, +}; + +export const CallTransferFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CallTransferFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const MediaStreamingStopped: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MediaStreamingStopped", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2882,100 +2215,90 @@ export const MediaStreamingStopped: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - mediaStreamingUpdate: { - serializedName: "mediaStreamingUpdate", - type: { - name: "Composite", - className: "MediaStreamingUpdate", + className: "ResultInformation", }, }, + }, + }, +}; + +export const ParticipantsUpdated: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ParticipantsUpdated", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestAddParticipantSucceeded: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestAddParticipantSucceeded", - modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, + sequenceNumber: { + serializedName: "sequenceNumber", type: { - name: "String", + name: "Number", }, }, - resultInformation: { - serializedName: "resultInformation", + participants: { + serializedName: "participants", type: { - name: "Composite", - className: "RestResultInformation", + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CallParticipantInternal", + }, + }, }, }, - participant: { - serializedName: "participant", + resultInformation: { + serializedName: "resultInformation", type: { name: "Composite", - className: "CommunicationIdentifierModel", + className: "ResultInformation", }, }, + }, + }, +}; + +export const RemoveParticipantSucceeded: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RemoveParticipantSucceeded", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestAddParticipantFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestAddParticipantFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -2984,7 +2307,7 @@ export const RestAddParticipantFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, participant: { @@ -2994,39 +2317,35 @@ export const RestAddParticipantFailed: coreClient.CompositeMapper = { className: "CommunicationIdentifierModel", }, }, + }, + }, +}; + +export const RemoveParticipantFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RemoveParticipantFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestRemoveParticipantSucceeded: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestRemoveParticipantSucceeded", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3035,7 +2354,7 @@ export const RestRemoveParticipantSucceeded: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, participant: { @@ -3045,74 +2364,94 @@ export const RestRemoveParticipantSucceeded: coreClient.CompositeMapper = { className: "CommunicationIdentifierModel", }, }, + }, + }, +}; + +export const CancelAddParticipantSucceeded: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CancelAddParticipantSucceeded", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestRemoveParticipantFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestRemoveParticipantFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, }, - resultInformation: { - serializedName: "resultInformation", + invitationId: { + serializedName: "invitationId", type: { - name: "Composite", - className: "RestResultInformation", + name: "String", }, }, - participant: { - serializedName: "participant", + resultInformation: { + serializedName: "resultInformation", type: { name: "Composite", - className: "CommunicationIdentifierModel", + className: "ResultInformation", }, }, + }, + }, +}; + +export const CancelAddParticipantFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CancelAddParticipantFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, + type: { + name: "String", + }, + }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, + invitationId: { + serializedName: "invitationId", type: { name: "String", }, @@ -3121,88 +2460,71 @@ export const RestRemoveParticipantFailed: coreClient.CompositeMapper = { }, }; -export const RestCallConnected: coreClient.CompositeMapper = { +export const AnswerFailed: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestCallConnected", + className: "AnswerFailed", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, - correlationId: { - serializedName: "correlationId", - readOnly: true, + correlationId: { + serializedName: "correlationId", + type: { + name: "String", + }, + }, + operationContext: { + serializedName: "operationContext", type: { name: "String", }, }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestCallDisconnected: coreClient.CompositeMapper = { +export const CreateCallFailed: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestCallDisconnected", + className: "CreateCallFailed", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestCallTransferAccepted: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestCallTransferAccepted", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3211,56 +2533,38 @@ export const RestCallTransferAccepted: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - transferTarget: { - serializedName: "transferTarget", - type: { - name: "Composite", - className: "CommunicationIdentifierModel", - }, - }, - transferee: { - serializedName: "transferee", - type: { - name: "Composite", - className: "CommunicationIdentifierModel", + className: "ResultInformation", }, }, + }, + }, +}; + +export const ConnectFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestCallTransferFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestCallTransferFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3269,39 +2573,36 @@ export const RestCallTransferFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, + }, + }, +}; + +export const RecordingStateChanged: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RecordingStateChanged", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestRecordingStateChanged: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestRecordingStateChanged", - modelProperties: { recordingId: { serializedName: "recordingId", readOnly: true, @@ -3328,133 +2629,122 @@ export const RestRecordingStateChanged: coreClient.CompositeMapper = { name: "String", }, }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, + }, + }, +}; + +export const PlayStarted: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PlayStarted", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestParticipantsUpdated: coreClient.CompositeMapper = { +export const PlayCompleted: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestParticipantsUpdated", + className: "PlayCompleted", modelProperties: { - participants: { - serializedName: "participants", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CallParticipantInternal", - }, - }, - }, - }, - sequenceNumber: { - serializedName: "sequenceNumber", - readOnly: true, - type: { - name: "Number", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestPlayCompleted: coreClient.CompositeMapper = { +export const PlayFailed: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestPlayCompleted", + className: "PlayFailed", modelProperties: { - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestPlayFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestPlayFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3463,86 +2753,84 @@ export const RestPlayFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, failedPlaySourceIndex: { serializedName: "failedPlaySourceIndex", - readOnly: true, type: { name: "Number", }, }, + }, + }, +}; + +export const PlayCanceled: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PlayCanceled", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestPlayCanceled: coreClient.CompositeMapper = { +export const RecognizeCompleted: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestPlayCanceled", + className: "RecognizeCompleted", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestRecognizeCompleted: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestRecognizeCompleted", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3551,77 +2839,122 @@ export const RestRecognizeCompleted: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, recognitionType: { serializedName: "recognitionType", - readOnly: true, type: { name: "String", }, }, - collectTonesResult: { - serializedName: "collectTonesResult", + dtmfResult: { + serializedName: "dtmfResult", + type: { + name: "Composite", + className: "DtmfResult", + }, + }, + choiceResult: { + serializedName: "choiceResult", type: { name: "Composite", - className: "CollectTonesResult", + className: "ChoiceResult", }, }, - dtmfResult: { - serializedName: "dtmfResult", + speechResult: { + serializedName: "speechResult", + type: { + name: "Composite", + className: "SpeechResult", + }, + }, + }, + }, +}; + +export const DtmfResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DtmfResult", + modelProperties: { + tones: { + serializedName: "tones", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String", + }, + }, + }, + }, + }, + }, +}; + +export const ChoiceResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ChoiceResult", + modelProperties: { + label: { + serializedName: "label", type: { - name: "Composite", - className: "DtmfResult", + name: "String", }, }, - speechResult: { - serializedName: "speechResult", + recognizedPhrase: { + serializedName: "recognizedPhrase", type: { - name: "Composite", - className: "SpeechResult", + name: "String", }, }, - choiceResult: { - serializedName: "choiceResult", + }, + }, +}; + +export const SpeechResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SpeechResult", + modelProperties: { + speech: { + serializedName: "speech", type: { - name: "Composite", - className: "ChoiceResult", + name: "String", }, }, + }, + }, +}; + +export const RecognizeFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RecognizeFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestRecognizeFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestRecognizeFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3630,70 +2963,91 @@ export const RestRecognizeFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, failedPlaySourceIndex: { serializedName: "failedPlaySourceIndex", - readOnly: true, type: { name: "Number", }, }, + }, + }, +}; + +export const RecognizeCanceled: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RecognizeCanceled", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestRecognizeCanceled: coreClient.CompositeMapper = { +export const ContinuousDtmfRecognitionToneFailed: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestRecognizeCanceled", + className: "ContinuousDtmfRecognitionToneFailed", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, + operationContext: { + serializedName: "operationContext", type: { name: "String", }, @@ -3702,19 +3056,12 @@ export const RestRecognizeCanceled: coreClient.CompositeMapper = { }, }; -export const RestContinuousDtmfRecognitionToneReceived: coreClient.CompositeMapper = +export const ContinuousDtmfRecognitionToneReceived: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestContinuousDtmfRecognitionToneReceived", + className: "ContinuousDtmfRecognitionToneReceived", modelProperties: { - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, sequenceId: { serializedName: "sequenceId", readOnly: true, @@ -3728,92 +3075,26 @@ export const RestContinuousDtmfRecognitionToneReceived: coreClient.CompositeMapp name: "String", }, }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const RestContinuousDtmfRecognitionToneFailed: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "RestContinuousDtmfRecognitionToneFailed", - modelProperties: { - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, - }; - -export const RestContinuousDtmfRecognitionStopped: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "RestContinuousDtmfRecognitionStopped", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3822,42 +3103,38 @@ export const RestContinuousDtmfRecognitionStopped: coreClient.CompositeMapper = serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, - type: { - name: "String", - }, - }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, - type: { - name: "String", - }, - }, - correlationId: { - serializedName: "correlationId", - readOnly: true, - type: { - name: "String", + className: "ResultInformation", }, }, }, }, }; -export const RestSendDtmfTonesCompleted: coreClient.CompositeMapper = { +export const ContinuousDtmfRecognitionStopped: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestSendDtmfTonesCompleted", + className: "ContinuousDtmfRecognitionStopped", modelProperties: { + callConnectionId: { + serializedName: "callConnectionId", + type: { + name: "String", + }, + }, + serverCallId: { + serializedName: "serverCallId", + type: { + name: "String", + }, + }, + correlationId: { + serializedName: "correlationId", + type: { + name: "String", + }, + }, operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3866,42 +3143,38 @@ export const RestSendDtmfTonesCompleted: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, + }, + }, +}; + +export const SendDtmfTonesCompleted: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SendDtmfTonesCompleted", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestSendDtmfTonesFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestSendDtmfTonesFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3910,49 +3183,38 @@ export const RestSendDtmfTonesFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, + }, + }, +}; + +export const SendDtmfTonesFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SendDtmfTonesFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RestCancelAddParticipantSucceeded: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestCancelAddParticipantSucceeded", - modelProperties: { - invitationId: { - serializedName: "invitationId", - readOnly: true, type: { name: "String", }, }, operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -3961,42 +3223,45 @@ export const RestCancelAddParticipantSucceeded: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", + }, + }, + }, + }, +}; + +export const MediaStreamingFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MediaStreamingFailed", + modelProperties: { + mediaStreamingUpdate: { + serializedName: "mediaStreamingUpdate", + type: { + name: "Composite", + className: "MediaStreamingUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestCancelAddParticipantFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestCancelAddParticipantFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4005,33 +3270,32 @@ export const RestCancelAddParticipantFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - invitationId: { - serializedName: "invitationId", - readOnly: true, - type: { - name: "String", + className: "ResultInformation", }, }, - callConnectionId: { - serializedName: "callConnectionId", - readOnly: true, + }, + }, +}; + +export const MediaStreamingUpdate: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MediaStreamingUpdate", + modelProperties: { + contentType: { + serializedName: "contentType", type: { name: "String", }, }, - serverCallId: { - serializedName: "serverCallId", - readOnly: true, + mediaStreamingStatus: { + serializedName: "mediaStreamingStatus", type: { name: "String", }, }, - correlationId: { - serializedName: "correlationId", - readOnly: true, + mediaStreamingStatusDetails: { + serializedName: "mediaStreamingStatusDetails", type: { name: "String", }, @@ -4040,65 +3304,38 @@ export const RestCancelAddParticipantFailed: coreClient.CompositeMapper = { }, }; -export const RestTranscriptionStarted: coreClient.CompositeMapper = { +export const MediaStreamingStarted: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestTranscriptionStarted", + className: "MediaStreamingStarted", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, - type: { - name: "String", - }, - }, - resultInformation: { - serializedName: "resultInformation", - type: { - name: "Composite", - className: "RestResultInformation", - }, - }, - transcriptionUpdate: { - serializedName: "transcriptionUpdate", + mediaStreamingUpdate: { + serializedName: "mediaStreamingUpdate", type: { name: "Composite", - className: "TranscriptionUpdate", + className: "MediaStreamingUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestTranscriptionStopped: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestTranscriptionStopped", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4107,49 +3344,45 @@ export const RestTranscriptionStopped: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, - transcriptionUpdate: { - serializedName: "transcriptionUpdate", + }, + }, +}; + +export const MediaStreamingStopped: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MediaStreamingStopped", + modelProperties: { + mediaStreamingUpdate: { + serializedName: "mediaStreamingUpdate", type: { name: "Composite", - className: "TranscriptionUpdate", + className: "MediaStreamingUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestTranscriptionUpdated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestTranscriptionUpdated", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4158,49 +3391,38 @@ export const RestTranscriptionUpdated: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", - }, - }, - transcriptionUpdate: { - serializedName: "transcriptionUpdate", - type: { - name: "Composite", - className: "TranscriptionUpdate", + className: "ResultInformation", }, }, + }, + }, +}; + +export const HoldFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "HoldFailed", + modelProperties: { callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestTranscriptionFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestTranscriptionFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4209,9 +3431,18 @@ export const RestTranscriptionFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", }, }, + }, + }, +}; + +export const TranscriptionFailed: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TranscriptionFailed", + modelProperties: { transcriptionUpdate: { serializedName: "transcriptionUpdate", type: { @@ -4221,81 +3452,92 @@ export const RestTranscriptionFailed: coreClient.CompositeMapper = { }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, + operationContext: { + serializedName: "operationContext", + type: { + name: "String", + }, + }, + resultInformation: { + serializedName: "resultInformation", + type: { + name: "Composite", + className: "ResultInformation", + }, + }, }, }, }; -export const RestCreateCallFailed: coreClient.CompositeMapper = { +export const TranscriptionUpdate: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestCreateCallFailed", + className: "TranscriptionUpdate", modelProperties: { - operationContext: { - serializedName: "operationContext", - readOnly: true, + transcriptionStatus: { + serializedName: "transcriptionStatus", type: { name: "String", }, }, - resultInformation: { - serializedName: "resultInformation", + transcriptionStatusDetails: { + serializedName: "transcriptionStatusDetails", + type: { + name: "String", + }, + }, + }, + }, +}; + +export const TranscriptionStarted: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TranscriptionStarted", + modelProperties: { + transcriptionUpdate: { + serializedName: "transcriptionUpdate", type: { name: "Composite", - className: "RestResultInformation", + className: "TranscriptionUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestAnswerFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestAnswerFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4304,42 +3546,45 @@ export const RestAnswerFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", + }, + }, + }, + }, +}; + +export const TranscriptionStopped: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TranscriptionStopped", + modelProperties: { + transcriptionUpdate: { + serializedName: "transcriptionUpdate", + type: { + name: "Composite", + className: "TranscriptionUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const RestHoldFailed: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestHoldFailed", - modelProperties: { operationContext: { serializedName: "operationContext", - readOnly: true, type: { name: "String", }, @@ -4348,90 +3593,56 @@ export const RestHoldFailed: coreClient.CompositeMapper = { serializedName: "resultInformation", type: { name: "Composite", - className: "RestResultInformation", + className: "ResultInformation", + }, + }, + }, + }, +}; + +export const TranscriptionUpdated: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TranscriptionUpdated", + modelProperties: { + transcriptionUpdate: { + serializedName: "transcriptionUpdate", + type: { + name: "Composite", + className: "TranscriptionUpdate", }, }, callConnectionId: { serializedName: "callConnectionId", - readOnly: true, type: { name: "String", }, }, serverCallId: { serializedName: "serverCallId", - readOnly: true, type: { name: "String", }, }, correlationId: { serializedName: "correlationId", - readOnly: true, type: { name: "String", }, }, - }, - }, -}; - -export const AzureOpenAIDialog: coreClient.CompositeMapper = { - serializedName: "azureOpenAI", - type: { - name: "Composite", - className: "AzureOpenAIDialog", - uberParent: "BaseDialog", - polymorphicDiscriminator: BaseDialog.type.polymorphicDiscriminator, - modelProperties: { - ...BaseDialog.type.modelProperties, - }, - }, -}; - -export const PowerVirtualAgentsDialog: coreClient.CompositeMapper = { - serializedName: "powerVirtualAgents", - type: { - name: "Composite", - className: "PowerVirtualAgentsDialog", - uberParent: "BaseDialog", - polymorphicDiscriminator: BaseDialog.type.polymorphicDiscriminator, - modelProperties: { - ...BaseDialog.type.modelProperties, - botAppId: { - serializedName: "botAppId", - required: true, + operationContext: { + serializedName: "operationContext", type: { name: "String", }, }, - language: { - serializedName: "language", + resultInformation: { + serializedName: "resultInformation", type: { - name: "String", + name: "Composite", + className: "ResultInformation", }, }, }, }, }; - -export const AzureOpenAIDialogUpdate: coreClient.CompositeMapper = { - serializedName: "azureOpenAI", - type: { - name: "Composite", - className: "AzureOpenAIDialogUpdate", - uberParent: "DialogUpdateBase", - polymorphicDiscriminator: DialogUpdateBase.type.polymorphicDiscriminator, - modelProperties: { - ...DialogUpdateBase.type.modelProperties, - }, - }, -}; - -export let discriminators = { - BaseDialog: BaseDialog, - DialogUpdateBase: DialogUpdateBase, - "BaseDialog.azureOpenAI": AzureOpenAIDialog, - "BaseDialog.powerVirtualAgents": PowerVirtualAgentsDialog, - "DialogUpdateBase.azureOpenAI": AzureOpenAIDialogUpdate, -}; diff --git a/sdk/communication/communication-call-automation/src/generated/src/models/parameters.ts b/sdk/communication/communication-call-automation/src/generated/src/models/parameters.ts index 955b0b20b73f..efb13d248a70 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/models/parameters.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/models/parameters.ts @@ -16,27 +16,23 @@ import { AnswerCallRequest as AnswerCallRequestMapper, RedirectCallRequest as RedirectCallRequestMapper, RejectCallRequest as RejectCallRequestMapper, + ConnectRequest as ConnectRequestMapper, TransferToParticipantRequest as TransferToParticipantRequestMapper, AddParticipantRequest as AddParticipantRequestMapper, RemoveParticipantRequest as RemoveParticipantRequestMapper, MuteParticipantsRequest as MuteParticipantsRequestMapper, - UnmuteParticipantsRequest as UnmuteParticipantsRequestMapper, CancelAddParticipantRequest as CancelAddParticipantRequestMapper, PlayRequest as PlayRequestMapper, StartTranscriptionRequest as StartTranscriptionRequestMapper, StopTranscriptionRequest as StopTranscriptionRequestMapper, + UpdateTranscriptionRequest as UpdateTranscriptionRequestMapper, RecognizeRequest as RecognizeRequestMapper, ContinuousDtmfRecognitionRequest as ContinuousDtmfRecognitionRequestMapper, SendDtmfTonesRequest as SendDtmfTonesRequestMapper, - UpdateTranscriptionRequest as UpdateTranscriptionRequestMapper, HoldRequest as HoldRequestMapper, UnholdRequest as UnholdRequestMapper, - StartHoldMusicRequest as StartHoldMusicRequestMapper, - StopHoldMusicRequest as StopHoldMusicRequestMapper, StartMediaStreamingRequest as StartMediaStreamingRequestMapper, StopMediaStreamingRequest as StopMediaStreamingRequestMapper, - StartDialogRequest as StartDialogRequestMapper, - UpdateDialogRequest as UpdateDialogRequestMapper, StartCallRecordingRequest as StartCallRecordingRequestMapper, } from "../models/mappers"; @@ -84,7 +80,7 @@ export const endpoint: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2023-10-03-preview", + defaultValue: "2024-11-15-preview", isConstant: true, serializedName: "api-version", type: { @@ -128,6 +124,11 @@ export const rejectCallRequest: OperationParameter = { mapper: RejectCallRequestMapper, }; +export const connectRequest: OperationParameter = { + parameterPath: "connectRequest", + mapper: ConnectRequestMapper, +}; + export const callConnectionId: OperationURLParameter = { parameterPath: "callConnectionId", mapper: { @@ -159,11 +160,6 @@ export const muteParticipantsRequest: OperationParameter = { mapper: MuteParticipantsRequestMapper, }; -export const unmuteParticipantsRequest: OperationParameter = { - parameterPath: "unmuteParticipantsRequest", - mapper: UnmuteParticipantsRequestMapper, -}; - export const cancelAddParticipantRequest: OperationParameter = { parameterPath: "cancelAddParticipantRequest", mapper: CancelAddParticipantRequestMapper, @@ -207,6 +203,11 @@ export const stopTranscriptionRequest: OperationParameter = { mapper: StopTranscriptionRequestMapper, }; +export const updateTranscriptionRequest: OperationParameter = { + parameterPath: "updateTranscriptionRequest", + mapper: UpdateTranscriptionRequestMapper, +}; + export const recognizeRequest: OperationParameter = { parameterPath: "recognizeRequest", mapper: RecognizeRequestMapper, @@ -222,11 +223,6 @@ export const sendDtmfTonesRequest: OperationParameter = { mapper: SendDtmfTonesRequestMapper, }; -export const updateTranscriptionRequest: OperationParameter = { - parameterPath: "updateTranscriptionRequest", - mapper: UpdateTranscriptionRequestMapper, -}; - export const holdRequest: OperationParameter = { parameterPath: "holdRequest", mapper: HoldRequestMapper, @@ -237,16 +233,6 @@ export const unholdRequest: OperationParameter = { mapper: UnholdRequestMapper, }; -export const startHoldMusicRequest: OperationParameter = { - parameterPath: "startHoldMusicRequest", - mapper: StartHoldMusicRequestMapper, -}; - -export const stopHoldMusicRequest: OperationParameter = { - parameterPath: "stopHoldMusicRequest", - mapper: StopHoldMusicRequestMapper, -}; - export const startMediaStreamingRequest: OperationParameter = { parameterPath: "startMediaStreamingRequest", mapper: StartMediaStreamingRequestMapper, @@ -257,37 +243,6 @@ export const stopMediaStreamingRequest: OperationParameter = { mapper: StopMediaStreamingRequestMapper, }; -export const startDialogRequest: OperationParameter = { - parameterPath: "startDialogRequest", - mapper: StartDialogRequestMapper, -}; - -export const dialogId: OperationURLParameter = { - parameterPath: "dialogId", - mapper: { - serializedName: "dialogId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const operationCallbackUri: OperationQueryParameter = { - parameterPath: ["options", "operationCallbackUri"], - mapper: { - serializedName: "operationCallbackUri", - type: { - name: "String", - }, - }, -}; - -export const updateDialogRequest: OperationParameter = { - parameterPath: "updateDialogRequest", - mapper: UpdateDialogRequestMapper, -}; - export const startCallRecording: OperationParameter = { parameterPath: "startCallRecording", mapper: StartCallRecordingRequestMapper, diff --git a/sdk/communication/communication-call-automation/src/generated/src/operations/callConnection.ts b/sdk/communication/communication-call-automation/src/generated/src/operations/callConnection.ts index bee6ed521a63..d1047c2fe319 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operations/callConnection.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operations/callConnection.ts @@ -34,9 +34,6 @@ import { MuteParticipantsRequest, CallConnectionMuteOptionalParams, CallConnectionMuteResponse, - UnmuteParticipantsRequest, - CallConnectionUnmuteOptionalParams, - CallConnectionUnmuteResponse, CancelAddParticipantRequest, CallConnectionCancelAddParticipantOptionalParams, CallConnectionCancelAddParticipantResponse, @@ -256,23 +253,6 @@ export class CallConnectionImpl implements CallConnection { ); } - /** - * Unmute participants from the call using identifier. - * @param callConnectionId The call connection id. - * @param unmuteParticipantsRequest The participants to be unmuted from the call. - * @param options The options parameters. - */ - unmute( - callConnectionId: string, - unmuteParticipantsRequest: UnmuteParticipantsRequest, - options?: CallConnectionUnmuteOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, unmuteParticipantsRequest, options }, - unmuteOperationSpec, - ); - } - /** * Cancel add participant operation. * @param callConnectionId The call connection Id @@ -483,29 +463,6 @@ const muteOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const unmuteOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}/participants:unmute", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.UnmuteParticipantsResponse, - }, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.unmuteParticipantsRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [Parameters.endpoint, Parameters.callConnectionId], - headerParameters: [ - Parameters.contentType, - Parameters.accept, - Parameters.repeatabilityRequestID, - Parameters.repeatabilityFirstSent, - ], - mediaType: "json", - serializer, -}; const cancelAddParticipantOperationSpec: coreClient.OperationSpec = { path: "/calling/callConnections/{callConnectionId}/participants:cancelAddParticipant", httpMethod: "POST", diff --git a/sdk/communication/communication-call-automation/src/generated/src/operations/callDialog.ts b/sdk/communication/communication-call-automation/src/generated/src/operations/callDialog.ts deleted file mode 100644 index ed2a0cf76d98..000000000000 --- a/sdk/communication/communication-call-automation/src/generated/src/operations/callDialog.ts +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -import { CallDialog } from "../operationsInterfaces"; -import * as coreClient from "@azure/core-client"; -import * as Mappers from "../models/mappers"; -import * as Parameters from "../models/parameters"; -import { CallAutomationApiClient } from "../callAutomationApiClient"; -import { - StartDialogRequest, - CallDialogStartDialogOptionalParams, - CallDialogStartDialogResponse, - CallDialogStopDialogOptionalParams, - UpdateDialogRequest, - CallDialogUpdateDialogOptionalParams, -} from "../models"; - -/** Class containing CallDialog operations. */ -export class CallDialogImpl implements CallDialog { - private readonly client: CallAutomationApiClient; - - /** - * Initialize a new instance of the class CallDialog class. - * @param client Reference to the service client - */ - constructor(client: CallAutomationApiClient) { - this.client = client; - } - - /** - * Start a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param startDialogRequest The start dialog request - * @param options The options parameters. - */ - startDialog( - callConnectionId: string, - dialogId: string, - startDialogRequest: StartDialogRequest, - options?: CallDialogStartDialogOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, dialogId, startDialogRequest, options }, - startDialogOperationSpec, - ); - } - - /** - * Stop a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param options The options parameters. - */ - stopDialog( - callConnectionId: string, - dialogId: string, - options?: CallDialogStopDialogOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, dialogId, options }, - stopDialogOperationSpec, - ); - } - - /** - * Update a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param updateDialogRequest The update dialog request - * @param options The options parameters. - */ - updateDialog( - callConnectionId: string, - dialogId: string, - updateDialogRequest: UpdateDialogRequest, - options?: CallDialogUpdateDialogOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, dialogId, updateDialogRequest, options }, - updateDialogOperationSpec, - ); - } -} -// Operation Specifications -const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); - -const startDialogOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}/dialogs/{dialogId}", - httpMethod: "PUT", - responses: { - 201: { - bodyMapper: Mappers.DialogStateResponse, - }, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.startDialogRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.endpoint, - Parameters.callConnectionId, - Parameters.dialogId, - ], - headerParameters: [Parameters.contentType, Parameters.accept], - mediaType: "json", - serializer, -}; -const stopDialogOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}/dialogs/{dialogId}", - httpMethod: "DELETE", - responses: { - 204: {}, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - queryParameters: [Parameters.apiVersion, Parameters.operationCallbackUri], - urlParameters: [ - Parameters.endpoint, - Parameters.callConnectionId, - Parameters.dialogId, - ], - headerParameters: [Parameters.accept], - serializer, -}; -const updateDialogOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}/dialogs/{dialogId}", - httpMethod: "PATCH", - responses: { - 200: {}, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.updateDialogRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.endpoint, - Parameters.callConnectionId, - Parameters.dialogId, - ], - headerParameters: [Parameters.contentType, Parameters.accept], - mediaType: "json", - serializer, -}; diff --git a/sdk/communication/communication-call-automation/src/generated/src/operations/callMedia.ts b/sdk/communication/communication-call-automation/src/generated/src/operations/callMedia.ts index 222203b43c57..7c26cb1875fa 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operations/callMedia.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operations/callMedia.ts @@ -18,6 +18,8 @@ import { CallMediaStartTranscriptionOptionalParams, StopTranscriptionRequest, CallMediaStopTranscriptionOptionalParams, + UpdateTranscriptionRequest, + CallMediaUpdateTranscriptionOptionalParams, CallMediaCancelAllMediaOperationsOptionalParams, RecognizeRequest, CallMediaRecognizeOptionalParams, @@ -27,16 +29,10 @@ import { SendDtmfTonesRequest, CallMediaSendDtmfTonesOptionalParams, CallMediaSendDtmfTonesResponse, - UpdateTranscriptionRequest, - CallMediaUpdateTranscriptionOptionalParams, HoldRequest, CallMediaHoldOptionalParams, UnholdRequest, CallMediaUnholdOptionalParams, - StartHoldMusicRequest, - CallMediaStartHoldMusicOptionalParams, - StopHoldMusicRequest, - CallMediaStopHoldMusicOptionalParams, StartMediaStreamingRequest, CallMediaStartMediaStreamingOptionalParams, StopMediaStreamingRequest, @@ -106,6 +102,23 @@ export class CallMediaImpl implements CallMedia { ); } + /** + * API to change transcription language. + * @param callConnectionId The call connection id + * @param updateTranscriptionRequest The UpdateTranscription request + * @param options The options parameters. + */ + updateTranscription( + callConnectionId: string, + updateTranscriptionRequest: UpdateTranscriptionRequest, + options?: CallMediaUpdateTranscriptionOptionalParams, + ): Promise { + return this.client.sendOperationRequest( + { callConnectionId, updateTranscriptionRequest, options }, + updateTranscriptionOperationSpec, + ); + } + /** * Cancel all media operations in a call. * @param callConnectionId The call connection id @@ -189,23 +202,6 @@ export class CallMediaImpl implements CallMedia { ); } - /** - * API to change transcription language. - * @param callConnectionId The call connection id - * @param updateTranscriptionRequest The UpdateTranscription request - * @param options The options parameters. - */ - updateTranscription( - callConnectionId: string, - updateTranscriptionRequest: UpdateTranscriptionRequest, - options?: CallMediaUpdateTranscriptionOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, updateTranscriptionRequest, options }, - updateTranscriptionOperationSpec, - ); - } - /** * Hold participant from the call using identifier. * @param callConnectionId The call connection id. @@ -240,40 +236,6 @@ export class CallMediaImpl implements CallMedia { ); } - /** - * Hold participant from the call using identifier. - * @param callConnectionId The call connection id. - * @param startHoldMusicRequest The participants to be hold from the call. - * @param options The options parameters. - */ - startHoldMusic( - callConnectionId: string, - startHoldMusicRequest: StartHoldMusicRequest, - options?: CallMediaStartHoldMusicOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, startHoldMusicRequest, options }, - startHoldMusicOperationSpec, - ); - } - - /** - * Unhold participants from the call using identifier. - * @param callConnectionId The call connection id. - * @param stopHoldMusicRequest The participants to be hold from the call. - * @param options The options parameters. - */ - stopHoldMusic( - callConnectionId: string, - stopHoldMusicRequest: StopHoldMusicRequest, - options?: CallMediaStopHoldMusicOptionalParams, - ): Promise { - return this.client.sendOperationRequest( - { callConnectionId, stopHoldMusicRequest, options }, - stopHoldMusicOperationSpec, - ); - } - /** * Starts media streaming in the call. * @param callConnectionId The call connection id. @@ -359,6 +321,22 @@ const stopTranscriptionOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; +const updateTranscriptionOperationSpec: coreClient.OperationSpec = { + path: "/calling/callConnections/{callConnectionId}:updateTranscription", + httpMethod: "POST", + responses: { + 202: {}, + default: { + bodyMapper: Mappers.CommunicationErrorResponse, + }, + }, + requestBody: Parameters.updateTranscriptionRequest, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.endpoint, Parameters.callConnectionId], + headerParameters: [Parameters.contentType, Parameters.accept], + mediaType: "json", + serializer, +}; const cancelAllMediaOperationsOperationSpec: coreClient.OperationSpec = { path: "/calling/callConnections/{callConnectionId}:cancelAllMediaOperations", httpMethod: "POST", @@ -444,22 +422,6 @@ const sendDtmfTonesOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const updateTranscriptionOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}:updateTranscription", - httpMethod: "POST", - responses: { - 202: {}, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.updateTranscriptionRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [Parameters.endpoint, Parameters.callConnectionId], - headerParameters: [Parameters.contentType, Parameters.accept], - mediaType: "json", - serializer, -}; const holdOperationSpec: coreClient.OperationSpec = { path: "/calling/callConnections/{callConnectionId}:hold", httpMethod: "POST", @@ -492,38 +454,6 @@ const unholdOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer, }; -const startHoldMusicOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}:startHoldMusic", - httpMethod: "POST", - responses: { - 200: {}, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.startHoldMusicRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [Parameters.endpoint, Parameters.callConnectionId], - headerParameters: [Parameters.contentType, Parameters.accept], - mediaType: "json", - serializer, -}; -const stopHoldMusicOperationSpec: coreClient.OperationSpec = { - path: "/calling/callConnections/{callConnectionId}:stopHoldMusic", - httpMethod: "POST", - responses: { - 200: {}, - default: { - bodyMapper: Mappers.CommunicationErrorResponse, - }, - }, - requestBody: Parameters.stopHoldMusicRequest, - queryParameters: [Parameters.apiVersion], - urlParameters: [Parameters.endpoint, Parameters.callConnectionId], - headerParameters: [Parameters.contentType, Parameters.accept], - mediaType: "json", - serializer, -}; const startMediaStreamingOperationSpec: coreClient.OperationSpec = { path: "/calling/callConnections/{callConnectionId}:startMediaStreaming", httpMethod: "POST", diff --git a/sdk/communication/communication-call-automation/src/generated/src/operations/index.ts b/sdk/communication/communication-call-automation/src/generated/src/operations/index.ts index 0e60c378238d..e75b6176c82e 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operations/index.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operations/index.ts @@ -8,5 +8,4 @@ export * from "./callConnection"; export * from "./callMedia"; -export * from "./callDialog"; export * from "./callRecording"; diff --git a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callConnection.ts b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callConnection.ts index abf0d138172f..d57bff03e437 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callConnection.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callConnection.ts @@ -26,9 +26,6 @@ import { MuteParticipantsRequest, CallConnectionMuteOptionalParams, CallConnectionMuteResponse, - UnmuteParticipantsRequest, - CallConnectionUnmuteOptionalParams, - CallConnectionUnmuteResponse, CancelAddParticipantRequest, CallConnectionCancelAddParticipantOptionalParams, CallConnectionCancelAddParticipantResponse, @@ -120,17 +117,6 @@ export interface CallConnection { muteParticipantsRequest: MuteParticipantsRequest, options?: CallConnectionMuteOptionalParams, ): Promise; - /** - * Unmute participants from the call using identifier. - * @param callConnectionId The call connection id. - * @param unmuteParticipantsRequest The participants to be unmuted from the call. - * @param options The options parameters. - */ - unmute( - callConnectionId: string, - unmuteParticipantsRequest: UnmuteParticipantsRequest, - options?: CallConnectionUnmuteOptionalParams, - ): Promise; /** * Cancel add participant operation. * @param callConnectionId The call connection Id diff --git a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callDialog.ts b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callDialog.ts deleted file mode 100644 index 731b8415380f..000000000000 --- a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callDialog.ts +++ /dev/null @@ -1,57 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -import { - StartDialogRequest, - CallDialogStartDialogOptionalParams, - CallDialogStartDialogResponse, - CallDialogStopDialogOptionalParams, - UpdateDialogRequest, - CallDialogUpdateDialogOptionalParams, -} from "../models"; - -/** Interface representing a CallDialog. */ -export interface CallDialog { - /** - * Start a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param startDialogRequest The start dialog request - * @param options The options parameters. - */ - startDialog( - callConnectionId: string, - dialogId: string, - startDialogRequest: StartDialogRequest, - options?: CallDialogStartDialogOptionalParams, - ): Promise; - /** - * Stop a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param options The options parameters. - */ - stopDialog( - callConnectionId: string, - dialogId: string, - options?: CallDialogStopDialogOptionalParams, - ): Promise; - /** - * Update a dialog. - * @param callConnectionId The call connection id - * @param dialogId The dialog id - * @param updateDialogRequest The update dialog request - * @param options The options parameters. - */ - updateDialog( - callConnectionId: string, - dialogId: string, - updateDialogRequest: UpdateDialogRequest, - options?: CallDialogUpdateDialogOptionalParams, - ): Promise; -} diff --git a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callMedia.ts b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callMedia.ts index 6f2b4f3f461a..bd9e3f1986ab 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callMedia.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/callMedia.ts @@ -13,6 +13,8 @@ import { CallMediaStartTranscriptionOptionalParams, StopTranscriptionRequest, CallMediaStopTranscriptionOptionalParams, + UpdateTranscriptionRequest, + CallMediaUpdateTranscriptionOptionalParams, CallMediaCancelAllMediaOperationsOptionalParams, RecognizeRequest, CallMediaRecognizeOptionalParams, @@ -22,16 +24,10 @@ import { SendDtmfTonesRequest, CallMediaSendDtmfTonesOptionalParams, CallMediaSendDtmfTonesResponse, - UpdateTranscriptionRequest, - CallMediaUpdateTranscriptionOptionalParams, HoldRequest, CallMediaHoldOptionalParams, UnholdRequest, CallMediaUnholdOptionalParams, - StartHoldMusicRequest, - CallMediaStartHoldMusicOptionalParams, - StopHoldMusicRequest, - CallMediaStopHoldMusicOptionalParams, StartMediaStreamingRequest, CallMediaStartMediaStreamingOptionalParams, StopMediaStreamingRequest, @@ -73,6 +69,17 @@ export interface CallMedia { stopTranscriptionRequest: StopTranscriptionRequest, options?: CallMediaStopTranscriptionOptionalParams, ): Promise; + /** + * API to change transcription language. + * @param callConnectionId The call connection id + * @param updateTranscriptionRequest The UpdateTranscription request + * @param options The options parameters. + */ + updateTranscription( + callConnectionId: string, + updateTranscriptionRequest: UpdateTranscriptionRequest, + options?: CallMediaUpdateTranscriptionOptionalParams, + ): Promise; /** * Cancel all media operations in a call. * @param callConnectionId The call connection id @@ -126,17 +133,6 @@ export interface CallMedia { sendDtmfTonesRequest: SendDtmfTonesRequest, options?: CallMediaSendDtmfTonesOptionalParams, ): Promise; - /** - * API to change transcription language. - * @param callConnectionId The call connection id - * @param updateTranscriptionRequest The UpdateTranscription request - * @param options The options parameters. - */ - updateTranscription( - callConnectionId: string, - updateTranscriptionRequest: UpdateTranscriptionRequest, - options?: CallMediaUpdateTranscriptionOptionalParams, - ): Promise; /** * Hold participant from the call using identifier. * @param callConnectionId The call connection id. @@ -159,28 +155,6 @@ export interface CallMedia { unholdRequest: UnholdRequest, options?: CallMediaUnholdOptionalParams, ): Promise; - /** - * Hold participant from the call using identifier. - * @param callConnectionId The call connection id. - * @param startHoldMusicRequest The participants to be hold from the call. - * @param options The options parameters. - */ - startHoldMusic( - callConnectionId: string, - startHoldMusicRequest: StartHoldMusicRequest, - options?: CallMediaStartHoldMusicOptionalParams, - ): Promise; - /** - * Unhold participants from the call using identifier. - * @param callConnectionId The call connection id. - * @param stopHoldMusicRequest The participants to be hold from the call. - * @param options The options parameters. - */ - stopHoldMusic( - callConnectionId: string, - stopHoldMusicRequest: StopHoldMusicRequest, - options?: CallMediaStopHoldMusicOptionalParams, - ): Promise; /** * Starts media streaming in the call. * @param callConnectionId The call connection id. diff --git a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/index.ts b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/index.ts index 0e60c378238d..e75b6176c82e 100644 --- a/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/index.ts +++ b/sdk/communication/communication-call-automation/src/generated/src/operationsInterfaces/index.ts @@ -8,5 +8,4 @@ export * from "./callConnection"; export * from "./callMedia"; -export * from "./callDialog"; export * from "./callRecording"; diff --git a/sdk/communication/communication-call-automation/src/index.ts b/sdk/communication/communication-call-automation/src/index.ts index c93540573c04..7f99b2aaff5b 100644 --- a/sdk/communication/communication-call-automation/src/index.ts +++ b/sdk/communication/communication-call-automation/src/index.ts @@ -5,9 +5,9 @@ export * from "./callConnection"; export * from "./callMedia"; export * from "./callRecording"; export * from "./callAutomationEventParser"; +export * from "./streamingData"; export * from "./models/models"; export * from "./models/options"; export * from "./models/responses"; export * from "./models/events"; -export * from "./eventprocessor/callAutomationEventProcessor"; -export * from "./eventprocessor/eventResponses"; +export * from "./models/streaming"; diff --git a/sdk/communication/communication-call-automation/src/models/constants.ts b/sdk/communication/communication-call-automation/src/models/constants.ts index 8bf174b4ca42..6880e3dd4d15 100644 --- a/sdk/communication/communication-call-automation/src/models/constants.ts +++ b/sdk/communication/communication-call-automation/src/models/constants.ts @@ -1,4 +1,4 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -export const SDK_VERSION: string = "1.3.0-beta.1"; +export const SDK_VERSION: string = "1.4.0-beta.1"; diff --git a/sdk/communication/communication-call-automation/src/models/events.ts b/sdk/communication/communication-call-automation/src/models/events.ts index 4b25abc05042..eaf8550ebbfc 100644 --- a/sdk/communication/communication-call-automation/src/models/events.ts +++ b/sdk/communication/communication-call-automation/src/models/events.ts @@ -1,44 +1,49 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { CommunicationIdentifier } from "@azure/communication-common"; - -import type { - RestAddParticipantSucceeded, - RestAddParticipantFailed, - RestRemoveParticipantSucceeded, - RestRemoveParticipantFailed, - RestCallConnected, - RestCallDisconnected, - RestCallTransferAccepted, - RestCallTransferFailed, - RestParticipantsUpdated, - RestRecordingStateChanged, - RestPlayCompleted, - RestPlayFailed, - RestPlayCanceled, - RestRecognizeCompleted, - RestRecognizeFailed, - RestRecognizeCanceled, - RestResultInformation, - RestContinuousDtmfRecognitionToneReceived, - RestContinuousDtmfRecognitionToneFailed, - RestContinuousDtmfRecognitionStopped, - RestSendDtmfTonesCompleted, - RestSendDtmfTonesFailed, +import { CommunicationIdentifier } from "@azure/communication-common"; + +import { + AddParticipantSucceeded as RestAddParticipantSucceeded, + AddParticipantFailed as RestAddParticipantFailed, + RemoveParticipantSucceeded as RestRemoveParticipantSucceeded, + RemoveParticipantFailed as RestRemoveParticipantFailed, + CallConnected as RestCallConnected, + CallDisconnected as RestCallDisconnected, + CallTransferAccepted as RestCallTransferAccepted, + CallTransferFailed as RestCallTransferFailed, + ParticipantsUpdated as RestParticipantsUpdated, + RecordingStateChanged as RestRecordingStateChanged, + PlayStarted as RestPlayStarted, + PlayCompleted as RestPlayCompleted, + PlayFailed as RestPlayFailed, + PlayCanceled as RestPlayCanceled, + RecognizeCompleted as RestRecognizeCompleted, + RecognizeFailed as RestRecognizeFailed, + RecognizeCanceled as RestRecognizeCanceled, + ResultInformation as RestResultInformation, + ContinuousDtmfRecognitionToneReceived as RestContinuousDtmfRecognitionToneReceived, + ContinuousDtmfRecognitionToneFailed as RestContinuousDtmfRecognitionToneFailed, + ContinuousDtmfRecognitionStopped as RestContinuousDtmfRecognitionStopped, + SendDtmfTonesCompleted as RestSendDtmfTonesCompleted, + SendDtmfTonesFailed as RestSendDtmfTonesFailed, Tone, - RestCancelAddParticipantSucceeded, - RestCancelAddParticipantFailed, - RestTranscriptionStarted, - RestTranscriptionStopped, - RestTranscriptionUpdated, - RestTranscriptionFailed, - RestCreateCallFailed, - RestAnswerFailed, - RestHoldFailed, + CancelAddParticipantSucceeded as RestCancelAddParticipantSucceeded, + CancelAddParticipantFailed as RestCancelAddParticipantFailed, + ConnectFailed as RestConnectFailed, + TranscriptionStarted as RestTranscriptionStarted, + TranscriptionStopped as RestTranscriptionStopped, + TranscriptionUpdated as RestTranscriptionUpdated, + TranscriptionFailed as RestTranscriptionFailed, + HoldFailed as RestHoldFailed, + MediaStreamingStarted as RestMediaStreamingStarted, + MediaStreamingStopped as RestMediaStreamingStopped, + MediaStreamingFailed as RestMediaStreamingFailed, + CreateCallFailed as RestCreateCallFailed, + AnswerFailed as RestAnswerFailed, } from "../generated/src/models"; -import type { CallParticipant } from "./models"; +import { CallParticipant } from "./models"; /** Callback events for Call Automation */ export type CallAutomationEvent = @@ -52,6 +57,7 @@ export type CallAutomationEvent = | CallTransferFailed | ParticipantsUpdated | RecordingStateChanged + | PlayStarted | PlayCompleted | PlayFailed | PlayCanceled @@ -65,14 +71,56 @@ export type CallAutomationEvent = | SendDtmfTonesFailed | CancelAddParticipantSucceeded | CancelAddParticipantFailed + | ConnectFailed | TranscriptionStarted | TranscriptionStopped | TranscriptionUpdated | TranscriptionFailed + | HoldFailed + | MediaStreamingStarted + | MediaStreamingStopped + | MediaStreamingFailed | CreateCallFailed - | AnswerFailed - | HoldFailed; + | AnswerFailed; +export { + RestAddParticipantSucceeded, + RestAddParticipantFailed, + RestRemoveParticipantSucceeded, + RestRemoveParticipantFailed, + RestCallConnected, + RestCallDisconnected, + RestCallTransferAccepted, + RestCallTransferFailed, + RestParticipantsUpdated, + RestRecordingStateChanged, + RestPlayStarted, + RestPlayCompleted, + RestPlayFailed, + RestPlayCanceled, + RestRecognizeCompleted, + RestRecognizeFailed, + RestRecognizeCanceled, + RestResultInformation, + RestContinuousDtmfRecognitionToneReceived, + RestContinuousDtmfRecognitionToneFailed, + RestContinuousDtmfRecognitionStopped, + RestSendDtmfTonesCompleted, + RestSendDtmfTonesFailed, + RestCancelAddParticipantSucceeded, + RestCancelAddParticipantFailed, + RestConnectFailed, + RestTranscriptionStarted, + RestTranscriptionStopped, + RestTranscriptionUpdated, + RestTranscriptionFailed, + RestHoldFailed, + RestMediaStreamingStarted, + RestMediaStreamingStopped, + RestMediaStreamingFailed, + RestCreateCallFailed, + RestAnswerFailed, +}; export interface ResultInformation extends Omit { /** The error code. */ @@ -165,26 +213,36 @@ export interface RemoveParticipantFailed /** Event when call was established. */ export interface CallConnected - extends Omit { + extends Omit< + RestCallConnected, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { /** Call connection ID. */ callConnectionId: string; /** Server call ID. */ serverCallId: string; /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "CallConnected"; } /** Event when all participants left and call was terminated. */ export interface CallDisconnected - extends Omit { + extends Omit< + RestCallDisconnected, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { /** Call connection ID. */ callConnectionId: string; /** Server call ID. */ serverCallId: string; /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "CallDisconnected"; } @@ -238,7 +296,7 @@ export interface CallTransferFailed export interface ParticipantsUpdated extends Omit< RestParticipantsUpdated, - "callConnectionId" | "serverCallId" | "correlationId" | "participants" + "callConnectionId" | "serverCallId" | "correlationId" | "participants" | "resultInformation" > { /** Call connection ID. */ callConnectionId: string; @@ -248,23 +306,48 @@ export interface ParticipantsUpdated correlationId: string; /** The list of participants in the call. */ participants: CallParticipant[]; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "ParticipantsUpdated"; } /** Event when Recording state has been changed. */ export interface RecordingStateChanged - extends Omit { + extends Omit< + RestRecordingStateChanged, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { /** Call connection ID. */ callConnectionId: string; /** Server call ID. */ serverCallId: string; /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "RecordingStateChanged"; } +/** Event when Media play was successfully started. */ +export interface PlayStarted + extends Omit< + RestPlayStarted, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { + /** Call connection ID. */ + callConnectionId: string; + /** Server call ID. */ + serverCallId: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** kind of this event. */ + kind: "PlayStarted"; +} + /** Event when Media play was successfully completed. */ export interface PlayCompleted extends Omit< @@ -303,13 +386,18 @@ export interface PlayFailed /** Event when Media play was canceled by Cancel operation. */ export interface PlayCanceled - extends Omit { + extends Omit< + RestPlayCanceled, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { /** Call connection ID. */ callConnectionId: string; /** Server call ID. */ serverCallId: string; /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "PlayCanceled"; } @@ -352,13 +440,18 @@ export interface RecognizeFailed /** Event when Media recognize was canceled by Cancel operation. */ export interface RecognizeCanceled - extends Omit { + extends Omit< + RestRecognizeCanceled, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { /** Call connection ID. */ callConnectionId: string; /** Server call ID. */ serverCallId: string; /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "RecognizeCanceled"; } @@ -466,7 +559,7 @@ export interface SendDtmfTonesFailed export interface CancelAddParticipantSucceeded extends Omit< RestCancelAddParticipantSucceeded, - "callConnectionId" | "serverCallId" | "correlationId" | "invitationId" + "callConnectionId" | "serverCallId" | "correlationId" | "invitationId" | "resultInformation" > { /** Call connection ID. */ callConnectionId: string; @@ -476,6 +569,8 @@ export interface CancelAddParticipantSucceeded correlationId: string; /** Invitation ID used to cancel the add participant request. */ invitationId: string; + /** Contains the resulting SIP code/sub-code and message from NGC services. */ + resultInformation?: ResultInformation; /** kind of this event. */ kind: "CancelAddParticipantSucceeded"; } @@ -500,6 +595,21 @@ export interface CancelAddParticipantFailed kind: "CancelAddParticipantFailed"; } +export interface ConnectFailed + extends Omit< + RestConnectFailed, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { + /** Call connection ID. */ + callConnectionId: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** kind of this event. */ + kind: "ConnectFailed"; +} + export interface TranscriptionStarted extends Omit< RestTranscriptionStarted, @@ -568,9 +678,9 @@ export interface TranscriptionFailed kind: "TranscriptionFailed"; } -export interface CreateCallFailed +export interface HoldFailed extends Omit< - RestCreateCallFailed, + RestHoldFailed, "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" > { /** Call connection ID. */ @@ -580,14 +690,14 @@ export interface CreateCallFailed /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; /** Contains the resulting SIP code, sub-code and message. */ - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; /** kind of this event. */ - kind: "CreateCallFailed"; + kind: "HoldFailed"; } -export interface AnswerFailed +export interface MediaStreamingStarted extends Omit< - RestAnswerFailed, + RestMediaStreamingStarted, "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" > { /** Call connection ID. */ @@ -597,14 +707,14 @@ export interface AnswerFailed /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; /** Contains the resulting SIP code, sub-code and message. */ - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; /** kind of this event. */ - kind: "AnswerFailed"; + kind: "MediaStreamingStarted"; } -export interface HoldFailed +export interface MediaStreamingStopped extends Omit< - RestHoldFailed, + RestMediaStreamingStopped, "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" > { /** Call connection ID. */ @@ -614,7 +724,57 @@ export interface HoldFailed /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ correlationId: string; /** Contains the resulting SIP code, sub-code and message. */ - resultInformation?: RestResultInformation; + resultInformation?: ResultInformation; /** kind of this event. */ - kind: "HoldFailed"; + kind: "MediaStreamingStopped"; +} + +export interface MediaStreamingFailed + extends Omit< + RestMediaStreamingFailed, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { + /** Call connection ID. */ + callConnectionId: string; + /** Server call ID. */ + serverCallId: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** kind of this event. */ + kind: "MediaStreamingFailed"; +} + +export interface CreateCallFailed + extends Omit< + RestCreateCallFailed, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { + /** Call connection ID. */ + callConnectionId: string; + /** Server call ID. */ + serverCallId: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** kind of this event. */ + kind: "CreateCallFailed"; +} +export interface AnswerFailed + extends Omit< + RestAnswerFailed, + "callConnectionId" | "serverCallId" | "correlationId" | "resultInformation" + > { + /** Call connection ID. */ + callConnectionId: string; + /** Server call ID. */ + serverCallId: string; + /** Correlation ID for event to call correlation. Also called ChainId for skype chain ID. */ + correlationId: string; + /** Contains the resulting SIP code, sub-code and message. */ + resultInformation?: ResultInformation; + /** kind of this event. */ + kind: "AnswerFailed"; } diff --git a/sdk/communication/communication-call-automation/src/models/models.ts b/sdk/communication/communication-call-automation/src/models/models.ts index 7f310cb8e9c3..8be63958d12b 100644 --- a/sdk/communication/communication-call-automation/src/models/models.ts +++ b/sdk/communication/communication-call-automation/src/models/models.ts @@ -1,34 +1,41 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { +import { CommunicationIdentifier, CommunicationUserIdentifier, MicrosoftTeamsUserIdentifier, MicrosoftTeamsAppIdentifier, PhoneNumberIdentifier, } from "@azure/communication-common"; -import type { CallConnectionStateModel } from "../generated/src"; +import { + CallConnectionStateModel, + MediaStreamingSubscription, + TranscriptionSubscription, +} from "../generated/src"; export { CallConnectionStateModel, CallRejectReason, KnownCallRejectReason, - KnownMediaStreamingAudioChannelType, - KnownMediaStreamingContentType, - KnownMediaStreamingTransportType, MediaStreamingAudioChannelType, - MediaStreamingConfiguration, + KnownMediaStreamingAudioChannelType, + MediaStreamingOptions, MediaStreamingContentType, + KnownMediaStreamingContentType, MediaStreamingTransportType, - TranscriptionConfiguration, + KnownMediaStreamingTransportType, + MediaStreamingSubscription, + TranscriptionOptions, TranscriptionTransportType, + TranscriptionSubscription, RecognitionType, ChoiceResult, DtmfResult, SpeechResult, RecordingState, Tone, + AudioFormat, } from "../generated/src/models/index"; /** Properties of a call connection */ @@ -52,12 +59,16 @@ export interface CallConnectionProperties { callConnectionState?: CallConnectionStateModel; /** The callback URL. */ callbackUrl?: string; - /** SubscriptionId for media streaming */ - mediaSubscriptionId?: string; + /** Subscription for media streaming */ + mediaStreamingSubscription?: MediaStreamingSubscription; + /** Subscription for transcription */ + transcriptionSubscription?: TranscriptionSubscription; /** The correlation ID. */ correlationId?: string; /** Identity of the answering entity. Only populated when identity is provided in the request. */ answeredby?: CommunicationUserIdentifier; + /** Identity of the original Pstn target of an incoming Call. Only populated when the original target is a Pstn number. */ + answeredFor?: PhoneNumberIdentifier; } /** Contract model of an ACS call participant */ @@ -88,8 +99,6 @@ export enum VoiceKind { export interface PlaySource { /** @deprecated Not in use, instead use playsourcecacheid for similar functionality*/ playsourcacheid?: string; - /** Sets the play source cache id.*/ - playSourceCacheId?: string; } /** The FileSource model. */ @@ -164,8 +173,6 @@ export interface RecognitionChoice { export enum RecognizeInputType { /** Dtmf */ Dtmf = "dtmf", - /** Choices */ - Choices = "choices", } /** Call invitee details. */ @@ -184,7 +191,7 @@ export interface CallInvite { } /** The locator type of a call. */ -export type CallLocatorType = "serverCallLocator" | "groupCallLocator"; +export type CallLocatorType = "serverCallLocator" | "groupCallLocator" | "roomCallLocator"; /** The content type of a call recording. */ export type RecordingContent = "audio" | "audioVideo"; diff --git a/sdk/communication/communication-call-automation/src/models/options.ts b/sdk/communication/communication-call-automation/src/models/options.ts index a4f49951f974..e7b2bf5d261a 100644 --- a/sdk/communication/communication-call-automation/src/models/options.ts +++ b/sdk/communication/communication-call-automation/src/models/options.ts @@ -1,11 +1,11 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { PhoneNumberIdentifier, CommunicationIdentifier } from "@azure/communication-common"; -import type { OperationOptions } from "@azure/core-client"; -import type { - MediaStreamingConfiguration, - TranscriptionConfiguration, +import { PhoneNumberIdentifier, CommunicationIdentifier } from "@azure/communication-common"; +import { OperationOptions } from "@azure/core-client"; +import { + MediaStreamingOptions, + TranscriptionOptions, CallRejectReason, FileSource, TextSource, @@ -26,6 +26,8 @@ import type { export interface CallMediaRecognizeOptions extends OperationOptions { /** The source of the audio to be played for recognition. */ playPrompt?: FileSource | TextSource | SsmlSource; + /** The list source of the audio to be played for recognition. */ + playPrompts?: (FileSource | TextSource | SsmlSource)[]; /** If set recognize can barge into other existing queued-up/currently-processing requests. */ interruptCallMediaOperation?: boolean; /** @deprecated Not in use, instead use interruptCallMediaOperation for similar functionality*/ @@ -36,8 +38,6 @@ export interface CallMediaRecognizeOptions extends OperationOptions { interruptPrompt?: boolean; /** Time to wait for first input after prompt. */ initialSilenceTimeoutInSeconds?: number; - /** speechModelEndpointId. */ - speechModelEndpointId?: string; /** * Set a callback URL that overrides the default callback URL set by CreateCall/AnswerCall for this operation. * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. @@ -111,11 +111,9 @@ export interface CreateCallOptions extends OperationOptions { /** AI options for the call. */ callIntelligenceOptions?: CallIntelligenceOptions; /** Configuration of Media streaming. */ - mediaStreamingConfiguration?: MediaStreamingConfiguration; + mediaStreamingOptions?: MediaStreamingOptions; /** Configuration of live transcription. */ - transcriptionConfiguration?: TranscriptionConfiguration; - /** The Custom Context. */ - customCallingContext?: CustomCallingContext; + transcriptionOptions?: TranscriptionOptions; } /** @@ -125,9 +123,9 @@ export interface AnswerCallOptions extends OperationOptions { /** AI options for the call. */ callIntelligenceOptions?: CallIntelligenceOptions; /** Configuration of Media streaming. */ - mediaStreamingConfiguration?: MediaStreamingConfiguration; + mediaStreamingOptions?: MediaStreamingOptions; /** Configuration of live transcription. */ - transcriptionConfiguration?: TranscriptionConfiguration; + transcriptionOptions?: TranscriptionOptions; /** The operation context. */ operationContext?: string; } @@ -135,11 +133,7 @@ export interface AnswerCallOptions extends OperationOptions { /** * Options to redirect call. */ -export interface RedirectCallOptions extends OperationOptions { - /** The Custom Context. */ - customCallingContext?: CustomCallingContext; -} - +export type RedirectCallOptions = OperationOptions; /** * Options to reject call. */ @@ -219,6 +213,14 @@ export interface PlayOptions extends OperationOptions { operationCallbackUrl?: string; } +/** + * Options to playToAll audio. + */ +export interface PlayToAllOptions extends PlayOptions { + /** If set play can barge into other existing queued-up/currently-processing requests. */ + interruptCallMediaOperation?: boolean; +} + /** * Options to get call connection properties. */ @@ -339,6 +341,20 @@ export interface CancelAddParticipantOperationOptions extends OperationOptions { operationCallbackUrl?: string; } +/** + * Options to Connect request. + */ +export interface ConnectCallOptions extends OperationOptions { + /** Used by customers to correlate the request to the response event. */ + operationContext?: string; + /** AI options for the call. */ + callIntelligenceOptions?: CallIntelligenceOptions; + /** Configuration of Media streaming. */ + mediaStreamingOptions?: MediaStreamingOptions; + /** Configuration of live transcription. */ + transcriptionOptions?: TranscriptionOptions; +} + /** * Options to start transcription */ @@ -347,6 +363,18 @@ export interface StartTranscriptionOptions extends OperationOptions { locale?: string; /** The value to identify context of the operation. */ operationContext?: string; + /** Endpoint where the custom model was deployed. */ + speechRecognitionModelEndpointId?: string; +} + +/** + * Options to update transcription + */ +export interface UpdateTranscriptionOptions extends OperationOptions { + /** Endpoint where the custom model was deployed. */ + speechRecognitionModelEndpointId?: string; + /** The value to identify context of the operation. */ + operationContext?: string; } /** @@ -365,8 +393,8 @@ export interface HoldOptions extends OperationOptions { playSource?: FileSource | TextSource | SsmlSource; /** Operation Context. */ operationContext?: string; - /** Set a callback URI that overrides the default callback URI set by CreateCall/AnswerCall for this operation. */ - operationCallbackUri?: string; + /** Set a callback URL that overrides the default callback URL set by CreateCall/AnswerCall for this operation. */ + operationCallbackUrl?: string; } /** @@ -376,3 +404,25 @@ export interface UnholdOptions extends OperationOptions { /** Operation Context. */ operationContext?: string; } + +/** Options for start media streaming request. */ +export interface StartMediaStreamingOptions extends OperationOptions { + /** + * Set a callback URL that overrides the default callback URI set by CreateCall/AnswerCall for this operation. + * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. + */ + operationCallbackUrl?: string; + /** The value to identify context of the operation. */ + operationContext?: string; +} + +/** Options for stop media streaming request. */ +export interface StopMediaStreamingOptions extends OperationOptions { + /** + * Set a callback URL that overrides the default callback URI set by CreateCall/AnswerCall for this operation. + * This setup is per-action. If this is not set, the default callback URI set by CreateCall/AnswerCall will be used. + */ + operationCallbackUrl?: string; + /** The value to identify context of the operation. */ + operationContext?: string; +} diff --git a/sdk/communication/communication-call-automation/src/models/responses.ts b/sdk/communication/communication-call-automation/src/models/responses.ts index 32efdaea173f..e6bd4958f2f8 100644 --- a/sdk/communication/communication-call-automation/src/models/responses.ts +++ b/sdk/communication/communication-call-automation/src/models/responses.ts @@ -1,56 +1,34 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { CallConnection } from "../callConnection"; -import type { CallConnectionProperties, CallParticipant } from "./models"; -import type { RecordingState } from "../generated/src"; -import type { - AddParticipantEventResult, - AnswerCallEventResult, - CancelAllMediaOperationsEventResult, - CreateCallEventResult, - PlayEventResult, - RemoveParticipantEventResult, - SendDtmfEventResult, - StartRecognizingEventResult, - TransferCallToParticipantEventResult, - CancelAddParticipantEventResult, -} from "../eventprocessor/eventResponses"; -import type { AbortSignalLike } from "@azure/abort-controller"; +import { CallConnection } from "../callConnection"; +import { CallConnectionProperties, CallParticipant } from "./models"; +import { RecordingState, RecordingKind } from "../generated/src"; /** - * CreateCall result + * The interface used as parent of [action]CallResult */ -export interface CreateCallResult { - /** The callConnectionProperties */ +interface CallResult { + /* + * The callConnectionProperties + */ callConnectionProperties: CallConnectionProperties; - /** The callConnection */ + /* + * The callConnection + */ callConnection: CallConnection; - - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } /** - * AnswerCall result + * CreateCall result */ -export interface AnswerCallResult { - /** The callConnectionProperties */ - callConnectionProperties: CallConnectionProperties; +export type CreateCallResult = CallResult; - /** The callConnection */ - callConnection: CallConnection; - - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; -} +/** + * AnswerCall result + */ +export type AnswerCallResult = CallResult; /** The response payload for getting participants of the call. */ export interface ListParticipantsResult { @@ -68,33 +46,18 @@ export interface AddParticipantResult { participant?: CallParticipant; /** The operation context provided by client. */ operationContext?: string; - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } /** The response payload for transferring the call. */ export interface TransferCallResult { /** The operation context provided by client. */ operationContext?: string; - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } /** The response payload for removing participants from the call. */ export interface RemoveParticipantResult { /** The operation context provided by client. */ operationContext?: string; - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } /** The response payload for muting participant from the call. */ @@ -106,46 +69,14 @@ export interface MuteParticipantResult { /** The response payload for starting a call recording or getting call recording state. */ export interface RecordingStateResult { recordingId: string; - recordingKind: string; + recordingKind: RecordingKind; recordingState: RecordingState; } -/** The response payload for starting a call recording or getting call recording state. */ -export interface CancelAllMediaOperationsResult { - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; -} - -/** The response from play. */ -export interface PlayResult { - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; -} - /** The response payload for sending DTMF tones. */ export interface SendDtmfTonesResult { /** The operation context provided by client. */ operationContext?: string; - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; -} - -/** The response from recognizing. */ -export interface StartRecognizingResult { - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } /** The response payload for cancelling add participant request. */ @@ -154,9 +85,9 @@ export interface CancelAddParticipantOperationResult { invitationId?: string; /** The operation context provided by client. */ operationContext?: string; - /** Waiting for event processor to process the event */ - waitForEventProcessor( - abortSignal?: AbortSignalLike, - timeoutInMs?: number, - ): Promise; } + +/** + * Connect call result + */ +export type ConnectCallResult = CallResult; diff --git a/sdk/communication/communication-call-automation/src/models/streaming.ts b/sdk/communication/communication-call-automation/src/models/streaming.ts new file mode 100644 index 000000000000..8692fff20582 --- /dev/null +++ b/sdk/communication/communication-call-automation/src/models/streaming.ts @@ -0,0 +1,171 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { CommunicationIdentifier } from "@azure/communication-common"; +import { TranscriptionResultState } from "../generated/src"; + +/** + * Audio streaming data. + */ +export interface AudioData { + /** A unique identifier for the media subscription.*/ + data: string; + /** The timestamp indicating when the media content was received by the bot, + or if the bot is sending media, the timestamp of when the media was sourced. + The format is ISO 8601 (yyyy-mm-ddThh:mm).*/ + timestamp?: Date; + /** Indicates whether the received audio buffer contains only silence..*/ + isSilent?: boolean; + /** The identified speaker based on participant raw ID. */ + participant?: CommunicationIdentifier | undefined; +} + +/** + * Audio streaming metadata. + */ +export interface AudioMetadata { + /** Audio streaming subscription id.*/ + subscriptionId: string; + /** The format used to encode the audio. Currently, only "pcm" (Pulse Code Modulation) is supported.*/ + encoding: string; + /** The number of samples per second in the audio. Supported values are 16kHz or 24kHz.*/ + sampleRate: number; + /** Specifies the number of audio channels in the audio configuration. + Currently, only "mono" (single channel) is supported.*/ + channels: Channel; + /** The size of the audio data being sent, based on the sample rate and duration.*/ + length: number; +} + +export enum MediaKind { + /** Audio data.*/ + AudioData = "audioData", + /** stop audio data*/ + StopAudio = "stopAudio", +} + +// Out streaming Stop Audio Data +export interface StopAudio {} + +/** + * The format of transcription text. + */ +export enum TextFormat { + /** Formatted recognize text with punctuations.*/ + Display = "display", +} + +/** + * Text in the phrase. + */ +export interface WordData { + /** Text in the phrase.*/ + text: string; + /** The word's position within the phrase.*/ + offsetInTicks: number; + /** Duration in ticks. 1 tick = 100 nanoseconds.*/ + durationInTicks: number; +} + +/** + * Metadata for Transcription Streaming. + */ +export interface TranscriptionMetadata { + /** Transcription Subscription Id.*/ + subscriptionId: string; + /** The target locale in which the translated text needs to be.*/ + locale: string; + /** call connection Id.*/ + callConnectionId: string; + /** correlation Id.*/ + correlationId: string; +} + +/** + * Streaming Transcription. + */ +export interface TranscriptionData { + /** The display form of the recognized word.*/ + text: string; + /** The format of text.*/ + format: TextFormat; + /** Confidence of recognition of the whole phrase, from 0.0 (no confidence) to 1.0 (full confidence). */ + confidence: number; + /** The position of this payload. 1 tick = 100 nanoseconds. */ + offsetInTicks: number; + /** Duration in ticks. 1 tick = 100 nanoseconds. */ + durationInTicks: number; + /** The result for each word of the phrase. */ + words: WordData[]; + /** The identified speaker based on participant raw ID. */ + participant: CommunicationIdentifier; + /** State of the result of transcription. */ + resultState: TranscriptionResultState; +} + +// StreamingDataResult type | TranscriptionMetadata| TranscriptionData| AudioData| AudioMetadata; +export type StreamingDataResult = + | TranscriptionMetadata + | TranscriptionData + | AudioData + | AudioMetadata; + +// Enum for different kinds of streaming data in a call automation system +export enum StreamingDataKind { + // Audio data type + AudioData = "AudioData", + // Audio metadata type + AudioMetadata = "AudioMetadata", + // Transcription data type + TranscriptionData = "TranscriptionData", + // Transcription metadata type + TranscriptionMetadata = "TranscriptionMetadata", +} + +// Enum for channel. +export enum Channel { + Unknown = 0, + Mono = 1, +} + +// Base class for Out Streaming Data +export class OutStreamingData { + /** Out streaming data kind ex. StopAudio, AudioData*/ + kind: MediaKind; + /** Out streaming Audio Data */ + audioData?: AudioData; + /** Out streaming Stop Audio Data */ + stopAudio?: StopAudio; + + constructor(kind: MediaKind) { + this.kind = kind; + } + + /** Public static method to stringify the outbound audio data. */ + static getStreamingDataForOutbound(data: string): string { + const outStreamingData: OutStreamingData = { + kind: MediaKind.AudioData, + audioData: { + data: data, + timestamp: undefined, + participant: undefined, + isSilent: false, + }, + stopAudio: {}, + }; + + const json = JSON.stringify(outStreamingData); + return json; + } + + /** Public static method to stringify the stop audio data. */ + static getStopAudioForOutbound(): string { + const outStreamingData: OutStreamingData = { + kind: MediaKind.StopAudio, + audioData: undefined, + stopAudio: {}, + }; + const json = JSON.stringify(outStreamingData); + return json; + } +} diff --git a/sdk/communication/communication-call-automation/src/models/transcription.ts b/sdk/communication/communication-call-automation/src/models/transcription.ts deleted file mode 100644 index 5b5855ae93a8..000000000000 --- a/sdk/communication/communication-call-automation/src/models/transcription.ts +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import type { CommunicationIdentifier } from "@azure/communication-common"; - -/** - * The status of the result of transcription. - */ -export enum ResultStatus { - /** Intermediate result.*/ - Intermediate = "intermediate", - /** Final result.*/ - Final = "final", -} - -/** - * The format of transcription text. - */ -export enum TextFormat { - /** Formatted recognize text with punctuations.*/ - Disply = "display", -} - -/** - * Text in the phrase. - */ -export interface WordData { - /** Text in the phrase.*/ - text: string; - /** The word's position within the phrase.*/ - offset: number; - /** Duration in ticks. 1 tick = 100 nanoseconds.*/ - duration: number; -} - -/** - * Metadata for Transcription Streaming. - */ -export interface TranscriptionMetadata { - /** Transcription Subscription Id.*/ - subscriptionId: string; - /** The target locale in which the translated text needs to be.*/ - locale: string; - /** call connection Id.*/ - callConnectionId: string; - /** correlation Id.*/ - correlationId: string; -} - -/** - * Streaming Transcription. - */ -export interface TranscriptionData { - /** The display form of the recognized word.*/ - text: string; - /** The format of text.*/ - format: TextFormat; - /** Confidence of recognition of the whole phrase, from 0.0 (no confidence) to 1.0 (full confidence). */ - confidence: number; - /** The position of this payload. */ - offset: number; - /** Duration in ticks. 1 tick = 100 nanoseconds. */ - duration: number; - /** The result for each word of the phrase. */ - words: WordData[]; - /** The identified speaker based on participant raw ID. */ - participant: CommunicationIdentifier; - /** Status of the result of transcription. */ - resultStatus: ResultStatus; -} diff --git a/sdk/communication/communication-call-automation/src/streamingData.ts b/sdk/communication/communication-call-automation/src/streamingData.ts new file mode 100644 index 000000000000..2e25ec67b6f3 --- /dev/null +++ b/sdk/communication/communication-call-automation/src/streamingData.ts @@ -0,0 +1,104 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { createIdentifierFromRawId } from "@azure/communication-common"; +import { + AudioData, + AudioMetadata, + StreamingDataKind, + StreamingDataResult, + TranscriptionData, + TranscriptionMetadata, +} from "./models/streaming"; + +/** Class to handle the parsing of incoming streaming data. */ +export class StreamingData { + // Kind of the streaming data ex.AudioData, AudioMetadata, TranscriptionData, TranscriptionMetadata. + private static streamingKind: StreamingDataKind; + + /** Parses a encoded json string or buffer into a StreamingData object, + which can be one of the following subtypes: AudioData, AudioMetadata, TranscriptionData, or TranscriptionMetadata. */ + static parse(data: string | ArrayBuffer): StreamingDataResult { + return StreamingData.parseStreamingData(data); + } + + // Get Streaming data Kind. + static getStreamingKind(): StreamingDataKind { + return StreamingData.streamingKind; + } + + /** Parses a encoded json string or buffer into a StreamingData object, + which can be one of the following subtypes: AudioData, AudioMetadata, TranscriptionData, or TranscriptionMetadata. */ + private static parseStreamingData(data: string | ArrayBuffer): StreamingDataResult { + let stringJson: string; + + if (typeof data === "string") { + stringJson = data; + } else { + const decoder = new TextDecoder(); + stringJson = decoder.decode(data); + } + + const jsonObject = JSON.parse(stringJson); + const kind: StreamingDataKind = jsonObject.kind; + + switch (kind) { + case "TranscriptionMetadata": { + const transcriptionMetadata: TranscriptionMetadata = { + subscriptionId: jsonObject.transcriptionMetadata.subscriptionId, + locale: jsonObject.transcriptionMetadata.locale, + callConnectionId: jsonObject.transcriptionMetadata.callConnectionId, + correlationId: jsonObject.transcriptionMetadata.correlationId, + }; + StreamingData.streamingKind = kind; + return transcriptionMetadata; + } + case "TranscriptionData": { + const transcriptionData: TranscriptionData = { + text: jsonObject.transcriptionData.text, + format: jsonObject.transcriptionData.format, + confidence: jsonObject.transcriptionData.confidence, + offsetInTicks: jsonObject.transcriptionData.offset, + durationInTicks: jsonObject.transcriptionData.duration, + words: jsonObject.transcriptionData.words.map( + (word: { text: string; offset: number; duration: number }) => ({ + text: word.text, + offsetInTicks: word.offset, + durationInTicks: word.duration, + }), + ), + participant: createIdentifierFromRawId(jsonObject.transcriptionData.participantRawID), + resultState: jsonObject.transcriptionData.resultStatus, + }; + StreamingData.streamingKind = kind; + return transcriptionData; + } + case "AudioMetadata": { + const audioMetadata: AudioMetadata = { + subscriptionId: jsonObject.audioMetadata.subscriptionId, + encoding: jsonObject.audioMetadata.encoding, + sampleRate: jsonObject.audioMetadata.sampleRate, + channels: jsonObject.audioMetadata.channels, + length: jsonObject.audioMetadata.length, + }; + StreamingData.streamingKind = kind; + return audioMetadata; + } + case "AudioData": { + const audioData: AudioData = { + data: jsonObject.audioData.data, + timestamp: jsonObject.audioData.timestamp, + isSilent: jsonObject.audioData.silent, + participant: + jsonObject.audioData.participantRawID !== undefined + ? createIdentifierFromRawId(jsonObject.audioData.participantRawID) + : undefined, + }; + StreamingData.streamingKind = kind; + return audioData; + } + default: + throw new Error("Unknown data kind: " + jsonObject.kind); + } + } +} diff --git a/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts b/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts deleted file mode 100644 index 802be4b1dc6d..000000000000 --- a/sdk/communication/communication-call-automation/src/utli/streamingDataParser.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import { createIdentifierFromRawId } from "@azure/communication-common"; -import type { TranscriptionMetadata, TranscriptionData } from "../models/transcription"; - -/** Parse the incoming package. */ -export function streamingData( - packetData: string | ArrayBuffer, -): TranscriptionMetadata | TranscriptionData { - let stringJson: string; - if (typeof packetData === "string") { - stringJson = packetData; - } else { - const decoder = new TextDecoder(); - stringJson = decoder.decode(packetData); - } - - const jsonObject = JSON.parse(stringJson); - const kind: string = jsonObject.kind; - - switch (kind) { - case "TranscriptionMetadata": { - const transcriptionMetadata: TranscriptionMetadata = jsonObject.transcriptionMetadata; - return transcriptionMetadata; - } - case "TranscriptionData": { - const transcriptionData: TranscriptionData = { - text: jsonObject.transcriptionData.text, - format: jsonObject.transcriptionData.format, - confidence: jsonObject.transcriptionData.confidence, - offset: jsonObject.transcriptionData.offset, - duration: jsonObject.transcriptionData.duration, - words: jsonObject.transcriptionData.words, - participant: createIdentifierFromRawId(jsonObject.transcriptionData.participantRawID), - resultStatus: jsonObject.transcriptionData.resultStatus, - }; - return transcriptionData; - } - default: - throw new Error(stringJson); - } -} diff --git a/sdk/communication/communication-call-automation/swagger/README.md b/sdk/communication/communication-call-automation/swagger/README.md index 951fc4ae04f0..faa3bec22107 100644 --- a/sdk/communication/communication-call-automation/swagger/README.md +++ b/sdk/communication/communication-call-automation/swagger/README.md @@ -11,10 +11,10 @@ description: Call Automation Client generate-metadata: false license-header: MICROSOFT_MIT_NO_VERSION output-folder: ../src/generated -tag: package-2023-10-03-preview +tag: package-2024-11-15-preview require: - - https://github.com/Azure/azure-rest-api-specs/blob/156ff363e44f764ddd8a0a6adcd371610240ba15/specification/communication/data-plane/CallAutomation/readme.md -package-version: 1.3.0-beta.1 + - https://github.com/Azure/azure-rest-api-specs/blob/5c9d5f957d76d9fea9c513f494660c6c5d3e809a/specification/communication/data-plane/CallAutomation/readme.md +package-version: 1.4.0-beta.1 model-date-time-as-string: false optional-response-headers: true typescript: true @@ -56,114 +56,12 @@ directive: - rename-model: from: SsmlSource to: SsmlSourceInternal - - rename-model: - from: AddParticipantSucceeded - to: RestAddParticipantSucceeded - - rename-model: - from: AddParticipantFailed - to: RestAddParticipantFailed - - rename-model: - from: RemoveParticipantSucceeded - to: RestRemoveParticipantSucceeded - - rename-model: - from: RemoveParticipantFailed - to: RestRemoveParticipantFailed - - rename-model: - from: CallConnected - to: RestCallConnected - - rename-model: - from: CallDisconnected - to: RestCallDisconnected - - rename-model: - from: CallTransferAccepted - to: RestCallTransferAccepted - - rename-model: - from: CallTransferFailed - to: RestCallTransferFailed - - rename-model: - from: RecordingStateChanged - to: RestRecordingStateChanged - - rename-model: - from: TeamsRecordingStateChanged - to: RestTeamsRecordingStateChanged - - rename-model: - from: TeamsComplianceRecordingStateChanged - to: RestTeamsComplianceRecordingStateChanged - - rename-model: - from: ParticipantsUpdated - to: RestParticipantsUpdated - - rename-model: - from: PlayCompleted - to: RestPlayCompleted - - rename-model: - from: PlayFailed - to: RestPlayFailed - - rename-model: - from: PlayCanceled - to: RestPlayCanceled - - rename-model: - from: RecognizeCompleted - to: RestRecognizeCompleted - - rename-model: - from: RecognizeFailed - to: RestRecognizeFailed - - rename-model: - from: RecognizeCanceled - to: RestRecognizeCanceled - - rename-model: - from: ResultInformation - to: RestResultInformation - - rename-model: - from: ContinuousDtmfRecognitionToneReceived - to: RestContinuousDtmfRecognitionToneReceived - - rename-model: - from: ContinuousDtmfRecognitionToneFailed - to: RestContinuousDtmfRecognitionToneFailed - - rename-model: - from: ContinuousDtmfRecognitionStopped - to: RestContinuousDtmfRecognitionStopped - - rename-model: - from: SendDtmfTonesCompleted - to: RestSendDtmfTonesCompleted - - rename-model: - from: SendDtmfTonesFailed - to: RestSendDtmfTonesFailed - - rename-model: - from: ToneInfo - to: RestToneInfo - - rename-model: - from: CancelAddParticipantSucceeded - to: RestCancelAddParticipantSucceeded - - rename-model: - from: CancelAddParticipantFailed - to: RestCancelAddParticipantFailed - rename-model: from: CallIntelligenceOptions to: CallIntelligenceOptionsInternal - rename-model: from: CustomCallingContext to: CustomCallingContextInternal - - rename-model: - from: TranscriptionStarted - to: RestTranscriptionStarted - - rename-model: - from: TranscriptionStopped - to: RestTranscriptionStopped - - rename-model: - from: TranscriptionUpdated - to: RestTranscriptionUpdated - - rename-model: - from: TranscriptionFailed - to: RestTranscriptionFailed - - rename-model: - from: CreateCallFailed - to: RestCreateCallFailed - - rename-model: - from: AnswerFailed - to: RestAnswerFailed - - rename-model: - from: HoldFailed - to: RestHoldFailed ``` ```yaml @@ -181,3 +79,19 @@ directive: transform: > $["x-ms-client-name"] = "recordingStorage"; ``` + +```yaml +directive: + from: swagger-document + where: "$.definitions.TranscriptionResultType.x-ms-enum" + transform: > + $["name"] = "TranscriptionResultState"; +``` + +```yaml +directive: + from: swagger-document + where: "$.definitions.TranscriptionSubscription.properties.subscribedResultTypes" + transform: > + $["x-ms-client-name"] = "subscribedResultStates"; +``` diff --git a/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts b/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts index cb1f5db2fd64..9b263125781a 100644 --- a/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callAutomationClient.spec.ts @@ -1,25 +1,26 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. -import type { Recorder } from "@azure-tools/test-recorder"; -import type { SinonStubbedInstance } from "sinon"; -import Sinon from "sinon"; -import type { CallConnectionProperties } from "../src/models/models"; -import type { AnswerCallResult, CreateCallResult } from "../src/models/responses"; +import { Recorder } from "@azure-tools/test-recorder"; +import Sinon, { SinonStubbedInstance } from "sinon"; +import { CallConnectionProperties } from "../src/models/models"; +import { AnswerCallResult, CreateCallResult } from "../src/models/responses"; import { CALL_CALLBACK_URL, CALL_INCOMING_CALL_CONTEXT, CALL_TARGET_ID, CALL_TARGET_ID_2, } from "./utils/connectionUtils"; -import type { - CommunicationIdentifier, - CommunicationUserIdentifier, -} from "@azure/communication-common"; +import { CommunicationIdentifier, CommunicationUserIdentifier } from "@azure/communication-common"; import { assert } from "chai"; -import type { Context } from "mocha"; -import type { CallInvite, CallConnection, CreateCallOptions, AnswerCallOptions } from "../src"; -import { CallAutomationClient } from "../src"; +import { Context } from "mocha"; +import { + CallAutomationClient, + CallInvite, + CallConnection, + CreateCallOptions, + AnswerCallOptions, +} from "../src"; import { createRecorder, createTestUser, @@ -34,10 +35,6 @@ import { loadPersistedEvents, persistEvents, } from "./utils/recordedClient"; -import type { - AnswerCallEventResult, - CreateCallEventResult, -} from "../src/eventprocessor/eventResponses"; import { randomUUID } from "@azure/core-util"; describe("Call Automation Client Unit Tests", () => { @@ -81,9 +78,6 @@ describe("Call Automation Client Unit Tests", () => { const createCallResultMock: CreateCallResult = { callConnectionProperties: {} as CallConnectionProperties, callConnection: {} as CallConnection, - waitForEventProcessor: async () => { - return {} as CreateCallEventResult; - }, }; client.createCall.returns( new Promise((resolve) => { @@ -109,9 +103,6 @@ describe("Call Automation Client Unit Tests", () => { const createGroupCallResultMock: CreateCallResult = { callConnectionProperties: {} as CallConnectionProperties, callConnection: {} as CallConnection, - waitForEventProcessor: async () => { - return {} as CreateCallEventResult; - }, }; client.createGroupCall.returns( new Promise((resolve) => { @@ -137,9 +128,6 @@ describe("Call Automation Client Unit Tests", () => { const answerCallResultMock: AnswerCallResult = { callConnectionProperties: {} as CallConnectionProperties, callConnection: {} as CallConnection, - waitForEventProcessor: async () => { - return {} as AnswerCallEventResult; - }, }; client.answerCall.returns( new Promise((resolve) => { @@ -304,7 +292,7 @@ describe("Call Automation Main Client Live Tests", function () { await receiverCallAutomationClient.rejectCall(incomingCallContext); } - const createCallFailedEvent = await waitForEvent("CreateCallFailed", callConnectionId, 8000); - assert.isDefined(createCallFailedEvent); + const CallDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(CallDisconnectedEvent); }).timeout(60000); }); diff --git a/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts b/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts deleted file mode 100644 index 46bd6082af1e..000000000000 --- a/sdk/communication/communication-call-automation/test/callAutomationEventProcessor.spec.ts +++ /dev/null @@ -1,355 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { assert, expect } from "chai"; -import type { CallAutomationEventProcessor } from "../src/eventprocessor/callAutomationEventProcessor"; -import type { CallConnected, CallDisconnected } from "../src/models/events"; -import { - CALL_CALLBACK_URL, - MOCK_CONNECTION_STRING, - CALL_CALLER_ID, - CALL_TARGET_ID, -} from "./utils/connectionUtils"; -import type { CallInvite } from "../src"; -import { CallAutomationClient } from "../src"; -import { generateHttpClient } from "./utils/mockClient"; - -describe("Call Automation Event Processor Unit Tests", () => { - const CALL_CONNECTION_CALL_ID = "callConnectionId"; - const SERVER_CALL_ID = "serverCallId"; - const CORRELATION_ID = "correlationId"; - - let callAutomationClient: CallAutomationClient; - - beforeEach(() => { - callAutomationClient = new CallAutomationClient(MOCK_CONNECTION_STRING); - }); - - it("WaitForEventThenSendEvent", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - - // wait for event - const promiseResult = eventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === CALL_CONNECTION_CALL_ID) { - return true; - } else { - return false; - } - }, - undefined, - 500, - ); - - // send the event - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - eventProcessor.processEvents(connectedEvent); - - // asserts - expect(await promiseResult).to.equal(connectedEvent); - }); - - it("ProcessEventFirstThenWaitForIt", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - - // send the event first - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - eventProcessor.processEvents(connectedEvent); - - // wait for event - const promiseResult = eventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === CALL_CONNECTION_CALL_ID) { - return true; - } else { - return false; - } - }, - undefined, - 500, - ); - - // asserts - expect(await promiseResult).to.equal(connectedEvent); - }); - - it("NoMatchTimeOutException", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - - // wait for event - const promiseResult = eventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === CALL_CONNECTION_CALL_ID) { - return true; - } else { - return false; - } - }, - undefined, - 500, - ); - - // send the event - const connectedEvent: CallConnected = { - callConnectionId: "someOtherCallConnectionId", - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - eventProcessor.processEvents(connectedEvent); - - // asserts - let errorThrown = false; - try { - await promiseResult; - } catch (error: any) { - errorThrown = true; - assert.equal(error.message, "Timeout: Matching event did not arrive within timeout."); - } - if (!errorThrown) { - throw new Error("Expected promise to throw, but it resolved successfully."); - } - }); - - it("SendingMultipleDifferentEvents", async () => { - const testCallConnectionId1 = CALL_CONNECTION_CALL_ID + "1"; - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - - // wait for event - const promiseResult = eventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === testCallConnectionId1) { - return true; - } else { - return false; - } - }, - undefined, - 500, - ); - - // send the event - for (let i = 0; i < 10; i++) { - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID + i.toString(), - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - eventProcessor.processEvents(connectedEvent); - } - - // asserts - expect((await promiseResult).callConnectionId).to.equal(testCallConnectionId1); - }); - - it("WaitForEventThenAbort", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - - // prep for abort controller - const controller = new AbortController(); - - // wait for event - const promiseResult = eventProcessor.waitForEventProcessor( - (event) => { - if (event.callConnectionId === CALL_CONNECTION_CALL_ID) { - return true; - } else { - return false; - } - }, - controller.signal, - 500, - ); - - // abort + asserts - let errorThrown = false; - try { - controller.abort(); - await promiseResult; - } catch (error: any) { - errorThrown = true; - assert.equal(error.message, "Abort: Operation was aborted."); - } - if (!errorThrown) { - throw new Error("Expected promise to abort, but it resolved successfully."); - } - }); - - it("WaitForEventProcessorCreateEventResult", async () => { - // setup mock for create call and its response - const CREATE_CALL_RESPONSE = { - callConnectionId: CALL_CONNECTION_CALL_ID, - targets: [ - { - rawId: CALL_CALLER_ID, - kind: "communicationUser", - communicationUser: { - id: CALL_CALLER_ID, - }, - }, - ], - callConnectionState: "connecting", - callbackUri: CALL_CALLBACK_URL, - sourceIdentity: { - rawId: CALL_TARGET_ID, - kind: "communicationUser", - communicationUser: { - id: CALL_TARGET_ID, - }, - }, - correlationId: CORRELATION_ID, - }; - const mockClient = generateHttpClient(201, CREATE_CALL_RESPONSE); - callAutomationClient = new CallAutomationClient(MOCK_CONNECTION_STRING, { - httpClient: mockClient, - }); - - // setup - const target: CallInvite = { - targetParticipant: { - communicationUserId: CALL_TARGET_ID, - }, - }; - - // create call - const callResult = await callAutomationClient.createCall(target, CALL_CALLBACK_URL); - const eventProcessor = callAutomationClient.getEventProcessor(); - - // wait for event from createCall - const promiseResult = callResult.waitForEventProcessor(undefined, 500); - - // send the event - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - eventProcessor.processEvents(connectedEvent); - - // asserts - const createCallEventResult = await promiseResult; - expect(createCallEventResult.isSuccess).to.equal(true); - expect(createCallEventResult.successResult).to.equal(connectedEvent); - }); - - it("AttachOngoingEventProcessorTest", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - let ongoingEventCalled = false; - - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - - // attach ongoing processor - eventProcessor.attachOngoingEventProcessor( - CALL_CONNECTION_CALL_ID, - "CallConnected", - async (event) => { - expect(event).to.equal(connectedEvent); - ongoingEventCalled = true; - }, - ); - - // send the event - eventProcessor.processEvents(connectedEvent); - - // assert if ongoing processor was called - expect(ongoingEventCalled).to.equal(true); - }); - - it("DetachOngoingEventProcessorTest", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - let ongoingEventCalled = false; - - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - - // attach ongoing processor - await eventProcessor.attachOngoingEventProcessor( - CALL_CONNECTION_CALL_ID, - "CallConnected", - async (event) => { - expect(event).to.equal(connectedEvent); - ongoingEventCalled = true; - }, - ); - - // send the event - eventProcessor.processEvents(connectedEvent); - - // assert if ongoing processor was called - expect(ongoingEventCalled).to.equal(true); - - // detach ongoing processor - await eventProcessor.detachOngoingEventProcessor(CALL_CONNECTION_CALL_ID, "CallConnected"); - ongoingEventCalled = false; - - // send again - eventProcessor.processEvents(connectedEvent); - - // assert if ongoing processor was NOT called - expect(ongoingEventCalled).to.equal(false); - }); - - it("CallDisconnectWillEraseOngoingEventProcessor", async () => { - const eventProcessor: CallAutomationEventProcessor = callAutomationClient.getEventProcessor(); - let ongoingEventCalled = false; - - const connectedEvent: CallConnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallConnected", - }; - - // attach ongoing processor - await eventProcessor.attachOngoingEventProcessor( - CALL_CONNECTION_CALL_ID, - "CallConnected", - async (event) => { - expect(event).to.equal(connectedEvent); - ongoingEventCalled = true; - }, - ); - - // send the event - eventProcessor.processEvents(connectedEvent); - - // assert if ongoing processor was called - expect(ongoingEventCalled).to.equal(true); - - // send the disconnect event - const disconnectedEvent: CallDisconnected = { - callConnectionId: CALL_CONNECTION_CALL_ID, - serverCallId: SERVER_CALL_ID, - correlationId: CORRELATION_ID, - kind: "CallDisconnected", - }; - eventProcessor.processEvents(disconnectedEvent); - - // send again - ongoingEventCalled = false; - eventProcessor.processEvents(connectedEvent); - - // assert if ongoing processor was NOT called - expect(ongoingEventCalled).to.equal(false); - }); -}); diff --git a/sdk/communication/communication-call-automation/test/callConnection.spec.ts b/sdk/communication/communication-call-automation/test/callConnection.spec.ts index 50ef375166f6..dddf0d9226ec 100644 --- a/sdk/communication/communication-call-automation/test/callConnection.spec.ts +++ b/sdk/communication/communication-call-automation/test/callConnection.spec.ts @@ -16,10 +16,6 @@ import type { RemoveParticipantResult, MuteParticipantResult, CancelAddParticipantOperationResult, - AddParticipantEventResult, - TransferCallToParticipantEventResult, - RemoveParticipantEventResult, - CancelAddParticipantEventResult, CancelAddParticipantSucceeded, CreateCallOptions, AnswerCallOptions, @@ -168,11 +164,7 @@ describe("CallConnection Unit Tests", () => { it("AddParticipant", async () => { // mocks - const addParticipantResultMock: AddParticipantResult = { - waitForEventProcessor: async () => { - return {} as AddParticipantEventResult; - }, - }; + const addParticipantResultMock: AddParticipantResult = {}; callConnection.addParticipant.returns( new Promise((resolve) => { resolve(addParticipantResultMock); @@ -194,11 +186,7 @@ describe("CallConnection Unit Tests", () => { it("TransferCallToParticipant", async () => { // mocks - const transferCallResultMock: TransferCallResult = { - waitForEventProcessor: async () => { - return {} as TransferCallToParticipantEventResult; - }, - }; + const transferCallResultMock: TransferCallResult = {}; callConnection.transferCallToParticipant.returns( new Promise((resolve) => { resolve(transferCallResultMock); @@ -222,11 +210,7 @@ describe("CallConnection Unit Tests", () => { it("TransferCallToParticipantWithTransferee", async () => { // mocks - const transferCallResultMock: TransferCallResult = { - waitForEventProcessor: async () => { - return {} as TransferCallToParticipantEventResult; - }, - }; + const transferCallResultMock: TransferCallResult = {}; callConnection.transferCallToParticipant.returns( new Promise((resolve) => { resolve(transferCallResultMock); @@ -254,11 +238,7 @@ describe("CallConnection Unit Tests", () => { it("RemoveParticipant", async () => { // mocks - const removeParticipantResultMock: RemoveParticipantResult = { - waitForEventProcessor: async () => { - return {} as RemoveParticipantEventResult; - }, - }; + const removeParticipantResultMock: RemoveParticipantResult = {}; callConnection.removeParticipant.returns( new Promise((resolve) => { resolve(removeParticipantResultMock); @@ -300,17 +280,14 @@ describe("CallConnection Unit Tests", () => { .catch((error) => console.error(error)); }); - it("CancelAddParticipant", async () => { + it("cancelAddParticipantOperation", async () => { const invitationId = "invitationId"; - const cancelAddParticipantResultMock: CancelAddParticipantOperationResult = { + const cancelAddParticipantOperationResultMock: CancelAddParticipantOperationResult = { invitationId, - waitForEventProcessor: async () => { - return {} as CancelAddParticipantEventResult; - }, }; callConnection.cancelAddParticipantOperation.returns( new Promise((resolve) => { - resolve(cancelAddParticipantResultMock); + resolve(cancelAddParticipantOperationResultMock); }), ); @@ -319,7 +296,7 @@ describe("CallConnection Unit Tests", () => { .then((result: CancelAddParticipantOperationResult) => { assert.isNotNull(result); assert.isTrue(callConnection.cancelAddParticipantOperation.calledWith(invitationId)); - assert.equal(result, cancelAddParticipantResultMock); + assert.equal(result, cancelAddParticipantOperationResultMock); return; }) .catch((error) => console.error(error)); @@ -346,6 +323,13 @@ describe("CallConnection Live Tests", function () { afterEach(async function (this: Context) { persistEvents(testName); + if (callConnection) { + try { + await callConnection.hangUp(true); + } catch (e) { + console.log("Call is terminated"); + } + } serviceBusReceivers.forEach((receiver) => { receiver.close(); }); @@ -356,13 +340,6 @@ describe("CallConnection Live Tests", function () { serviceBusReceivers.clear(); incomingCallContexts.clear(); await recorder.stop(); - if (callConnection) { - try { - await callConnection.hangUp(true); - } catch { - return; - } - } }); it("List all participants", async function () { @@ -517,7 +494,7 @@ describe("CallConnection Live Tests", function () { it("Mute a participant", async function () { testName = this.test?.fullTitle() ? this.test?.fullTitle().replace(/ /g, "_") - : "mute_participant"; + : "add_participant_and_get_call_props"; await loadPersistedEvents(testName); const callInvite: CallInvite = { targetParticipant: testUser2 }; diff --git a/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts b/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts index c317f024ff08..f6625bcb8138 100644 --- a/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callMediaClient.spec.ts @@ -1,22 +1,30 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. // External module imports -import type { Context } from "mocha"; +import { Context } from "mocha"; // Internal module imports -import type { Recorder } from "@azure-tools/test-recorder"; -import type { +import { Recorder } from "@azure-tools/test-recorder"; +import { CommunicationIdentifier, CommunicationUserIdentifier, PhoneNumberIdentifier, + serializeCommunicationIdentifier, } from "@azure/communication-common"; -import { serializeCommunicationIdentifier } from "@azure/communication-common"; // Parent directory imports import { CallMedia } from "../src/callMedia"; -import type { FileSource, TextSource, SsmlSource, RecognitionChoice } from "../src/models/models"; -import { DtmfTone } from "../src/models/models"; -import type { +import { + FileSource, + TextSource, + SsmlSource, + RecognitionChoice, + DtmfTone, + MediaStreamingOptions, + TranscriptionOptions, + CallParticipant, +} from "../src/models/models"; +import { CallMediaRecognizeDtmfOptions, CallMediaRecognizeChoiceOptions, CallMediaRecognizeSpeechOptions, @@ -32,8 +40,11 @@ import type { StopTranscriptionOptions, HoldOptions, UnholdOptions, + PlayToAllOptions, + StopMediaStreamingOptions, + StartMediaStreamingOptions, + CallMediaRecognizeSpeechOrDtmfOptions, } from "../src"; -import { CallAutomationEventProcessor } from "../src"; // Current directory imports import { @@ -51,6 +62,8 @@ import { persistEvents, fileSourceUrl, getPhoneNumbers, + transportUrl, + cognitiveServiceEndpoint, } from "./utils/recordedClient"; import sinon from "sinon"; import { assert } from "chai"; @@ -72,12 +85,7 @@ describe("CallMedia Unit Tests", async function () { }); it("can instantiate", async function () { - new CallMedia( - CALL_CONNECTION_ID, - baseUri, - { key: generateToken() }, - new CallAutomationEventProcessor(), - ); + new CallMedia(CALL_CONNECTION_ID, baseUri, { key: generateToken() }); }); it("makes successful Play file request", async function () { @@ -182,6 +190,63 @@ describe("CallMedia Unit Tests", async function () { assert.equal(request.method, "POST"); }); + it("makes successful PlayToAll barge in request", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + + const playSource: FileSource[] = [ + { + url: MEDIA_URL_WAV, + kind: "fileSource", + }, + ]; + + const options: PlayToAllOptions = { + interruptCallMediaOperation: true, + operationContext: "interruptMediaContext", + }; + + await callMedia.playToAll(playSource, options); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.playSources[0].kind, "file"); + assert.equal(data.playSources[0].file.uri, playSource[0].url); + assert.equal(request.method, "POST"); + assert.equal(data.operationContext, options.operationContext); + assert.equal(data.interruptCallMediaOperation, options.interruptCallMediaOperation); + }); + + it("makes successful PlayToAll barge in request with PlayOptions instead of PlayToAllOptions", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + + const playSource: FileSource[] = [ + { + url: MEDIA_URL_WAV, + kind: "fileSource", + }, + ]; + + const options: PlayOptions = { + operationContext: "interruptMediaContext", + }; + + await callMedia.playToAll(playSource, options); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.playSources[0].kind, "file"); + assert.equal(data.playSources[0].file.uri, playSource[0].url); + assert.equal(request.method, "POST"); + assert.equal(data.operationContext, options.operationContext); + assert.equal(data.interruptCallMediaOperation, false); + }); + it("makes successful StartRecognizing DTMF request", async function () { const mockHttpClient = generateHttpClient(202); @@ -234,7 +299,102 @@ describe("CallMedia Unit Tests", async function () { const targetParticipant: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; const recognizeOptions: CallMediaRecognizeSpeechOptions = { kind: "callMediaRecognizeSpeechOptions", - speechModelEndpointId: "customModelEndpointId", + speechRecognitionModelEndpointId: "customModelEndpointId", + }; + + await callMedia.startRecognizing(targetParticipant, recognizeOptions); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.recognizeInputType, "speech"); + assert.equal(data.recognizeOptions.speechOptions.endSilenceTimeoutInMs, 2000); + assert.equal(request.method, "POST"); + }); + + it("makes successful StartRecognizing DTMF Prompts request", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + const targetParticipant: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; + + const prompts: (FileSource | TextSource | SsmlSource)[] = [ + { kind: "fileSource", url: MEDIA_URL_WAV }, + { kind: "textSource", text: "test" }, + { kind: "ssmlSource", ssmlText: "test" }, + ]; + const recognizeOptions: CallMediaRecognizeDtmfOptions = { + playPrompts: prompts, + kind: "callMediaRecognizeDtmfOptions", + maxTonesToCollect: 5, + }; + + await callMedia.startRecognizing(targetParticipant, recognizeOptions); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.recognizeInputType, "dtmf"); + assert.equal(data.recognizeOptions.dtmfOptions.maxTonesToCollect, 5); + assert.equal(data.playPrompts.length, 3); + assert.equal(data.playPrompts[0].kind, "file"); + assert.equal(data.playPrompts[1].kind, "text"); + assert.equal(data.playPrompts[2].kind, "ssml"); + assert.equal(request.method, "POST"); + }); + + it("makes successful StartRecognizing Choices Prompts request", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + const targetParticipant: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; + const choice: RecognitionChoice = { + label: "choice", + phrases: ["test"], + }; + + const prompts: (FileSource | TextSource | SsmlSource)[] = [ + { kind: "fileSource", url: MEDIA_URL_WAV }, + { kind: "textSource", text: "test" }, + { kind: "ssmlSource", ssmlText: "test" }, + ]; + + const recognizeOptions: CallMediaRecognizeChoiceOptions = { + playPrompts: prompts, + choices: [choice], + kind: "callMediaRecognizeChoiceOptions", + }; + + await callMedia.startRecognizing(targetParticipant, recognizeOptions); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.recognizeInputType, "choices"); + assert.equal(data.recognizeOptions.choices[0].phrases[0], "test"); + assert.equal(data.playPrompts.length, 3); + assert.equal(data.playPrompts[0].kind, "file"); + assert.equal(data.playPrompts[1].kind, "text"); + assert.equal(data.playPrompts[2].kind, "ssml"); + assert.equal(request.method, "POST"); + }); + + it("makes successful StartRecognizing Speech Prompts request", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + const targetParticipant: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; + + const prompts: (FileSource | TextSource | SsmlSource)[] = [ + { kind: "fileSource", url: MEDIA_URL_WAV }, + { kind: "textSource", text: "test" }, + { kind: "ssmlSource", ssmlText: "test" }, + ]; + + const recognizeOptions: CallMediaRecognizeSpeechOptions = { + playPrompts: prompts, + kind: "callMediaRecognizeSpeechOptions", + speechRecognitionModelEndpointId: "customModelEndpointId", }; await callMedia.startRecognizing(targetParticipant, recognizeOptions); @@ -243,6 +403,43 @@ describe("CallMedia Unit Tests", async function () { assert.equal(data.recognizeInputType, "speech"); assert.equal(data.recognizeOptions.speechOptions.endSilenceTimeoutInMs, 2000); + assert.equal(data.playPrompts.length, 3); + assert.equal(data.playPrompts[0].kind, "file"); + assert.equal(data.playPrompts[1].kind, "text"); + assert.equal(data.playPrompts[2].kind, "ssml"); + assert.equal(request.method, "POST"); + }); + + it("makes successful StartRecognizing SpeechOrDTMF With DTMF Prompts request", async function () { + const mockHttpClient = generateHttpClient(202); + + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + const targetParticipant: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; + + const prompts: (FileSource | TextSource | SsmlSource)[] = [ + { kind: "fileSource", url: MEDIA_URL_WAV }, + { kind: "textSource", text: "test" }, + { kind: "ssmlSource", ssmlText: "test" }, + ]; + + const recognizeOptions: CallMediaRecognizeSpeechOrDtmfOptions = { + playPrompts: prompts, + maxTonesToCollect: 5, + kind: "callMediaRecognizeSpeechOrDtmfOptions", + speechRecognitionModelEndpointId: "customModelEndpointId", + }; + + await callMedia.startRecognizing(targetParticipant, recognizeOptions); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + + assert.equal(data.recognizeInputType, "speechOrDtmf"); + assert.equal(data.recognizeOptions.dtmfOptions.maxTonesToCollect, 5); + assert.equal(data.playPrompts.length, 3); + assert.equal(data.playPrompts[0].kind, "file"); + assert.equal(data.playPrompts[1].kind, "text"); + assert.equal(data.playPrompts[2].kind, "ssml"); assert.equal(request.method, "POST"); }); @@ -339,7 +536,7 @@ describe("CallMedia Unit Tests", async function () { const options: HoldOptions = { playSource: playSource, operationContext: "withPlaySource", - operationCallbackUri: "https://localhost", + operationCallbackUrl: "https://localhost", }; await callMedia.hold(participantToHold, options); const request = spy.getCall(0).args[0]; @@ -385,107 +582,108 @@ describe("CallMedia Unit Tests", async function () { assert.equal(data.operationContext, options.operationContext); }); - it("makes successful Start Hold Music request", async function () { - const mockHttpClient = generateHttpClient(200); + it("makes successful Start Transcription request", async function () { + const mockHttpClient = generateHttpClient(202); callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); - - const playSource: TextSource = { - text: "test test test", - customVoiceEndpointId: "customVoiceEndpointId", - kind: "textSource", + const startTranscriptionOptions: StartTranscriptionOptions = { + locale: "en-US", + operationContext: "test_operation_context", }; - const participantToHold: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; - - await callMedia.startHoldMusic(participantToHold, playSource); + await callMedia.startTranscription(startTranscriptionOptions); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - assert.equal(data.targetParticipant.rawId, CALL_TARGET_ID); - assert.equal(data.playSourceInfo.kind, "text"); - assert.equal(data.playSourceInfo.text.text, playSource.text); + + assert.equal(data.locale, startTranscriptionOptions.locale); + assert.equal(data.operationContext, startTranscriptionOptions.operationContext); assert.equal(request.method, "POST"); }); - it("makes successful Start Hold Music request with no playSource", async function () { - const mockHttpClient = generateHttpClient(200); + it("makes successful Stop TranscriptionOptions request", async function () { + const mockHttpClient = generateHttpClient(202); callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); - const participantToHold: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; + const stopTranscriptionOptions: StopTranscriptionOptions = { + operationContext: "test_operation_context", + }; - await callMedia.startHoldMusic(participantToHold); + await callMedia.stopTranscription(stopTranscriptionOptions); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - assert.equal(data.targetParticipant.rawId, CALL_TARGET_ID); + + assert.equal(data.operationContext, stopTranscriptionOptions.operationContext); assert.equal(request.method, "POST"); - assert.isUndefined(data.playSourceInfo); }); - it("makes successful Stop Hold Music request", async function () { - const mockHttpClient = generateHttpClient(200); + it("makes successful Update Transcription request", async function () { + const mockHttpClient = generateHttpClient(202); callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); + const locale = "en-US"; - const participantToUnhold: CommunicationIdentifier = { communicationUserId: CALL_TARGET_ID }; - - await callMedia.stopHoldMusic(participantToUnhold); + await callMedia.updateTranscription(locale); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - assert.equal(data.targetParticipant.rawId, CALL_TARGET_ID); + + assert.equal(data.locale, locale); assert.equal(request.method, "POST"); }); - it("makes successful Start Transcription request", async function () { + it("makes successful start media streaming request with options", async function () { const mockHttpClient = generateHttpClient(202); - callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); - const startTranscriptionOptions: StartTranscriptionOptions = { - locale: "en-US", - operationContext: "test_operation_context", + const options: StartMediaStreamingOptions = { + operationContext: "startMediaStreamContext", + operationCallbackUrl: "https://localhost", }; - - await callMedia.startTranscription(startTranscriptionOptions); + await callMedia.startMediaStreaming(options); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - - assert.equal(data.locale, startTranscriptionOptions.locale); - assert.equal(data.operationContext, startTranscriptionOptions.operationContext); + assert.equal(data.operationContext, options.operationContext); + assert.equal(data.operationCallbackUri, options.operationCallbackUrl); assert.equal(request.method, "POST"); }); - it("makes successful Stop TranscriptionOptions request", async function () { + it("makes successful start media streaming request without options", async function () { const mockHttpClient = generateHttpClient(202); + callMedia = createMediaClient(mockHttpClient); + const spy = sinon.spy(mockHttpClient, "sendRequest"); + await callMedia.startMediaStreaming(); + const request = spy.getCall(0).args[0]; + const data = JSON.parse(request.body?.toString() || ""); + assert.isUndefined(data.operationContext); + assert.isUndefined(data.operationCallbackUri); + assert.equal(request.method, "POST"); + }); + it("makes successful stop media streaming request with options", async function () { + const mockHttpClient = generateHttpClient(202); callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); - const stopTranscriptionOptions: StopTranscriptionOptions = { - operationContext: "test_operation_context", + const options: StopMediaStreamingOptions = { + operationCallbackUrl: "https://localhost", }; - - await callMedia.stopTranscription(stopTranscriptionOptions); + await callMedia.stopMediaStreaming(options); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - - assert.equal(data.operationContext, stopTranscriptionOptions.operationContext); + assert.equal(data.operationCallbackUri, options.operationCallbackUrl); assert.equal(request.method, "POST"); }); - it("makes successful Update Transcription request", async function () { + it("makes successful stop media streaming request without options", async function () { const mockHttpClient = generateHttpClient(202); - callMedia = createMediaClient(mockHttpClient); const spy = sinon.spy(mockHttpClient, "sendRequest"); - const locale = "en-US"; - await callMedia.updateTranscription(locale); + await callMedia.stopMediaStreaming(); const request = spy.getCall(0).args[0]; const data = JSON.parse(request.body?.toString() || ""); - - assert.equal(data.locale, locale); + assert.isUndefined(data.operationCallbackUri); assert.equal(request.method, "POST"); }); }); @@ -533,7 +731,7 @@ describe("Call Media Client Live Tests", function () { it("Play audio to target participant", async function () { testName = this.test?.fullTitle() ? this.test?.fullTitle().replace(/ /g, "_") - : "create_call_and_hang_up"; + : "play_audio_to_target_participant"; await loadPersistedEvents(testName); const callInvite: CallInvite = { targetParticipant: testUser2 }; @@ -583,7 +781,7 @@ describe("Call Media Client Live Tests", function () { it("Play audio to all participants", async function () { testName = this.test?.fullTitle() ? this.test?.fullTitle().replace(/ /g, "_") - : "create_call_and_hang_up"; + : "play_audio_to_all_participants"; await loadPersistedEvents(testName); const callInvite: CallInvite = { targetParticipant: testUser2 }; @@ -754,4 +952,1194 @@ describe("Call Media Client Live Tests", function () { const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); assert.isDefined(callDisconnectedEvent); }).timeout(60000); + + it("Creates a call, start media streaming, and hangs up.", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "create_call_start_media_streaming_and_hang_up"; + await loadPersistedEvents(testName); + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + + const mediaStreamingOptions: MediaStreamingOptions = { + transportUrl: transportUrl, + transportType: "websocket", + contentType: "audio", + audioChannelType: "mixed", + startMediaStreaming: false, + }; + + const createCallOptions: CreateCallOptions = { + mediaStreamingOptions: mediaStreamingOptions, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOptions, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + await callConnection.getCallMedia().startMediaStreaming(); + const mediaStreamingStarted = await waitForEvent( + "MediaStreamingStarted", + callConnectionId, + 8000, + ); + assert.isDefined(mediaStreamingStarted); + + await callConnection.getCallMedia().stopMediaStreaming(); + const mediaStreamingStopped = await waitForEvent( + "MediaStreamingStopped", + callConnectionId, + 8000, + ); + assert.isDefined(mediaStreamingStopped); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it("Answers a call, start media streaming, and hangs up", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "answer_call_start_media_streaming_and_hang_up"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + + const result = await callerCallAutomationClient.createCall(callInvite, callBackUrl); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + if (incomingCallContext) { + const mediaStreamingOptions: MediaStreamingOptions = { + transportUrl: transportUrl, + transportType: "websocket", + contentType: "audio", + audioChannelType: "mixed", + startMediaStreaming: false, + }; + const answerCallOptions: AnswerCallOptions = { + mediaStreamingOptions: mediaStreamingOptions, + }; + + const answerCallResult = await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOptions, + ); + + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + + const answerCallConnection = answerCallResult.callConnection; + const answerCallConnectionId: string = answerCallResult.callConnectionProperties + .callConnectionId + ? answerCallResult.callConnectionProperties.callConnectionId + : ""; + await answerCallConnection.getCallMedia().startMediaStreaming(); + const mediaStreamingStarted = await waitForEvent( + "MediaStreamingStarted", + answerCallConnectionId, + 8000, + ); + assert.isDefined(mediaStreamingStarted); + + await answerCallConnection.getCallMedia().stopMediaStreaming(); + const mediaStreamingStopped = await waitForEvent( + "MediaStreamingStopped", + answerCallConnectionId, + 8000, + ); + assert.isDefined(mediaStreamingStopped); + + await answerCallConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent( + "CallDisconnected", + answerCallConnectionId, + 8000, + ); + assert.isDefined(callDisconnectedEvent); + } + }).timeout(60000); + + it("Play multiple file sources with play and playall", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_multiple_file_sources_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleFileSources: FileSource[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "fileSource", url: fileSourceUrl }, + { kind: "fileSource", url: fileSourceUrl }, + ]; + + // play to all + await callConnection + .getCallMedia() + .playToAll(playMultipleFileSources, { operationContext: "multipleFileSourceContext" }); + + const playCompletedEventToFileSources = await waitForEvent( + "PlayCompleted", + callConnectionId, + 20000, + ); + assert.isDefined(playCompletedEventToFileSources); + + // play to target + await callConnection.getCallMedia().play(playMultipleFileSources, [testUser2], { + operationContext: "multipleFileSourceToTargetContext", + }); + const playCompletedEventToTargetFileSources = await waitForEvent( + "PlayCompleted", + callConnectionId, + 20000, + ); + assert.isDefined(playCompletedEventToTargetFileSources); + }).timeout(60000); + + it("Play multiple text sources with playall", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_multiple_text_sources_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test three", voiceName: "en-US-NancyNeural" }, + ]; + + await callConnection + .getCallMedia() + .playToAll(playMultipleTextSources, { operationContext: "multipleTextSourceContext" }); + + const playCompletedEvent = await waitForEvent("PlayCompleted", callConnectionId, 20000); + assert.isDefined(playCompletedEvent); + }).timeout(60000); + + it("Play multiple text sources with play", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_multiple_text_sources_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + console.log(cognitiveServiceEndpoint); + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test three", voiceName: "en-US-NancyNeural" }, + ]; + + await callConnection.getCallMedia().play(playMultipleTextSources, [testUser2], { + operationContext: "multipleTextSourceToTargetContext", + }); + const playCompletedEventToTargetTextSources = await waitForEvent( + "PlayCompleted", + callConnectionId, + 20000, + ); + assert.isDefined(playCompletedEventToTargetTextSources); + }).timeout(60000); + + it("Play combined text and file sources with playall", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_combined_text_and_file_sources_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + await callConnection + .getCallMedia() + .playToAll(multiplePlaySources, { operationContext: "multipleSourceContext" }); + + const playCompletedEventMultipleSource = await waitForEvent( + "PlayCompleted", + callConnectionId, + 20000, + ); + assert.isDefined(playCompletedEventMultipleSource); + }).timeout(60000); + + it("Play combined text and file sources with play", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_combined_text_and_file_sources_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + await callConnection.getCallMedia().play(multiplePlaySources, [testUser2], { + operationContext: "multipleSourceToTargetContext", + }); + const playCompletedEventToTargetMultipleSource = await waitForEvent( + "PlayCompleted", + callConnectionId, + 20000, + ); + assert.isDefined(playCompletedEventToTargetMultipleSource); + }).timeout(60000); + + it("Play wrong source with play", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_wrong_source_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const filePrompt: FileSource = { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }; + + await callConnection + .getCallMedia() + .play([filePrompt], [testUser2], { operationContext: "playFailContext" }); + const playFailedEventWithTargetParticipant = await waitForEvent( + "PlayFailed", + callConnectionId, + 20000, + ); + assert.isDefined(playFailedEventWithTargetParticipant); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it("Play wrong source with playall", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "play_wrong_source_with_play_and_playall"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + operationContext: "playMultipleSourcesCreateCall", + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const answerCallOption: AnswerCallOptions = { + operationContext: "playMultipleSourcesAnswerCall", + }; + await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOption, + ); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const filePrompt: FileSource = { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }; + + await callConnection + .getCallMedia() + .playToAll([filePrompt], { operationContext: "playFailContext" }); + const playFailedEvent = await waitForEvent("PlayFailed", callConnectionId, 20000); + assert.isDefined(playFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it.skip("DTMF recognize with multiple play sources test", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "dtmf_recognize_with_multiple_play_source"; + await loadPersistedEvents(testName); + + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + ]; + const recognizeDtmfOptionsToTextSource: CallMediaRecognizeDtmfOptions = { + maxTonesToCollect: 1, + initialSilenceTimeoutInSeconds: 5, + playPrompts: playMultipleTextSources, + interToneTimeoutInSeconds: 5, + interruptPrompt: true, + stopDtmfTones: [DtmfTone.Pound], + kind: "callMediaRecognizeDtmfOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeDtmfOptionsToTextSource); + const recognizeFailedEventToTextSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToTextSource); + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeDtmfOptionsToMultipleSource: CallMediaRecognizeDtmfOptions = { + maxTonesToCollect: 1, + initialSilenceTimeoutInSeconds: 5, + playPrompts: multiplePlaySources, + interToneTimeoutInSeconds: 5, + interruptPrompt: true, + stopDtmfTones: [DtmfTone.Pound], + kind: "callMediaRecognizeDtmfOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeDtmfOptionsToMultipleSource); + const recognizeFailedEventToMultipleSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToMultipleSource); + + const multiplePrompts: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeDtmfOptionsToMultiplePrompts: CallMediaRecognizeDtmfOptions = { + maxTonesToCollect: 1, + initialSilenceTimeoutInSeconds: 5, + playPrompts: multiplePrompts, + interToneTimeoutInSeconds: 5, + interruptPrompt: true, + stopDtmfTones: [DtmfTone.Pound], + kind: "callMediaRecognizeDtmfOptions", + }; + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeDtmfOptionsToMultiplePrompts); + const recognizeFailedEvent = await waitForEvent("RecognizeFailed", callConnectionId, 8000); + assert.isDefined(recognizeFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it.skip("Speech recognize with multiple play sources test", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "speech_recognize_with_multiple_play_source"; + await loadPersistedEvents(testName); + + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOptionsToTextSource: CallMediaRecognizeSpeechOptions = { + endSilenceTimeoutInSeconds: 1, + playPrompts: playMultipleTextSources, + kind: "callMediaRecognizeSpeechOptions", + initialSilenceTimeoutInSeconds: 5, + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOptionsToTextSource); + const recognizeFailedEventToTextSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToTextSource); + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOptionsMultipleSource: CallMediaRecognizeSpeechOptions = { + endSilenceTimeoutInSeconds: 1, + playPrompts: multiplePlaySources, + kind: "callMediaRecognizeSpeechOptions", + initialSilenceTimeoutInSeconds: 5, + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOptionsMultipleSource); + const recognizeFailedEventToMultipleSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToMultipleSource); + + const multiplePrompts: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOptionsMultiPrompts: CallMediaRecognizeSpeechOptions = { + endSilenceTimeoutInSeconds: 1, + playPrompts: multiplePrompts, + kind: "callMediaRecognizeSpeechOptions", + initialSilenceTimeoutInSeconds: 5, + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOptionsMultiPrompts); + const recognizeFailedEvent = await waitForEvent("RecognizeFailed", callConnectionId, 8000); + assert.isDefined(recognizeFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it.skip("Choice recognize with multiple play sources test", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "choice_recognize_with_multiple_play_source"; + await loadPersistedEvents(testName); + + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const choices = [ + { + label: "Confirm", + phrases: ["Confirm", "First", "One"], + tone: DtmfTone.One, + }, + { + label: "Cancel", + phrases: ["Cancel", "Second", "Two"], + tone: DtmfTone.Two, + }, + ]; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeChoiceOptionsToTextSource: CallMediaRecognizeChoiceOptions = { + choices: choices, + interruptPrompt: true, + initialSilenceTimeoutInSeconds: 5, + playPrompts: playMultipleTextSources, + kind: "callMediaRecognizeChoiceOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeChoiceOptionsToTextSource); + const recognizeFailedEventToTextSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToTextSource); + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeChoiceOptionsToMultipleSource: CallMediaRecognizeChoiceOptions = { + choices: choices, + interruptPrompt: true, + initialSilenceTimeoutInSeconds: 10, + playPrompts: multiplePlaySources, + kind: "callMediaRecognizeChoiceOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeChoiceOptionsToMultipleSource); + const recognizeFailedEventToMultipleSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToMultipleSource); + + const multiplePrompts: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeChoiceOptionsMultiplePrompts: CallMediaRecognizeChoiceOptions = { + choices: choices, + interruptPrompt: true, + initialSilenceTimeoutInSeconds: 5, + playPrompts: multiplePrompts, + kind: "callMediaRecognizeChoiceOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeChoiceOptionsMultiplePrompts); + const recognizeFailedEvent = await waitForEvent("RecognizeFailed", callConnectionId, 8000); + assert.isDefined(recognizeFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it.skip("SpeechOrDtmf recognize with multiple play sources test", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "speechOrDtmf_recognize_with_multiple_play_source"; + await loadPersistedEvents(testName); + + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + const createCallOption: CreateCallOptions = { + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + createCallOption, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + const playMultipleTextSources: TextSource[] = [ + { kind: "textSource", text: "this is test one", voiceName: "en-US-NancyNeural" }, + { kind: "textSource", text: "this is test two", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOrDtmfOptionsTextSource: CallMediaRecognizeSpeechOrDtmfOptions = { + maxTonesToCollect: 1, + endSilenceTimeoutInSeconds: 1, + playPrompts: playMultipleTextSources, + initialSilenceTimeoutInSeconds: 5, + interruptPrompt: true, + kind: "callMediaRecognizeSpeechOrDtmfOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOrDtmfOptionsTextSource); + console.log("callMediaRecognizeSpeechOrDtmfOptions"); + const recognizeFailedEventToTextSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToTextSource); + + const multiplePlaySources: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: fileSourceUrl }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOrDtmfOptionsMultipleSource: CallMediaRecognizeSpeechOrDtmfOptions = { + maxTonesToCollect: 1, + endSilenceTimeoutInSeconds: 1, + playPrompts: multiplePlaySources, + initialSilenceTimeoutInSeconds: 5, + interruptPrompt: true, + kind: "callMediaRecognizeSpeechOrDtmfOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOrDtmfOptionsMultipleSource); + const recognizeFailedEventToMultipleSource = await waitForEvent( + "RecognizeFailed", + callConnectionId, + 8000, + ); + assert.isDefined(recognizeFailedEventToMultipleSource); + + const multiplePrompts: (FileSource | TextSource)[] = [ + { kind: "fileSource", url: "https://dummy.com/dummyurl.wav" }, + { kind: "textSource", text: "this is test", voiceName: "en-US-NancyNeural" }, + ]; + + const recognizeSpeechOrDtmfOptionsMultiplePropmt: CallMediaRecognizeSpeechOrDtmfOptions = { + maxTonesToCollect: 1, + endSilenceTimeoutInSeconds: 1, + playPrompts: multiplePrompts, + initialSilenceTimeoutInSeconds: 5, + interruptPrompt: true, + kind: "callMediaRecognizeSpeechOrDtmfOptions", + }; + + await callConnection + .getCallMedia() + .startRecognizing(receiverPhoneUser, recognizeSpeechOrDtmfOptionsMultiplePropmt); + + const recognizeFailedEvent = await waitForEvent("RecognizeFailed", callConnectionId, 8000); + assert.isDefined(recognizeFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it("Hold Unhold participant in a call", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "hold_unhold_participant_in_a_call"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + + const result = await callerCallAutomationClient.createCall(callInvite, callBackUrl); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + await callConnection.getCallMedia().hold(testUser2); + await ((ms: number): Promise => new Promise((resolve) => setTimeout(resolve, ms)))(3000); + const participantHold: CallParticipant = await callConnection.getParticipant(testUser2); + assert.isDefined(participantHold); + assert.isTrue(participantHold.isOnHold); + + await callConnection.getCallMedia().unhold(testUser2); + await ((ms: number): Promise => new Promise((resolve) => setTimeout(resolve, ms)))(3000); + const participantUnhold = await callConnection.getParticipant(testUser2); + assert.isDefined(participantUnhold); + assert.isFalse(participantUnhold.isOnHold); + + const playSource: FileSource = { + url: "https://dummy.com/dummyurl.wav", + kind: "fileSource", + }; + + const holdOptions: HoldOptions = { + playSource: playSource, + operationContext: "holdFailedContext", + }; + await callConnection.getCallMedia().hold(testUser2, holdOptions); + const holdFailedEvent = await waitForEvent("HoldFailed", callConnectionId, 8000); + assert.isDefined(holdFailedEvent); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it("Creates a call, start transcription, and hangs up.", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "create_call_start_transcription_and_hang_up"; + await loadPersistedEvents(testName); + const phoneNumbers = await getPhoneNumbers(recorder); + assert.isAtLeast( + phoneNumbers.length, + 2, + "Invalid PSTN setup, test needs at least 2 phone numbers", + ); + callerPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + receiverPhoneUser = { phoneNumber: phoneNumbers.pop() as string }; + + const callInvite: CallInvite = { + targetParticipant: receiverPhoneUser, + sourceCallIdNumber: callerPhoneUser, + }; + const uniqueId = await serviceBusWithNewCall(callerPhoneUser, receiverPhoneUser); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + + const transcriptionOptions: TranscriptionOptions = { + transportUrl: transportUrl, + transportType: "websocket", + locale: "en-US", + startTranscription: false, + enableIntermediateResults: false, + }; + + const creatCallOptions: CreateCallOptions = { + transcriptionOptions: transcriptionOptions, + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + + const result = await callerCallAutomationClient.createCall( + callInvite, + callBackUrl, + creatCallOptions, + ); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 30000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + await receiverCallAutomationClient.answerCall(incomingCallContext, callBackUrl); + } + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + callConnection = result.callConnection; + + await callConnection.getCallMedia().startTranscription(); + const transcriptionStarted = await waitForEvent("TranscriptionStarted", callConnectionId, 8000); + assert.isDefined(transcriptionStarted); + + await callConnection.getCallMedia().stopTranscription(); + const transcriptionStopped = waitForEvent("TranscriptionStopped", callConnectionId, 8000); + assert.isDefined(transcriptionStopped); + + await callConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent("CallDisconnected", callConnectionId, 8000); + assert.isDefined(callDisconnectedEvent); + }).timeout(60000); + + it("Answers a call, start transcription, and hangs up", async function () { + testName = this.test?.fullTitle() + ? this.test?.fullTitle().replace(/ /g, "_") + : "answer_call_start_transcription_and_hang_up"; + await loadPersistedEvents(testName); + + const callInvite: CallInvite = { targetParticipant: testUser2 }; + const uniqueId = await serviceBusWithNewCall(testUser, testUser2); + const callBackUrl: string = dispatcherCallback + `?q=${uniqueId}`; + + const result = await callerCallAutomationClient.createCall(callInvite, callBackUrl); + const incomingCallContext = await waitForIncomingCallContext(uniqueId, 8000); + const callConnectionId: string = result.callConnectionProperties.callConnectionId + ? result.callConnectionProperties.callConnectionId + : ""; + assert.isDefined(incomingCallContext); + + if (incomingCallContext) { + const transcriptionOptions: TranscriptionOptions = { + transportUrl: transportUrl, + transportType: "websocket", + locale: "en-US", + startTranscription: false, + enableIntermediateResults: false, + }; + const answerCallOptions: AnswerCallOptions = { + transcriptionOptions: transcriptionOptions, + callIntelligenceOptions: { cognitiveServicesEndpoint: cognitiveServiceEndpoint }, + }; + const answerCallResult = await receiverCallAutomationClient.answerCall( + incomingCallContext, + callBackUrl, + answerCallOptions, + ); + + const callConnectedEvent = await waitForEvent("CallConnected", callConnectionId, 8000); + assert.isDefined(callConnectedEvent); + + const answerCallConnection = answerCallResult.callConnection; + const answerCallConnectionId: string = answerCallResult.callConnectionProperties + .callConnectionId + ? answerCallResult.callConnectionProperties.callConnectionId + : ""; + + await answerCallConnection.getCallMedia().startTranscription(); + const transcriptionStarted = await waitForEvent( + "TranscriptionStarted", + answerCallConnectionId, + 8000, + ); + assert.isDefined(transcriptionStarted); + + await answerCallConnection.getCallMedia().stopTranscription(); + const transcriptionStopped = waitForEvent( + "TranscriptionStopped", + answerCallConnectionId, + 8000, + ); + assert.isDefined(transcriptionStopped); + + await answerCallConnection.hangUp(true); + const callDisconnectedEvent = await waitForEvent( + "CallDisconnected", + answerCallConnectionId, + 8000, + ); + assert.isDefined(callDisconnectedEvent); + } + }).timeout(60000); }); diff --git a/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts b/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts index 9826eb4d97cc..22ed4750fa60 100644 --- a/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts +++ b/sdk/communication/communication-call-automation/test/callRecordingClient.spec.ts @@ -3,7 +3,7 @@ import sinon from "sinon"; import { assert } from "chai"; -import type * as RestModel from "../src/generated/src/models"; +import * as RestModel from "../src/generated/src/models"; import { createRecordingClient, generateHttpClient } from "./utils/mockClient"; import { baseUri, @@ -15,21 +15,17 @@ import { RECORDING_STATE, } from "./utils/connectionUtils"; import { CallRecording } from "../src/callRecording"; -import type { +import { AnswerCallOptions, CreateCallOptions, PlayOptions, StartRecordingOptions, } from "../src/models/options"; -import { apiVersion } from "../src/generated/src/models/parameters"; -import type { ChannelAffinity } from "@azure/communication-call-automation"; -import type { - CommunicationIdentifier, - CommunicationUserIdentifier, -} from "@azure/communication-common"; -import type { CallAutomationClient, CallInvite, CallConnection } from "../src"; -import type { Recorder } from "@azure-tools/test-recorder"; -import type { Context } from "mocha"; +import { ChannelAffinity } from "@azure/communication-call-automation"; +import { CommunicationIdentifier, CommunicationUserIdentifier } from "@azure/communication-common"; +import { CallAutomationClient, CallInvite, CallConnection } from "../src"; +import { Recorder } from "@azure-tools/test-recorder"; +import { Context } from "mocha"; import { createRecorder, createTestUser, @@ -45,7 +41,7 @@ import { persistEvents, fileSourceUrl, } from "./utils/recordedClient"; -import type { FileSource } from "../src/models/models"; +import { FileSource } from "../src/models/models"; describe("CallRecording Unit Tests", async function () { let callRecording: CallRecording; @@ -94,10 +90,6 @@ describe("CallRecording Unit Tests", async function () { assert.equal(data.channelAffinity[0].participant.communicationUser.id, CALL_TARGET_ID); assert.equal(data.recordingStateCallbackUri, CALL_CALLBACK_URL); assert.equal(request.method, "POST"); - assert.equal( - request.url, - `${baseUri}/calling/recordings?api-version=${apiVersion.mapper.defaultValue}`, - ); }); it("makes successful startRecording request", async function () { @@ -125,10 +117,6 @@ describe("CallRecording Unit Tests", async function () { assert.equal(data.callLocator.kind, "serverCallLocator"); assert.equal(data.recordingStateCallbackUri, CALL_CALLBACK_URL); assert.equal(request.method, "POST"); - assert.equal( - request.url, - `${baseUri}/calling/recordings?api-version=${apiVersion.mapper.defaultValue}`, - ); }); it("makes successful getRecordingProperties request", async function () { @@ -145,10 +133,6 @@ describe("CallRecording Unit Tests", async function () { const request = spy.getCall(0).args[0]; assert.equal(request.method, "GET"); - assert.equal( - request.url, - `${baseUri}/calling/recordings/${RECORDING_ID}?api-version=${apiVersion.mapper.defaultValue}`, - ); }); it("Sends correct args to stop a recording", async () => { @@ -157,11 +141,6 @@ describe("CallRecording Unit Tests", async function () { const spy = sinon.spy(mockHttpClient, "sendRequest"); await callRecording.stop(RECORDING_ID); const request = spy.getCall(0).args[0]; - - assert.equal( - request.url, - `${baseUri}/calling/recordings/${RECORDING_ID}?api-version=${apiVersion.mapper.defaultValue}`, - ); assert.equal(request.method, "DELETE"); }); @@ -171,11 +150,6 @@ describe("CallRecording Unit Tests", async function () { const spy = sinon.spy(mockHttpClient, "sendRequest"); await callRecording.pause(RECORDING_ID); const request = spy.getCall(0).args[0]; - - assert.equal( - request.url, - `${baseUri}/calling/recordings/${RECORDING_ID}:pause?api-version=${apiVersion.mapper.defaultValue}`, - ); assert.equal(request.method, "POST"); }); @@ -185,11 +159,6 @@ describe("CallRecording Unit Tests", async function () { const spy = sinon.spy(mockHttpClient, "sendRequest"); await callRecording.resume(RECORDING_ID); const request = spy.getCall(0).args[0]; - - assert.equal( - request.url, - `${baseUri}/calling/recordings/${RECORDING_ID}:resume?api-version=${apiVersion.mapper.defaultValue}`, - ); assert.equal(request.method, "POST"); }); }); diff --git a/sdk/communication/communication-call-automation/test/streamingData.spec.ts b/sdk/communication/communication-call-automation/test/streamingData.spec.ts new file mode 100644 index 000000000000..e89a7ce68d29 --- /dev/null +++ b/sdk/communication/communication-call-automation/test/streamingData.spec.ts @@ -0,0 +1,123 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { + AudioData, + AudioMetadata, + TranscriptionData, + TranscriptionMetadata, +} from "../src/models/streaming"; +import { StreamingData } from "../src/streamingData"; +import { assert } from "chai"; + +describe("Stream data parser unit tests", function () { + const encoder = new TextEncoder(); + const transcriptionMetaDataJson = + '{"kind":"TranscriptionMetadata","transcriptionMetadata":{"subscriptionId":"0000a000-9999-5555-ae00-cd00e0bc0000","locale":"en-US","callConnectionId":"6d09449c-6677-4f91-8cb7-012c338e6ec1","correlationId":"6d09449c-6677-4f91-8cb7-012c338e6ec1"}}'; + const transcriptionDataJson = + '{"kind":"TranscriptionData","transcriptionData":{"text":"Hello everyone.","format":"display","confidence":0.922650933265686,"offset":212483227,"duration":9600000,"words":[{"text":"hello","offset":212483227,"duration":2800000},{"text":"everyone","offset":215283227,"duration":6800000}],"participantRawID":"4:+000000000000","resultStatus":"Final"}}'; + + const audioMetadataJson = + '{"kind":"AudioMetadata","audioMetadata":{"subscriptionId":"4af370df-3868-461f-8242-91f077a6f8a6","encoding":"PCM","sampleRate":16000,"channels":1,"length":640}}'; + const audioDataJson = + '{"kind":"AudioData","audioData":{"timestamp":"2024-05-30T06:25:02.948Z","data":"test","silent":false, "participantRawID":"28:6b45c5b6-1c34-47c0-8980-11e98d47d23f"}}'; + it("Successfully parse binary data to transcription meta data ", function () { + const transcriptionMetaDataBinary = encoder.encode(transcriptionMetaDataJson); + const parsedData = StreamingData.parse(transcriptionMetaDataBinary); + if ("locale" in parsedData) { + validateTranscriptionMetadata(parsedData); + } + }); + + it("Successfully parse json data to transcription meta data ", function () { + const parsedData = StreamingData.parse(transcriptionMetaDataJson); + if ("locale" in parsedData) { + validateTranscriptionMetadata(parsedData); + } + }); + + it("Successfully parse binary data to transcription data ", function () { + const transcriptionDataBinary = encoder.encode(transcriptionDataJson); + const parsedData = StreamingData.parse(transcriptionDataBinary); + if ("text" in parsedData) { + validateTranscriptionData(parsedData); + } + }); + + it("Successfully parse json data to transcription data ", function () { + const parsedData = StreamingData.parse(transcriptionDataJson); + if ("text" in parsedData) { + validateTranscriptionData(parsedData); + } + }); + it("Successfully parse binary data to audio meta data ", function () { + const audioMetaDataBinary = encoder.encode(audioMetadataJson); + const parsedData = StreamingData.parse(audioMetaDataBinary); + if ("encoding" in parsedData) { + validateAudioMetadata(parsedData); + } + }); + + it("Successfully parse json data to audio meta data ", function () { + const parsedData = StreamingData.parse(audioMetadataJson); + if ("encoding" in parsedData) { + validateAudioMetadata(parsedData); + } + }); + + it("Successfully parse binary data to audio data ", function () { + const audioDataBinary = encoder.encode(audioDataJson); + const parsedData = StreamingData.parse(audioDataBinary); + if ("isSilent" in parsedData) { + validateAudioData(parsedData); + } + }); + + it("Successfully parse json data to audio data ", function () { + const parsedData = StreamingData.parse(audioDataJson); + if ("isSilent" in parsedData) { + validateAudioData(parsedData); + } + }); +}); + +function validateTranscriptionMetadata(transcriptionMetadata: TranscriptionMetadata): void { + assert.equal(transcriptionMetadata.subscriptionId, "0000a000-9999-5555-ae00-cd00e0bc0000"); + assert.equal(transcriptionMetadata.locale, "en-US"); + assert.equal(transcriptionMetadata.correlationId, "6d09449c-6677-4f91-8cb7-012c338e6ec1"); + assert.equal(transcriptionMetadata.callConnectionId, "6d09449c-6677-4f91-8cb7-012c338e6ec1"); +} + +function validateTranscriptionData(transcriptionData: TranscriptionData): void { + assert.equal(transcriptionData.text, "Hello everyone."); + assert.equal(transcriptionData.resultState, "Final"); + assert.equal(transcriptionData.confidence, 0.922650933265686); + assert.equal(transcriptionData.offsetInTicks, 212483227); + assert.equal(transcriptionData.durationInTicks, 9600000); + assert.equal(transcriptionData.words.length, 2); + assert.equal(transcriptionData.words[0].text, "hello"); + assert.equal(transcriptionData.words[0].offsetInTicks, 212483227); + assert.equal(transcriptionData.words[0].durationInTicks, 2800000); + assert.equal(transcriptionData.words[1].text, "everyone"); + assert.equal(transcriptionData.words[1].offsetInTicks, 215283227); + assert.equal(transcriptionData.words[1].durationInTicks, 6800000); + if ("kind" in transcriptionData.participant) { + assert.equal(transcriptionData.participant.kind, "phoneNumber"); + } + if ("phoneNumber" in transcriptionData.participant) { + assert.equal(transcriptionData.participant.phoneNumber, "+000000000000"); + } +} + +function validateAudioMetadata(audioMetadata: AudioMetadata): void { + assert.equal(audioMetadata.subscriptionId, "4af370df-3868-461f-8242-91f077a6f8a6"); + assert.equal(audioMetadata.encoding, "PCM"); + assert.equal(audioMetadata.sampleRate, 16000); + assert.equal(audioMetadata.channels, 1); + assert.equal(audioMetadata.length, 640); +} + +function validateAudioData(audioData: AudioData): void { + assert.equal(audioData.data, "test"); + assert.equal(audioData.isSilent, false); +} diff --git a/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts b/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts deleted file mode 100644 index c2fc18f99bc6..000000000000 --- a/sdk/communication/communication-call-automation/test/streamingDataParser.spec.ts +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -import type { TranscriptionData, TranscriptionMetadata } from "../src/models/transcription"; -import { streamingData } from "../src/utli/streamingDataParser"; -import { assert } from "chai"; - -describe("Stream data parser unit tests", function () { - const encoder = new TextEncoder(); - const transcriptionMetaDataJson = - '{"kind":"TranscriptionMetadata","transcriptionMetadata":{"subscriptionId":"0000a000-9999-5555-ae00-cd00e0bc0000","locale":"en-US","callConnectionId":"6d09449c-6677-4f91-8cb7-012c338e6ec1","correlationId":"6d09449c-6677-4f91-8cb7-012c338e6ec1"}}'; - const transcriptionDataJson = - '{"kind":"TranscriptionData","transcriptionData":{"text":"Hello everyone.","format":"display","confidence":0.8249790668487549,"offset":2516933652456984600,"words":[{"text":"hello","offset":2516933652456984600},{"text":"everyone","offset":2516933652459784700}],"participantRawID":"4:+910000000000","resultStatus":"Final"}}'; - - it("Successfully parse binary data to transcription meta data ", function () { - const transcriptionMetaDataBinary = encoder.encode(transcriptionMetaDataJson); - const parsedData = streamingData(transcriptionMetaDataBinary); - if ("locale" in parsedData) { - validateTranscriptionMetadata(parsedData); - } - }); - - it("Successfully parse json data to transcription meta data ", function () { - const parsedData = streamingData(transcriptionMetaDataJson); - if ("locale" in parsedData) { - validateTranscriptionMetadata(parsedData); - } - }); - - it("Successfully parse binary data to transcription data ", function () { - const transcriptionDataBinary = encoder.encode(transcriptionDataJson); - const parsedData = streamingData(transcriptionDataBinary); - if ("text" in parsedData) { - validateTranscriptionData(parsedData); - } - }); - - it("Successfully parse json data to transcription data ", function () { - const parsedData = streamingData(transcriptionDataJson); - if ("text" in parsedData) { - validateTranscriptionData(parsedData); - } - }); -}); - -function validateTranscriptionMetadata(transcriptionMetadata: TranscriptionMetadata): void { - assert.equal(transcriptionMetadata.subscriptionId, "0000a000-9999-5555-ae00-cd00e0bc0000"); - assert.equal(transcriptionMetadata.locale, "en-US"); - assert.equal(transcriptionMetadata.correlationId, "6d09449c-6677-4f91-8cb7-012c338e6ec1"); - assert.equal(transcriptionMetadata.callConnectionId, "6d09449c-6677-4f91-8cb7-012c338e6ec1"); -} - -function validateTranscriptionData(transcriptionData: TranscriptionData): void { - assert.equal(transcriptionData.text, "Hello everyone."); - assert.equal(transcriptionData.resultStatus, "Final"); - assert.equal(transcriptionData.confidence, 0.8249790668487549); - assert.equal(transcriptionData.offset, 2516933652456984600); - assert.equal(transcriptionData.words.length, 2); - assert.equal(transcriptionData.words[0].text, "hello"); - assert.equal(transcriptionData.words[0].offset, 2516933652456984600); - assert.equal(transcriptionData.words[1].text, "everyone"); - assert.equal(transcriptionData.words[1].offset, 2516933652459784700); - if ("kind" in transcriptionData.participant) { - assert.equal(transcriptionData.participant.kind, "phoneNumber"); - } - if ("phoneNumber" in transcriptionData.participant) { - assert.equal(transcriptionData.participant.phoneNumber, "+910000000000"); - } -} diff --git a/sdk/communication/communication-call-automation/test/utils/connectionUtils.ts b/sdk/communication/communication-call-automation/test/utils/connectionUtils.ts index 5a7da8bda6f7..bb599e2792c0 100644 --- a/sdk/communication/communication-call-automation/test/utils/connectionUtils.ts +++ b/sdk/communication/communication-call-automation/test/utils/connectionUtils.ts @@ -20,7 +20,6 @@ export const CALL_INCOMING_CALL_CONTEXT = "eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.R export const CALL_OPERATION_CONTEXT = "operationContext"; export const RECORDING_ID = "recordingId"; export const RECORDING_STATE = "active"; -export const MEDIA_SUBSCRIPTION_ID = "mediaSubscriptionId"; export const MEDIA_UR_MP3 = "https://example.com/audio.mp3"; export const MEDIA_URL_WAV = "https://example.com/audio/test.wav"; diff --git a/sdk/communication/communication-call-automation/test/utils/mockClient.ts b/sdk/communication/communication-call-automation/test/utils/mockClient.ts index 0ecf349dabc0..aa3f358ca89f 100644 --- a/sdk/communication/communication-call-automation/test/utils/mockClient.ts +++ b/sdk/communication/communication-call-automation/test/utils/mockClient.ts @@ -6,7 +6,6 @@ import { createHttpHeaders } from "@azure/core-rest-pipeline"; import { baseUri, CALL_CONNECTION_ID, generateToken } from "../utils/connectionUtils"; import { CallMedia } from "../../src/callMedia"; import { CallRecording } from "../../src/callRecording"; -import { CallAutomationEventProcessor } from "../../src/eventprocessor/callAutomationEventProcessor"; export const generateHttpClient = (status: number, parsedBody?: unknown): HttpClient => { const mockHttpClient: HttpClient = { @@ -27,7 +26,6 @@ export const createMediaClient = (mockHttpClient: HttpClient): CallMedia => { CALL_CONNECTION_ID, baseUri, { key: generateToken() }, - new CallAutomationEventProcessor(), { httpClient: mockHttpClient, }, diff --git a/sdk/communication/communication-call-automation/test/utils/recordedClient.ts b/sdk/communication/communication-call-automation/test/utils/recordedClient.ts index c25176706134..b8f37b3dd909 100644 --- a/sdk/communication/communication-call-automation/test/utils/recordedClient.ts +++ b/sdk/communication/communication-call-automation/test/utils/recordedClient.ts @@ -54,6 +54,8 @@ const envSetupForPlayback: Record = { SERVICEBUS_STRING: "Endpoint=sb://REDACTED.servicebus.windows.net/;SharedAccessKeyName=REDACTED;SharedAccessKey=REDACTED", FILE_SOURCE_URL: "https://example.com/audio/test.wav", + TRANSPORT_URL: "https://REDACTED", + COGNITIVE_SERVICE_ENDPOINT: "https://REDACTED.cognitiveservices.azure.com/", }; const fakeToken = generateToken(); @@ -66,7 +68,12 @@ const serviceBusConnectionString: string = !isPlaybackMode() export const fileSourceUrl: string = !isPlaybackMode() ? (env["FILE_SOURCE_URL"] ?? envSetupForPlayback["DISPATCHER_ENDPOINT"]) : envSetupForPlayback["FILE_SOURCE_URL"]; - +export const transportUrl: string = !isPlaybackMode() + ? (env["TRANSPORT_URL"] ?? envSetupForPlayback["TRANSPORT_URL"]) + : envSetupForPlayback["TRANSPORT_URL"]; +export const cognitiveServiceEndpoint: string = !isPlaybackMode() + ? (env["COGNITIVE_SERVICE_ENDPOINT"] ?? envSetupForPlayback["COGNITIVE_SERVICE_ENDPOINT"]) + : envSetupForPlayback["COGNITIVE_SERVICE_ENDPOINT"]; export const dispatcherCallback: string = dispatcherEndpoint + "/api/servicebuscallback/events"; export const serviceBusReceivers: Map = new Map< string, @@ -119,6 +126,7 @@ export const recorderOptions: RecorderStartOptions = { }, ], bodyKeySanitizers: [{ jsonPath: "$.accessToken.token", value: fakeToken }], + uriSanitizers: [{ regex: true, value: "https://endpoint", target: "https://([^/?]+)" }], }, removeCentralSanitizers: [ "AZSDK3493", // .name in the body is not a secret and is listed below in the beforeEach section @@ -275,14 +283,7 @@ export function persistEvents(testName: string): void { const sanatizedEvents: any[] = []; for (const event of eventsToPersist) { const jsonData = JSON.parse(event); - sanitizeObject(jsonData, [ - "rawId", - "id", - "incomingCallContext", - "value", - "correlationId", - "serverCallId", - ]); + sanitizeObject(jsonData, ["rawId", "id", "incomingCallContext", "value", "serverCallId"]); sanatizedEvents.push(jsonData); }