From 0199ebe2c5c0102f54820fbe20af1bf5c15dc9aa Mon Sep 17 00:00:00 2001 From: Henri Herscher Date: Fri, 28 Oct 2005 16:32:05 +0000 Subject: SipSession becomes RtpSession git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@22 09dcff7a-b715-0410-9601-b79a96267cd0 --- orkaudio/audiocaptureplugins/voip/SipSession.cpp | 70 ++++++++++++------------ orkaudio/audiocaptureplugins/voip/SipSession.h | 18 +++--- orkaudio/audiocaptureplugins/voip/VoIp.cpp | 8 +-- orkaudio/logging-template.properties | 4 +- 4 files changed, 50 insertions(+), 50 deletions(-) diff --git a/orkaudio/audiocaptureplugins/voip/SipSession.cpp b/orkaudio/audiocaptureplugins/voip/SipSession.cpp index 591175c..250bad4 100644 --- a/orkaudio/audiocaptureplugins/voip/SipSession.cpp +++ b/orkaudio/audiocaptureplugins/voip/SipSession.cpp @@ -28,10 +28,10 @@ extern VoIpConfigTopObjectRef g_VoIpConfigTopObjectRef; #define DLLCONFIG g_VoIpConfigTopObjectRef.get()->m_config -SipSession::SipSession() +RtpSession::RtpSession() { m_lastUpdated = time(NULL); - m_log = Logger::getLogger("sipsession"); + m_log = Logger::getLogger("rtpsession"); m_invitorIp.s_addr = 0; m_invitorTcpPort = 0; m_inviteeIp.s_addr = 0; @@ -42,7 +42,7 @@ SipSession::SipSession() m_started = false; } -void SipSession::Stop() +void RtpSession::Stop() { LOG4CXX_DEBUG(m_log, m_capturePort + " Session stop"); CaptureEventRef stopEvent(new CaptureEvent); @@ -51,7 +51,7 @@ void SipSession::Stop() g_captureEventCallBack(stopEvent, m_capturePort); } -void SipSession::Start() +void RtpSession::Start() { m_started = true; LOG4CXX_DEBUG(m_log, m_capturePort + " " + ProtocolToString(m_protocol) + " Session start"); @@ -62,7 +62,7 @@ void SipSession::Start() g_captureEventCallBack(startEvent, m_capturePort); } -void SipSession::ProcessMetadataSipIncoming() +void RtpSession::ProcessMetadataSipIncoming() { m_remoteParty = m_invite->m_from; m_localParty = m_invite->m_to; @@ -70,7 +70,7 @@ void SipSession::ProcessMetadataSipIncoming() m_capturePort.Format("%s,%d", ACE_OS::inet_ntoa(m_inviteeIp), m_inviteeTcpPort); } -void SipSession::ProcessMetadataSipOutgoing() +void RtpSession::ProcessMetadataSipOutgoing() { m_remoteParty = m_invite->m_to; m_localParty = m_invite->m_from; @@ -78,7 +78,7 @@ void SipSession::ProcessMetadataSipOutgoing() m_capturePort.Format("%s,%d", ACE_OS::inet_ntoa(m_invitorIp), m_invitorTcpPort); } -void SipSession::ProcessMetadataRawRtp(RtpPacketInfoRef& rtpPacket) +void RtpSession::ProcessMetadataRawRtp(RtpPacketInfoRef& rtpPacket) { bool sourceIsLocal = true; @@ -125,7 +125,7 @@ void SipSession::ProcessMetadataRawRtp(RtpPacketInfoRef& rtpPacket) } } -void SipSession::ProcessMetadataSip(RtpPacketInfoRef& rtpPacket) +void RtpSession::ProcessMetadataSip(RtpPacketInfoRef& rtpPacket) { bool done = false; @@ -182,7 +182,7 @@ void SipSession::ProcessMetadataSip(RtpPacketInfoRef& rtpPacket) } } -void SipSession::ReportMetadata() +void RtpSession::ReportMetadata() { // report Local party CaptureEventRef event(new CaptureEvent()); @@ -204,7 +204,7 @@ void SipSession::ReportMetadata() } -void SipSession::AddRtpPacket(RtpPacketInfoRef& rtpPacket) +void RtpSession::AddRtpPacket(RtpPacketInfoRef& rtpPacket) { // if first RTP packet, start session if(m_lastRtpPacket.get() == NULL) @@ -243,13 +243,13 @@ void SipSession::AddRtpPacket(RtpPacketInfoRef& rtpPacket) } -void SipSession::ReportSipInvite(SipInviteInfoRef& invite) +void RtpSession::ReportSipInvite(SipInviteInfoRef& invite) { m_invite = invite; m_invitorIp = invite->m_fromIp; } -int SipSession::ProtocolToEnum(CStdString& protocol) +int RtpSession::ProtocolToEnum(CStdString& protocol) { int protocolEnum = ProtUnkn; if(protocol.CompareNoCase(PROT_RAW_RTP) == 0) @@ -263,7 +263,7 @@ int SipSession::ProtocolToEnum(CStdString& protocol) return protocolEnum; } -CStdString SipSession::ProtocolToString(int protocolEnum) +CStdString RtpSession::ProtocolToString(int protocolEnum) { CStdString protocolString; switch (protocolEnum) @@ -281,48 +281,48 @@ CStdString SipSession::ProtocolToString(int protocolEnum) } //===================================================================== -SipSessions::SipSessions() +RtpSessions::RtpSessions() { - m_log = Logger::getLogger("sipsessions"); + m_log = Logger::getLogger("rtpsessions"); } -void SipSessions::ReportSipInvite(SipInviteInfoRef& invite) +void RtpSessions::ReportSipInvite(SipInviteInfoRef& invite) { CStdString key = CStdString(ACE_OS::inet_ntoa(invite->m_fromIp)) + "," + invite->m_fromRtpPort; - std::map::iterator pair; + std::map::iterator pair; pair = m_byIpAndPort.find(key); if (pair != m_byIpAndPort.end()) { // A session exists ont the same IP+port, stop old session - SipSessionRef session = pair->second; + RtpSessionRef session = pair->second; Stop(session); } // create new session and insert into both maps - SipSessionRef session(new SipSession()); + RtpSessionRef session(new RtpSession()); session->m_ipAndPort = key; - session->m_protocol = SipSession::ProtSip; + session->m_protocol = RtpSession::ProtSip; session->ReportSipInvite(invite); m_byCallId.insert(std::make_pair(invite->m_callId, session)); m_byIpAndPort.insert(std::make_pair(key, session)); } -void SipSessions::ReportSipBye(SipByeInfo bye) +void RtpSessions::ReportSipBye(SipByeInfo bye) { - std::map::iterator pair; + std::map::iterator pair; pair = m_byCallId.find(bye.m_callId); if (pair != m_byCallId.end()) { // Session found: stop it - SipSessionRef session = pair->second; + RtpSessionRef session = pair->second; Stop(session); } } -void SipSessions::Stop(SipSessionRef& session) +void RtpSessions::Stop(RtpSessionRef& session) { session->Stop(); m_byIpAndPort.erase(session->m_ipAndPort); @@ -333,13 +333,13 @@ void SipSessions::Stop(SipSessionRef& session) } -void SipSessions::ReportRtpPacket(RtpPacketInfoRef& rtpPacket) +void RtpSessions::ReportRtpPacket(RtpPacketInfoRef& rtpPacket) { // Does a session exist with this source Ip+Port - SipSessionRef session; + RtpSessionRef session; CStdString port = IntToString(rtpPacket->m_sourcePort); CStdString ipAndPort = CStdString(ACE_OS::inet_ntoa(rtpPacket->m_sourceIp)) + "," + port; - std::map::iterator pair; + std::map::iterator pair; pair = m_byIpAndPort.find(ipAndPort); if (pair != m_byIpAndPort.end()) @@ -359,8 +359,8 @@ void SipSessions::ReportRtpPacket(RtpPacketInfoRef& rtpPacket) else { // create new Raw RTP session and insert into IP+Port map - SipSessionRef session(new SipSession()); - session->m_protocol = SipSession::ProtRawRtp; + RtpSessionRef session(new RtpSession()); + session->m_protocol = RtpSession::ProtRawRtp; session->m_ipAndPort = ipAndPort; m_byIpAndPort.insert(std::make_pair(ipAndPort, session)); } @@ -372,18 +372,18 @@ void SipSessions::ReportRtpPacket(RtpPacketInfoRef& rtpPacket) } } -void SipSessions::Hoover(time_t now) +void RtpSessions::Hoover(time_t now) { CStdString numSessions = IntToString(m_byIpAndPort.size()); LOG4CXX_DEBUG(m_log, "Hoover - check " + numSessions + " sessions time:" + IntToString(now)); // Go round the sessions and find inactive ones - std::map::iterator pair; - std::list toDismiss; + std::map::iterator pair; + std::list toDismiss; for(pair = m_byIpAndPort.begin(); pair != m_byIpAndPort.end(); pair++) { - SipSessionRef session = pair->second; + RtpSessionRef session = pair->second; if((now - session->m_lastUpdated) > 10) { toDismiss.push_back(session); @@ -391,9 +391,9 @@ void SipSessions::Hoover(time_t now) } // discard inactive sessions - for (std::list::iterator it = toDismiss.begin(); it != toDismiss.end() ; it++) + for (std::list::iterator it = toDismiss.begin(); it != toDismiss.end() ; it++) { - SipSessionRef session = *it; + RtpSessionRef session = *it; LOG4CXX_DEBUG(m_log, session->m_ipAndPort + " Expired"); Stop(session); } diff --git a/orkaudio/audiocaptureplugins/voip/SipSession.h b/orkaudio/audiocaptureplugins/voip/SipSession.h index 566574e..086c191 100644 --- a/orkaudio/audiocaptureplugins/voip/SipSession.h +++ b/orkaudio/audiocaptureplugins/voip/SipSession.h @@ -37,7 +37,7 @@ public: }; -class SipSession +class RtpSession { public: #define PROT_RAW_RTP "RawRtp" @@ -47,7 +47,7 @@ public: static int ProtocolToEnum(CStdString& protocol); static CStdString ProtocolToString(int protocolEnum); - SipSession(); + RtpSession(); void Stop(); void Start(); void AddRtpPacket(RtpPacketInfoRef& rtpPacket); @@ -78,24 +78,24 @@ private: CaptureEvent::DirectionEnum m_direction; bool m_started; }; -typedef boost::shared_ptr SipSessionRef; +typedef boost::shared_ptr RtpSessionRef; -class SipSessions +class RtpSessions { public: - SipSessions(); + RtpSessions(); void Create(CStdString& ipAndPort); - void Stop(SipSessionRef& session); + void Stop(RtpSessionRef& session); void ReportSipInvite(SipInviteInfoRef& invite); void ReportSipBye(SipByeInfo bye); void ReportRtpPacket(RtpPacketInfoRef& rtpPacket); void Hoover(time_t now); private: - std::map m_byIpAndPort; - std::map m_byCallId; + std::map m_byIpAndPort; + std::map m_byCallId; LoggerPtr m_log; }; -typedef ACE_Singleton SipSessionsSingleton; +typedef ACE_Singleton RtpSessionsSingleton; #endif diff --git a/orkaudio/audiocaptureplugins/voip/VoIp.cpp b/orkaudio/audiocaptureplugins/voip/VoIp.cpp index cb8fa9a..a9fdb0e 100644 --- a/orkaudio/audiocaptureplugins/voip/VoIp.cpp +++ b/orkaudio/audiocaptureplugins/voip/VoIp.cpp @@ -148,7 +148,7 @@ bool TryRtp(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader, UdpH debug.Format("%s,%d seq:%u ts:%u len:%d", ACE_OS::inet_ntoa(rtpInfo->m_sourceIp), rtpInfo->m_sourcePort, ntohs(rtpHeader->seq), ntohl(rtpHeader->ts), payloadLength); LOG4CXX_DEBUG(s_log, debug); - SipSessionsSingleton::instance()->ReportRtpPacket(rtpInfo); + RtpSessionsSingleton::instance()->ReportRtpPacket(rtpInfo); } } } @@ -169,7 +169,7 @@ bool TrySipBye(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader, U if(callIdField) { GrabToken(callIdField, info.m_callId); - SipSessionsSingleton::instance()->ReportSipBye(info); + RtpSessionsSingleton::instance()->ReportSipBye(info); } LOG4CXX_DEBUG(s_log, "SIP BYE"); } @@ -245,7 +245,7 @@ bool TrySipInvite(EthernetHeaderStruct* ethernetHeader, IpHeaderStruct* ipHeader { GrabToken(audioField, info->m_fromRtpPort); info->m_fromIp = ipHeader->ip_src; - SipSessionsSingleton::instance()->ReportSipInvite(info); + RtpSessionsSingleton::instance()->ReportSipInvite(info); } LOG4CXX_DEBUG(s_log, "SIP INVITE"); } @@ -292,7 +292,7 @@ void HandlePacket(u_char *param, const struct pcap_pkthdr *header, const u_char if((now - lastHooveringTime) > 5) { lastHooveringTime = now; - SipSessionsSingleton::instance()->Hoover(now); + RtpSessionsSingleton::instance()->Hoover(now); } } diff --git a/orkaudio/logging-template.properties b/orkaudio/logging-template.properties index b441d54..50d2e24 100644 --- a/orkaudio/logging-template.properties +++ b/orkaudio/logging-template.properties @@ -38,6 +38,6 @@ log4j.logger.reporting=INFO, messages log4j.logger.tapelist=INFO, tapelist log4j.logger.rtpringbuffer=INFO log4j.logger.voip=INFO -log4j.logger.sipsessions=INFO -log4j.logger.sipsession=DEBUG +log4j.logger.rtpsessions=INFO +log4j.logger.rtpsession=DEBUG log4j.logger.sipextraction=DEBUG -- cgit v1.2.3