S60 3rd Edition API Reference: CSIPNotifyDialogAssoc Class Reference

CSIPNotifyDialogAssoc Class Reference

API published in: S60 3rd Ed

Link against: sipclient.lib

Capability Information

Required Capabilities

Location NetworkControl NetworkServices ReadDeviceData WriteDeviceData


#include <sipnotifydialogassoc.h>

Inherits CSIPDialogAssocBase.


Detailed Description

PublishedAll
Released
Class for managing SIP NOTIFY dialog associations. It provides services for creating, using and terminating SIP NOTIFY dialog associations. The user can have multiple NOTIFY dialog associations per same SIP dialog. Implementation handles SUBSCRIBE on the dialog level defined by Call-Id, local and remote tags; user is responsible for "Event" and "Subscription-State" header semantics.

Public Member Functions

IMPORT_C ~CSIPNotifyDialogAssoc ()
 Destructor.
IMPORT_C CSIPClientTransactionSendNotifyL (CSIPMessageElements *aElements=0)
 Creates NOTIFY and sends it to the remote target.
IMPORT_C const CSIPEventHeaderEvent () const
 Gets an event about which the notification is done.
IMPORT_C CSIPSubscriptionStateHeaderSubscriptionState ()
 Gets subscription state.
IMPORT_C const CSIPSubscriptionStateHeaderSubscriptionState () const
 Gets subscription state.
CSIPClientTransactionDoSendNotifyWithinDialogL (CSIPMessageElements *aElements)

Static Public Member Functions

static IMPORT_C CSIPNotifyDialogAssocNewL (CSIPServerTransaction &aTransaction, CSIPEventHeader *aEvent, CSIPSubscriptionStateHeader *aState)
 Two-phased constructor.
static IMPORT_C CSIPNotifyDialogAssocNewLC (CSIPServerTransaction &aTransaction, CSIPEventHeader *aEvent, CSIPSubscriptionStateHeader *aState)
 Two-phased constructor.

Constructor & Destructor Documentation

IMPORT_C CSIPNotifyDialogAssoc::~CSIPNotifyDialogAssoc  ) 
 

Destructor.


Member Function Documentation

CSIPClientTransaction* CSIPNotifyDialogAssoc::DoSendNotifyWithinDialogL CSIPMessageElements aElements  ) 
 
IMPORT_C const CSIPEventHeader& CSIPNotifyDialogAssoc::Event  )  const
 

Gets an event about which the notification is done.

Returns:
an event
static IMPORT_C CSIPNotifyDialogAssoc* CSIPNotifyDialogAssoc::NewL CSIPServerTransaction aTransaction,
CSIPEventHeader aEvent,
CSIPSubscriptionStateHeader aState
[static]
 

Two-phased constructor.

The response to the received SIP request will create a SIP NOTIFY dialog association that will be correlated with the SIP dialog in which SIP server transaction was received. If the server transaction was not received within a SIP dialog, a new SIP dialog is created. The server transaction must be either SUBSCRIBE or REFER transaction.

Precondition:
aTransaction.State()==ETrying || EProceeding

aEvent != 0 && aState != 0

Parameters:
aTransaction a SIP server transaction
aEvent an event to send a notification about; the ownership is transferred.
aState a subscription state; the ownership is transferred.
Returns:
New object; the ownership is transferred
Leave:
KErrArgument if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0.
Leave:
KErrSIPInvalidTransactionState if aTransaction is in a wrong state
static IMPORT_C CSIPNotifyDialogAssoc* CSIPNotifyDialogAssoc::NewLC CSIPServerTransaction aTransaction,
CSIPEventHeader aEvent,
CSIPSubscriptionStateHeader aState
[static]
 

Two-phased constructor.

The response to the received SIP request will create a SIP NOTIFY dialog association that will be correlated with the SIP dialog in which SIP server transaction was received. If the server transaction was not received within a SIP dialog, a new SIP dialog is created. The server transaction must be either SUBSCRIBE or REFER transaction.

Precondition:
aTransaction.State()==ETrying || EProceeding

aEvent != 0 && aState != 0

Parameters:
aTransaction a SIP server transaction
aEvent an event to send a notification about; the ownership is transferred.
aState a subscription state; the ownership is transferred.
Returns:
New object; the ownership is transferred
Leave:
KErrArgument if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0.
Leave:
KErrSIPInvalidTransactionState if aTransaction is in a wrong state
IMPORT_C CSIPClientTransaction* CSIPNotifyDialogAssoc::SendNotifyL CSIPMessageElements aElements = 0  ) 
 

Creates NOTIFY and sends it to the remote target.

If client provides optional SIP headers they must not contain Event and Subscription-State headers.

Precondition:
Dialog().Connection().State()==EActive

Dialog().State()==CSIPDialogTState::EConfirmed

Parameters:
aElements optional SIP message headers and body. Ownership is transferred.
Returns:
NOTIFY SIP UAC transaction
Leave:
KErrSIPInvalidDialogState if dialog's state is incorrect
Leave:
KErrSIPResourceNotAvailable if a required SIP Client API object has been deleted. NetworkServices
IMPORT_C const CSIPSubscriptionStateHeader& CSIPNotifyDialogAssoc::SubscriptionState  )  const
 

Gets subscription state.

Returns:
subscription state
IMPORT_C CSIPSubscriptionStateHeader& CSIPNotifyDialogAssoc::SubscriptionState  ) 
 

Gets subscription state.

Returns:
subscription state

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

Copyright © Nokia Corporation 2001-2007
Back to top