diff options
author | Henri Herscher <henri@oreka.org> | 2005-10-28 03:07:51 +0000 |
---|---|---|
committer | Henri Herscher <henri@oreka.org> | 2005-10-28 03:07:51 +0000 |
commit | ef48a96e268f65e6651138e9902d309c18be2e23 (patch) | |
tree | 4eed3275fb80c2ad84b9118f7a3b236c4be503e2 /orkaudio/audiocaptureplugins/voip/SipSession.h | |
parent | e76fa0b3e203a5eeebc15eed92be79933bd94457 (diff) |
Now supports Raw RTP sessions as well as SIP/RTP. SipSession still needs renaming since it is effectively an RTP session object.
git-svn-id: https://oreka.svn.sourceforge.net/svnroot/oreka/trunk@19 09dcff7a-b715-0410-9601-b79a96267cd0
Diffstat (limited to 'orkaudio/audiocaptureplugins/voip/SipSession.h')
-rw-r--r-- | orkaudio/audiocaptureplugins/voip/SipSession.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/orkaudio/audiocaptureplugins/voip/SipSession.h b/orkaudio/audiocaptureplugins/voip/SipSession.h index c1aa379..399e4f4 100644 --- a/orkaudio/audiocaptureplugins/voip/SipSession.h +++ b/orkaudio/audiocaptureplugins/voip/SipSession.h @@ -40,6 +40,8 @@ public: class SipSession { public: + typedef enum{ProtRawRtp, ProtSip, ProtUnkn} ProtocolEnum; + SipSession(); void Stop(); void Start(); @@ -49,13 +51,16 @@ public: CStdString m_ipAndPort; SipInviteInfoRef m_invite; time_t m_lastUpdated; + ProtocolEnum m_protocol; private: - void ProcessMetadata(RtpPacketInfoRef&); - void ProcessMetadataIncoming(); - void ProcessMetadataOutgoing(); + void ProcessMetadataSip(RtpPacketInfoRef&); + void ProcessMetadataSipIncoming(); + void ProcessMetadataSipOutgoing(); + void ProcessMetadataRawRtp(RtpPacketInfoRef&); void ReportMetadata(); RtpPacketInfoRef m_lastRtpPacket; + int m_numRtpPackets; RtpRingBuffer m_rtpRingBuffer; struct in_addr m_invitorIp; int m_invitorTcpPort; @@ -66,6 +71,7 @@ private: CStdString m_localParty; CStdString m_remoteParty; CaptureEvent::DirectionEnum m_direction; + bool m_started; }; typedef boost::shared_ptr<SipSession> SipSessionRef; @@ -73,6 +79,7 @@ class SipSessions { public: SipSessions(); + void Create(CStdString& ipAndPort); void Stop(SipSessionRef& session); void ReportSipInvite(SipInviteInfoRef& invite); void ReportSipBye(SipByeInfo bye); |