27 #ifndef OPAL_OPAL_RTPCONN_H
28 #define OPAL_OPAL_RTPCONN_H
41 #include <ptlib/bitwise_enum.h>
51 #define OPAL_OPT_DISABLE_NAT "Disable-NAT"
68 const PString & token,
178 unsigned duration = 0
215 const PString & sessionType = PString::Empty()
250 const PString & sessionType = PString::Empty()
265 unsigned fromSessionID,
335 #if OPAL_T38_CAPABILITY
339 P_REMOVE_VIRTUAL(PBoolean,IsRTPNATEnabled(
const PIPSocket::Address&,
const PIPSocket::Address&,
const PIPSocket::Address&,PBoolean),
false);
343 #endif // OPAL_OPAL_RTPCONN_H
virtual unsigned GetNextSessionID(const OpalMediaType &mediaType, bool isSource)
virtual void AdjustMediaFormats(bool local, const OpalConnection *otherConnection, OpalMediaFormatList &mediaFormats) const
virtual void SetAudioVideoMediaStreamIDs(OpalRTPSession::Direction direction)
virtual bool GetMediaTransportAddresses(OpalConnection &otherConnection, unsigned sessionId, const OpalMediaType &mediaType, OpalTransportAddressArray &transports) const
bool m_remoteBehindNAT
Definition: rtpconn.h:332
vector< bool > CreateAllMediaSessions()
virtual OpalMediaSession * FindSessionByMediaType(const OpalMediaType &mediaType) const
NotifyState
Definition: rfc2833.h:112
Definition: transports.h:788
virtual OpalMediaSession * CreateMediaSession(unsigned sessionId, const OpalMediaType &mediaType, const PString &sessionType=PString::Empty())
OpalRTPConnection(OpalCall &call, OpalRTPEndPoint &endpoint, const PString &token, unsigned options=0, OpalConnection::StringOptions *stringOptions=NULL)
virtual void OnReleased()
virtual PBoolean SendUserInputTone(char tone, unsigned duration=0)
PDECLARE_NOTIFIER2(OpalRFC2833Info, OpalRTPConnection, OnUserInputInlineRFC2833, OpalRFC2833Proto::NotifyState)
Direction
Definition: rtp_session.h:132
virtual bool ChangeSessionID(unsigned fromSessionID, unsigned toSessionID)
PSafeDictionary< PKey< unsigned >, OpalMediaSession > SessionMap
Definition: rtpconn.h:320
virtual void ReplaceMediaSession(unsigned sessionId, OpalMediaSession *mediaSession)
virtual bool OnMediaCommand(OpalMediaStream &stream, const OpalMediaCommand &command)
Definition: connection.h:530
virtual void ReleaseMediaSession(unsigned sessionID)
virtual void AddAudioVideoGroup(const PString &id=OpalMediaSession::GetBundleGroupId())
Definition: rtp_session.h:90
SessionMap m_sessions
Definition: rtpconn.h:331
Definition: rfc2833.h:108
virtual void DetermineRTPNAT(const OpalTransport &transport, const OpalTransportAddress &signalAddr)
virtual OpalMediaStream * CreateMediaStream(const OpalMediaFormat &mediaFormat, unsigned sessionID, PBoolean isSource)
virtual OpalMediaSession * FindSessionByLocalPort(WORD port) const
P_REMOVE_VIRTUAL(PBoolean, IsRTPNATEnabled(const PIPSocket::Address &, const PIPSocket::Address &, const PIPSocket::Address &, PBoolean), false)
Definition: connection.h:415
virtual OpalMediaSession * GetMediaSession(unsigned sessionID) const
virtual void OnPatchMediaStream(PBoolean isSource, OpalMediaPatch &patch)
virtual OpalMediaSession * UseMediaSession(unsigned sessionId, const OpalMediaType &mediaType, const PString &sessionType=PString::Empty())
virtual bool GarbageCollection()
Definition: transports.h:151
Definition: transports.h:326
OpalRFC2833Proto * m_rfc2833Handler
Definition: rtpconn.h:334
virtual OpalMediaCryptoSuite::KeyExchangeModes GetMediaCryptoKeyExchangeModes() const
virtual bool SetSessionQoS(OpalRTPSession *session)