A SipPresenceMonitor is an object that is used for keeping track of the SIP user agents' presence status. More...
#include <SipPresenceMonitor.h>


Public Member Functions | |
| SipPresenceMonitor (SipUserAgent *userAgent, UtlString &domainName, int hostPort, UtlString &configFile, bool toBePublished) | |
| option to publish for other subscriptions More... | |
| virtual | ~SipPresenceMonitor () |
| bool | addExtension (UtlString &groupName, Url &contactUrl) |
| Add an extension to a group to be monitored. More... | |
| bool | removeExtension (UtlString &groupName, Url &contactUrl) |
| Remove an extension from a group to be monitored. More... | |
| void | addStateChangeNotifier (const char *fileUrl, StateChangeNotifier *notifier) |
| Registered a StateChangeNotifier. More... | |
| void | removeStateChangeNotifier (const char *fileUrl) |
| Unregistered a StateChangeNotifier. More... | |
| virtual bool | setStatus (const Url &aor, const Status value) |
| Set the status value. More... | |
Protected Member Functions | |
| bool | addPresenceEvent (UtlString &contact, SipPresenceEvent *presenceEvent) |
| Add the contact and presence event to the subscribe list. More... | |
| void | publishContent (UtlString &contact, SipPresenceEvent *presenceEvent) |
| Publish the presence event package to the resource list. More... | |
| void | notifyStateChange (UtlString &contact, SipPresenceEvent *presenceEvent) |
| Send the state change to the notifier. More... | |
Private Member Functions | |
| SipPresenceMonitor (const SipPresenceMonitor &rSipPresenceMonitor) | |
| Disabled copy constructor. More... | |
| SipPresenceMonitor & | operator= (const SipPresenceMonitor &rhs) |
| Disabled assignment operator. More... | |
Private Attributes | |
| CallManager * | mpCallManager |
| SdpCodecFactory | mCodecFactory |
| PresenceDialInServer * | mpDialInServer |
| SipUserAgent * | mpUserAgent |
| UtlString | mDomainName |
| bool | mToBePublished |
| OsBSem | mLock |
| SipDialogMgr | mDialogMgr |
| SipSubscriptionMgr * | mpSubscriptionMgr |
| SipSubscribeServerEventHandler | mPolicyHolder |
| SipPublishContentMgr | mSipPublishContentMgr |
| SipSubscribeServer * | mpSubscribeServer |
| UtlHashMap | mMonitoredLists |
| UtlHashMap | mPresenceEventList |
| UtlHashMap | mStateChangeNotifiers |
A SipPresenceMonitor is an object that is used for keeping track of the SIP user agents' presence status.
All the presence information is stored in a NOTIFIER so that other clients can subscribe the information via SUBSCRIBE/NOTIFY. Furthermore, if a StateChangeNotifier is registered with SipPresenceMonitor, the state change will also be sent out via the StateChangeNotifier.
| SipPresenceMonitor | ( | SipUserAgent * | userAgent, |
| UtlString & | domainName, | ||
| int | hostPort, | ||
| UtlString & | configFile, | ||
| bool | toBePublished | ||
| ) |
option to publish for other subscriptions
| userAgent | Sip user agent for sending out SUBSCRIBEs and receiving NOTIFYs |
| domainName | sipX domain name |
| hostPort | Host port |
| configFile | Xml formated configuration |
|
virtual |
|
private |
Disabled copy constructor.
| bool addExtension | ( | UtlString & | groupName, |
| Url & | contactUrl | ||
| ) |
Add an extension to a group to be monitored.
|
protected |
Add the contact and presence event to the subscribe list.
| void addStateChangeNotifier | ( | const char * | fileUrl, |
| StateChangeNotifier * | notifier | ||
| ) |
Registered a StateChangeNotifier.
|
protected |
Send the state change to the notifier.
|
private |
Disabled assignment operator.
|
protected |
Publish the presence event package to the resource list.
| bool removeExtension | ( | UtlString & | groupName, |
| Url & | contactUrl | ||
| ) |
Remove an extension from a group to be monitored.
| void removeStateChangeNotifier | ( | const char * | fileUrl | ) |
Unregistered a StateChangeNotifier.
|
virtual |
Set the status value.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |