Skip to content

Add MoveParticipants API and Event Handling Support #50197

New issue

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

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

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: main
Choose a base branch
from
Draft
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 @@ -301,6 +301,10 @@ protected CallConnection() { }
public virtual System.Threading.Tasks.Task<Azure.Response<System.Collections.Generic.IReadOnlyList<Azure.Communication.CallAutomation.CallParticipant>>> GetParticipantsAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response HangUp(bool forEveryone, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response> HangUpAsync(bool forEveryone, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult> MoveParticipants(Azure.Communication.CallAutomation.MoveParticipantsOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult> MoveParticipants(string fromCall, System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult>> MoveParticipantsAsync(Azure.Communication.CallAutomation.MoveParticipantsOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult>> MoveParticipantsAsync(string fromCall, System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult> MuteParticipant(Azure.Communication.CallAutomation.MuteParticipantOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult> MuteParticipant(Azure.Communication.CommunicationIdentifier targetParticipant, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult>> MuteParticipantAsync(Azure.Communication.CallAutomation.MuteParticipantOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
Expand Down Expand Up @@ -1306,6 +1310,45 @@ internal MediaStreamingUpdate() { }
public Azure.Communication.CallAutomation.MediaStreamingStatus? MediaStreamingStatus { get { throw null; } }
public Azure.Communication.CallAutomation.MediaStreamingStatusDetails? MediaStreamingStatusDetails { get { throw null; } }
}
public partial class MoveParticipantEventResult
{
internal MoveParticipantEventResult() { }
public Azure.Communication.CallAutomation.MoveParticipantFailed FailureResult { get { throw null; } }
public bool IsSuccess { get { throw null; } }
public Azure.Communication.CallAutomation.MoveParticipantSucceeded SuccessResult { get { throw null; } }
public Azure.Communication.CommunicationIdentifier TargetParticipant { get { throw null; } }
}
public partial class MoveParticipantFailed : Azure.Communication.CallAutomation.CallAutomationEventBase
{
internal MoveParticipantFailed() { }
public string FromCall { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public static Azure.Communication.CallAutomation.MoveParticipantFailed Deserialize(string content) { throw null; }
}
public partial class MoveParticipantsOptions
{
public MoveParticipantsOptions(System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, string fromCall) { }
public string FromCall { get { throw null; } }
public System.Uri OperationCallbackUri { get { throw null; } set { } }
public string OperationContext { get { throw null; } set { } }
public System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> TargetParticipants { get { throw null; } }
}
public partial class MoveParticipantsResult
{
internal MoveParticipantsResult() { }
public string FromCall { get { throw null; } }
public string OperationContext { get { throw null; } }
public System.Collections.Generic.IReadOnlyList<Azure.Communication.CallAutomation.CallParticipant> TargetParticipants { get { throw null; } }
public Azure.Communication.CallAutomation.MoveParticipantEventResult WaitForEventProcessor(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public System.Threading.Tasks.Task<Azure.Communication.CallAutomation.MoveParticipantEventResult> WaitForEventProcessorAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
}
public partial class MoveParticipantSucceeded : Azure.Communication.CallAutomation.CallAutomationEventBase
{
internal MoveParticipantSucceeded() { }
public string FromCall { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public static Azure.Communication.CallAutomation.MoveParticipantSucceeded Deserialize(string content) { throw null; }
}
public partial class MuteParticipantOptions
{
public MuteParticipantOptions(Azure.Communication.CommunicationIdentifier targetParticipant) { }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,10 @@ protected CallConnection() { }
public virtual System.Threading.Tasks.Task<Azure.Response<System.Collections.Generic.IReadOnlyList<Azure.Communication.CallAutomation.CallParticipant>>> GetParticipantsAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response HangUp(bool forEveryone, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response> HangUpAsync(bool forEveryone, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult> MoveParticipants(Azure.Communication.CallAutomation.MoveParticipantsOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult> MoveParticipants(string fromCall, System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult>> MoveParticipantsAsync(Azure.Communication.CallAutomation.MoveParticipantsOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MoveParticipantsResult>> MoveParticipantsAsync(string fromCall, System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult> MuteParticipant(Azure.Communication.CallAutomation.MuteParticipantOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult> MuteParticipant(Azure.Communication.CommunicationIdentifier targetParticipant, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public virtual System.Threading.Tasks.Task<Azure.Response<Azure.Communication.CallAutomation.MuteParticipantResult>> MuteParticipantAsync(Azure.Communication.CallAutomation.MuteParticipantOptions options, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
Expand Down Expand Up @@ -1305,6 +1309,45 @@ internal MediaStreamingUpdate() { }
public Azure.Communication.CallAutomation.MediaStreamingStatus? MediaStreamingStatus { get { throw null; } }
public Azure.Communication.CallAutomation.MediaStreamingStatusDetails? MediaStreamingStatusDetails { get { throw null; } }
}
public partial class MoveParticipantEventResult
{
internal MoveParticipantEventResult() { }
public Azure.Communication.CallAutomation.MoveParticipantFailed FailureResult { get { throw null; } }
public bool IsSuccess { get { throw null; } }
public Azure.Communication.CallAutomation.MoveParticipantSucceeded SuccessResult { get { throw null; } }
public Azure.Communication.CommunicationIdentifier TargetParticipant { get { throw null; } }
}
public partial class MoveParticipantFailed : Azure.Communication.CallAutomation.CallAutomationEventBase
{
internal MoveParticipantFailed() { }
public string FromCall { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public static Azure.Communication.CallAutomation.MoveParticipantFailed Deserialize(string content) { throw null; }
}
public partial class MoveParticipantsOptions
{
public MoveParticipantsOptions(System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> targetParticipants, string fromCall) { }
public string FromCall { get { throw null; } }
public System.Uri OperationCallbackUri { get { throw null; } set { } }
public string OperationContext { get { throw null; } set { } }
public System.Collections.Generic.IEnumerable<Azure.Communication.CommunicationIdentifier> TargetParticipants { get { throw null; } }
}
public partial class MoveParticipantsResult
{
internal MoveParticipantsResult() { }
public string FromCall { get { throw null; } }
public string OperationContext { get { throw null; } }
public System.Collections.Generic.IReadOnlyList<Azure.Communication.CallAutomation.CallParticipant> TargetParticipants { get { throw null; } }
public Azure.Communication.CallAutomation.MoveParticipantEventResult WaitForEventProcessor(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
public System.Threading.Tasks.Task<Azure.Communication.CallAutomation.MoveParticipantEventResult> WaitForEventProcessorAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
}
public partial class MoveParticipantSucceeded : Azure.Communication.CallAutomation.CallAutomationEventBase
{
internal MoveParticipantSucceeded() { }
public string FromCall { get { throw null; } }
public Azure.Communication.CommunicationIdentifier Participant { get { throw null; } }
public static Azure.Communication.CallAutomation.MoveParticipantSucceeded Deserialize(string content) { throw null; }
}
public partial class MuteParticipantOptions
{
public MuteParticipantOptions(Azure.Communication.CommunicationIdentifier targetParticipant) { }
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

using System.Collections.Generic;
using System.Linq;

namespace Azure.Communication.CallAutomation
{
/// <summary><see cref="MoveParticipantEventResult"/> is returned from WaitForEvent of <see cref="MoveParticipantsResult"/>.</summary>
public class MoveParticipantEventResult
{
/// <summary>
/// Indicates whether the returned event is considered successful or not.
/// </summary>
public bool IsSuccess { get; internal set; }

/// <summary>
/// <see cref="MoveParticipantSucceeded"/> event will be returned when all participants were moved to the call successfully.
/// </summary>
public MoveParticipantSucceeded SuccessResult { get; }

/// <summary>
/// <see cref="MoveParticipantFailed"/> event will be returned when participants could not be moved to the call.
/// </summary>
public MoveParticipantFailed FailureResult { get; }

/// <summary>
/// <see cref="IReadOnlyList{CommunicationIdentifier}"/> Participants that were affected by the move operation.
/// </summary>
public CommunicationIdentifier TargetParticipant { get; }

internal MoveParticipantEventResult(bool isSuccess, MoveParticipantSucceeded successResult, MoveParticipantFailed failureResult, CommunicationIdentifier targetParticipant)
{
IsSuccess = isSuccess;
SuccessResult = successResult;
FailureResult = failureResult;
TargetParticipant = targetParticipant;
}
}
}
Loading
Loading