sipXcallLib home page


Public Member Functions | Private Member Functions | Private Attributes | List of all members
LinePresenceMonitor Class Reference

A LinePresenceMonitor is an object that is used in the ACD-like clients to receive the presence state change notifitcation from the dialog/presence monitor. More...

#include <LinePresenceMonitor.h>

Inheritance diagram for LinePresenceMonitor:
Inheritance graph
[legend]
Collaboration diagram for LinePresenceMonitor:
Collaboration graph
[legend]

Public Member Functions

 LinePresenceMonitor (int userAgentPort, UtlString &domainName, UtlString &groupName, bool local, Url &remoteServerUrl)
 Constructor. More...
 
virtual ~LinePresenceMonitor ()
 Destructor. More...
 
virtual bool setStatus (const Url &aor, const Status value)
 Set the state value. More...
 
OsStatus subscribe (LinePresenceBase *line)
 Subscribe a line in the list. More...
 
OsStatus unsubscribe (LinePresenceBase *line)
 Unsubscribe a line from the list. More...
 
OsStatus subscribe (UtlSList &list)
 Subscribe a list. More...
 
OsStatus unsubscribe (UtlSList &list)
 Unsubscribe a list. More...
 

Private Member Functions

 LinePresenceMonitor (const LinePresenceMonitor &rLinePresenceMonitor)
 Disabled copy constructor. More...
 
LinePresenceMonitoroperator= (const LinePresenceMonitor &rhs)
 Disabled assignment operator. More...
 

Private Attributes

SipUserAgent * mpUserAgent
 
UtlString mGroupName
 
bool mLocal
 
SipDialogMonitor * mpDialogMonitor
 
SipPresenceMonitormpPresenceMonitor
 
SipDialogMgr mDialogManager
 
SipRefreshManager * mpRefreshMgr
 
SipSubscribeClient * mpSipSubscribeClient
 
Url mRemoteServer
 
UtlHashMap mSubscribeList
 
OsBSem mLock
 semaphore used to ensure that there is only one instance of this class More...
 

Detailed Description

A LinePresenceMonitor is an object that is used in the ACD-like clients to receive the presence state change notifitcation from the dialog/presence monitor.

It has an option to use either local or remote dialog/presence monitor. If using the remote monitor, subscription is sent out via XML-RPC.

This class is derived from StateChangeNotifier class.

Constructor & Destructor Documentation

LinePresenceMonitor ( int  userAgentPort,
UtlString &  domainName,
UtlString &  groupName,
bool  local,
Url &  remoteServerUrl 
)

Constructor.

remote server url

Parameters
userAgentPortuser agent port
domainNamesipX domain name
groupNamename of the group to be monitored
localoption for using local or remote monitor
~LinePresenceMonitor ( )
virtual

Destructor.

LinePresenceMonitor ( const LinePresenceMonitor rLinePresenceMonitor)
private

Disabled copy constructor.

Member Function Documentation

LinePresenceMonitor & operator= ( const LinePresenceMonitor rhs)
private

Disabled assignment operator.

bool setStatus ( const Url &  aor,
const Status  value 
)
virtual

Set the state value.

OsStatus subscribe ( LinePresenceBase line)

Subscribe a line in the list.

OsStatus subscribe ( UtlSList &  list)

Subscribe a list.

OsStatus unsubscribe ( LinePresenceBase line)

Unsubscribe a line from the list.

OsStatus unsubscribe ( UtlSList &  list)

Unsubscribe a list.

Member Data Documentation

SipDialogMgr mDialogManager
private
UtlString mGroupName
private
bool mLocal
private
OsBSem mLock
private

semaphore used to ensure that there is only one instance of this class

SipDialogMonitor* mpDialogMonitor
private
SipPresenceMonitor* mpPresenceMonitor
private
SipRefreshManager* mpRefreshMgr
private
SipSubscribeClient* mpSipSubscribeClient
private
SipUserAgent* mpUserAgent
private
Url mRemoteServer
private
UtlHashMap mSubscribeList
private