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

    This class manages sending and receiving SIP messages on a single SIPChannel. It also manages SIP transactions for transactions on that SIPChannel.

    Inheritance
    object
    SipTransport
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: SipLib.Transactions
    Assembly: SipLib.dll
    Syntax
    public class SipTransport

    Constructors

    | Edit this page View Source

    SipTransport(SIPChannel)

    Constructor

    Declaration
    public SipTransport(SIPChannel sipChannel)
    Parameters
    Type Name Description
    SIPChannel sipChannel

    SIPChannel to use for sending and receiving SIP messages.

    Properties

    | Edit this page View Source

    SipChannel

    Gets the SIPChannel object that this class is managing.

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

    TransactionCount

    Gets the number of active transactions.

    Declaration
    public int TransactionCount { get; }
    Property Value
    Type Description
    int

    Methods

    | Edit this page View Source

    SendSipRequest(SIPRequest, IPEndPoint)

    Sends a SIP request on the SIPChannel

    Declaration
    public void SendSipRequest(SIPRequest Request, IPEndPoint DestEp)
    Parameters
    Type Name Description
    SIPRequest Request

    SIP request to send

    IPEndPoint DestEp

    Destination endpoint

    | Edit this page View Source

    SendSipResponse(SIPResponse, SIPEndPoint)

    Sends a SIP response message on the SIPChannel. This method fires the LogSipResponse event for NG9-1-1 event logging.

    Declaration
    public void SendSipResponse(SIPResponse Response, SIPEndPoint DestEp)
    Parameters
    Type Name Description
    SIPResponse Response

    SIP response message to send

    SIPEndPoint DestEp

    Destination SIPEndPoint to send the message to.

    | Edit this page View Source

    SendSipResponse(SIPResponse, IPEndPoint)

    Sends a SIP response message on the SIPChannel. This method fires the LogSipResponse event for NG9-1-1 event logging.

    Declaration
    public void SendSipResponse(SIPResponse Response, IPEndPoint DestEp)
    Parameters
    Type Name Description
    SIPResponse Response

    SIP response message to send

    IPEndPoint DestEp

    Destination IPEndPoint to send the message to.

    | Edit this page View Source

    Shutdown()

    Call this method to shutdown the processing thread and close the SIP channel and all current connections.

    Declaration
    public void Shutdown()
    | Edit this page View Source

    Start()

    Call this method after hooking the events to start the message processing thread.

    Declaration
    public void Start()
    | Edit this page View Source

    StartClientInvite(SIPRequest, IPEndPoint, SipTransactionCompleteDelegate?, TransactionResponseReceivedDelegate?)

    Creates and starts a client INVITE transaction.

    Declaration
    public ClientInviteTransaction StartClientInvite(SIPRequest request, IPEndPoint remoteEndPoint, SipTransactionCompleteDelegate? completeDelegate, TransactionResponseReceivedDelegate? responseReceivedDelegate)
    Parameters
    Type Name Description
    SIPRequest request

    SIP INVITE request to send

    IPEndPoint remoteEndPoint

    Destination to send the request to

    SipTransactionCompleteDelegate completeDelegate

    Notification callback. Called when the transaction is completed or terminated. May be null if a notification is not required.

    TransactionResponseReceivedDelegate responseReceivedDelegate

    Callback function to call when a response is received for the transaction. Optional, may be null. This may be used when the client transaction user needs to be informed of provisional responses (ex. 180 Ringing or 183 Session Progress)

    Returns
    Type Description
    ClientInviteTransaction

    Returns a new ClientInviteTransaction object

    | Edit this page View Source

    StartClientInviteAsync(SIPRequest, IPEndPoint, TransactionResponseReceivedDelegate?)

    Creates and starts a client INVITE transaction asynchronously.

    Declaration
    public Task<ClientInviteTransaction> StartClientInviteAsync(SIPRequest request, IPEndPoint remoteEndPoint, TransactionResponseReceivedDelegate? responseReceivedDelegate)
    Parameters
    Type Name Description
    SIPRequest request

    SIP INVITE request to send

    IPEndPoint remoteEndPoint

    Destination to send the request to

    TransactionResponseReceivedDelegate responseReceivedDelegate

    Callback function to call when a response is received for the transaction. Optional, may be null. This may be used when the client transaction user needs to be informed of provisional responses (ex. 180 Ringing or 183 Session Progress)

    Returns
    Type Description
    Task<ClientInviteTransaction>

    Returns a ClientInviteTransaction that contains the results of the transaction

    | Edit this page View Source

    StartClientNonInviteTransaction(SIPRequest, IPEndPoint, SipTransactionCompleteDelegate?, int)

    Creates and starts a client non-INVITE SIP transaction

    Declaration
    public ClientNonInviteTransaction StartClientNonInviteTransaction(SIPRequest request, IPEndPoint remoteEndPoint, SipTransactionCompleteDelegate? completeDelegate, int FinalResponseTimeoutMs = 32000)
    Parameters
    Type Name Description
    SIPRequest request

    SIP request to send

    IPEndPoint remoteEndPoint

    Destination to send the request to

    SipTransactionCompleteDelegate completeDelegate

    Notification callback. Called when the transaction is completed or terminated. May be null if a notification is not required.

    int FinalResponseTimeoutMs

    Number of milliseconds to wait for a final response. This corresponds to Timer F shown in Figure 6 of RFC 3261. The default value is 32,000 milliseconds (64 * T1, where T1 is 500 ms).

    Returns
    Type Description
    ClientNonInviteTransaction

    Returns a new ClientNonInviteTransaction object

    | Edit this page View Source

    StartServerInviteTransaction(SIPRequest, IPEndPoint, SipTransactionCompleteDelegate?, SIPResponse)

    Creates and starts a server INVITE transaction.

    Declaration
    public ServerInviteTransaction StartServerInviteTransaction(SIPRequest request, IPEndPoint remoteEndPoint, SipTransactionCompleteDelegate? completeDelegate, SIPResponse ResponseToSend)
    Parameters
    Type Name Description
    SIPRequest request

    INVITE request that was received.

    IPEndPoint remoteEndPoint

    IP endpoint of the remote client that sent the request.

    SipTransactionCompleteDelegate completeDelegate

    Notification callback. Called when the transaction is completed or terminated. May be null if a notification is not required.

    SIPResponse ResponseToSend

    Initial response to send to the client. Will be sent when the transport layer calls the StartTransaction() method.

    Returns
    Type Description
    ServerInviteTransaction

    Returns a new ServerInviteTransaction object.

    | Edit this page View Source

    StartServerNonInviteTransaction(SIPRequest, IPEndPoint, SipTransactionCompleteDelegate?, SIPResponse)

    Creates and starts a server non-INVITE transaction.

    Declaration
    public ServerNonInviteTransaction StartServerNonInviteTransaction(SIPRequest request, IPEndPoint remoteEndPoint, SipTransactionCompleteDelegate? completeDelegate, SIPResponse ResponseToSend)
    Parameters
    Type Name Description
    SIPRequest request

    SIP request that was received by the server.

    IPEndPoint remoteEndPoint

    IP endpoint of the remote client that sent the request.

    SipTransactionCompleteDelegate completeDelegate

    Notification callback. Called when the transaction is completed or terminated. May be null if a notification is not required.

    SIPResponse ResponseToSend

    Initial response to send to the client. Will be sent when the transport layer calls the StartTransaction() method.

    Returns
    Type Description
    ServerNonInviteTransaction

    Returns a new ServerNonInviteTransaction object

    Events

    | Edit this page View Source

    LogInvalidSipMessage

    Event that is fired if this SipTransport object receives an invalid SIP message.

    Declaration
    public event LogInvalidSipMessageDelegate? LogInvalidSipMessage
    Event Type
    Type Description
    LogInvalidSipMessageDelegate
    | Edit this page View Source

    LogSipRequest

    Event that is fired for every SIP request that is sent or received by the SipTransport class. For received requests, this event is fired after the request is sent to a transaction object or to the SipTransport user.

    Declaration
    public event LogSipRequestDelegate? LogSipRequest
    Event Type
    Type Description
    LogSipRequestDelegate
    | Edit this page View Source

    LogSipResponse

    Event that is fired for every SIP response that is sent or received by the SipTransport class. For received responses, this event is fired after the response is sent to a transaction object or to the SipTransport user.

    Declaration
    public event LogSipResponseDelegate? LogSipResponse
    Event Type
    Type Description
    LogSipResponseDelegate
    | Edit this page View Source

    SipRequestReceived

    Event that is fired when a SIP request is received. This event is not fired if the SIP request is handled by a SIP transaction object (a SipTransactionBase derived class). The SIP transaction layer may pass the request up to the transaction user if required.

    Declaration
    public event SipRequestReceivedDelegate? SipRequestReceived
    Event Type
    Type Description
    SipRequestReceivedDelegate
    | Edit this page View Source

    SipResponseReceived

    Event that is fired when a SIP response is received. This event is not fired if the SIP response is handled by a SIP transaction object (a SipTransactionBase derived class). The SIP transaction layer may pass the response up to the transaction user if required.

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