sipxtacklib  Version 3.3
Public Member Functions | List of all members
SipDialogMgr Class Reference

Class for refreshing SIP subscriptions and registrations. More...

#include <SipDialogMgr.h>

Public Member Functions

 SipDialogMgr ()
 Default Dialog constructor. More...
 
virtual ~SipDialogMgr ()
 Destructor. More...
 
UtlBoolean createDialog (const SipMessage &message, UtlBoolean messageIsFromLocalSide, const char *dialogHandle=NULL)
 Create a new dialog for the given SIP message. More...
 
UtlBoolean updateDialog (const SipMessage &message, const char *dialogHandle=NULL)
 Update the dialog information for the given message. More...
 
UtlBoolean deleteDialog (const char *dialogHandle)
 Delete the dialog for the given dialog handle. More...
 
UtlBoolean setNextLocalTransactionInfo (SipMessage &request, const char *method=NULL, const char *dialogHandle=NULL)
 Get the dialog related fields and set them in the given request. More...
 
UtlBoolean getEarlyDialogHandleFor (const char *establishedDialogHandle, UtlString &earlyDialogHandle)
 Get the early dialog handle for the given established dialog handle. More...
 
UtlBoolean getEstablishedDialogHandleFor (const char *earlyDialogHandle, UtlString &establishedDialogHandle)
 Get the established dialog for the given early dialog. More...
 
int countDialogs () const
 Get a count of the SipDialogs. More...
 
int toString (UtlString &dumpString)
 Get dump string of dialogs. More...
 
UtlBoolean earlyDialogExists (const char *earlyDialogHandle)
 Is there an early dialog that matches this early dialogHandle. More...
 
UtlBoolean earlyDialogExistsFor (const char *establishedDialogHandle)
 Is there an early dialog that matches this established dialogHandle. More...
 
UtlBoolean dialogExists (const char *dialogHandle)
 Is there a dialog that matches this dialogHandle. More...
 
UtlBoolean isLastLocalTransaction (const SipMessage &message, const char *dialogHandle=NULL)
 Checks to see if the given message matches the last local transaction. More...
 
UtlBoolean isNewRemoteTransaction (const SipMessage &sipMessage)
 Check if the message is part of a new remote transaction. More...
 

Detailed Description

Class for refreshing SIP subscriptions and registrations.

This is currently verified for SUBSCRIPTIONS ONLY. This class is intended to replace the SipRefreshMgr.

Constructor & Destructor Documentation

Default Dialog constructor.

~SipDialogMgr ( )
virtual

Destructor.

Member Function Documentation

UtlBoolean createDialog ( const SipMessage message,
UtlBoolean  messageIsFromLocalSide,
const char *  dialogHandle = NULL 
)

Create a new dialog for the given SIP message.

UtlBoolean updateDialog ( const SipMessage message,
const char *  dialogHandle = NULL 
)

Update the dialog information for the given message.

If a dialog matches this message update the dialog information otherwise if this message is part of an established dialog and matches an early dialog change the dialog to established and update the dialog information.

UtlBoolean deleteDialog ( const char *  dialogHandle)

Delete the dialog for the given dialog handle.

UtlBoolean setNextLocalTransactionInfo ( SipMessage request,
const char *  method = NULL,
const char *  dialogHandle = NULL 
)

Get the dialog related fields and set them in the given request.

Increments the dialogs local Cseq as well.

UtlBoolean getEarlyDialogHandleFor ( const char *  establishedDialogHandle,
UtlString &  earlyDialogHandle 
)

Get the early dialog handle for the given established dialog handle.

This works even if the SipDialog is an early dialog that has not yet been updated to be an established dialog.

UtlBoolean getEstablishedDialogHandleFor ( const char *  earlyDialogHandle,
UtlString &  establishedDialogHandle 
)

Get the established dialog for the given early dialog.

int countDialogs ( ) const

Get a count of the SipDialogs.

int toString ( UtlString &  dumpString)

Get dump string of dialogs.

UtlBoolean earlyDialogExists ( const char *  earlyDialogHandle)

Is there an early dialog that matches this early dialogHandle.

If earlyDialogHandle is not an early dialog, no matches are considered to exist.

UtlBoolean earlyDialogExistsFor ( const char *  establishedDialogHandle)

Is there an early dialog that matches this established dialogHandle.

If establishedDialogHandle is not an established dialog, no matches are considered to exist.

UtlBoolean dialogExists ( const char *  dialogHandle)

Is there a dialog that matches this dialogHandle.

If the dialog handle is an early dialog, it will only match early dialogs. If the dialog handle is an established dialog it will only match established dialogs.

UtlBoolean isLastLocalTransaction ( const SipMessage message,
const char *  dialogHandle = NULL 
)

Checks to see if the given message matches the last local transaction.

UtlBoolean isNewRemoteTransaction ( const SipMessage sipMessage)

Check if the message is part of a new remote transaction.

The cseq of the message is greater than the last known cseq of the remote side of the dialog


sipXtackLib home page