Share via


SipEndpoint Members

Include Protected Members
Include Inherited Members

Represents a registration server based endpoint. All messages are routed to this server. The endpoint caches the connection created to communicate with the server.

The SipEndpoint type exposes the following members.

Constructors

  Name Description
Public method SipEndpoint(String, SipAuthenticationProtocols, SipTransportType, String) Creates a new instance of SipEndpoint. This endpoint is server-based. By default, the platform will use port 5060 for TCP and 5061 for TLS. To use a port other than these, the caller should set the port property before trying to register.
Public method SipEndpoint(String, SipAuthenticationProtocols, SipTransportType, String, Int32, Boolean, RealTimeConnectionManager, String) Creates a new instance of SipEndpoint. This endpoint is server-based.

Top

Properties

  Name Description
Public property AllowedAuthenticationProtocols Gets the allowed set of authentication protocols to be used for this endpoint.
Public property AllowNoAuthentication Gets the flag that indicates whether the client allows communicating with a server that does not challenge messages from this client.
Public property ApplicationContext Gets or sets the application context. (inherited from RealTimeEndpoint)
Public property ApplicationUserAgent Gets or sets the application user agent string. This is appended to the user agent header. (inherited from RealTimeEndpoint)
Public property AuthenticationProtocol Gets the authentication protocol currently in use with the server.
Public property ConnectionManager Gets or sets the connection manager. (inherited from RealTimeEndpoint)
Public property CredentialCache Gets a credential cache that can be used by the application to supply credentials needed to authenticate the application with servers.
Public property DefaultDomain Gets the default domain of the endpoint URI. (inherited from RealTimeEndpoint)
Public property DesiredSessionTimerInterval Gets or sets the desired session timer interval of the application. This is used only for the initial Invite or Response. (inherited from RealTimeEndpoint)
Public property DisableAutomaticRetryForRetryAfter Gets or sets whether the endpoint should retry requests for failed responses that contain retry-after header. By default, this is false and hence the platform will retry once more for such requests. If the applications wants to disable this automatic retry behavior, this property can be set to true. Typically, this might be needed for an application whose primary task is to perform back to back operation for two sessions where automatic retry might interfere with the ability to offer quick feedback via the back to back session so that the remote can take corrective measures. (inherited from RealTimeEndpoint)
Public property DisableReferredBySigning Obsolete. Gets or sets whether the Referred-By headers for the endpoint should be signed when configured to use MTLS. (inherited from RealTimeEndpoint)
Public property DisableRegisterRefreshForConnectionDrop Gets or sets the value that controls whether automatic register refresh should be allowed due to connection drop. When the current connection is disconnected for some reason and the endpoint uses either client connection manager or a server connection manager that does not listen, a register refresh attempt is made. By default, this property is set to false (Register Refresh occurs when connection drops). If disabled, connection drop would set the registration state to Unregistered. This flag is ignored when the server connection manager is used and the manager is listening for incoming connections as there is no automatic register refresh attempted.
Public property DisplayName Gets or sets the user name preferred by the application for the local user. This name will be used as the display name of the user in outgoing messages. This property indicates the display name to use in outgoing messages. (inherited from RealTimeEndpoint)
Public property EndpointUri Gets the URI of the endpoint. (inherited from RealTimeEndpoint)
Public property Gruu Gets the GRUU of the endpoint, if any. Can be null. (inherited from RealTimeEndpoint)
Public property Id Gets the ID for this endpoint. The same URI may be used on different endpoints. The ID is unique across all endpoints having the same URI. (inherited from RealTimeEndpoint)
Public property IsDialogResiliencySupported Obsolete. [Obsolete]Use ApplyRouteSetRecoverySettings method and RouteSetRecoveryMode property instead. Gets or sets value indicating if recovery attempt from failure in a dialog's signaling path is supported (inherited from RealTimeEndpoint)
Public property IsEndpointThrottled Gets or sets the Boolean value indicating if the endpoint should be throttled or not.
Public property IsSessionTimerSupported Gets or sets the default policy used for the session timer. This value is inherited by incoming/outgoing sessions unless an incoming session requires it. The application can override the policy per session. (inherited from RealTimeEndpoint)
Public property MaximumRegisterRedirectionAttempts Gets or sets the value that controls the number of redirect attempts allowed for registration. The default value is 3. The allowed range is from 0 to 5. The value of 0 disables automatic redirection.
Public property MaximumSessionConnectDuration Gets or sets the maximum duration in minutes to wait for final response. (inherited from RealTimeEndpoint)
Public property MinimumSessionTimerInterval Gets or sets the minimum session interval. Any session-expires interval less than this value in messages will not be accepted. (inherited from RealTimeEndpoint)
Public property OwnerUri Gets the URI of the owner of the endpoint. (inherited from RealTimeEndpoint)
Public property RegisterMethods Gets or sets the methods supported by this endpoint to be specified in the Register message. By default, this is set to support subscription and signaling sessions. The application should normally set this property before calling the Register method. If this is set after the Register method is completed, it will take effect when a Register refresh occurs.
Public property RegistrationState Gets the Registration state of endpoint.
Public property 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 to set the policy globally for all sessions created. For outgoing session, ExtensionFeatureSupport.Required is not recommended since it is not meaningful and it likely to be rejected by the remote side with 420 (BadExtension) response. (inherited from RealTimeEndpoint)
Public property RouteSetRecoveryMode Gets the mode used for recovery of the session's route set. (inherited from RealTimeEndpoint)
Public property Server Gets the server currently used by the endpoint.
Public property ServerPort Gets the port used to connect to the server. This is the port currently used to connect to the server or the port configured by the application if there is no active connection to the server. If the server is unknown, then 0 is returned.
Public property SipInstance Gets the sipInstance parameter value used in the contact header for Register (used by the server to generate the GRUU).
Protected property SyncRoot Obsolete. Get the syncroot of this endpoint. (inherited from RealTimeEndpoint)
Public property TransportType Gets the transport type used for connecting to the server. This is the same as what is specified by the application or the transport used for connecting to an autodiscovered server. In case of autoconfiguration, this property will change only after a successful connection to the server.
Public property Uri Gets the URI of the identity owning this endpoint. (inherited from RealTimeEndpoint)
Public property UserAgent Gets the user agent string used for messages. This includes the platform's header followed by the header supplied by the application, if any. (inherited from RealTimeEndpoint)
Public property Uuid Gets the universally unique identifier.

Top

Methods

  Name Description
Public method AddFeatureParameter(String) Adds a feature parameter. See rfc 3840. (inherited from RealTimeEndpoint)
Public method AddFeatureParameter(String, String) Adds a feature parameter. See rfc 3840. (inherited from RealTimeEndpoint)
Public method AddSipExtension Adds an extension to the list of supported extensions for Invite. If an incoming Invite message has a required header that does not exist in this list, it will be automatically rejected with 420. Once an item is added to this list, it cannot be removed. This list does not affect outgoing Invites for which the application is responsible for adding any necessary headers such as "Supported" or "Require" headers for specific SIP extensions. (inherited from RealTimeEndpoint)
Public method ApplyRouteSetRecoverySettings Applies the specified route set recovery settings to the endpoint. (inherited from RealTimeEndpoint)
Public method BeginRegister(AsyncCallback, Object) Starts an asynchronous Register operation for the current endpoint.
Public method BeginRegister(IEnumerable<SignalingHeader>, AsyncCallback, Object) Starts an asynchronous Register operation for the current endpoint.
Public method BeginSendMessage(MessageType, RealTimeAddress, SendMessageOptions, AsyncCallback, Object) Sends a message. (inherited from RealTimeEndpoint)
Public method BeginSendMessage(MessageType, RealTimeAddress, ContentType, [], AsyncCallback, Object) Sends a message to another endpoint. (inherited from RealTimeEndpoint)
Public method BeginSendMessage(MessageType, RealTimeAddress, ContentType, [], IEnumerable<SignalingHeader>, AsyncCallback, Object) Sends a message. (inherited from RealTimeEndpoint)
Public method BeginTerminate Terminates the endpoint and cleans up active sessions and resources. The endpoint is no longer usable. (inherited from RealTimeEndpoint)
Public method BeginUnregister Starts an asynchronous process to unregister the current endpoint. This method always succeeds.
Public method EndRegister Completes the asynchronous Register operation.
Public method EndSendMessage Waits for the pending SendMessage operation to complete. (inherited from RealTimeEndpoint)
Public method EndTerminate Completes the asynchronous Terminate operation. (inherited from RealTimeEndpoint)
Public method EndUnregister Finishes the asynchronous Unregister operation.
Public method Equals (inherited from Object)
Protected method Finalize (inherited from Object)
Public method GetFeatureParameterValue Gets the value of the given parameter. (inherited from RealTimeEndpoint)
Public method GetHashCode (inherited from Object)
Public method GetSupportedSipExtensions Gets the list of extensions supported by this endpoint. By default, this list is populated with extensions understood by the platform. The application can add other extensions it can support. Incoming Invite messages will be automatically rejected with 420 response if it contains a Requires header with option-tag that is not present in this list. (inherited from RealTimeEndpoint)
Public method GetTraceCorrelationID Gets the trace correlation id for this instance. (inherited from RealTimeEndpoint)
Public method GetType (inherited from Object)
Protected method MemberwiseClone (inherited from Object)
Protected method ProcessNotifyReceived Obsolete. Event handler for incoming notify request. (inherited from RealTimeEndpoint)
Public method Register() Synchronously registers the current endpoint. This method waits until the Register operation is completed. It is not recommended for a UI thread.
Public method Register(IEnumerable<SignalingHeader>) Synchronously registers the current endpoint. This method waits until the Register operation is completed. It is not recommended for a UI thread.
Protected method RegisterForPageModeMessages Register for page mode messages. (inherited from RealTimeEndpoint)
Public method RemoveFeatureParameter Removes a feature parameter matching the name if it exists. (inherited from RealTimeEndpoint)
Public method SendMessage(MessageType, RealTimeAddress, ContentType, []) Synchronously sends a message. The endpoint should be in the Connected state. This method is not recommended for a UI thread. (inherited from RealTimeEndpoint)
Public method SendMessage(MessageType, RealTimeAddress, ContentType, [], IEnumerable<SignalingHeader>) Synchronously sends a message. The session should be in connected state. This method is not recommended for a UI thread. (inherited from RealTimeEndpoint)
Public method Terminate Terminates the endpoint and cleans up active sessions and resources. The endpoint is no longer usable. (inherited from RealTimeEndpoint)
Public method ToString Returns the string representation of the object. (inherited from RealTimeEndpoint)
Public method Unregister Synchronously unregisters the endpoint. It is not recommended for a UI thread.
Protected method UnregisterForPageModeMessages Unregister for pagemode messages (inherited from RealTimeEndpoint)

Top

Events

  Name Description
Public event AuthenticationProtocolChanged Raised when the protocol used between the client and server changes.
Public event MessageReceived Raised when a message is received. (inherited from RealTimeEndpoint)
Public event RegistrationStateChanged Raised when the Registration state changes.
Public event ServerChanged Raised when the server is changed, as when the server is autodiscovered or when redirection occurs.
Public event ServerPortChanged Raises the server port is changed, as when the server is autodiscovered or when redirection occurs.
Public event SessionReceived Raised when a new invitation is received. (inherited from RealTimeEndpoint)

Top

Fields

  Name Description
Public fieldStatic member DefaultRtcRealm The default realm used when communicating with the server. This realm is used when adding a NetworkCredential to the CredentialCache.

Top

See Also

Reference

SipEndpoint Class

Microsoft.Rtc.Signaling Namespace