31 #ifndef OPAL_OPAL_RTPCONN_H 32 #define OPAL_OPAL_RTPCONN_H 45 class OpalZRTPStreamInfo {
47 virtual bool Open() = 0;
51 class OpalZRTPConnectionInfo {
53 virtual bool Open() = 0;
79 virtual void Close() = 0;
81 virtual PObject * Clone()
const = 0;
83 virtual bool IsActive()
const = 0;
85 virtual bool IsRTP()
const = 0;
87 virtual bool HasFailed()
const = 0;
129 virtual void Close();
131 virtual bool IsActive()
const {
return rtpSession != NULL; }
133 virtual bool IsRTP()
const {
return true; }
185 unsigned GetNextSessionID();
197 void AddMediaSession(
204 virtual void CloseSession(
222 bool ChangeSessionID(
223 unsigned fromSessionID,
230 virtual bool AllSessionsFailing();
258 const PString & token,
259 unsigned options = 0,
284 virtual void OnReleased();
292 virtual unsigned GetNextSessionID(
324 virtual void CloseSession(
341 virtual RTP_UDP * CreateRTPSession(
352 virtual bool ChangeSessionID(
353 unsigned fromSessionID,
363 {
return remoteIsNAT; }
382 virtual PBoolean IsRTPNATEnabled(
383 const PIPSocket::Address & localAddr,
384 const PIPSocket::Address & peerAddr,
385 const PIPSocket::Address & signalAddr,
394 virtual void AttachRFC2833HandlerToPatch(PBoolean isSource,
OpalMediaPatch & patch);
396 virtual PBoolean SendUserInputTone(
398 unsigned duration = 0
426 virtual PBoolean GetMediaInformation(
435 virtual PBoolean IsMediaBypassPossible(
470 virtual void AdjustMediaFormats(
484 virtual void OnPatchMediaStream(
494 virtual bool OnMediaCommand(
500 virtual void SessionFailing(
RTP_Session & session);
508 #if OPAL_T38_CAPABILITY 517 PMutex zrtpConnInfoMutex;
518 OpalZRTPConnectionInfo * zrtpConnInfo;
529 virtual RTP_UDP * CreateRTPSession(
533 virtual PBoolean Open() = 0;
536 #endif // OPAL_OPAL_RTPCONN_H virtual PBoolean RemoteIsNAT() const
Definition: rtpconn.h:362
Definition: rtpconn.h:525
Definition: rtpconn.h:247
void operator=(const OpalRTPSessionManager &other)
Assignment of RTP session managers.
Definition: rtpconn.h:178
OpalRFC2833Proto * rfc2833Handler
Definition: rtpconn.h:507
OpalRTPSessionManager m_rtpSessions
Definition: rtpconn.h:506
Definition: transports.h:703
Definition: rtpconn.h:159
bool HasFailed() const
Definition: rtp.h:976
PayloadTypes
Definition: rtp.h:86
PBoolean remoteIsNAT
Definition: rtpconn.h:512
DWORD GetPacketsReceived() const
Definition: rtp.h:843
PBoolean useRTPAggregation
Definition: rtpconn.h:513
Definition: connection.h:462
PMutex m_mutex
Definition: rtpconn.h:234
Definition: rfc2833.h:112
PMutex & GetMutex()
Definition: rtpconn.h:228
OpalRTPConnection & m_connection
Definition: rtpconn.h:233
PDICTIONARY(H323CallIdentityDict, PString, H323Connection)
Definition: connection.h:353
Definition: transports.h:149
OpalRTPSessionManager RTP_SessionManager
Definition: rtpconn.h:241
SessionDict sessions
Definition: rtpconn.h:237