From 8267f45f799c2c976534676ed03b5ab315382873 Mon Sep 17 00:00:00 2001 From: Henri Herscher Date: Tue, 25 Apr 2006 14:59:29 +0000 Subject: Improved skinny signalling detection by taking OpenReceiveChannelAck Skinny messages into account. git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@222 09dcff7a-b715-0410-9601-b79a96267cd0 --- orkaudio/audiocaptureplugins/voip/RtpSession.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'orkaudio/audiocaptureplugins/voip/RtpSession.h') diff --git a/orkaudio/audiocaptureplugins/voip/RtpSession.h b/orkaudio/audiocaptureplugins/voip/RtpSession.h index dc1fcae..a745c38 100644 --- a/orkaudio/audiocaptureplugins/voip/RtpSession.h +++ b/orkaudio/audiocaptureplugins/voip/RtpSession.h @@ -120,10 +120,12 @@ private: LoggerPtr m_log; CStdString m_capturePort; bool m_started; + bool m_stopped; int m_rtpTimestampCorrectiveOffset; }; typedef boost::shared_ptr RtpSessionRef; +//=================================================================== class RtpSessions { public: @@ -134,10 +136,16 @@ public: void ReportSipBye(SipByeInfo bye); void ReportSkinnyCallInfo(SkCallInfoStruct*, IpHeaderStruct* ipHeader); void ReportSkinnyStartMediaTransmission(SkStartMediaTransmissionStruct*, IpHeaderStruct* ipHeader); - void ReportSkinnyStopMediaTransmission(SkStopMediaTransmissionStruct*); + void ReportSkinnyStopMediaTransmission(SkStopMediaTransmissionStruct*, IpHeaderStruct* ipHeader); + void ReportSkinnyOpenReceiveChannelAck(SkOpenReceiveChannelAckStruct*); void ReportRtpPacket(RtpPacketInfoRef& rtpPacket); void Hoover(time_t now); private: + RtpSessionRef findByEndpointIp(struct in_addr); + void ChangeCallId(RtpSessionRef& session, unsigned int newId); + void SetMediaAddress(RtpSessionRef& session, struct in_addr mediaIp, unsigned short mediaPort); + CStdString GenerateSkinnyCallId(struct in_addr endpointIp, unsigned int callId); + std::map m_byIpAndPort; std::map m_byCallId; LoggerPtr m_log; -- cgit v1.2.3