reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
recon::GstRemoteParticipant Class Reference

This class represent a remote participant. More...

#include <GstRemoteParticipant.hxx>

Inheritance diagram for recon::GstRemoteParticipant:
[legend]

Public Member Functions

 GstRemoteParticipant (ParticipantHandle partHandle, ConversationManager &conversationManager, GstMediaStackAdapter &gstreamerMediaStackAdapter, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
 GstRemoteParticipant (ConversationManager &conversationManager, GstMediaStackAdapter &gstreamerMediaStackAdapter, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
virtual ~GstRemoteParticipant ()
 
virtual void buildSdpOffer (bool holdSdp, CallbackSdpReady sdpReady, bool preferExistingSdp=false)
 
virtual int getConnectionPortOnBridge ()
 
virtual bool hasInput ()
 
virtual bool hasOutput ()
 
virtual int getMediaConnectionId ()
 
virtual void applyBridgeMixWeights () override
 
virtual void applyBridgeMixWeights (Conversation *removedConversation) override
 
virtual void adjustRTPStreams (bool sendingOffer=false)
 
void onIceGatheringDone ()
 
virtual void addToConversation (Conversation *conversation, unsigned int inputGain=100, unsigned int outputGain=100) override
 
virtual void removeFromConversation (Conversation *conversation) override
 
virtual void waitingMode ()
 
virtual bool onMediaControlEvent (resip::MediaControlContents::MediaControl &mediaControl)
 
virtual bool onTrickleIce (resip::TrickleIceContents &trickleIce) override
 
virtual void requestKeyframe () override
 
- Public Member Functions inherited from recon::RemoteParticipant
 RemoteParticipant (ParticipantHandle partHandle, ConversationManager &conversationManager, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
 RemoteParticipant (ConversationManager &conversationManager, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
virtual ~RemoteParticipant ()
 
virtual resip::InviteSessionHandle & getInviteSessionHandle ()
 
virtual bool isHolding ()
 
virtual bool isRemoteHold ()
 
virtual void initiateRemoteCall (const resip::NameAddr &destination)
 
virtual void initiateRemoteCall (const resip::NameAddr &destination, const std::shared_ptr< ConversationProfile > &callingProfile, const std::multimap< resip::Data, resip::Data > &extraHeaders)
 
virtual void destroyParticipant () override
 
virtual void accept ()
 
virtual void alert (bool earlyFlag)
 
virtual void reject (unsigned int rejectCode)
 
virtual void redirect (resip::NameAddr &destination, unsigned int redirectCode=302, ConversationManager::RedirectSuccessCondition successCondition=ConversationManager::RedirectSuccessOnConnected)
 
virtual void redirectToParticipant (resip::InviteSessionHandle &destParticipantInviteSessionHandle, ConversationManager::RedirectSuccessCondition successCondition=ConversationManager::RedirectSuccessOnConnected)
 
virtual void info (const resip::Contents &contents)
 
virtual void checkHoldCondition ()
 
virtual void setLocalHold (bool hold)
 
virtual void sendInstantMessage (std::unique_ptr< resip::Contents > contents) override
 
virtual void setPendingOODReferInfo (resip::ServerOutOfDialogReqHandle ood, const resip::SipMessage &referMsg)
 
virtual void setPendingOODReferInfo (resip::ServerSubscriptionHandle ss, const resip::SipMessage &referMsg)
 
virtual void acceptPendingOODRefer ()
 
virtual void rejectPendingOODRefer (unsigned int statusCode)
 
virtual void redirectPendingOODRefer (resip::NameAddr &destination)
 
virtual void processReferNotify (resip::ClientSubscriptionHandle h, const resip::SipMessage &notify)
 
virtual void destroyConversations ()
 
virtual void notifyTerminating ()
 
virtual void onNewSession (resip::ClientInviteSessionHandle h, resip::InviteSession::OfferAnswerType oat, const resip::SipMessage &msg)
 
virtual void onNewSession (resip::ServerInviteSessionHandle h, resip::InviteSession::OfferAnswerType oat, const resip::SipMessage &msg)
 
virtual void onFailure (resip::ClientInviteSessionHandle h, const resip::SipMessage &msg)
 
virtual void onEarlyMedia (resip::ClientInviteSessionHandle, const resip::SipMessage &, const resip::SdpContents &)
 
virtual void onProvisional (resip::ClientInviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onConnected (resip::ClientInviteSessionHandle h, const resip::SipMessage &msg)
 
virtual void onConnected (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onConnectedConfirmed (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onStaleCallTimeout (resip::ClientInviteSessionHandle)
 
virtual void onTerminated (resip::InviteSessionHandle h, resip::InviteSessionHandler::TerminatedReason reason, const resip::SipMessage *msg)
 
virtual void onRedirected (resip::ClientInviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onAnswer (resip::InviteSessionHandle, const resip::SipMessage &msg, const resip::SdpContents &)
 
virtual void onOffer (resip::InviteSessionHandle handle, const resip::SipMessage &msg, const resip::SdpContents &offer)
 
virtual void onOfferRequired (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onOfferRejected (resip::InviteSessionHandle, const resip::SipMessage *msg)
 
virtual void onOfferRequestRejected (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onRemoteSdpChanged (resip::InviteSessionHandle, const resip::SipMessage &msg, const resip::SdpContents &sdp)
 
virtual void onInfo (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onInfoSuccess (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onInfoFailure (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onRefer (resip::InviteSessionHandle, resip::ServerSubscriptionHandle, const resip::SipMessage &msg)
 
virtual void onReferAccepted (resip::InviteSessionHandle, resip::ClientSubscriptionHandle, const resip::SipMessage &msg)
 
virtual void onReferRejected (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void doReferNoSub (const resip::SipMessage &msg)
 
virtual void onReferNoSub (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onMessage (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onMessageSuccess (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onMessageFailure (resip::InviteSessionHandle, const resip::SipMessage &msg)
 
virtual void onForkDestroyed (resip::ClientInviteSessionHandle)
 
virtual void onUpdatePending (resip::ClientSubscriptionHandle h, const resip::SipMessage &notify, bool outOfOrder)
 
virtual void onUpdateActive (resip::ClientSubscriptionHandle h, const resip::SipMessage &notify, bool outOfOrder)
 
virtual void onUpdateExtension (resip::ClientSubscriptionHandle, const resip::SipMessage &notify, bool outOfOrder)
 
virtual void onTerminated (resip::ClientSubscriptionHandle h, const resip::SipMessage *notify)
 
virtual void onNewSubscription (resip::ClientSubscriptionHandle h, const resip::SipMessage &notify)
 
virtual int onRequestRetry (resip::ClientSubscriptionHandle h, int retryMinimum, const resip::SipMessage &notify)
 
virtual void requestKeyframeFromPeer ()
 
virtual void requestKeyframeFromPeerTimeout (bool reset)
 
virtual void reInvite ()
 
- Public Member Functions inherited from recon::Participant
 Participant (ParticipantHandle partHandle, ConversationManager::ParticipantType participantType, ConversationManager &conversationManager)
 
 Participant (ConversationManager::ParticipantType participantType, ConversationManager &conversationManager)
 
virtual ~Participant ()
 
virtual ParticipantHandle getParticipantHandle ()
 
virtual ConversationManager::ParticipantType getParticipantType ()
 
virtual void setRecordChannelNum (unsigned int channelNum)
 
virtual unsigned int getRecordChannelNum ()
 
virtual void unregisterFromAllConversations ()
 
virtual void copyConversationsToParticipant (Participant *destParticipant)
 
virtual unsigned int getNumConversations ()
 
const ConversationMap & getConversations ()
 
virtual void setHandle (ParticipantHandle partHandle)
 
- Public Member Functions inherited from resip::AppDialog
 AppDialog (HandleManager &ham)
 
virtual ~AppDialog ()
 
AppDialogHandle getHandle ()
 
DialogId getDialogId () const
 
std::vector< ClientSubscriptionHandle > getClientSubscriptions ()
 
std::vector< ClientSubscriptionHandle > findClientSubscriptions (const Data &event)
 
std::vector< ServerSubscriptionHandle > getServerSubscriptions ()
 
std::vector< ServerSubscriptionHandle > findServerSubscriptions (const Data &event)
 
InviteSessionHandle getInviteSession ()
 
NameAddr & getContact ()
 
virtual EncodeStream & dump (EncodeStream &strm) const
 
- Public Member Functions inherited from resip::Handled
 Handled (HandleManager &ham)
 
virtual ~Handled ()
 
- Public Member Functions inherited from recon::IMParticipantBase
 IMParticipantBase (bool prependSenderInfoToIMs)
 
virtual ~IMParticipantBase ()
 
virtual void setPrependSenderInfoToIMs (bool value)
 
virtual bool getPrependSenderInfoToIMs ()
 
- Public Member Functions inherited from recon::GstParticipant
 GstParticipant (ParticipantHandle partHandle, ConversationManager::ParticipantType participantType, ConversationManager &conversationManager, GstMediaStackAdapter &gstreamerMediaStackAdapter)
 
 GstParticipant (ConversationManager::ParticipantType participantType, ConversationManager &conversationManager, GstMediaStackAdapter &gstreamerMediaStackAdapter)
 
virtual ~GstParticipant ()
 

Public Attributes

bool mWaitingModeVideo = false
 
bool mRemoveExtraMediaDescriptors
 
bool mSipRtpEndpoint
 
bool mReuseSdpAnswer
 
bool mWSAcceptsKeyframeRequests
 
resip::SdpContents * mLastRemoteSdp
 
bool mWaitingAnswer
 
bool mTrickleIcePermitted = false
 
bool mWebRTCOutgoing = false
 
Glib::RefPtr< Gst::Pipeline > mPipeline
 
Glib::RefPtr< Gst::Element > mMediaBin
 
Glib::RefPtr< Gst::Element > mRtpTransportElement
 
std::function< void(const Glib::RefPtr< Gst::Pad > &pad)> mPadAdded
 
std::shared_ptr< resipgst::GstRtpManager > mRtpManager = 0
 
std::shared_ptr< resipgst::GstRtpSession > mRtpSession = 0
 

Protected Member Functions

virtual bool mediaStackPortAvailable ()
 
virtual GstRemoteParticipantDialogSet & getGstDialogSet ()
 
virtual bool holdPreferExistingSdp () override
 
- Protected Member Functions inherited from recon::RemoteParticipant
void addExtraHeader (const std::shared_ptr< resip::SipMessage > &invitemsg, const resip::Data &headerName, const resip::Data &headerValue)
 
void setRemoteHold (bool remoteHold)
 
void setProposedSdp (const resip::SdpContents &sdp)
 
void setLocalSdp (const resip::SdpContents &sdp)
 
std::shared_ptr< resip::SdpContents > getLocalSdp ()
 
void setRemoteSdp (const resip::SdpContents &sdp, bool answer=false)
 
std::shared_ptr< resip::SdpContents > getRemoteSdp ()
 
void setLocalSdpGathering (const resip::SdpContents &sdp)
 
std::shared_ptr< resip::SdpContents > getLocalSdpGathering ()
 
RemoteParticipantDialogSet & getDialogSet ()
 
virtual void notifyIncomingParticipant (const resip::SipMessage &msg, bool autoAnswer, ConversationProfile &conversationProfile)
 
virtual void hold ()
 
virtual void unhold ()
 
bool isTrickleIce ()
 
virtual void enableTrickleIce ()
 
virtual void conversationsConfirm ()
 
virtual std::chrono::duration< double > getKeyframeRequestInterval () const
 
virtual void onLocalIceCandidate (const resip::Data &candidate, unsigned int lineIndex, const resip::Data &mid)
 

Additional Inherited Members

- Public Types inherited from recon::RemoteParticipant
typedef std::function< void(bool sdpOk, std::unique_ptr< resip::SdpContents > sdp)> CallbackSdpReady
 
- Public Types inherited from recon::Participant
typedef std::map< ConversationHandle, Conversation * > ConversationMap
 
- Public Types inherited from resip::Handled
enum  { npos = 0 }
 
typedef unsigned long Id
 
- Protected Attributes inherited from recon::Participant
ParticipantHandle mHandle
 
ConversationManager::ParticipantType mType
 
unsigned int mRecordChannelNum
 
ConversationManager & mConversationManager
 
ConversationMap mConversations
 
- Protected Attributes inherited from resip::Handled
HandleManager & mHam
 
Handled::Id mId
 
- Protected Attributes inherited from recon::IMParticipantBase
bool mPrependSenderInfoToIMs
 
- Protected Attributes inherited from recon::GstParticipant
GstMediaStackAdapter & mGstMediaStackAdapter
 

Detailed Description

This class represent a remote participant.

A remote participant is a participant with a network connection to a remote entity. This implementation is for a SIP / RTP connections.

Definition at line 52 of file GstRemoteParticipant.hxx.

Constructor & Destructor Documentation

◆ GstRemoteParticipant() [1/2]

GstRemoteParticipant::GstRemoteParticipant ( ParticipantHandle  partHandle,
ConversationManager &  conversationManager,
GstMediaStackAdapter &  gstreamerMediaStackAdapter,
resip::DialogUsageManager &  dum,
RemoteParticipantDialogSet &  remoteParticipantDialogSet 
)

Definition at line 105 of file GstRemoteParticipant.cxx.

◆ GstRemoteParticipant() [2/2]

GstRemoteParticipant::GstRemoteParticipant ( ConversationManager &  conversationManager,
GstMediaStackAdapter &  gstreamerMediaStackAdapter,
resip::DialogUsageManager &  dum,
RemoteParticipantDialogSet &  remoteParticipantDialogSet 
)

Definition at line 128 of file GstRemoteParticipant.cxx.

◆ ~GstRemoteParticipant()

GstRemoteParticipant::~GstRemoteParticipant ( )
virtual

Definition at line 159 of file GstRemoteParticipant.cxx.

Member Function Documentation

◆ addToConversation()

void GstRemoteParticipant::addToConversation ( Conversation *  conversation,
unsigned int  inputGain = 100,
unsigned int  outputGain = 100 
)
overridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 1435 of file GstRemoteParticipant.cxx.

◆ adjustRTPStreams()

void GstRemoteParticipant::adjustRTPStreams ( bool  sendingOffer = false)
virtual

Implements recon::RemoteParticipant.

Definition at line 1368 of file GstRemoteParticipant.cxx.

◆ applyBridgeMixWeights() [1/2]

void GstRemoteParticipant::applyBridgeMixWeights ( )
overridevirtual

Reimplemented from recon::Participant.

Definition at line 195 of file GstRemoteParticipant.cxx.

◆ applyBridgeMixWeights() [2/2]

void GstRemoteParticipant::applyBridgeMixWeights ( Conversation *  removedConversation)
overridevirtual

Reimplemented from recon::Participant.

Definition at line 206 of file GstRemoteParticipant.cxx.

◆ buildSdpOffer()

void GstRemoteParticipant::buildSdpOffer ( bool  holdSdp,
CallbackSdpReady  sdpReady,
bool  preferExistingSdp = false 
)
virtual

Implements recon::RemoteParticipant.

Definition at line 960 of file GstRemoteParticipant.cxx.

◆ getConnectionPortOnBridge()

int GstRemoteParticipant::getConnectionPortOnBridge ( )
virtual

Implements recon::Participant.

Definition at line 174 of file GstRemoteParticipant.cxx.

◆ getGstDialogSet()

virtual GstRemoteParticipantDialogSet & recon::GstRemoteParticipant::getGstDialogSet ( )
inlineprotectedvirtual

Definition at line 102 of file GstRemoteParticipant.hxx.

◆ getMediaConnectionId()

int GstRemoteParticipant::getMediaConnectionId ( )
virtual

Definition at line 189 of file GstRemoteParticipant.cxx.

◆ hasInput()

virtual bool recon::GstRemoteParticipant::hasInput ( )
inlinevirtual

Implements recon::Participant.

Definition at line 71 of file GstRemoteParticipant.hxx.

◆ hasOutput()

virtual bool recon::GstRemoteParticipant::hasOutput ( )
inlinevirtual

Implements recon::Participant.

Definition at line 72 of file GstRemoteParticipant.hxx.

◆ holdPreferExistingSdp()

virtual bool recon::GstRemoteParticipant::holdPreferExistingSdp ( )
inlineoverrideprotectedvirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 104 of file GstRemoteParticipant.hxx.

◆ mediaStackPortAvailable()

bool GstRemoteParticipant::mediaStackPortAvailable ( )
protectedvirtual

Implements recon::RemoteParticipant.

Definition at line 1447 of file GstRemoteParticipant.cxx.

◆ onIceGatheringDone()

void recon::GstRemoteParticipant::onIceGatheringDone ( )
inline

Definition at line 80 of file GstRemoteParticipant.hxx.

◆ onMediaControlEvent()

bool GstRemoteParticipant::onMediaControlEvent ( resip::MediaControlContents::MediaControl &  mediaControl)
virtual

Reimplemented from recon::RemoteParticipant.

Definition at line 1490 of file GstRemoteParticipant.cxx.

◆ onTrickleIce()

bool GstRemoteParticipant::onTrickleIce ( resip::TrickleIceContents &  trickleIce)
overridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 1521 of file GstRemoteParticipant.cxx.

◆ removeFromConversation()

void GstRemoteParticipant::removeFromConversation ( Conversation *  conversation)
overridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 1441 of file GstRemoteParticipant.cxx.

◆ requestKeyframe()

void GstRemoteParticipant::requestKeyframe ( )
overridevirtual

Implements recon::RemoteParticipant.

Definition at line 1551 of file GstRemoteParticipant.cxx.

◆ waitingMode()

void GstRemoteParticipant::waitingMode ( )
virtual

Definition at line 1453 of file GstRemoteParticipant.cxx.

Member Data Documentation

◆ mLastRemoteSdp

resip::SdpContents* recon::GstRemoteParticipant::mLastRemoteSdp

Definition at line 142 of file GstRemoteParticipant.hxx.

◆ mMediaBin

Glib::RefPtr<Gst::Element> recon::GstRemoteParticipant::mMediaBin

Definition at line 150 of file GstRemoteParticipant.hxx.

◆ mPadAdded

std::function<void(const Glib::RefPtr<Gst::Pad>& pad)> recon::GstRemoteParticipant::mPadAdded

Definition at line 157 of file GstRemoteParticipant.hxx.

◆ mPipeline

Glib::RefPtr<Gst::Pipeline> recon::GstRemoteParticipant::mPipeline

Definition at line 149 of file GstRemoteParticipant.hxx.

◆ mRemoveExtraMediaDescriptors

bool recon::GstRemoteParticipant::mRemoveExtraMediaDescriptors

Definition at line 138 of file GstRemoteParticipant.hxx.

◆ mReuseSdpAnswer

bool recon::GstRemoteParticipant::mReuseSdpAnswer

Definition at line 140 of file GstRemoteParticipant.hxx.

◆ mRtpManager

std::shared_ptr<resipgst::GstRtpManager> recon::GstRemoteParticipant::mRtpManager = 0

Definition at line 165 of file GstRemoteParticipant.hxx.

◆ mRtpSession

std::shared_ptr<resipgst::GstRtpSession> recon::GstRemoteParticipant::mRtpSession = 0

Definition at line 166 of file GstRemoteParticipant.hxx.

◆ mRtpTransportElement

Glib::RefPtr<Gst::Element> recon::GstRemoteParticipant::mRtpTransportElement

Definition at line 151 of file GstRemoteParticipant.hxx.

◆ mSipRtpEndpoint

bool recon::GstRemoteParticipant::mSipRtpEndpoint

Definition at line 139 of file GstRemoteParticipant.hxx.

◆ mTrickleIcePermitted

bool recon::GstRemoteParticipant::mTrickleIcePermitted = false

Definition at line 144 of file GstRemoteParticipant.hxx.

◆ mWaitingAnswer

bool recon::GstRemoteParticipant::mWaitingAnswer

Definition at line 143 of file GstRemoteParticipant.hxx.

◆ mWaitingModeVideo

bool recon::GstRemoteParticipant::mWaitingModeVideo = false

Definition at line 87 of file GstRemoteParticipant.hxx.

◆ mWebRTCOutgoing

bool recon::GstRemoteParticipant::mWebRTCOutgoing = false

Definition at line 145 of file GstRemoteParticipant.hxx.

◆ mWSAcceptsKeyframeRequests

bool recon::GstRemoteParticipant::mWSAcceptsKeyframeRequests

Definition at line 141 of file GstRemoteParticipant.hxx.


The documentation for this class was generated from the following files: