• 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 SIPChannel

    Base class for all SIP channel classes.

    Inheritance
    object
    SIPChannel
    SIPTCPChannel
    SIPTLSChannel
    SIPUDPChannel
    Inherited Members
    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 abstract class SIPChannel

    Fields

    | Edit this page View Source

    AcceptConnection

    Delegate function that can be provided by the user of a SIPConnection derived class to determine whether or not to accept a SIP connection request. The function should return true to accept a connection request or false to refuse it.

    If this delegate member is null then all connection requests will be received regardless of where they came from.

    Declaration
    protected AcceptConnectionDelegate? AcceptConnection
    Field Value
    Type Description
    AcceptConnectionDelegate
    | Edit this page View Source

    ChannelStarted

    This is set to true when the main listener thread has been started.

    Declaration
    public bool ChannelStarted
    Field Value
    Type Description
    bool
    | Edit this page View Source

    Closed

    True if the connection has been closed.

    Declaration
    protected bool Closed
    Field Value
    Type Description
    bool
    | Edit this page View Source

    LocalSIPEndPoint

    This is the local SIPEndPoint

    Declaration
    protected SIPEndPoint LocalSIPEndPoint
    Field Value
    Type Description
    SIPEndPoint
    | Edit this page View Source

    LocalTCPSockets

    Keeps a list of TCP sockets this process is listening on to prevent it establishing TCP connections to itself. This is used only for TCP and TLS.

    Declaration
    protected List<string> LocalTCPSockets
    Field Value
    Type Description
    List<string>
    | Edit this page View Source

    SIPMessageReceived

    Delegate (callback function) that gets called when a SIP message is received.

    Declaration
    public SIPMessageReceivedDelegate? SIPMessageReceived
    Field Value
    Type Description
    SIPMessageReceivedDelegate
    | Edit this page View Source

    SipUri

    This is the local SIPURI

    Declaration
    protected SIPURI SipUri
    Field Value
    Type Description
    SIPURI

    Properties

    | Edit this page View Source

    IsReliable

    If the underlying transport channel is reliable, such as TCP, this will be set to true;

    Declaration
    public bool IsReliable { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    IsTLS

    If true then the SIPConnection uses Transport Layer Security (TLS).

    Declaration
    public bool IsTLS { get; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    SIPChannelContactURI

    This is the URI to be used for contacting this SIP channel.

    Declaration
    public SIPURI SIPChannelContactURI { get; }
    Property Value
    Type Description
    SIPURI
    | Edit this page View Source

    SIPChannelEndPoint

    Gets the local SIPEndPoint for the SIP channel

    Declaration
    public SIPEndPoint SIPChannelEndPoint { get; }
    Property Value
    Type Description
    SIPEndPoint

    Methods

    | Edit this page View Source

    Close()

    Closes the connection

    Declaration
    public abstract void Close()
    | Edit this page View Source

    GetConnectionsList()

    Gets reference to the dictionary of the connections. The string is the string version of the remote endpoint's IPEndPoint.

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

    GetProtocol()

    Gets the transport protocol used for this channel.

    Declaration
    public SIPProtocolsEnum GetProtocol()
    Returns
    Type Description
    SIPProtocolsEnum

    Returns a SIPProtocolsEnum value.

    | 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 virtual 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.

    | 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 virtual 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.

    | Edit this page View Source

    IsConnectionEstablished(IPEndPoint)

    Returns true if there is an established connection the specified IPEndPoint

    Declaration
    public abstract bool IsConnectionEstablished(IPEndPoint remoteEndPoint)
    Parameters
    Type Name Description
    IPEndPoint remoteEndPoint
    Returns
    Type Description
    bool
    | Edit this page View Source

    PruneConnections(string)

    Periodically checks the established connections and closes any that have not had a transmission for a specified period or where the number of connections allowed per IP address has been exceeded. Only relevant for connection oriented channels such as TCP and TLS.

    Declaration
    protected void PruneConnections(string threadName)
    Parameters
    Type Name Description
    string threadName
    | Edit this page View Source

    Send(IPEndPoint, byte[])

    Sends a SIP message to the specified destination IPEndPoint

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

    Destination to send the message to

    byte[] buffer

    Byte array containing the SIP message

    | Edit this page View Source

    Send(IPEndPoint, byte[], string?)

    Sends a SIP message to a destination IPEndPoint given a byte array and the namd of the server's X.509 certificate name

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

    Destination to send the message to

    byte[] buffer

    Byte array containing the SIP message

    string serverCertificateName

    Name of the server's X.509 certificate

    | Edit this page View Source

    Send(IPEndPoint, string)

    Sends a SIP message to the specified destination IPEndPoint

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

    Destination to send the message to

    string message

    String message to send

    | Edit this page View Source

    SetupContactURI(string?)

    Sets the local contact SIPURI for this SIPChannel. This method must be called in the constructor of all derived classes.

    Declaration
    protected void SetupContactURI(string? User)
    Parameters
    Type Name Description
    string User

    Specifies the User part of the SIPURI. This may be null.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX