AudioVideoCall.BeginTransfer Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
BeginTransfer(Call, AsyncCallback, Object) |
Initiates a transfer request to the remote participant. |
BeginTransfer(String, AsyncCallback, Object) |
Initiates an attended transfer request to the remote participant. |
BeginTransfer(Call, CallTransferOptions, AsyncCallback, Object) |
Initiates a transfer request to the remote participant. |
BeginTransfer(String, CallTransferOptions, AsyncCallback, Object) |
Initiates a transfer request to the remote participant. |
BeginTransfer(Call, AsyncCallback, Object)
Initiates a transfer request to the remote participant.
public:
IAsyncResult ^ BeginTransfer(Microsoft::Rtc::Collaboration::Call ^ callToReplace, AsyncCallback ^ userCallback, System::Object ^ state);
public IAsyncResult BeginTransfer (Microsoft.Rtc.Collaboration.Call callToReplace, AsyncCallback userCallback, object state);
override this.BeginTransfer : Microsoft.Rtc.Collaboration.Call * AsyncCallback * obj -> IAsyncResult
Public Function BeginTransfer (callToReplace As Call, userCallback As AsyncCallback, state As Object) As IAsyncResult
Parameters
- callToReplace
- Call
The call to be replaced.
- userCallback
- AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
- Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Returns
An IAsyncResult that references the asynchronous operation.
Exceptions
Thrown when the
callToReplace
value is null.
Thrown when the callToReplace
is
not in the Established
or the current call is not in a valid state to initiate a transfer operation.
Remarks
Initiates a transfer request to the remote participant of the current call to replace another existing call in Attended mode.
This is a Supervised transfer since the operation involves another call and it waits for success/failure notifications from the remote participant regarding how the transfer is being carried out at the remote side. When the transfer is completed successfully by the existing remote participant, the current call is terminated. If it fails, the 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.
Applies to
BeginTransfer(String, AsyncCallback, Object)
Initiates an attended transfer request to the remote participant.
public:
IAsyncResult ^ BeginTransfer(System::String ^ targetUri, AsyncCallback ^ userCallback, System::Object ^ state);
public IAsyncResult BeginTransfer (string targetUri, AsyncCallback userCallback, object state);
override this.BeginTransfer : string * AsyncCallback * obj -> IAsyncResult
Public Function BeginTransfer (targetUri As String, userCallback As AsyncCallback, state As Object) As IAsyncResult
Parameters
- targetUri
- String
The transfer target URI.
- userCallback
- AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
- Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Returns
An IAsyncResult that references the asynchronous operation.
Exceptions
Thrown when the targetUri
parameter value is null.
Thrown when the current call is not in a valid state to initiate a transfer operation.
Remarks
In Attended type, the call montiors the success/failure notifications from the remote regarding how the transfer is being carried out. If the transfer succeeds, this call is terminated else, the call is not affected.
Applies to
BeginTransfer(Call, CallTransferOptions, AsyncCallback, Object)
Initiates a transfer request to the remote participant.
public:
IAsyncResult ^ BeginTransfer(Microsoft::Rtc::Collaboration::Call ^ callToReplace, Microsoft::Rtc::Collaboration::CallTransferOptions ^ callTransferOptions, AsyncCallback ^ userCallback, System::Object ^ state);
public IAsyncResult BeginTransfer (Microsoft.Rtc.Collaboration.Call callToReplace, Microsoft.Rtc.Collaboration.CallTransferOptions callTransferOptions, AsyncCallback userCallback, object state);
override this.BeginTransfer : Microsoft.Rtc.Collaboration.Call * Microsoft.Rtc.Collaboration.CallTransferOptions * AsyncCallback * obj -> IAsyncResult
Parameters
- callToReplace
- Call
The call to be replaced.
- callTransferOptions
- CallTransferOptions
Call transfer options. This parameter can be null.
- userCallback
- AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
- Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Returns
An IAsyncResult that references the asynchronous operation.
Exceptions
Thrown when the
callToReplace
value is null.
Thrown when the callTransferOptions
parameter is specified
with unsupported headers, or is used to override transferor value by any endpoint other
than an ApplicationEndpoint or
is of type Unattended.
Thrown when the callToReplace
is not in
the Established
or the current call is not in a valid state to initiate a transfer operation.
Remarks
Initiates a transfer request to the remote participant, of the current call to replace another existing call in Attended mode.
This is a Supervised transfer since the operation involves another call and it waits for success/failure notifications from the remote participant regarding how the transfer is being carried out at the remote side. When the transfer is successfully completed by the existing remote participant, the current call is terminated. If it fails, the 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.
Applies to
BeginTransfer(String, CallTransferOptions, AsyncCallback, Object)
Initiates a transfer request to the remote participant.
public:
IAsyncResult ^ BeginTransfer(System::String ^ targetUri, Microsoft::Rtc::Collaboration::CallTransferOptions ^ callTransferOptions, AsyncCallback ^ userCallback, System::Object ^ state);
public IAsyncResult BeginTransfer (string targetUri, Microsoft.Rtc.Collaboration.CallTransferOptions callTransferOptions, AsyncCallback userCallback, object state);
override this.BeginTransfer : string * Microsoft.Rtc.Collaboration.CallTransferOptions * AsyncCallback * obj -> IAsyncResult
Parameters
- targetUri
- String
The transfer target URI.
- callTransferOptions
- CallTransferOptions
Call transfer options. This parameter can be null
- userCallback
- AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
- Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Returns
An IAsyncResult that references the asynchronous operation.
Exceptions
Thrown when the
targetUri
value is null.
Thrown when the callTransferOptions
parameter is specified with unsupported headers or
is used to override transferor value by any endpoint other
than an ApplicationEndpoint.
Thrown when the current call is not in a valid state to initiate a transfer operation.
Remarks
Transfer the current call to the given transfer target in Attended or Unattended mode.
In Unattended type, the call is terminated as soon as the transfer request is accepted by the remote participant. In Attended type, the call montiors the success/failure notifications from the remote regarding how the transfer is being carried out. If the transfer succeeds, this call is terminated else, the call is not affected. If the final notification does not arrive within MaximumTransferTime (default is 10 minutes), the transfer is automatically failed. If the transfer fails, the call is not terminated.