Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ public enum AudioChannel
}
public partial class AudioData : Azure.Communication.CallAutomation.StreamingData
{
public AudioData(byte[] data) { }
public byte[] Data { get { throw null; } }
public AudioData(System.ReadOnlyMemory<byte> data) { }
public System.ReadOnlyMemory<byte> Data { get { throw null; } }
public bool IsSilent { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public System.DateTimeOffset Timestamp { get { throw null; } }
Expand Down Expand Up @@ -105,7 +105,6 @@ public partial class AudioMetadata : Azure.Communication.CallAutomation.Streamin
internal AudioMetadata() { }
public Azure.Communication.CallAutomation.AudioChannel Channels { get { throw null; } }
public string Encoding { get { throw null; } }
public int Length { get { throw null; } }
public string MediaSubscriptionId { get { throw null; } }
public int SampleRate { get { throw null; } }
}
Expand Down Expand Up @@ -1501,14 +1500,10 @@ internal TranscriptionFailed() { }
}
public partial class TranscriptionMetadata : Azure.Communication.CallAutomation.StreamingData
{
public TranscriptionMetadata() { }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("callConnectionId")]
internal TranscriptionMetadata() { }
public string CallConnectionId { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("correlationId")]
public string CorrelationId { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("locale")]
public string Locale { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("subscriptionId")]
public string TranscriptionSubscriptionId { get { throw null; } }
}
public partial class TranscriptionOptions
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,8 +76,8 @@ public enum AudioChannel
}
public partial class AudioData : Azure.Communication.CallAutomation.StreamingData
{
public AudioData(byte[] data) { }
public byte[] Data { get { throw null; } }
public AudioData(System.ReadOnlyMemory<byte> data) { }
public System.ReadOnlyMemory<byte> Data { get { throw null; } }
public bool IsSilent { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public System.DateTimeOffset Timestamp { get { throw null; } }
Expand Down Expand Up @@ -105,7 +105,6 @@ public partial class AudioMetadata : Azure.Communication.CallAutomation.Streamin
internal AudioMetadata() { }
public Azure.Communication.CallAutomation.AudioChannel Channels { get { throw null; } }
public string Encoding { get { throw null; } }
public int Length { get { throw null; } }
public string MediaSubscriptionId { get { throw null; } }
public int SampleRate { get { throw null; } }
}
Expand Down Expand Up @@ -1500,14 +1499,10 @@ internal TranscriptionFailed() { }
}
public partial class TranscriptionMetadata : Azure.Communication.CallAutomation.StreamingData
{
public TranscriptionMetadata() { }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("callConnectionId")]
internal TranscriptionMetadata() { }
public string CallConnectionId { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("correlationId")]
public string CorrelationId { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("locale")]
public string Locale { get { throw null; } }
[System.Text.Json.Serialization.JsonPropertyNameAttribute("subscriptionId")]
public string TranscriptionSubscriptionId { get { throw null; } }
}
public partial class TranscriptionOptions
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
"AssetsRepo": "Azure/azure-sdk-assets",
"AssetsRepoPrefixPath": "net",
"TagPrefix": "net/communication/Azure.Communication.CallAutomation",
"Tag": "net/communication/Azure.Communication.CallAutomation_fdf269ce94"
"Tag": "net/communication/Azure.Communication.CallAutomation_752c087c19"
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,17 @@ namespace Azure.Communication.CallAutomation
public class AudioData : StreamingData
{
/// <summary>
/// The audio data, encoded as a base64 string
/// The audio data, encoded as a ReadOnlyMemory of bytes
/// </summary>
/// <param name="data"></param>
public AudioData(byte[] data)
public AudioData(ReadOnlyMemory<byte> data)
{
Data = data;
}

internal AudioData(string data, DateTime timestamp, string participantId, bool silent)
{
Data = !string.IsNullOrWhiteSpace(data) ? Convert.FromBase64String(data) : default;
Data = !string.IsNullOrWhiteSpace(data) ? Convert.FromBase64String(data).AsMemory() : default;
Timestamp = timestamp;
if (participantId != null)
{
Expand All @@ -31,9 +31,9 @@ internal AudioData(string data, DateTime timestamp, string participantId, bool s
}

/// <summary>
/// The audio data in base64 byte.
/// The audio data in ReadOnlyMemory byte.
/// </summary>
public byte[] Data { get; }
public ReadOnlyMemory<byte> Data { get; }

/// <summary>
/// The timestamp indicating when the media content was received by the bot,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ internal AudioMetadata(AudioMetadataInternal audioMetadataInternal)
Encoding = audioMetadataInternal.Encoding;
SampleRate = audioMetadataInternal.SampleRate;
Channels = (AudioChannel)audioMetadataInternal.Channels;
Length = audioMetadataInternal.Length;
}

/// <summary>
Expand All @@ -35,9 +34,5 @@ internal AudioMetadata(AudioMetadataInternal audioMetadataInternal)
/// Currently, only "mono" (single channel) is supported.
/// </summary>
public AudioChannel Channels { get; }
/// <summary>
/// The size of the audio data (base64 byte) being sent, based on the sample rate and duration.
/// </summary>
public int Length { get; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,8 @@ private static StreamingData ParseStreamingData(string base64Data)

#region Transcription
case "TranscriptionMetadata":
return JsonSerializer.Deserialize<TranscriptionMetadata>(streamingData.GetProperty("transcriptionMetadata").ToString());
var transcriptionMetadataInternal = JsonSerializer.Deserialize<TranscriptionMetadataInternal>(streamingData.GetProperty("transcriptionMetadata").ToString());
return new TranscriptionMetadata(transcriptionMetadataInternal);

case "TranscriptionData":
TranscriptionDataInternal transcriptionDataInternal = JsonSerializer.Deserialize<TranscriptionDataInternal>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,28 +10,31 @@ namespace Azure.Communication.CallAutomation
/// </summary>
public class TranscriptionMetadata : StreamingData
{
internal TranscriptionMetadata(TranscriptionMetadataInternal transcriptionMetadataInternal)
{
TranscriptionSubscriptionId = transcriptionMetadataInternal.TranscriptionSubscriptionId;
Locale = transcriptionMetadataInternal.Locale;
CallConnectionId = transcriptionMetadataInternal.CallConnectionId;
CorrelationId = transcriptionMetadataInternal.CorrelationId;
}
/// <summary>
/// Transcription Subscription Id.
/// </summary>
[JsonPropertyName("subscriptionId")]
public string TranscriptionSubscriptionId { get; internal set; }
public string TranscriptionSubscriptionId { get; }

/// <summary>
/// The target locale in which the translated text needs to be
/// </summary>
[JsonPropertyName("locale")]
public string Locale { get; internal set; }
public string Locale { get; }

/// <summary>
/// call connection Id.
/// </summary>
[JsonPropertyName("callConnectionId")]
public string CallConnectionId { get; internal set; }
public string CallConnectionId { get; }

/// <summary>
/// correlation Id.
/// </summary>
[JsonPropertyName("correlationId")]
public string CorrelationId { get; internal set; }
public string CorrelationId { get; }
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

using System.Text.Json.Serialization;

namespace Azure.Communication.CallAutomation
{
/// <summary>
/// Metadata for Transcription Streaming.
/// </summary>
internal class TranscriptionMetadataInternal
{
/// <summary>
/// Transcription Subscription Id.
/// </summary>
[JsonPropertyName("subscriptionId")]
public string TranscriptionSubscriptionId { get; set; }

/// <summary>
/// The target locale in which the translated text needs to be
/// </summary>
[JsonPropertyName("locale")]
public string Locale { get; set; }

/// <summary>
/// call connection Id.
/// </summary>
[JsonPropertyName("callConnectionId")]
public string CallConnectionId { get; set; }

/// <summary>
/// correlation Id.
/// </summary>
[JsonPropertyName("correlationId")]
public string CorrelationId { get; set; }
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ public TranscriptionOptions(Uri transportUri, string locale, bool? startTranscri
Argument.AssertNotNull(locale, nameof(locale));

TransportUri = transportUri;
TranscriptionTransport = transcriptionTransport;
TranscriptionTransport = transcriptionTransport == default ? StreamingTransport.Websocket : transcriptionTransport;
Locale = locale;
StartTranscription = startTranscription;
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,49 +1,49 @@
{
"entries": [
{
"body": "{\u0022to\u0022:{\u0022kind\u0022:\u0022communicationUser\u0022,\u0022rawId\u0022:\u0022Sanitized\u0022,\u0022communicationUser\u0022:{\u0022id\u0022:\u0022Sanitized\u0022}},\u0022from\u0022:{\u0022kind\u0022:\u0022communicationUser\u0022,\u0022rawId\u0022:\u0022Sanitized\u0022,\u0022communicationUser\u0022:{\u0022id\u0022:\u0022Sanitized\u0022}},\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LVTByYW14dUJraXJkWndCT1RFY1RBP2k9MTAtNjAtMTgtOTUmZT02Mzg2OTcxOTcwNTg3NTUwNDE=\u0022,\u0022callerDisplayName\u0022:\u0022Sanitized\u0022,\u0022incomingCallContext\u0022:\u0022Sanitized\u0022,\u0022correlationId\u0022:\u00223610cec4-1b6a-4447-9aee-0904aaed9552\u0022}",
"messageId": "b69cc4c403a143b8ad1b7e639882eb03",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-b5fab0355f60813345ae2b53afc99e9d-c80ad52c953786ab-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
},
{
"body": "[{\u0022id\u0022:\u0022Sanitized\u0022,\u0022source\u0022:\u0022calling/callConnections/12002080-abca-4733-b3dd-853cb6236eed\u0022,\u0022type\u0022:\u0022Microsoft.Communication.CallDisconnected\u0022,\u0022data\u0022:{\u0022version\u0022:\u00222024-09-01-preview\u0022,\u0022resultInformation\u0022:{\u0022code\u0022:603,\u0022subCode\u0022:0,\u0022message\u0022:\u0022Decline. DiagCode: 603#0.@\u0022},\u0022callConnectionId\u0022:\u002212002080-abca-4733-b3dd-853cb6236eed\u0022,\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LVTByYW14dUJraXJkWndCT1RFY1RBP2k9MTAtNjAtMTgtOTUmZT02Mzg2OTcxOTcwNTg3NTUwNDE=\u0022,\u0022correlationId\u0022:\u00223610cec4-1b6a-4447-9aee-0904aaed9552\u0022,\u0022publicEventType\u0022:\u0022Microsoft.Communication.CallDisconnected\u0022},\u0022time\u0022:\u00222024-12-14T00:36:06.8886544\\u002B00:00\u0022,\u0022specversion\u0022:\u00221.0\u0022,\u0022datacontenttype\u0022:\u0022application/json\u0022,\u0022subject\u0022:\u0022calling/callConnections/12002080-abca-4733-b3dd-853cb6236eed\u0022}]",
"messageId": "4c166da755bb4136a22ca7105c437c21",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-44eb62096d79b79cdee635500a13b33a-911b9c403d2e7159-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
},
{
"body": "[{\u0022id\u0022:\u0022Sanitized\u0022,\u0022source\u0022:\u0022calling/callConnections/12002080-abca-4733-b3dd-853cb6236eed\u0022,\u0022type\u0022:\u0022Microsoft.Communication.CreateCallFailed\u0022,\u0022data\u0022:{\u0022version\u0022:\u00222024-09-01-preview\u0022,\u0022resultInformation\u0022:{\u0022code\u0022:603,\u0022subCode\u0022:0,\u0022message\u0022:\u0022Decline. DiagCode: 603#0.@\u0022},\u0022callConnectionId\u0022:\u002212002080-abca-4733-b3dd-853cb6236eed\u0022,\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzY2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi9LVTByYW14dUJraXJkWndCT1RFY1RBP2k9MTAtNjAtMTgtOTUmZT02Mzg2OTcxOTcwNTg3NTUwNDE=\u0022,\u0022correlationId\u0022:\u00223610cec4-1b6a-4447-9aee-0904aaed9552\u0022,\u0022publicEventType\u0022:\u0022Microsoft.Communication.CreateCallFailed\u0022},\u0022time\u0022:\u00222024-12-14T00:36:06.8886544\\u002B00:00\u0022,\u0022specversion\u0022:\u00221.0\u0022,\u0022datacontenttype\u0022:\u0022application/json\u0022,\u0022subject\u0022:\u0022calling/callConnections/12002080-abca-4733-b3dd-853cb6236eed\u0022}]",
"messageId": "a419a96d42ec4e13852f1abf51bcda77",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-c4732118e2b1d2374ce0eac8af713856-476b5bfb085d30c9-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
}
]
}
"entries": [
{
"body": "{\u0022to\u0022:{\u0022kind\u0022:\u0022communicationUser\u0022,\u0022rawId\u0022:\u0022Sanitized\u0022,\u0022communicationUser\u0022:{\u0022id\u0022:\u0022Sanitized\u0022}},\u0022from\u0022:{\u0022kind\u0022:\u0022communicationUser\u0022,\u0022rawId\u0022:\u0022Sanitized\u0022,\u0022communicationUser\u0022:{\u0022id\u0022:\u0022Sanitized\u0022}},\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi95QzYySXJ6dGtVZXBXWFI2ZjVRNDVnP2k9MTAtMTI4LTMtMTk3JmU9NjM4ODI5MzQzNDY0MzI3Mzk5\u0022,\u0022callerDisplayName\u0022:\u0022Sanitized\u0022,\u0022incomingCallContext\u0022:\u0022Sanitized\u0022,\u0022correlationId\u0022:\u00229fd6b8e7-e18d-4840-a27a-30e49ba72407\u0022}",
"messageId": "79c6c8edefab424193e166f5ba66a087",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-ff16bdd8318a53cbc6474343251bfa44-b9b249aa0a80f4e2-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
},
{
"body": "[{\u0022id\u0022:\u0022Sanitized\u0022,\u0022source\u0022:\u0022calling/callConnections/3e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022,\u0022type\u0022:\u0022Microsoft.Communication.CallDisconnected\u0022,\u0022data\u0022:{\u0022version\u0022:\u00222025-05-15\u0022,\u0022resultInformation\u0022:{\u0022code\u0022:603,\u0022subCode\u0022:0,\u0022message\u0022:\u0022Decline. DiagCode: 603#0.@\u0022},\u0022callConnectionId\u0022:\u00223e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022,\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi95QzYySXJ6dGtVZXBXWFI2ZjVRNDVnP2k9MTAtMTI4LTMtMTk3JmU9NjM4ODI5MzQzNDY0MzI3Mzk5\u0022,\u0022correlationId\u0022:\u00229fd6b8e7-e18d-4840-a27a-30e49ba72407\u0022,\u0022publicEventType\u0022:\u0022Microsoft.Communication.CallDisconnected\u0022},\u0022time\u0022:\u00222025-05-16T17:36:14.5925176\\u002B00:00\u0022,\u0022specversion\u0022:\u00221.0\u0022,\u0022datacontenttype\u0022:\u0022application/json\u0022,\u0022subject\u0022:\u0022calling/callConnections/3e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022}]",
"messageId": "56db14b60cb04a7ca7fe17922fd1415b",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-b2b23440486d7c524c4a2e335b8bf7c7-f22a47703ed9eed1-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
},
{
"body": "[{\u0022id\u0022:\u0022Sanitized\u0022,\u0022source\u0022:\u0022calling/callConnections/3e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022,\u0022type\u0022:\u0022Microsoft.Communication.CreateCallFailed\u0022,\u0022data\u0022:{\u0022version\u0022:\u00222025-05-15\u0022,\u0022resultInformation\u0022:{\u0022code\u0022:603,\u0022subCode\u0022:0,\u0022message\u0022:\u0022Decline. DiagCode: 603#0.@\u0022},\u0022callConnectionId\u0022:\u00223e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022,\u0022serverCallId\u0022:\u0022aHR0cHM6Ly9hcGkuZmxpZ2h0cHJveHkuc2t5cGUuY29tL2FwaS92Mi9jcC9jb252LXVzd2UtMDQtcHJvZC1ha3MuY29udi5za3lwZS5jb20vY29udi95QzYySXJ6dGtVZXBXWFI2ZjVRNDVnP2k9MTAtMTI4LTMtMTk3JmU9NjM4ODI5MzQzNDY0MzI3Mzk5\u0022,\u0022correlationId\u0022:\u00229fd6b8e7-e18d-4840-a27a-30e49ba72407\u0022,\u0022publicEventType\u0022:\u0022Microsoft.Communication.CreateCallFailed\u0022},\u0022time\u0022:\u00222025-05-16T17:36:14.5925176\\u002B00:00\u0022,\u0022specversion\u0022:\u00221.0\u0022,\u0022datacontenttype\u0022:\u0022application/json\u0022,\u0022subject\u0022:\u0022calling/callConnections/3e006680-8eec-4c31-8b30-24f1f3a5b7c7\u0022}]",
"messageId": "fc0817ac67754ddeb8e7f3ebaefb8f1c",
"partitionKey": null,
"sessionId": null,
"replyToSessionId": null,
"correlationId": null,
"subject": null,
"contentType": null,
"replyTo": null,
"applicationProperties": {
"Diagnostic-Id": "00-cf846cf4add9f40925932f838d870dc1-715da555ff7e5ba7-00"
},
"enqueuedTime": "0001-01-01T00:00:00+00:00"
}
]
}
Loading