diff options
author | Gerald Begumisa <ben_g@users.sourceforge.net> | 2007-08-24 21:37:49 +0000 |
---|---|---|
committer | Gerald Begumisa <ben_g@users.sourceforge.net> | 2007-08-24 21:37:49 +0000 |
commit | 576816f821b60bc8580b310248bac409ed30915e (patch) | |
tree | 7fa422abd5e89d26fd8c0488d53a436ce4a09b75 /orkaudio/audiocaptureplugins/voip/RtpSession.h | |
parent | 9d30c0398e4447bf0b8b539caf738498fa45fb9f (diff) |
Added support for SIP 200 OK message with ability to adjust the session RTP IP address and port if NAT is detected
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@474 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/audiocaptureplugins/voip/RtpSession.h')
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/RtpSession.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/RtpSession.h b/orkaudio/audiocaptureplugins/voip/RtpSession.h index 5475cb9..ec9d262 100644 --- a/orkaudio/audiocaptureplugins/voip/RtpSession.h +++ b/orkaudio/audiocaptureplugins/voip/RtpSession.h @@ -70,6 +70,20 @@ public: CStdString m_callId; }; + +class Sip200OkInfo +{ +public: + Sip200OkInfo(); + CStdString m_callId; + bool m_hasSdp; + struct in_addr m_fromRtpIp; + CStdString m_fromRtpPort; +}; + +typedef boost::shared_ptr<Sip200OkInfo> Sip200OkInfoRef; + + //============================================================= class EndpointInfo @@ -104,6 +118,7 @@ public: CStdString m_trackingId; CStdString m_ipAndPort; // IP address and TCP port of one side of the session, serves as a key for session storage and retrieval. Not necessarily the same as the capturePort (capturePort is usually the client (phone) IP+port) + struct in_addr m_fromRtpIp; CStdString m_callId; SipInviteInfoRef m_invite; ACE_Time_Value m_creationDate; // When the session is first created @@ -180,6 +195,7 @@ public: void ReportSkinnySoftKeyResume(SkSoftKeyEventMessageStruct* skEvent, IpHeaderStruct* ipHeader); void ReportRtpPacket(RtpPacketInfoRef& rtpPacket); void ReportSipErrorPacket(SipFailureMessageInfoRef& sipError); + void ReportSip200Ok(Sip200OkInfoRef info); void Hoover(time_t now); EndpointInfoRef GetEndpointInfo(struct in_addr endpointIp); void StartCapture(CStdString& party); |