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

This class is used to manage membership of participants. More...

#include <SipXConversation.hxx>

Inheritance diagram for recon::SipXConversation:
[legend]

Public Member Functions

 SipXConversation (ConversationHandle handle, ConversationManager &conversationManager, SipXMediaStackAdapter &sipXMediaStackAdapter, RelatedConversationSet *relatedConversationSet, ConversationHandle sharedMediaInterfaceConvHandle, ConversationManager::AutoHoldMode autoHoldMode)
 
virtual ~SipXConversation ()
 
- Public Member Functions inherited from recon::Conversation
virtual ~Conversation ()
 
void addParticipant (Participant *participant, unsigned int inputGain=100, unsigned int outputGain=100)
 
void removeParticipant (Participant *participant)
 
void modifyParticipantContribution (Participant *participant, unsigned int inputGain, unsigned int outputGain)
 
unsigned int getNumLocalParticipants ()
 
unsigned int getNumRemoteParticipants ()
 
unsigned int getNumRemoteIMParticipants ()
 
unsigned int getNumMediaParticipants ()
 
bool shouldHold ()
 
bool broadcastOnly ()
 
void notifyRemoteParticipantsOfHoldChange ()
 
void relayInstantMessageToRemoteParticipants (ParticipantHandle sourceParticipant, const resip::Data &senderDisplayName, const resip::SipMessage &msg)
 
void createRelatedConversation (RemoteParticipant *newForkedParticipant, ParticipantHandle origParticipantHandle)
 
void join (Conversation *conversation)
 
void destroy ()
 
ConversationHandle getHandle ()
 
void setMaxParticipants (unsigned int maxParticipants)
 
unsigned int getMaxParticipants () const
 
virtual void confirmParticipant (Participant *participant)
 

Protected Member Functions

std::shared_ptr< SipXMediaInterface > getMediaInterface () const
 
virtual void onParticipantAdded (Participant *participant)
 
virtual void onParticipantRemoved (Participant *participant)
 
- Protected Member Functions inherited from recon::Conversation
 Conversation (ConversationHandle handle, ConversationManager &conversationManager, RelatedConversationSet *relatedConversationSet, ConversationHandle sharedMediaInterfaceConvHandle, ConversationManager::AutoHoldMode autoHoldMode, unsigned int maxParticipants=0)
 
std::shared_ptr< resip::ConfigParse > getConfig ()
 
void registerParticipant (Participant *, unsigned int inputGain=100, unsigned int outputGain=100)
 
void unregisterParticipant (Participant *)
 
ParticipantMap & getParticipants ()
 
BridgeMixer * getBridgeMixer () noexcept
 
std::shared_ptr< BridgeMixer > getBridgeMixerShared ()
 
virtual void setBridgeMixer (std::shared_ptr< BridgeMixer > mixer)
 
virtual bool isSharingMediaInterfaceWithAnotherConversation ()
 
virtual ConversationManager & getConversationManager ()
 

Friends

class Participant
 
class SipXParticipant
 
class LocalParticipant
 
class SipXLocalParticipant
 
class RemoteParticipant
 
class SipXRemoteParticipant
 
class MediaResourceParticipant
 
class SipXMediaResourceParticipant
 
class BridgeMixer
 
class SipXBridgeMixer
 
class AddParticipantCmd
 
class JoinConversationCmd
 
class MoveParticipantCmd
 
class ConversationManager
 
class SipXMediaStackAdapter
 

Additional Inherited Members

- Protected Types inherited from recon::Conversation
typedef std::map< ParticipantHandle, ConversationParticipantAssignment > ParticipantMap
 

Detailed Description

This class is used to manage membership of participants.

Conversations are used to designate the audio properties between a number of managed participants. By default all participants in a Conversation can talk to and hear all other participants. A modified participants contribution setting to a conversation can change this.

If a remote participant is a sole member in a conversation, then he/she will be put on hold for the default AutoHoldMode of enabled.

Author: Scott Godin (sgodin AT SipSpectrum DOT com)

Definition at line 33 of file SipXConversation.hxx.

Constructor & Destructor Documentation

◆ SipXConversation()

SipXConversation::SipXConversation ( ConversationHandle  handle,
ConversationManager &  conversationManager,
SipXMediaStackAdapter &  sipXMediaStackAdapter,
RelatedConversationSet *  relatedConversationSet,
ConversationHandle  sharedMediaInterfaceConvHandle,
ConversationManager::AutoHoldMode  autoHoldMode 
)

Definition at line 19 of file SipXConversation.cxx.

◆ ~SipXConversation()

SipXConversation::~SipXConversation ( )
virtual

Definition at line 47 of file SipXConversation.cxx.

Member Function Documentation

◆ getMediaInterface()

std::shared_ptr< SipXMediaInterface > recon::SipXConversation::getMediaInterface ( ) const
inlineprotected

Definition at line 60 of file SipXConversation.hxx.

◆ onParticipantAdded()

void SipXConversation::onParticipantAdded ( Participant *  participant)
protectedvirtual

Implements recon::Conversation.

Definition at line 54 of file SipXConversation.cxx.

◆ onParticipantRemoved()

void SipXConversation::onParticipantRemoved ( Participant *  participant)
protectedvirtual

Implements recon::Conversation.

Definition at line 59 of file SipXConversation.cxx.

Friends And Related Symbol Documentation

◆ AddParticipantCmd

Definition at line 57 of file SipXConversation.hxx.

◆ BridgeMixer

Definition at line 54 of file SipXConversation.hxx.

◆ ConversationManager

Definition at line 69 of file SipXConversation.hxx.

◆ JoinConversationCmd

Definition at line 58 of file SipXConversation.hxx.

◆ LocalParticipant

Definition at line 47 of file SipXConversation.hxx.

◆ MediaResourceParticipant

Definition at line 51 of file SipXConversation.hxx.

◆ MoveParticipantCmd

Definition at line 59 of file SipXConversation.hxx.

◆ Participant

Definition at line 45 of file SipXConversation.hxx.

◆ RemoteParticipant

Definition at line 49 of file SipXConversation.hxx.

◆ SipXBridgeMixer

Definition at line 55 of file SipXConversation.hxx.

◆ SipXLocalParticipant

Definition at line 48 of file SipXConversation.hxx.

◆ SipXMediaResourceParticipant

Definition at line 52 of file SipXConversation.hxx.

◆ SipXMediaStackAdapter

Definition at line 70 of file SipXConversation.hxx.

◆ SipXParticipant

Definition at line 46 of file SipXConversation.hxx.

◆ SipXRemoteParticipant

Definition at line 50 of file SipXConversation.hxx.


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