SignalingSession.BeginRenegotiateDescription Method (IEnumerable<SignalingHeader>, AsyncCallback, Object)
Renegotiates the media description with the specified participant. Only one negotiation can be outstanding with any participant at any time. The participant should be part of the session for this method to succeed. The participant cannot be a local participant. A given topology may not allow the exchange of descriptions with certain participants.
Namespace: Microsoft.Rtc.Signaling
Assembly: Microsoft.Rtc.Collaboration (in Microsoft.Rtc.Collaboration.dll)
Syntax
'Declaration
Public Function BeginRenegotiateDescription ( _
signalingHeaders As IEnumerable(Of SignalingHeader), _
userCallback As AsyncCallback, _
state As Object _
) As IAsyncResult
'Usage
Dim instance As SignalingSession
Dim signalingHeaders As IEnumerable(Of SignalingHeader)
Dim userCallback As AsyncCallback
Dim state As Object
Dim returnValue As IAsyncResult
returnValue = instance.BeginRenegotiateDescription(signalingHeaders, _
userCallback, state)
public IAsyncResult BeginRenegotiateDescription(
IEnumerable<SignalingHeader> signalingHeaders,
AsyncCallback userCallback,
Object state
)
Parameters
- signalingHeaders
Type: System.Collections.Generic.IEnumerable<SignalingHeader>
Headers required for this renegotiate. Can be null.
- userCallback
Type: System.AsyncCallback
The method to be called when the asynchronous operation is completed.
- state
Type: System.Object
A user-provided object that distinguishes this particular asynchronous operation from other asynchronous operations.
Return Value
Type: System.IAsyncResult
An IAsyncResult that references the asynchronous operation.
Exceptions
Exception | Condition |
---|---|
InvalidOperationException | Thrown when called in an invalid state, a renegotiate operation is already outstanding, or a null media description is specified via GetMediaOffer(). |
RealTimeInvalidOperationException | Thrown when called in a temporary invalid state, and the operation can be retried. |
Exception | Exceptions thrown by the application while generating media (interface IOfferAnswer) are not handled by the platform. |
Remarks
In an early dialog, BeginRenegotiateDescription is intended to send only SDP-bearing messages. As such, this method does not differentiate between a call to BeginRenegotiateDescription with a provided SDP session description and a call without an SDP session description. Both will conflict with incoming SDP-bearing UPDATE messages.