Intiates a transfer request to the remote participant of the current call to replace another existing call in Attended type.

Namespace:  Microsoft.Rtc.Collaboration
Assembly:  Microsoft.Rtc.Collaboration(in Microsoft.Rtc.Collaboration.dll)

Syntax

Visual Basic (Declaration)
Protected 
Function 
BeginTransfer ( _
	
callToReplace 
As 
Call, _
	
options 
As 

CallTransferOptions, _
	
userCallback 
As 
AsyncCallback, _
	
state 
As 
Object _
) 
As 
IAsyncResult
C#
protected 
IAsyncResult 
BeginTransfer(
	
Call 
callToReplace,
	

CallTransferOptions 
options,
	
AsyncCallback 
userCallback,
	
Object 
state
)
Visual C++
protected:
IAsyncResult^ 
BeginTransfer(
	
Call^ 
callToReplace, 
	

CallTransferOptions^ 
options, 
	
AsyncCallback^ 
userCallback, 
	
Object^ 
state
)
JavaScript
function 
beginTransfer(
callToReplace, 
options, 
userCallback, 
state);

Parameters

callToReplace
Type: Microsoft.Rtc.Collaboration . . :: . Call
The call to be replaced.
options
Type: Microsoft.Rtc.Collaboration . . :: . CallTransferOptions
Call transfer options. This parameter can be null.
userCallback
Type: AsyncCallback
The method to be called when the asynchronous operation is completed.
state
Type: Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.

Return Value

An IAsyncResult that references the asynchronous operation.

Remarks

This is a Supervised transfer since the operation involves another call and it waits for success/failure notifications from the remote regarding how the transfer is being carried out on the remote side. When the transfer is noted as successful by the existing remote participant, the current call is terminated. If it fails, the current call is not affected.

If callToReplace is passed as the instance of the call initiating the transfer, then this would be considered as the self-transfer.

Exceptions

Exception Condition
ArgumentNullException Thrown when the callToReplace>value is null.
ArgumentException Thrown when the

optionsparameter contains invalid or restricted headers or contains null or unsupported MIME part headers.

options>parameter is used to override transferor value by any endpoint other than an Application Endpoint

options>parameter is of type Unattended transfer.

InvalidOperationException Thrown when the callToReplaceis not in Established stateCurrent call is not in a valid state to initiate a transfer operation.

See Also