Interface ICall
Class representing a call.
Namespace: Microsoft.Bot.Builder.Enterprise.Core
Assembly: Microsoft.Bot.Builder.Enterprise.dll
Syntax
public interface ICall
Properties
View SourceCallLink
Gets the call link for the call.
Declaration
Uri CallLink { get; }
Property Value
Type | Description |
---|---|
System.Uri | The call link. |
CorrelationId
Gets the correlation id for the call.
Declaration
string CorrelationId { get; }
Property Value
Type | Description |
---|---|
System.String |
LegId
Gets the call leg id for the call.
Declaration
string LegId { get; }
Property Value
Type | Description |
---|---|
System.String |
MediaSession
Gets the media session.
Declaration
IMediaSession MediaSession { get; }
Property Value
Type | Description |
---|---|
IMediaSession | The media session. |
SignalingHandler
Gets the signaling handler.
Declaration
ISignalingHandler SignalingHandler { get; }
Property Value
Type | Description |
---|---|
ISignalingHandler | The signaling handler. |
Methods
View SourceHangupCallAsync()
Hang up the call. CallCleanupAsync(ICall) will be raised when hang up is completed.
Declaration
Task<IPlatformResponse> HangupCallAsync()
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
Exceptions
Type | Condition |
---|---|
System.InvalidOperationException | The call link for the call is missing. |
StartJoinCallAsync(JoinCallParameters)
Join an already existing call. OnJoinCallCompletedAsync(ICall, JoinCallNotification) will be raised when join call is completed.
Declaration
Task<IPlatformResponse> StartJoinCallAsync(JoinCallParameters parameters)
Parameters
Type | Name | Description |
---|---|---|
JoinCallParameters | parameters | Parameters required for joining a call |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
Exceptions
Type | Condition |
---|---|
System.NotSupportedException | Join call for local media scenarios is not supported. |
System.ArgumentNullException |
|
System.ArgumentException | GetMediaConfiguration() is null. |
StartPlaceCallAsync(PlaceCallParameters)
Place a new call. OnPlaceCallCompletedAsync(ICall, PlaceCallNotification) will be raised when place call is completed.
Declaration
Task<IPlatformResponse> StartPlaceCallAsync(PlaceCallParameters parameters)
Parameters
Type | Name | Description |
---|---|---|
PlaceCallParameters | parameters | The parameters required for placing a call. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
StartPlayMediaAsync(Media, Boolean)
Start playing media. OnPlayMediaCompletedAsync(ICall, PlayNotification) will be raised when play media has started and completed.
Declaration
Task<IPlatformResponse> StartPlayMediaAsync(Media media, bool loop = false)
Parameters
Type | Name | Description |
---|---|---|
Media | media | The media object to be played. |
System.Boolean | loop | Should this media be played in a loop or not. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
StartSimulRingAsync()
Do a simultaneous ring
Declaration
Task<IPlatformResponse> StartSimulRingAsync()
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
StartTransferAsync(String, ICall)
Start the transfer operation. OnTransferCompletedAsync(ICall, TransferNotification) will be raised when transfer is completed.
Declaration
Task<IPlatformResponse> StartTransferAsync(string targetIdentity, ICall replacesCall = null)
Parameters
Type | Name | Description |
---|---|---|
System.String | targetIdentity | The target identity. |
ICall | replacesCall | The call that will be replaced with the current participants. Optional: If specified we initiate a consultative transfer, otherwise we initiate a blind transfer. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |
Exceptions
Type | Condition |
---|---|
System.ArgumentNullException |
|
SubscribeVideoAsync(String, ResolutionFormat, UInt32, Boolean)
Method to subscribe video socket to a given participant
Declaration
Task<IPlatformResponse> SubscribeVideoAsync(string participantIdentity, ResolutionFormat resolution, uint socketId = 0U, bool isVbss = false)
Parameters
Type | Name | Description |
---|---|---|
System.String | participantIdentity | The participant identity. |
ResolutionFormat | resolution | The resolution of the video feed. |
System.UInt32 | socketId | The index of the VideoSocket which receives the incoming video stream. Default is the first socket. |
System.Boolean | isVbss | Flag indicating if this is subscribing the the VBSS socket. |
Returns
Type | Description |
---|---|
System.Threading.Tasks.Task<IPlatformResponse> | The IPlatformResponse to the request. |