• Articles
  • Api Documentation
Search Results for

    Show / Hide Table of Contents
    • SipLib.Body
      • BodyParser
      • ContentTypes
      • MessageContentsContainer
      • MultipartBinaryBodyBuilder
      • SipBodyBuilder
    • SipLib.Channels
      • AcceptCertificateDelegate
      • AcceptConnectionDelegate
      • DscpSettings
      • LogInvalidSipMessageDelegate
      • LogSipRequestDelegate
      • LogSipResponseDelegate
      • Qos
      • SIPChannel
      • SIPConnection
      • SIPConnectionDisconnectedDelegate
      • SIPConnectionsEnum
      • SIPMessageReceivedDelegate
      • SIPTCPChannel
      • SIPTLSChannel
      • SIPUDPChannel
      • SipConnectionFailedDelegate
      • SipRequestReceivedDelegate
      • SipResponseReceivedDelegate
      • SipTransactionCompleteDelegate
      • WindowsQos
    • SipLib.Collections
      • ThreadSafeGenericList<T>
    • SipLib.Core
      • ByteBufferInfo
      • CallProperties
      • Crypto
      • HTTPDigest
      • IPSocket
      • SIPAuthenticationHeader
      • SIPAuthorisationDigest
      • SIPAuthorisationHeadersEnum
      • SIPCallInfoHeader
      • SIPConstants
      • SIPContactHeader
      • SIPEndPoint
      • SIPEscape
      • SIPFrag
      • SIPFromHeader
      • SIPGeolocationHeader
      • SIPHeader
      • SIPHeaders
      • SIPMessage
      • SIPMessageTypesEnum
      • SIPMethods
      • SIPMethodsEnum
      • SIPPaiHeader
      • SIPParameters
      • SIPPpiHeader
      • SIPProtocolsEnum
      • SIPProtocolsType
      • SIPReplacesParameter
      • SIPRequest
      • SIPResponse
      • SIPResponseStatusCodes
      • SIPResponseStatusCodesEnum
      • SIPRoute
      • SIPRouteSet
      • SIPSchemesEnum
      • SIPSchemesType
      • SIPToHeader
      • SIPURI
      • SIPUserField
      • SIPValidationException
      • SIPValidationFieldsEnum
      • SIPViaHeader
      • SIPViaSet
      • SipUtils
      • TypeExtensions
    • SipLib.Dtls
      • AlertLevelsEnum
      • AlertTypesEnum
      • DtlsClientUdpTransport
      • DtlsServerUdpTransport
      • DtlsSrtpClient
      • DtlsSrtpServer
      • DtlsSrtpTransport
      • DtlsUtils
      • IDtlsSrtpPeer
      • IPacketTransformer
      • ITransformEngine
      • NetConvert
      • RTCDtlsFingerprint
      • RawPacket
      • SrtcpCryptoContext
      • SrtpPolicy
      • SrtpTransformEngine
      • SrtpTransformer
    • SipLib.Logging
      • SipLogger
    • SipLib.Media
      • ALawDecoder
      • ALawEncoder
      • AudioDestination
      • AudioDestinationDelegate
      • AudioSampleData
      • AudioSamplesReadyDelegate
      • AudioSource
      • Band
      • DtmfDigitReceivedDelegate
      • FileAudioSource
      • G722Codec
      • G722CodecState
      • G722Decoder
      • G722Encoder
      • G722Flags
      • HighResolutionTimer
      • HighResolutionTimerDelegate
      • IAudioDecoder
      • IAudioEncoder
      • IAudioSampleSource
      • MediaPortManager
      • MediaPortSettings
      • MediaTypes
      • MsrpEncryptionEnum
      • MuLawDecoder
      • MuLawEncoder
      • PcmaDecoder
      • PcmaEncoder
      • PcmuDecoder
      • PcmuEncoder
      • PortRange
      • RtpEncryptionEnum
    • SipLib.Msrp
      • ByteRangeHeader
      • CpimMessage
      • MsrpCompletionStatus
      • MsrpConnection
      • MsrpConnectionStatusDelegate
      • MsrpMessage
      • MsrpMessageDeliveryFailedDelegate
      • MsrpMessageReceivedDelegate
      • MsrpMessageSentDelegate
      • MsrpMessageType
      • MsrpPathHeader
      • MsrpStatusHeader
      • MsrpStreamParser
      • MsrpTextMessageReceivedDelegate
      • MsrpUri
      • ReportReceivedDelegate
    • SipLib.Network
      • IpUtils
    • SipLib.RealTimeText
      • RttCharactersReceivedDelegate
      • RttParameters
      • RttReceiver
      • RttRtpSendDelegate
      • RttSender
    • SipLib.Rtp
      • ByePacket
      • DtlsHandshakeFailedDelegate
      • DtmfEventEnum
      • DtmfPacket
      • JitterStatistics
      • MeanOpinionScore
      • ReceiveStatisticsReadyDelegate
      • ReceiverReport
      • ReportBlock
      • RtcpCompoundPacket
      • RtcpHeader
      • RtcpPacketReceivedDelegate
      • RtcpPacketSentDelegate
      • RtcpPacketType
      • RtpChannel
      • RtpPacket
      • RtpPacketReceivedDelegate
      • RtpPacketSentDelegate
      • RtpReceiveStatistics
      • RtpUtils
      • SdesChunk
      • SdesItem
      • SdesItemType
      • SdesPacket
      • SenderInfo
      • SenderReport
    • SipLib.RtpCrypto
      • AesFunctions
      • CryptoAttribute
      • CryptoContext
      • CryptoSuites
      • InlineParams
      • MasterKeys
      • RocVals
      • RocValues
      • SRtpErrorsEnum
      • SRtpUtils
      • SessionKeys
      • SrtpDecryptor
      • SrtpEncryptor
      • SrtpLabelItem
      • SrtpTransformBase
    • SipLib.Sdp
      • ConnectionData
      • MediaDescription
      • MediaDirectionEnum
      • Origin
      • RtpMapAttribute
      • Sdp
      • SdpAnswerSettings
      • SdpAttribute
      • SdpUtils
      • SetupType
    • SipLib.Threading
      • QueuedActionWorkerTask
    • SipLib.Transactions
      • ClientInviteTransaction
      • ClientNonInviteTransaction
      • ServerInviteTransaction
      • ServerNonInviteTransaction
      • SipTimers
      • SipTransactionBase
      • SipTransport
      • TransactionRequestReceivedDelegate
      • TransactionResponseReceivedDelegate
      • TransactionStateEnum
      • TransactionTerminationReasonEnum
    • SipLib.Video
      • H264Depacketiser
      • H264Packetiser
      • H264Packetiser.H264Nal
      • H264RtpReceiver
      • H264RtpSender
      • RtpSendDelegate
      • RtpVP8Header
      • VP8RtpReceiver
      • VP8RtpSender
      • VideoRtpReceiver
      • VideoRtpSender

    Class SIPTLSChannel

    Class for managing SIP connections using the Transport Layer Security (TLS) protocol.

    Inheritance
    object
    SIPChannel
    SIPTLSChannel
    Inherited Members
    SIPChannel.AcceptConnection
    SIPChannel.LocalTCPSockets
    SIPChannel.SipUri
    SIPChannel.ChannelStarted
    SIPChannel.LocalSIPEndPoint
    SIPChannel.SIPChannelEndPoint
    SIPChannel.SetupContactURI(string)
    SIPChannel.SIPChannelContactURI
    SIPChannel.IsReliable
    SIPChannel.IsTLS
    SIPChannel.Closed
    SIPChannel.SIPMessageReceived
    SIPChannel.PruneConnections(string)
    SIPChannel.GetProtocol()
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: SipLib.Channels
    Assembly: SipLib.dll
    Syntax
    public class SIPTLSChannel : SIPChannel

    Constructors

    | Edit this page View Source

    SIPTLSChannel(X509Certificate2?, IPEndPoint, string?, bool, AcceptConnectionDelegate?, AcceptCertificateDelegate?, AcceptCertificateDelegate?)

    Constructs a new SIPTLSChannel and initializes it.

    Declaration
    public SIPTLSChannel(X509Certificate2? serverCertificate, IPEndPoint localIPEndPoint, string? User = null, bool UseMutualAuth = true, AcceptConnectionDelegate? acceptConnection = null, AcceptCertificateDelegate? acceptClientCertificate = null, AcceptCertificateDelegate? acceptServerCertificate = null)
    Parameters
    Type Name Description
    X509Certificate2 serverCertificate

    Server X.509 certificate to use

    IPEndPoint localIPEndPoint

    Local IPEndPoint to listen on

    string User

    Specifies the User part of the SIPURI for the local contact URI. This parameter defaults to null.

    bool UseMutualAuth

    If true then use mutual TLS authentication. This parameter defaults to true.

    AcceptConnectionDelegate acceptConnection

    User provided callback function that can determine whether or not to accept a network connection based on the client's IPEndPoint and the protocol type. Defaults to null.

    AcceptCertificateDelegate acceptClientCertificate

    User provided callback function that can determine whether or not to accept a connection from a client based on the client's X.509 certificate. Defaults to null.

    AcceptCertificateDelegate acceptServerCertificate

    User provided callback function that can determine whether or not to allow a connection to a server base on the server's X.509 certificate. Defaults to null.

    Methods

    | Edit this page View Source

    Close()

    Closes the listener socket and closes connections to all clients.

    Declaration
    public override void Close()
    Overrides
    SIPChannel.Close()
    | Edit this page View Source

    GetConnectionsList()

    Gets the current connections dictionary. The returned object must be locked by the caller. Don't use this function because its not thread safe.

    Declaration
    protected override Dictionary<string, SIPConnection> GetConnectionsList()
    Returns
    Type Description
    Dictionary<string, SIPConnection>
    Overrides
    SIPChannel.GetConnectionsList()
    | Edit this page View Source

    GetRemoteCertificate(string)

    Virtual function to get the remote certificate for a connection that is being managed by this SIPChannel object.

    Declaration
    public override X509Certificate? GetRemoteCertificate(string strRemoteEp)
    Parameters
    Type Name Description
    string strRemoteEp

    String version of the IP endpoint of the connection.

    Returns
    Type Description
    X509Certificate

    Returns null if there is no remote certificate available.

    Overrides
    SIPChannel.GetRemoteCertificate(string)
    | Edit this page View Source

    GetRemoteCertificate2(string)

    Virtual function to get the remote certificate for a connection that is being managed by this SIPChannel object.

    Declaration
    public override X509Certificate2? GetRemoteCertificate2(string strRemoteEp)
    Parameters
    Type Name Description
    string strRemoteEp

    String version of the IP endpoint of the connection.

    Returns
    Type Description
    X509Certificate2

    Returns null if there is no remote certificate available.

    Overrides
    SIPChannel.GetRemoteCertificate2(string)
    | Edit this page View Source

    IsConnectionEstablished(IPEndPoint)

    Checks to see if this object is currently connected to a remote endpoint

    Declaration
    public override bool IsConnectionEstablished(IPEndPoint remoteEndPoint)
    Parameters
    Type Name Description
    IPEndPoint remoteEndPoint
    Returns
    Type Description
    bool

    True if currently connected or false if not connected

    Overrides
    SIPChannel.IsConnectionEstablished(IPEndPoint)
    | Edit this page View Source

    Send(IPEndPoint, byte[])

    Sends a byte array

    Declaration
    public override void Send(IPEndPoint dstEndPoint, byte[] buffer)
    Parameters
    Type Name Description
    IPEndPoint dstEndPoint

    IPEndPoint to send the message to.

    byte[] buffer

    Message to send.

    Overrides
    SIPChannel.Send(IPEndPoint, byte[])
    | Edit this page View Source

    Send(IPEndPoint, byte[], string?)

    Sends a byte array

    Declaration
    public override void Send(IPEndPoint dstEndPoint, byte[] buffer, string? serverCertificateName)
    Parameters
    Type Name Description
    IPEndPoint dstEndPoint

    IPEndPoint to send the message to.

    byte[] buffer

    Message to send.

    string serverCertificateName

    Name of the remote endpoint's X.509 certificate.

    Overrides
    SIPChannel.Send(IPEndPoint, byte[], string?)
    | Edit this page View Source

    Send(IPEndPoint, string)

    Sends a string

    Declaration
    public override void Send(IPEndPoint destinationEndPoint, string message)
    Parameters
    Type Name Description
    IPEndPoint destinationEndPoint

    IPEndPoint to send the message to.

    string message

    Message to send.

    Overrides
    SIPChannel.Send(IPEndPoint, string)
    Remarks

    Must already be connected to the remote endpoint in order to use this method.

    Events

    | Edit this page View Source

    SIPConnectionDisconnected

    Fired if the TCP connection gets disconnected

    Declaration
    public event SipConnectionFailedDelegate? SIPConnectionDisconnected
    Event Type
    Type Description
    SipConnectionFailedDelegate
    | Edit this page View Source

    SIPConnectionFailed

    Fired if the TCP connection request to a remote endpoint failed.

    Declaration
    public event SipConnectionFailedDelegate? SIPConnectionFailed
    Event Type
    Type Description
    SipConnectionFailedDelegate
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX