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

This class represents an IM Session remote participant. More...

#include <RemoteIMSessionParticipant.hxx>

Inheritance diagram for recon::RemoteIMSessionParticipant:
[legend]

Public Member Functions

 RemoteIMSessionParticipant (ParticipantHandle partHandle, ConversationManager &conversationManager, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
 RemoteIMSessionParticipant (ConversationManager &conversationManager, resip::DialogUsageManager &dum, RemoteParticipantDialogSet &remoteParticipantDialogSet)
 
virtual ~RemoteIMSessionParticipant ()
 
virtual void checkHoldCondition () override
 
virtual void setLocalHold (bool hold) override
 
virtual void notifyIncomingParticipant (const resip::SipMessage &msg, bool autoAnswer, ConversationProfile &conversationProfile) override
 
virtual void hold () override
 
virtual void unhold () override
 
virtual void buildSdpOffer (bool holdSdp, CallbackSdpReady sdpReady, bool preferExistingSdp=false) override
 
virtual void adjustRTPStreams (bool sendingOffer=false) override
 
virtual int getConnectionPortOnBridge () override
 
virtual bool hasInput () override
 
virtual bool hasOutput () 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 addToConversation (Conversation *conversation, unsigned int inputGain=100, unsigned int outputGain=100) override
 
virtual void removeFromConversation (Conversation *conversation) 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 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 bool onMediaControlEvent (resip::MediaControlContents::MediaControl &mediaControl)
 
virtual bool onTrickleIce (resip::TrickleIceContents &trickleIce)
 
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)
 
virtual void applyBridgeMixWeights ()
 
virtual void applyBridgeMixWeights (Conversation *removedConversation)
 
- 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 ()
 

Protected Member Functions

virtual RemoteIMSessionParticipantDialogSet & getIMSessionDialogSet ()
 
virtual bool mediaStackPortAvailable () 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 bool holdPreferExistingSdp ()
 
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
 

Detailed Description

This class represents an IM Session remote participant.

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

Author: Scott Godin (sgodin AT SipSpectrum DOT com)

Definition at line 45 of file RemoteIMSessionParticipant.hxx.

Constructor & Destructor Documentation

◆ RemoteIMSessionParticipant() [1/2]

RemoteIMSessionParticipant::RemoteIMSessionParticipant ( ParticipantHandle  partHandle,
ConversationManager &  conversationManager,
resip::DialogUsageManager &  dum,
RemoteParticipantDialogSet &  remoteParticipantDialogSet 
)

Definition at line 35 of file RemoteIMSessionParticipant.cxx.

◆ RemoteIMSessionParticipant() [2/2]

RemoteIMSessionParticipant::RemoteIMSessionParticipant ( ConversationManager &  conversationManager,
resip::DialogUsageManager &  dum,
RemoteParticipantDialogSet &  remoteParticipantDialogSet 
)

Definition at line 46 of file RemoteIMSessionParticipant.cxx.

◆ ~RemoteIMSessionParticipant()

RemoteIMSessionParticipant::~RemoteIMSessionParticipant ( )
virtual

Definition at line 55 of file RemoteIMSessionParticipant.cxx.

Member Function Documentation

◆ adjustRTPStreams()

virtual void recon::RemoteIMSessionParticipant::adjustRTPStreams ( bool  sendingOffer = false)
inlineoverridevirtual

Implements recon::RemoteParticipant.

Definition at line 67 of file RemoteIMSessionParticipant.hxx.

◆ buildSdpOffer()

void RemoteIMSessionParticipant::buildSdpOffer ( bool  holdSdp,
CallbackSdpReady  sdpReady,
bool  preferExistingSdp = false 
)
overridevirtual

Implements recon::RemoteParticipant.

Definition at line 74 of file RemoteIMSessionParticipant.cxx.

◆ checkHoldCondition()

virtual void recon::RemoteIMSessionParticipant::checkHoldCondition ( )
inlineoverridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 60 of file RemoteIMSessionParticipant.hxx.

◆ getConnectionPortOnBridge()

virtual int recon::RemoteIMSessionParticipant::getConnectionPortOnBridge ( )
inlineoverridevirtual

Implements recon::Participant.

Definition at line 69 of file RemoteIMSessionParticipant.hxx.

◆ getIMSessionDialogSet()

virtual RemoteIMSessionParticipantDialogSet & recon::RemoteIMSessionParticipant::getIMSessionDialogSet ( )
inlineprotectedvirtual

Definition at line 77 of file RemoteIMSessionParticipant.hxx.

◆ hasInput()

virtual bool recon::RemoteIMSessionParticipant::hasInput ( )
inlineoverridevirtual

Implements recon::Participant.

Definition at line 70 of file RemoteIMSessionParticipant.hxx.

◆ hasOutput()

virtual bool recon::RemoteIMSessionParticipant::hasOutput ( )
inlineoverridevirtual

Implements recon::Participant.

Definition at line 71 of file RemoteIMSessionParticipant.hxx.

◆ hold()

virtual void recon::RemoteIMSessionParticipant::hold ( )
inlineoverridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 63 of file RemoteIMSessionParticipant.hxx.

◆ mediaStackPortAvailable()

virtual bool recon::RemoteIMSessionParticipant::mediaStackPortAvailable ( )
inlineoverrideprotectedvirtual

Implements recon::RemoteParticipant.

Definition at line 78 of file RemoteIMSessionParticipant.hxx.

◆ notifyIncomingParticipant()

void RemoteIMSessionParticipant::notifyIncomingParticipant ( const resip::SipMessage &  msg,
bool  autoAnswer,
ConversationProfile &  conversationProfile 
)
overridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 68 of file RemoteIMSessionParticipant.cxx.

◆ requestKeyframe()

void RemoteIMSessionParticipant::requestKeyframe ( )
overridevirtual

Implements recon::RemoteParticipant.

Definition at line 174 of file RemoteIMSessionParticipant.cxx.

◆ setLocalHold()

virtual void recon::RemoteIMSessionParticipant::setLocalHold ( bool  hold)
inlineoverridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 61 of file RemoteIMSessionParticipant.hxx.

◆ unhold()

virtual void recon::RemoteIMSessionParticipant::unhold ( )
inlineoverridevirtual

Reimplemented from recon::RemoteParticipant.

Definition at line 64 of file RemoteIMSessionParticipant.hxx.


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