The SignalingSessiontype exposes the following members.
Constructors
Name | Description | |
---|---|---|
SignalingSession | Overloaded. |
Methods
Name | Description | |
---|---|---|
BeginAccept | Overloaded. | |
BeginEstablish | Overloaded. | |
BeginParticipate | Overloaded. | |
BeginRefer | Overloaded. | |
BeginRenegotiateDescription | Overloaded. | |
BeginSendMessage | Overloaded. | |
BeginSendReliableProvisionalResponse | Overloaded. | |
BeginSetConnection |
Sets the connection to use for the outgoing
signaling session before calling Participate. The initial Invite
for the session will use this connection instead getting the
connection based on endpoint settings. This method can be used only
for SipPeerToPeer endpoint. Signaling sessions for SipEndpoint will
use the connection maintained by SipEndpoint. The transport
specified for the connection should be as secure as the tranport
needed to send the Invite or else the Participate method call may
fail. IMPORTANT: This is an advanced API. To work properly, the
application should call this method before every redirect as well.
The RedirectReceived event call back handler in the application
should use TryThis and call this method before returning.
|
|
BeginTerminate | Overloaded. | |
EndAccept |
Waits for the pending accept operation to
complete.
|
|
EndEstablish |
Waits for the pending establish operation to
complete.
|
|
EndParticipate |
Waits for the pending participate operation to
complete.
|
|
EndRefer |
Waits for the pending refer operation to
complete.
|
|
EndRenegotiateDescription |
Waits for the pending renegotiate operation to
complete.
|
|
EndSendMessage |
Waits for the pending SendMessage operation to
complete.
|
|
EndSendReliableProvisionalResponse |
Waits for the pending SendProvisionalResponse
operation to complete.
|
|
EndSetConnection |
Waits for the pending SetConnection operation
to complete.
|
|
EndTerminate |
Completes the pending Terminate
operation.
|
|
Equals | (Inherited from Object.) | |
Finalize | (Inherited from Object.) | |
GetHashCode | (Inherited from Object.) | |
GetType | (Inherited from Object.) | |
MemberwiseClone | (Inherited from Object.) | |
Participate | Overloaded. | |
Refer | Overloaded. | |
RenegotiateDescription | Overloaded. | |
SendMessage | Overloaded. | |
SendProvisionalResponse | Overloaded. | |
SetConnection |
Sets the connection to use for the outgoing
signaling session before calling Participate. The initial Invite
for the session will use this connection instead of getting the
connection based on endpoint settings. This method can be used only
for the SipPeerToPeer endpoint. Signaling sessions for SipEndpoint
will use the connection maintained by SipEndpoint. The transport
specified for the connection should be as secure as the tranport
needed to send the Invite or else the Participate method call may
fail. IMPORTANT: This is an advanced API. To work properly, the
application should call this method before every redirect as well.
The RedirectReceived event callback handler in the application
should use TryThis and call this method before returning.
|
|
Terminate | Overloaded. | |
TerminateWithRedirection | Overloaded. | |
TerminateWithRejection |
Terminates a session by rejecting the incoming
invite. This method can be called only for an incoming session
before participating in it.
|
|
ToString | (Inherited from Object.) | |
TryCancelRenegotiateDescription | Overloaded. |
Properties
Name | Description | |
---|---|---|
CallId |
Gets the session ID.
|
|
Connection |
Gets the connection used by this signaling
session. For incoming sessions, this property can be used to
determine the address of the inviter. For outgoing sessions, this
property can be used to retrieve information about the connection
used. This property can return null if the connection does not
exist at the moment.
|
|
DesiredSessionTimerInterval |
Gets or sets the application's desired session
timer interval (in seconds). This is used only for the initial
invite or response.
|
|
Endpoint |
Gets the endpoint associated with the
session.
|
|
FromTag |
Gets the tag used in the "From" header. This
property may return null if not available. For outgoing sessions,
this property may not be available until the state is Alerted or
Connected. For incoming sessions, the property may be available
right away. This property can be null after the session is
terminated. The application is responsible for caching the tag if
it requires it after the session is disconnected.
|
|
Grid |
Gets or sets the grid context for this
session. If this property is set, the endpoint has GRUU, and the
GRUU does not have grid, this grid value is added to GRUU in the
contact header. This is useful to associate this grid with this
specific session when the endpoint has GRUU, but no grid. The
association should be done by the application.
|
|
IsIncoming |
Gets whether the session was initially
received from a remote endpoint.
|
|
IsSessionTimerSupported |
Gets or sets the value indicating if the
session supports a session timer. The default value of this
property is inherited from the endpoint. An application can
override this property per session. If the session is already using
a session timer, this flag will only affect the behavior when the
next session refresh occurs. If the flag is turned on after the
session is connected, the application needs to call
ReNegotiateMediaDescription to enable the session timer.
|
|
LocalParticipant |
Gets the local participant of the session.
This is helpful to get the URI of the local participant which can
differ from the URI of the endpoint, particularly for incoming
sessions.
|
|
MinimumSessionExpiresInterval |
Gets the minimum session expires interval
value (in seconds) currently used by this session.
|
|
OfferAnswerNegotiation |
Gets or sets the offer answer negotiation
callback interface implemented by the caller.
|
|
ReliableProvisionalResponsePolicy |
Gets or sets the default policy for supporting
100rel extension feature. If an application supports this then the
remote can ask for this when sending provisional responses which
will result in PRACK message geting sent to acknowledge the
response. An application should set this before sending Invite or
else it may not have any effect.
|
|
RemoteParticipant |
Gets the remote participant of the
session.
|
|
SessionTarget |
Gets the target of this session.
|
|
SessionTimerInterval |
Gets the session timer interval (in seconds)
currently used.
|
|
State |
Gets the state of this session.
|
|
ToTag |
Gets the tag used in the "To" header. This
property might return null if not available. For both outgoing and
incoming sessions, this property may not available until the
session is connected. This property can be null after the session
is terminated. The application is responsible for caching the tag
if it requires it after the session is disconnected.
|
Events
Name | Description | |
---|---|---|
InvitationAccepted |
Raised when the remote has accepted the
invite. Typically, this happens when a successful response is
received. This event is optional for an application. Applications
that want to send headers in the acknowledgement can register for
this event.
|
|
InvitationCompleted |
Raised when the invite process completes.
Typically, this happens when the inviter acknowledges a successful
response. This event is optional for an application. Applications
that want to access headers in the acknowledgement can register for
this event. Note that EndParticipate for the incoming side also
exposes the Ack message. This event is provided for
convenience.
|
|
MessageReceived |
Raised when a message is received.
|
|
ProvisionalResponseReceived |
Raised when the session received any
provisional response (101-199).
|
|
Redirecting |
Raised when a redirect request is
received.
|
|
ReferReceived |
Raised when a new Refer is received.
|
|
ReInviteReceived |
Raised when the remote sends a re-invite. This
event is optional for an application. Applications that want to
access headers in the re-invite can register for this event.
|
|
RenegotiationToRefreshNeeded |
Raised when the session is enabled for a
session timer, the local endpoint is the refresher, and the remote
does not support the UPDATE method. The application is responsible
for calling BeginRenegotiateDescription to keep the session
alive.
|
|
RequestOrResponseReceived |
Raised when a request or response is
received.
|
|
StateChanged |
Raised when the state of the session
changes.
|
|
TerminatedByRemote |
Raised when the remote side terminates the
session by sending a Bye or Cancel message. This event is optional
for an application. This event is useful only if the application is
interested in accessing the headers in the Bye or Cancel message
for custom scenarios.
|