11 #ifndef _SIPDIALOGMONITOR_H_ 12 #define _SIPDIALOGMONITOR_H_ 18 #include <os/OsBSem.h> 29 #include <utl/UtlSList.h> 30 #include <utl/UtlHashMap.h> 66 UtlString& domainName,
111 const char* earlyDialogHandle,
112 const char* dialogHandle);
122 const char* earlyDialogHandle,
123 const char* dialogHandle,
124 void* applicationData,
126 const char* responseText,
132 const char* dialogHandle,
133 void* applicationData,
138 const char* earlyDialogHandle,
139 const char* dialogHandle);
147 const char* earlyDialogHandle,
148 const char* dialogHandle);
161 UtlString mDomainName;
182 UtlHashMap mMonitoredLists;
184 UtlHashMap mDialogEventList;
185 UtlHashMap mDialogHandleList;
186 UtlHashMap mStateChangeNotifiers;
192 UtlHashMap mDialogState;
201 #endif // _SIPDIALOGMONITOR_H_ StateChangeNotifier::Status mergeEventInformation(SipDialogEvent *dialogEvent, const char *earlyDialogHandle, const char *dialogHandle)
Merge information from a dialogEvent into mDialogState.
Definition: SipDialogMonitor.cpp:513
friend class SipDialogMonitorTest
Definition: SipDialogMonitor.h:106
Transaction and Transport manager for SIP stack.
Definition: SipUserAgent.h:157
void handleNotifyMessage(const SipMessage *notifyMessage, const char *earlyDialogHandle, const char *dialogHandle)
Non-static callback to handle incoming NOTIFYs.
Definition: SipDialogMonitor.cpp:430
void publishContent(UtlString &contact, SipDialogEvent *dialogEvent)
Publish the dialog event package to the resource list.
Definition: SipDialogMonitor.cpp:343
void addDialogEvent(UtlString &contact, SipDialogEvent *dialogEvent, const char *earlyDialogHandle, const char *dialogHandle)
Add 'dialogEvent' as the last dialog event for AOR 'contact'.
Definition: SipDialogMonitor.cpp:284
void destroyDialogState(UtlString *earlyDialogHandle)
Delete the dialog event state record for the SUBSCRIBE earlyDialogHandle.
Definition: SipDialogMonitor.cpp:645
void addStateChangeNotifier(const char *listUri, StateChangeNotifier *notifier)
Register a StateChangeNotifier.
Definition: SipDialogMonitor.cpp:465
SubscriptionState
Definition: SipSubscribeClient.h:69
Container for MIME type application/dialog-info+xml.
Definition: SipDialogEvent.h:248
Specialization of HttpMessage to contain and manipulate SIP messages.
Definition: SipMessage.h:343
A StateChangeNotifier is used in the dialog monitor when the dialog state is changed from one state t...
Definition: StateChangeNotifier.h:40
Class for containing SIP dialog state information.
Definition: SipSubscribeClient.h:64
static void subscriptionStateCallback(SipSubscribeClient::SubscriptionState newState, const char *earlyDialogHandle, const char *dialogHandle, void *applicationData, int responseCode, const char *responseText, long expiration, const SipMessage *subscribeResponse)
Callback to handle notification of changes in the states of subscriptions.
Definition: SipDialogMonitor.cpp:401
Top level class for accepting and processing SUBSCRIBE requests.
Definition: SipSubscribeServer.h:102
Class for refreshing SIP subscriptions and registrations.
Definition: SipDialogMgr.h:42
Class for refreshing SIP subscriptions and registrations.
Definition: SipRefreshManager.h:45
static void notifyEventCallback(const char *earlyDialogHandle, const char *dialogHandle, void *applicationData, const SipMessage *notifyRequest)
Callback to handle incoming NOTIFYs.
Definition: SipDialogMonitor.cpp:416
virtual ~SipDialogMonitor()
Definition: SipDialogMonitor.cpp:88
void notifyStateChange(UtlString &contact, StateChangeNotifier::Status)
Send the state change to the notifier.
Definition: SipDialogMonitor.cpp:484
SipDialogMonitor(SipUserAgent *userAgent, UtlString &domainName, int hostPort, int refreshTimeout, bool toBePublished)
option to publish for other subscriptions
Definition: SipDialogMonitor.cpp:43
A SipDialogMonitor object monitors the on/off hook status of all the SIP user agents for a set of URI...
Definition: SipDialogMonitor.h:58
Class for managing body content to be accepted via PUBLISH or provided in NOTIFY requests.
Definition: SipPublishContentMgr.h:93
Class for maintaining SUBSCRIBE dialog information in subscription server.
Definition: SipSubscriptionMgr.h:48
void removeStateChangeNotifier(const char *listUri)
Unregister a StateChangeNotifier.
Definition: SipDialogMonitor.cpp:474
URL parser and constructor.
Definition: Url.h:90
Status
Definition: StateChangeNotifier.h:45
void createDialogState(UtlString *earlyDialogHandle)
Create the dialog event state record for the SUBSCRIBE earlyDialogHandle.
Definition: SipDialogMonitor.cpp:639
bool removeExtension(UtlString &groupName, Url &contactUrl)
Remove a URI from a group to be monitored.
Definition: SipDialogMonitor.cpp:211
Class for specializing the handling of SIP Events in SipSubscribeServer.
Definition: SipSubscribeServerEventHandler.h:46
bool addExtension(UtlString &groupName, Url &contactUrl)
URIs are added and deleted from groups, which are identified by names.
Definition: SipDialogMonitor.cpp:119