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

#include <DialogUsageManager.hxx>

Inheritance diagram for resip::DialogUsageManager:
[legend]

Classes

class  Exception
 
class  SendCommand
 

Public Types

enum  EncryptionLevel { None = 0 , Sign , Encrypt , SignAndEncrypt }
 

Public Member Functions

 DialogUsageManager (SipStack &stack, bool createDefaultFeatures=false)
 
virtual ~DialogUsageManager ()
 
void shutdown (DumShutdownHandler *)
 
void forceShutdown (DumShutdownHandler *)
 
void addTransport (TransportType protocol, int port=0, IpVersion version=V4, const Data &ipInterface=Data::Empty, const Data &sipDomainname=Data::Empty, const Data &privateKeyPassPhrase=Data::Empty, SecurityTypes::SSLType sslType=SecurityTypes::DynamicTLS, unsigned transportFlags=0)
 
SipStack & getSipStack ()
 
const SipStack & getSipStack () const
 
Security * getSecurity ()
 
Data getHostAddress ()
 
void setAppDialogSetFactory (std::unique_ptr< AppDialogSetFactory >) noexcept
 
void setMasterProfile (const std::shared_ptr< MasterProfile > &masterProfile)
 
std::shared_ptr< MasterProfile > & getMasterProfile ()
 
std::shared_ptr< UserProfile > & getMasterUserProfile ()
 
void setDialogSetHandler (DialogSetHandler *handler) noexcept
 
void setKeepAliveManager (std::unique_ptr< KeepAliveManager > keepAlive) noexcept
 
void setRedirectManager (std::unique_ptr< RedirectManager > redirect) noexcept
 
void setRedirectHandler (RedirectHandler *handler) noexcept
 
RedirectHandler * getRedirectHandler () const noexcept
 
void setClientAuthManager (std::unique_ptr< ClientAuthManager > client) noexcept
 If there is no ClientAuthManager, when the client receives a 401/407, pass it up through the normal BaseUsageHandler.
 
void setServerAuthManager (std::shared_ptr< ServerAuthManager > server)
 If there is no ServerAuthManager, the server does not authenticate requests.
 
void setInviteSessionHandler (InviteSessionHandler *)
 If there is no such handler, calling makeInviteSession will throw and receiving an INVITE as a UAS will respond with 405 Method Not Allowed.
 
void setClientRegistrationHandler (ClientRegistrationHandler *)
 If there is no such handler, calling makeRegistration will throw.
 
void setServerRegistrationHandler (ServerRegistrationHandler *)
 If no such handler, UAS will respond to REGISTER with 405 Method Not Allowed.
 
void addClientSubscriptionHandler (const Data &eventType, ClientSubscriptionHandler *)
 If there is no such handler, calling makeSubscription will throw.
 
void addClientPublicationHandler (const Data &eventType, ClientPublicationHandler *)
 If there is no such handler, calling makePublication will throw.
 
void addServerSubscriptionHandler (const Data &eventType, ServerSubscriptionHandler *)
 
void addServerPublicationHandler (const Data &eventType, ServerPublicationHandler *)
 
void addOutOfDialogHandler (MethodTypes, OutOfDialogHandler *)
 
void setRequestValidationHandler (RequestValidationHandler *)
 
void setClientPagerMessageHandler (ClientPagerMessageHandler *) noexcept
 
void setServerPagerMessageHandler (ServerPagerMessageHandler *) noexcept
 
void addExternalMessageHandler (ExternalMessageHandler *handler)
 Add/Remove External Message Handler do following op when processing thread in not running.
 
void removeExternalMessageHandler (ExternalMessageHandler *handler)
 
void clearExternalMessageHandler ()
 
void setRegistrationPersistenceManager (RegistrationPersistenceManager *)
 Sets a manager to handle storage of registration or publication state.
 
RegistrationPersistenceManager * getRegistrationPersistenceManager ()
 
void setPublicationPersistenceManager (PublicationPersistenceManager *)
 
PublicationPersistenceManager * getPublicationPersistenceManager ()
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, const Contents *initialOffer, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, EncryptionLevel level, const Contents *alternative=nullptr, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, const Contents *initialOffer, EncryptionLevel level, const Contents *alternative=nullptr, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, const DialogSetId &dialogSetId, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, EncryptionLevel level, const Contents *alternative=nullptr, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, InviteSessionHandle sessionToReplace, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, InviteSessionHandle sessionToReplace, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, EncryptionLevel level=None, const Contents *alternative=nullptr, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSession (const NameAddr &target, InviteSessionHandle sessionToReplace, const Contents *initialOffer, EncryptionLevel level=None, const Contents *alternative=nullptr, AppDialogSet *ads=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSessionFromRefer (const SipMessage &refer, ServerSubscriptionHandle, const Contents *initialOffer, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSessionFromRefer (const SipMessage &refer, const std::shared_ptr< UserProfile > &userProfile, const Contents *initialOffer, AppDialogSet *appDs=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSessionFromRefer (const SipMessage &refer, ServerSubscriptionHandle, const Contents *initialOffer, EncryptionLevel level=None, const Contents *alternative=nullptr, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeInviteSessionFromRefer (const SipMessage &refer, const std::shared_ptr< UserProfile > &userProfile, ServerSubscriptionHandle, const Contents *initialOffer, EncryptionLevel level=None, const Contents *alternative=nullptr, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Data &eventType, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Data &eventType, uint32_t subscriptionTime, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Data &eventType, uint32_t subscriptionTime, int refreshInterval, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const Data &eventType, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const Data &eventType, uint32_t subscriptionTime, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeSubscription (const NameAddr &target, const Data &eventType, uint32_t subscriptionTime, int refreshInterval, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRefer (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const H_ReferTo::Type &referTo, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRefer (const NameAddr &target, const H_ReferTo::Type &referTo, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makePublication (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, const Contents &body, const Data &eventType, uint32_t expiresSeconds, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makePublication (const NameAddr &target, const Contents &body, const Data &eventType, uint32_t expiresSeconds, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRegistration (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRegistration (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, uint32_t registrationTime, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRegistration (const NameAddr &target, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeRegistration (const NameAddr &target, uint32_t registrationTime, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeOutOfDialogRequest (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, MethodTypes meth, AppDialogSet *=nullptr)
 
std::shared_ptr< SipMessage > makeOutOfDialogRequest (const NameAddr &target, MethodTypes meth, AppDialogSet *=nullptr)
 
ClientPagerMessageHandle makePagerMessage (const NameAddr &target, const std::shared_ptr< UserProfile > &userProfile, AppDialogSet *=nullptr)
 
ClientPagerMessageHandle makePagerMessage (const NameAddr &target, AppDialogSet *=nullptr)
 
void end (DialogSetId invSessionId)
 
void send (std::shared_ptr< SipMessage > request)
 
void sendCommand (std::shared_ptr< SipMessage > request)
 
bool hasEvents () const
 
bool process (Mutex *mutex=NULL)
 
bool process (int timeoutMs, Mutex *mutex=NULL)
 
bool process (RecursiveMutex &mutex)
 
bool process (int timeoutMs, RecursiveMutex &mutex)
 
AppDialogHandle findAppDialog (const DialogId &id)
 
AppDialogSetHandle findAppDialogSet (const DialogSetId &id)
 
InviteSessionHandle findInviteSession (const DialogId &id)
 
std::pair< InviteSessionHandle, int > findInviteSession (const CallId &replaces)
 
ClientPublicationHandler * getClientPublicationHandler (const Data &eventType)
 
ServerPublicationHandler * getServerPublicationHandler (const Data &eventType)
 
ClientSubscriptionHandler * getClientSubscriptionHandler (const Data &eventType)
 
ServerSubscriptionHandler * getServerSubscriptionHandler (const Data &eventType)
 
template<typename UnaryFunction >
UnaryFunction applyToServerSubscriptions (const Data &aor, const Data &eventType, UnaryFunction &applyFn)
 
void addIncomingFeature (std::shared_ptr< DumFeature > feat)
 
void addOutgoingFeature (std::shared_ptr< DumFeature > feat)
 
void setOutgoingMessageInterceptor (std::shared_ptr< DumFeature > feat) noexcept
 
TargetCommand::Target & dumIncomingTarget ()
 
TargetCommand::Target & dumOutgoingTarget ()
 
Message * getNext (int ms)
 
void internalProcess (std::unique_ptr< Message > msg)
 
bool messageAvailable (void)
 
void applyToAllClientSubscriptions (ClientSubscriptionFunctor *)
 
void applyToAllServerSubscriptions (ServerSubscriptionFunctor *)
 
void endAllServerSubscriptions (TerminateReason reason=Deactivated)
 
void endAllServerPublications ()
 
void registerForConnectionTermination (Postable *)
 Note: Implementations of Postable must delete the message passed via post.
 
void unRegisterForConnectionTermination (Postable *)
 
DialogEventStateManager * createDialogEventStateManager (DialogEventHandler *handler)
 
void setAdvertisedCapabilities (SipMessage &msg, const std::shared_ptr< UserProfile > &userProfile)
 
- Public Member Functions inherited from resip::HandleManager
 HandleManager ()
 
virtual ~HandleManager ()
 
bool isValidHandle (Handled::Id) const
 
Handled * getHandled (Handled::Id) const
 
virtual void shutdownWhenEmpty ()
 
HandleMap::size_type handleCount (void) const
 Returns the number of handles in use.
 
- Public Member Functions inherited from resip::TransactionUser
void post (Message *msg)
 Posts a Message to this TransactionUser's fifo.
 
bool isMyDomain (const Data &domain) const
 Returns true iff domain matches one of the domains that this TransactionUser is responsible for.
 
void addDomain (const Data &domain)
 Adds a domain to the set of domains that this TransactionUser is responsible for.
 
void removeDomain (const Data &domain)
 Removes a domain from the set of domains that this TransactionUser is responsible for.
 
void setDomainMatcher (std::shared_ptr< DomainMatcher > domainMatcher) noexcept
 Replaces the default DomainMatcher.
 
virtual EncodeStream & encode (EncodeStream &strm) const
 Encodes the name of this TransactionUser (as specified by name()), and the current depth of its fifo.
 
void setMessageFilterRuleList (MessageFilterRuleList &rules)
 Sets this TransactionUser's MessageFilterRuleList.
 
bool isRegisteredForTransactionTermination () const
 
bool isRegisteredForConnectionTermination () const
 
bool isRegisteredForKeepAlivePongs () const
 
CongestionManager::RejectionBehavior getRejectionBehavior () const
 
virtual void setCongestionManager (CongestionManager *manager)
 
const TimeLimitFifo< Message > * getFifo ()
 
virtual const uint16_t getExpectedWait () const
 
virtual bool responsesMandatory () const
 

Protected Types

typedef std::map< Data, DumFeatureChain * > FeatureChainMap
 
- Protected Types inherited from resip::HandleManager
typedef HashMap< Handled::Id, Handled * > HandleMap
 
- Protected Types inherited from resip::TransactionUser
enum  TransactionTermination { RegisterForTransactionTermination , DoNotRegisterForTransactionTermination }
 
enum  ConnectionTermination { RegisterForConnectionTermination , DoNotRegisterForConnectionTermination }
 
enum  KeepAlivePongs { RegisterForKeepAlivePongs , DoNotRegisterForKeepAlivePongs }
 

Protected Member Functions

virtual void onAllHandlesDestroyed ()
 
virtual const Data & name () const
 Return the name of this TransactionUser.
 
- Protected Member Functions inherited from resip::HandleManager
virtual void dumpHandles () const
 
Handled::Id create (Handled *handled)
 
void remove (Handled::Id id)
 
- Protected Member Functions inherited from resip::TransactionUser
 TransactionUser (TransactionTermination t=DoNotRegisterForTransactionTermination, ConnectionTermination c=DoNotRegisterForConnectionTermination, KeepAlivePongs k=DoNotRegisterForKeepAlivePongs)
 Constructor that specifies whether this TransactionUser needs to hear about the completion of transactions, and the closing of connections.
 
 TransactionUser (MessageFilterRuleList &rules, TransactionTermination t=DoNotRegisterForTransactionTermination, ConnectionTermination c=DoNotRegisterForConnectionTermination, KeepAlivePongs k=DoNotRegisterForKeepAlivePongs)
 Constructor that specifies the MessageFilterRuleList, whether this TransactionUser needs to hear about the completion of transactions, and the closing of connections.
 
virtual ~TransactionUser ()=0
 
virtual bool isForMe (const SipMessage &msg) const
 Returns true iff this TransactionUser should process msg.
 

Protected Attributes

DumFeatureChain::FeatureList mIncomingFeatureList
 
DumFeatureChain::FeatureList mOutgoingFeatureList
 
std::shared_ptr< DumFeature > mOutgoingMessageInterceptor
 
FeatureChainMap mIncomingFeatureChainMap
 
FeatureChainMap mOutgoingFeatureChainMap
 
- Protected Attributes inherited from resip::HandleManager
HandleMap mHandleMap
 
bool mShuttingDown
 
Handled::Id mLastId
 
- Protected Attributes inherited from resip::TransactionUser
TimeLimitFifo< Message > mFifo
 This TransactionUser's fifo.
 
CongestionManager * mCongestionManager
 

Friends

class DumThread
 
class Dialog
 
class DialogSet
 
class ClientInviteSession
 
class ClientOutOfDialogReq
 
class ClientPublication
 
class ClientRegistration
 
class ClientSubscription
 
class InviteSession
 
class ServerInviteSession
 
class ServerOutOfDialogReq
 
class ServerPublication
 
class ServerRegistration
 
class ServerSubscription
 
class BaseUsage
 
class ClientPagerMessage
 
class ServerPagerMessage
 
class KeepAliveAssociation
 
class NetworkAssociation
 
class MergedRequestRemovalCommand
 
class TargetCommand::Target
 

Detailed Description

Definition at line 78 of file DialogUsageManager.hxx.

Member Typedef Documentation

◆ FeatureChainMap

Definition at line 382 of file DialogUsageManager.hxx.

Member Enumeration Documentation

◆ EncryptionLevel

Enumerator
None 
Sign 
Encrypt 
SignAndEncrypt 

Definition at line 93 of file DialogUsageManager.hxx.

Constructor & Destructor Documentation

◆ DialogUsageManager()

DialogUsageManager::DialogUsageManager ( SipStack &  stack,
bool  createDefaultFeatures = false 
)

Definition at line 98 of file DialogUsageManager.cxx.

◆ ~DialogUsageManager()

DialogUsageManager::~DialogUsageManager ( )
virtual

Definition at line 153 of file DialogUsageManager.cxx.

Member Function Documentation

◆ addClientPublicationHandler()

void DialogUsageManager::addClientPublicationHandler ( const Data &  eventType,
ClientPublicationHandler *  handler 
)

If there is no such handler, calling makePublication will throw.

Definition at line 454 of file DialogUsageManager.cxx.

◆ addClientSubscriptionHandler()

void DialogUsageManager::addClientSubscriptionHandler ( const Data &  eventType,
ClientSubscriptionHandler *  handler 
)

If there is no such handler, calling makeSubscription will throw.

Definition at line 427 of file DialogUsageManager.cxx.

◆ addExternalMessageHandler()

void DialogUsageManager::addExternalMessageHandler ( ExternalMessageHandler *  handler)

Add/Remove External Message Handler do following op when processing thread in not running.

Definition at line 490 of file DialogUsageManager.cxx.

◆ addIncomingFeature()

void DialogUsageManager::addIncomingFeature ( std::shared_ptr< DumFeature >  feat)

Definition at line 2493 of file DialogUsageManager.cxx.

◆ addOutgoingFeature()

void DialogUsageManager::addOutgoingFeature ( std::shared_ptr< DumFeature >  feat)

Definition at line 2499 of file DialogUsageManager.cxx.

◆ addOutOfDialogHandler()

void DialogUsageManager::addOutOfDialogHandler ( MethodTypes  type,
OutOfDialogHandler *  handler 
)

Definition at line 470 of file DialogUsageManager.cxx.

◆ addServerPublicationHandler()

void DialogUsageManager::addServerPublicationHandler ( const Data &  eventType,
ServerPublicationHandler *  handler 
)

Definition at line 462 of file DialogUsageManager.cxx.

◆ addServerSubscriptionHandler()

void DialogUsageManager::addServerSubscriptionHandler ( const Data &  eventType,
ServerSubscriptionHandler *  handler 
)

Definition at line 435 of file DialogUsageManager.cxx.

◆ addTransport()

void DialogUsageManager::addTransport ( TransportType  protocol,
int  port = 0,
IpVersion  version = V4,
const Data &  ipInterface = Data::Empty,
const Data &  sipDomainname = Data::Empty,
const Data &  privateKeyPassPhrase = Data::Empty,
SecurityTypes::SSLType  sslType = SecurityTypes::DynamicTLS,
unsigned  transportFlags = 0 
)

Definition at line 211 of file DialogUsageManager.cxx.

◆ applyToAllClientSubscriptions()

void DialogUsageManager::applyToAllClientSubscriptions ( ClientSubscriptionFunctor *  functor)

Definition at line 2529 of file DialogUsageManager.cxx.

◆ applyToAllServerSubscriptions()

void DialogUsageManager::applyToAllServerSubscriptions ( ServerSubscriptionFunctor *  functor)

Definition at line 2512 of file DialogUsageManager.cxx.

◆ applyToServerSubscriptions()

template<typename UnaryFunction >
UnaryFunction resip::DialogUsageManager::applyToServerSubscriptions ( const Data &  aor,
const Data &  eventType,
UnaryFunction &  applyFn 
)
inline

Definition at line 318 of file DialogUsageManager.hxx.

◆ clearExternalMessageHandler()

void DialogUsageManager::clearExternalMessageHandler ( )

Definition at line 510 of file DialogUsageManager.cxx.

◆ createDialogEventStateManager()

DialogEventStateManager * DialogUsageManager::createDialogEventStateManager ( DialogEventHandler *  handler)

Definition at line 2615 of file DialogUsageManager.cxx.

◆ dumIncomingTarget()

TargetCommand::Target & DialogUsageManager::dumIncomingTarget ( )

Definition at line 2603 of file DialogUsageManager.cxx.

◆ dumOutgoingTarget()

TargetCommand::Target & DialogUsageManager::dumOutgoingTarget ( )

Definition at line 2609 of file DialogUsageManager.cxx.

◆ end()

void DialogUsageManager::end ( DialogSetId  invSessionId)

Definition at line 1186 of file DialogUsageManager.cxx.

◆ endAllServerPublications()

void DialogUsageManager::endAllServerPublications ( )

Definition at line 2559 of file DialogUsageManager.cxx.

◆ endAllServerSubscriptions()

void DialogUsageManager::endAllServerSubscriptions ( TerminateReason  reason = Deactivated)

Definition at line 2546 of file DialogUsageManager.cxx.

◆ findAppDialog()

AppDialogHandle DialogUsageManager::findAppDialog ( const DialogId &  id)

Definition at line 1308 of file DialogUsageManager.cxx.

◆ findAppDialogSet()

AppDialogSetHandle DialogUsageManager::findAppDialogSet ( const DialogSetId &  id)

Definition at line 1321 of file DialogUsageManager.cxx.

◆ findInviteSession() [1/2]

pair< InviteSessionHandle, int > DialogUsageManager::findInviteSession ( const CallId &  replaces)

Definition at line 1267 of file DialogUsageManager.cxx.

◆ findInviteSession() [2/2]

InviteSessionHandle DialogUsageManager::findInviteSession ( const DialogId &  id)

Definition at line 1255 of file DialogUsageManager.cxx.

◆ forceShutdown()

void DialogUsageManager::forceShutdown ( DumShutdownHandler *  h)

Definition at line 291 of file DialogUsageManager.cxx.

◆ getClientPublicationHandler()

ClientPublicationHandler * DialogUsageManager::getClientPublicationHandler ( const Data &  eventType)

Definition at line 2451 of file DialogUsageManager.cxx.

◆ getClientSubscriptionHandler()

ClientSubscriptionHandler * DialogUsageManager::getClientSubscriptionHandler ( const Data &  eventType)

Definition at line 2423 of file DialogUsageManager.cxx.

◆ getHostAddress()

Data DialogUsageManager::getHostAddress ( )

Definition at line 244 of file DialogUsageManager.cxx.

◆ getMasterProfile()

std::shared_ptr< MasterProfile > & DialogUsageManager::getMasterProfile ( )

Definition at line 308 of file DialogUsageManager.cxx.

◆ getMasterUserProfile()

std::shared_ptr< UserProfile > & DialogUsageManager::getMasterUserProfile ( )

Definition at line 315 of file DialogUsageManager.cxx.

◆ getNext()

Message * resip::DialogUsageManager::getNext ( int  ms)
inline

Definition at line 349 of file DialogUsageManager.hxx.

◆ getPublicationPersistenceManager()

PublicationPersistenceManager * resip::DialogUsageManager::getPublicationPersistenceManager ( )
inline

Definition at line 194 of file DialogUsageManager.hxx.

◆ getRedirectHandler()

RedirectHandler * DialogUsageManager::getRedirectHandler ( ) const
noexcept

Definition at line 344 of file DialogUsageManager.cxx.

◆ getRegistrationPersistenceManager()

RegistrationPersistenceManager * resip::DialogUsageManager::getRegistrationPersistenceManager ( )
inline

Definition at line 192 of file DialogUsageManager.hxx.

◆ getSecurity()

Security * DialogUsageManager::getSecurity ( )

Definition at line 238 of file DialogUsageManager.cxx.

◆ getServerPublicationHandler()

ServerPublicationHandler * DialogUsageManager::getServerPublicationHandler ( const Data &  eventType)

Definition at line 2465 of file DialogUsageManager.cxx.

◆ getServerSubscriptionHandler()

ServerSubscriptionHandler * DialogUsageManager::getServerSubscriptionHandler ( const Data &  eventType)

Definition at line 2437 of file DialogUsageManager.cxx.

◆ getSipStack() [1/2]

SipStack & DialogUsageManager::getSipStack ( )

Definition at line 226 of file DialogUsageManager.cxx.

◆ getSipStack() [2/2]

const SipStack & DialogUsageManager::getSipStack ( ) const

Definition at line 232 of file DialogUsageManager.cxx.

◆ hasEvents()

bool DialogUsageManager::hasEvents ( ) const

Definition at line 1701 of file DialogUsageManager.cxx.

◆ internalProcess()

void DialogUsageManager::internalProcess ( std::unique_ptr< Message >  msg)

Definition at line 1335 of file DialogUsageManager.cxx.

◆ makeInviteSession() [1/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
const Contents *  initialOffer,
AppDialogSet *  ads = nullptr 
)

Definition at line 573 of file DialogUsageManager.cxx.

◆ makeInviteSession() [2/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
const Contents *  initialOffer,
EncryptionLevel  level,
const Contents *  alternative = nullptr,
AppDialogSet *  ads = nullptr 
)

Definition at line 592 of file DialogUsageManager.cxx.

◆ makeInviteSession() [3/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
const DialogSetId &  dialogSetId,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
EncryptionLevel  level,
const Contents *  alternative = nullptr,
AppDialogSet *  ads = nullptr 
)

Definition at line 602 of file DialogUsageManager.cxx.

◆ makeInviteSession() [4/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
AppDialogSet *  ads = nullptr 
)

Definition at line 567 of file DialogUsageManager.cxx.

◆ makeInviteSession() [5/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
EncryptionLevel  level,
const Contents *  alternative = nullptr,
AppDialogSet *  ads = nullptr 
)

Definition at line 579 of file DialogUsageManager.cxx.

◆ makeInviteSession() [6/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
InviteSessionHandle  sessionToReplace,
const Contents *  initialOffer,
EncryptionLevel  level = None,
const Contents *  alternative = nullptr,
AppDialogSet *  ads = nullptr 
)

Definition at line 666 of file DialogUsageManager.cxx.

◆ makeInviteSession() [7/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
InviteSessionHandle  sessionToReplace,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
AppDialogSet *  ads = nullptr 
)

Definition at line 620 of file DialogUsageManager.cxx.

◆ makeInviteSession() [8/8]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSession ( const NameAddr &  target,
InviteSessionHandle  sessionToReplace,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
EncryptionLevel  level = None,
const Contents *  alternative = nullptr,
AppDialogSet *  ads = nullptr 
)

Definition at line 642 of file DialogUsageManager.cxx.

◆ makeInviteSessionFromRefer() [1/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSessionFromRefer ( const SipMessage &  refer,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents *  initialOffer,
AppDialogSet *  appDs = nullptr 
)

Definition at line 698 of file DialogUsageManager.cxx.

◆ makeInviteSessionFromRefer() [2/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSessionFromRefer ( const SipMessage &  refer,
const std::shared_ptr< UserProfile > &  userProfile,
ServerSubscriptionHandle  serverSub,
const Contents *  initialOffer,
EncryptionLevel  level = None,
const Contents *  alternative = nullptr,
AppDialogSet *  appDs = nullptr 
)

Definition at line 719 of file DialogUsageManager.cxx.

◆ makeInviteSessionFromRefer() [3/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSessionFromRefer ( const SipMessage &  refer,
ServerSubscriptionHandle  serverSub,
const Contents *  initialOffer,
AppDialogSet *  appDs = nullptr 
)

Definition at line 689 of file DialogUsageManager.cxx.

◆ makeInviteSessionFromRefer() [4/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeInviteSessionFromRefer ( const SipMessage &  refer,
ServerSubscriptionHandle  serverSub,
const Contents *  initialOffer,
EncryptionLevel  level = None,
const Contents *  alternative = nullptr,
AppDialogSet *  appDs = nullptr 
)

Definition at line 708 of file DialogUsageManager.cxx.

◆ makeOutOfDialogRequest() [1/2]

std::shared_ptr< SipMessage > DialogUsageManager::makeOutOfDialogRequest ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
MethodTypes  meth,
AppDialogSet *  appDs = nullptr 
)

Definition at line 870 of file DialogUsageManager.cxx.

◆ makeOutOfDialogRequest() [2/2]

std::shared_ptr< SipMessage > DialogUsageManager::makeOutOfDialogRequest ( const NameAddr &  target,
MethodTypes  meth,
AppDialogSet *  appDs = nullptr 
)

Definition at line 876 of file DialogUsageManager.cxx.

◆ makePagerMessage() [1/2]

ClientPagerMessageHandle DialogUsageManager::makePagerMessage ( const NameAddr &  target,
AppDialogSet *  appDs = nullptr 
)

Definition at line 895 of file DialogUsageManager.cxx.

◆ makePagerMessage() [2/2]

ClientPagerMessageHandle DialogUsageManager::makePagerMessage ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
AppDialogSet *  appDs = nullptr 
)

Definition at line 882 of file DialogUsageManager.cxx.

◆ makePublication() [1/2]

std::shared_ptr< SipMessage > DialogUsageManager::makePublication ( const NameAddr &  target,
const Contents &  body,
const Data &  eventType,
uint32_t  expiresSeconds,
AppDialogSet *  appDs = nullptr 
)

Definition at line 860 of file DialogUsageManager.cxx.

◆ makePublication() [2/2]

std::shared_ptr< SipMessage > DialogUsageManager::makePublication ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Contents &  body,
const Data &  eventType,
uint32_t  expiresSeconds,
AppDialogSet *  appDs = nullptr 
)

Definition at line 849 of file DialogUsageManager.cxx.

◆ makeRefer() [1/2]

std::shared_ptr< SipMessage > DialogUsageManager::makeRefer ( const NameAddr &  target,
const H_ReferTo::Type &  referTo,
AppDialogSet *  appDs = nullptr 
)

Definition at line 777 of file DialogUsageManager.cxx.

◆ makeRefer() [2/2]

std::shared_ptr< SipMessage > DialogUsageManager::makeRefer ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const H_ReferTo::Type &  referTo,
AppDialogSet *  appDs = nullptr 
)

Definition at line 771 of file DialogUsageManager.cxx.

◆ makeRegistration() [1/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeRegistration ( const NameAddr &  target,
AppDialogSet *  appDs = nullptr 
)

Definition at line 837 of file DialogUsageManager.cxx.

◆ makeRegistration() [2/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeRegistration ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
AppDialogSet *  appDs = nullptr 
)

Definition at line 824 of file DialogUsageManager.cxx.

◆ makeRegistration() [3/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeRegistration ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
uint32_t  registrationTime,
AppDialogSet *  appDs = nullptr 
)

Definition at line 831 of file DialogUsageManager.cxx.

◆ makeRegistration() [4/4]

std::shared_ptr< SipMessage > DialogUsageManager::makeRegistration ( const NameAddr &  target,
uint32_t  registrationTime,
AppDialogSet *  appDs = nullptr 
)

Definition at line 843 of file DialogUsageManager.cxx.

◆ makeSubscription() [1/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const Data &  eventType,
AppDialogSet *  appDs = nullptr 
)

Definition at line 804 of file DialogUsageManager.cxx.

◆ makeSubscription() [2/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const Data &  eventType,
uint32_t  subscriptionTime,
AppDialogSet *  appDs = nullptr 
)

Definition at line 810 of file DialogUsageManager.cxx.

◆ makeSubscription() [3/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const Data &  eventType,
uint32_t  subscriptionTime,
int  refreshInterval,
AppDialogSet *  appDs = nullptr 
)

Definition at line 817 of file DialogUsageManager.cxx.

◆ makeSubscription() [4/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Data &  eventType,
AppDialogSet *  appDs = nullptr 
)

Definition at line 783 of file DialogUsageManager.cxx.

◆ makeSubscription() [5/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Data &  eventType,
uint32_t  subscriptionTime,
AppDialogSet *  appDs = nullptr 
)

Definition at line 790 of file DialogUsageManager.cxx.

◆ makeSubscription() [6/6]

std::shared_ptr< SipMessage > DialogUsageManager::makeSubscription ( const NameAddr &  target,
const std::shared_ptr< UserProfile > &  userProfile,
const Data &  eventType,
uint32_t  subscriptionTime,
int  refreshInterval,
AppDialogSet *  appDs = nullptr 
)

Definition at line 797 of file DialogUsageManager.cxx.

◆ messageAvailable()

bool resip::DialogUsageManager::messageAvailable ( void  )
inline

Definition at line 351 of file DialogUsageManager.hxx.

◆ name()

const Data & DialogUsageManager::name ( ) const
protectedvirtual

Return the name of this TransactionUser.

Used in encode().

Returns
The name of this TransactionUser, as a Data.

Implements resip::TransactionUser.

Definition at line 204 of file DialogUsageManager.cxx.

◆ onAllHandlesDestroyed()

void DialogUsageManager::onAllHandlesDestroyed ( )
protectedvirtual

Implements resip::HandleManager.

Definition at line 250 of file DialogUsageManager.cxx.

◆ process() [1/4]

bool DialogUsageManager::process ( int  timeoutMs,
resip::Mutex *  mutex = NULL 
)

Definition at line 1732 of file DialogUsageManager.cxx.

◆ process() [2/4]

bool DialogUsageManager::process ( int  timeoutMs,
resip::RecursiveMutex &  mutex 
)

Definition at line 1791 of file DialogUsageManager.cxx.

◆ process() [3/4]

bool DialogUsageManager::process ( resip::Mutex *  mutex = NULL)

Definition at line 1708 of file DialogUsageManager.cxx.

◆ process() [4/4]

bool DialogUsageManager::process ( resip::RecursiveMutex &  mutex)

Definition at line 1767 of file DialogUsageManager.cxx.

◆ registerForConnectionTermination()

void DialogUsageManager::registerForConnectionTermination ( Postable *  listener)

Note: Implementations of Postable must delete the message passed via post.

Definition at line 2572 of file DialogUsageManager.cxx.

◆ removeExternalMessageHandler()

void DialogUsageManager::removeExternalMessageHandler ( ExternalMessageHandler *  handler)

Definition at line 500 of file DialogUsageManager.cxx.

◆ send()

void DialogUsageManager::send ( std::shared_ptr< SipMessage >  request)

Definition at line 901 of file DialogUsageManager.cxx.

◆ sendCommand()

void DialogUsageManager::sendCommand ( std::shared_ptr< SipMessage >  request)

Definition at line 1022 of file DialogUsageManager.cxx.

◆ setAdvertisedCapabilities()

void DialogUsageManager::setAdvertisedCapabilities ( SipMessage &  msg,
const std::shared_ptr< UserProfile > &  userProfile 
)

Definition at line 2631 of file DialogUsageManager.cxx.

◆ setAppDialogSetFactory()

void DialogUsageManager::setAppDialogSetFactory ( std::unique_ptr< AppDialogSetFactory >  factory)
noexcept

Definition at line 302 of file DialogUsageManager.cxx.

◆ setClientAuthManager()

void DialogUsageManager::setClientAuthManager ( std::unique_ptr< ClientAuthManager >  client)
noexcept

If there is no ClientAuthManager, when the client receives a 401/407, pass it up through the normal BaseUsageHandler.

Definition at line 350 of file DialogUsageManager.cxx.

◆ setClientPagerMessageHandler()

void DialogUsageManager::setClientPagerMessageHandler ( ClientPagerMessageHandler *  handler)
noexcept

Definition at line 478 of file DialogUsageManager.cxx.

◆ setClientRegistrationHandler()

void DialogUsageManager::setClientRegistrationHandler ( ClientRegistrationHandler *  handler)

If there is no such handler, calling makeRegistration will throw.

Definition at line 362 of file DialogUsageManager.cxx.

◆ setDialogSetHandler()

void DialogUsageManager::setDialogSetHandler ( DialogSetHandler *  handler)
noexcept

Definition at line 376 of file DialogUsageManager.cxx.

◆ setInviteSessionHandler()

void DialogUsageManager::setInviteSessionHandler ( InviteSessionHandler *  handler)

If there is no such handler, calling makeInviteSession will throw and receiving an INVITE as a UAS will respond with 405 Method Not Allowed.

Definition at line 382 of file DialogUsageManager.cxx.

◆ setKeepAliveManager()

void DialogUsageManager::setKeepAliveManager ( std::unique_ptr< KeepAliveManager >  keepAlive)
noexcept

Definition at line 328 of file DialogUsageManager.cxx.

◆ setMasterProfile()

void DialogUsageManager::setMasterProfile ( const std::shared_ptr< MasterProfile > &  masterProfile)

Definition at line 321 of file DialogUsageManager.cxx.

◆ setOutgoingMessageInterceptor()

void DialogUsageManager::setOutgoingMessageInterceptor ( std::shared_ptr< DumFeature >  feat)
noexcept

Definition at line 2506 of file DialogUsageManager.cxx.

◆ setPublicationPersistenceManager()

void DialogUsageManager::setPublicationPersistenceManager ( PublicationPersistenceManager *  manager)

Definition at line 403 of file DialogUsageManager.cxx.

◆ setRedirectHandler()

void DialogUsageManager::setRedirectHandler ( RedirectHandler *  handler)
noexcept

Definition at line 339 of file DialogUsageManager.cxx.

◆ setRedirectManager()

void DialogUsageManager::setRedirectManager ( std::unique_ptr< RedirectManager >  redirect)
noexcept

Definition at line 334 of file DialogUsageManager.cxx.

◆ setRegistrationPersistenceManager()

void DialogUsageManager::setRegistrationPersistenceManager ( RegistrationPersistenceManager *  manager)

Sets a manager to handle storage of registration or publication state.

Definition at line 396 of file DialogUsageManager.cxx.

◆ setRequestValidationHandler()

void DialogUsageManager::setRequestValidationHandler ( RequestValidationHandler *  handler)

Definition at line 389 of file DialogUsageManager.cxx.

◆ setServerAuthManager()

void DialogUsageManager::setServerAuthManager ( std::shared_ptr< ServerAuthManager >  server)

If there is no ServerAuthManager, the server does not authenticate requests.

Definition at line 356 of file DialogUsageManager.cxx.

◆ setServerPagerMessageHandler()

void DialogUsageManager::setServerPagerMessageHandler ( ServerPagerMessageHandler *  handler)
noexcept

Definition at line 484 of file DialogUsageManager.cxx.

◆ setServerRegistrationHandler()

void DialogUsageManager::setServerRegistrationHandler ( ServerRegistrationHandler *  handler)

If no such handler, UAS will respond to REGISTER with 405 Method Not Allowed.

Definition at line 369 of file DialogUsageManager.cxx.

◆ shutdown()

void DialogUsageManager::shutdown ( DumShutdownHandler *  h)

Definition at line 270 of file DialogUsageManager.cxx.

◆ unRegisterForConnectionTermination()

void DialogUsageManager::unRegisterForConnectionTermination ( Postable *  listener)

Definition at line 2578 of file DialogUsageManager.cxx.

Friends And Related Symbol Documentation

◆ BaseUsage

friend class BaseUsage
friend

Definition at line 401 of file DialogUsageManager.hxx.

◆ ClientInviteSession

friend class ClientInviteSession
friend

Definition at line 390 of file DialogUsageManager.hxx.

◆ ClientOutOfDialogReq

friend class ClientOutOfDialogReq
friend

Definition at line 391 of file DialogUsageManager.hxx.

◆ ClientPagerMessage

friend class ClientPagerMessage
friend

Definition at line 402 of file DialogUsageManager.hxx.

◆ ClientPublication

friend class ClientPublication
friend

Definition at line 392 of file DialogUsageManager.hxx.

◆ ClientRegistration

friend class ClientRegistration
friend

Definition at line 393 of file DialogUsageManager.hxx.

◆ ClientSubscription

friend class ClientSubscription
friend

Definition at line 394 of file DialogUsageManager.hxx.

◆ Dialog

friend class Dialog
friend

Definition at line 387 of file DialogUsageManager.hxx.

◆ DialogSet

friend class DialogSet
friend

Definition at line 388 of file DialogUsageManager.hxx.

◆ DumThread

friend class DumThread
friend

Definition at line 375 of file DialogUsageManager.hxx.

◆ InviteSession

friend class InviteSession
friend

Definition at line 395 of file DialogUsageManager.hxx.

◆ KeepAliveAssociation

friend class KeepAliveAssociation
friend

Definition at line 404 of file DialogUsageManager.hxx.

◆ MergedRequestRemovalCommand

friend class MergedRequestRemovalCommand
friend

Definition at line 407 of file DialogUsageManager.hxx.

◆ NetworkAssociation

friend class NetworkAssociation
friend

Definition at line 405 of file DialogUsageManager.hxx.

◆ ServerInviteSession

friend class ServerInviteSession
friend

Definition at line 396 of file DialogUsageManager.hxx.

◆ ServerOutOfDialogReq

friend class ServerOutOfDialogReq
friend

Definition at line 397 of file DialogUsageManager.hxx.

◆ ServerPagerMessage

friend class ServerPagerMessage
friend

Definition at line 403 of file DialogUsageManager.hxx.

◆ ServerPublication

friend class ServerPublication
friend

Definition at line 398 of file DialogUsageManager.hxx.

◆ ServerRegistration

friend class ServerRegistration
friend

Definition at line 399 of file DialogUsageManager.hxx.

◆ ServerSubscription

friend class ServerSubscription
friend

Definition at line 400 of file DialogUsageManager.hxx.

◆ TargetCommand::Target

friend class TargetCommand::Target
friend

Definition at line 408 of file DialogUsageManager.hxx.

Member Data Documentation

◆ mIncomingFeatureChainMap

FeatureChainMap resip::DialogUsageManager::mIncomingFeatureChainMap
protected

Definition at line 383 of file DialogUsageManager.hxx.

◆ mIncomingFeatureList

DumFeatureChain::FeatureList resip::DialogUsageManager::mIncomingFeatureList
protected

Definition at line 377 of file DialogUsageManager.hxx.

◆ mOutgoingFeatureChainMap

FeatureChainMap resip::DialogUsageManager::mOutgoingFeatureChainMap
protected

Definition at line 384 of file DialogUsageManager.hxx.

◆ mOutgoingFeatureList

DumFeatureChain::FeatureList resip::DialogUsageManager::mOutgoingFeatureList
protected

Definition at line 378 of file DialogUsageManager.hxx.

◆ mOutgoingMessageInterceptor

std::shared_ptr<DumFeature> resip::DialogUsageManager::mOutgoingMessageInterceptor
protected

Definition at line 380 of file DialogUsageManager.hxx.


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