CSIPNotifyDialogAssoc Class Reference
#include
<mw/sipnotifydialogassoc.h>
Link against: sipclient.lib
class CSIPNotifyDialogAssoc : public CSIPDialogAssocBase |
Public Member Functions |
---|
| ~CSIPNotifyDialogAssoc() |
CSIPClientTransaction * | DoSendNotifyWithinDialogL(CSIPMessageElements *) |
IMPORT_C const CSIPEventHeader & | Event() |
IMPORT_C CSIPNotifyDialogAssoc * | NewL(CSIPServerTransaction &, CSIPEventHeader *, CSIPSubscriptionStateHeader *) |
IMPORT_C CSIPNotifyDialogAssoc * | NewL(CSIPServerTransaction &, const MSIPRegistrationContext &, CSIPEventHeader *, CSIPSubscriptionStateHeader *) |
IMPORT_C CSIPNotifyDialogAssoc * | NewLC(CSIPServerTransaction &, CSIPEventHeader *, CSIPSubscriptionStateHeader *) |
IMPORT_C CSIPNotifyDialogAssoc * | NewLC(CSIPServerTransaction &, const MSIPRegistrationContext &, CSIPEventHeader *, CSIPSubscriptionStateHeader *) |
IMPORT_C CSIPClientTransaction * | SendNotifyL(CSIPMessageElements *) |
IMPORT_C CSIPSubscriptionStateHeader & | SubscriptionState() |
IMPORT_C const CSIPSubscriptionStateHeader & | SubscriptionState() |
Inherited Functions |
---|
| CBase::CBase() |
| CBase::Delete(CBase *) |
| CBase::Extension_(TUint,TAny *&,TAny *) |
| CBase::operator new(TUint) |
| CBase::operator new(TUint,TAny *) |
| CBase::operator new(TUint,TLeave) |
| CBase::operator new(TUint,TLeave,TUint) |
| CBase::operator new(TUint,TUint) |
| CBase::~CBase() |
| CSIPDialogAssocBase::CSIPDialogAssocBase() |
| CSIPDialogAssocBase::ConstructL(RStringF,CSIPDialog &) |
| CSIPDialogAssocBase::ConstructL(RStringF,CSIPDialog &,CSIPServerTransaction &) |
| CSIPDialogAssocBase::DeletingRefresh(CSIPRefresh &,TUint32) |
| CSIPDialogAssocBase::Dialog() |
| CSIPDialogAssocBase::Dialog()const |
| CSIPDialogAssocBase::FindRefresh(TUint32) |
| CSIPDialogAssocBase::Implementation() |
| CSIPDialogAssocBase::IsNonTargetRefreshRequest(RStringF)const |
| CSIPDialogAssocBase::SendNonTargetRefreshRequestL(RStringF,CSIPMessageElements *) |
| CSIPDialogAssocBase::Type()const |
| CSIPDialogAssocBase::~CSIPDialogAssocBase() |
Detailed Description
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.
Constructor & Destructor Documentation
~CSIPNotifyDialogAssoc ( )
IMPORT_C | ~CSIPNotifyDialogAssoc | ( | ) | |
Member Function Documentation
DoSendNotifyWithinDialogL ( CSIPMessageElements * )
Event ( )
Gets an event about which the notification is done
NewL ( CSIPServerTransaction &, CSIPEventHeader *, CSIPSubscriptionStateHeader * )
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.
- Pre-condition
- aTransaction.State()==ETrying || EProceeding
aTransaction.Type() == SipStrConsts::ESubscribe || SipStrConsts::ERefer 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. |
- Return Value
- New object; the ownership is transferred
Leave Codes |
---|
KErrArgument | if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0. |
KErrSIPInvalidTransactionState | if aTransaction is in a wrong state |
NewL ( CSIPServerTransaction &, const MSIPRegistrationContext &, CSIPEventHeader *, CSIPSubscriptionStateHeader * )
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.
- Pre-condition
- aTransaction.State()==ETrying || EProceeding
aTransaction.Type() == SipStrConsts::ESubscribe || SipStrConsts::ERefer aContext.IsContextActive() == ETrue aEvent != 0 && aState != 0
Parameters |
---|
aTransaction | a SIP server transaction |
aContext | that will be used for populating the Contact-header of the response to aTransaction |
aEvent | an event to send a notification about; the ownership is transferred. |
aState | a subscription state; the ownership is transferred. |
- Return Value
- New object; the ownership is transferred
Leave Codes |
---|
KErrArgument | if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0. |
KErrSIPInvalidTransactionState | if aTransaction is in a wrong state |
NewLC ( CSIPServerTransaction &, CSIPEventHeader *, CSIPSubscriptionStateHeader * )
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.
- Pre-condition
- aTransaction.State()==ETrying || EProceeding
aTransaction.Type() == SipStrConsts::ESubscribe || SipStrConsts::ERefer 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. |
- Return Value
- New object; the ownership is transferred
Leave Codes |
---|
KErrArgument | if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0. |
KErrSIPInvalidTransactionState | if aTransaction is in a wrong state |
NewLC ( CSIPServerTransaction &, const MSIPRegistrationContext &, CSIPEventHeader *, CSIPSubscriptionStateHeader * )
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.
- Pre-condition
- aTransaction.State()==ETrying || EProceeding
aTransaction.Type() == SipStrConsts::ESubscribe || SipStrConsts::ERefer aContext.IsContextActive() == ETrue aEvent != 0 && aState != 0
Parameters |
---|
aTransaction | a SIP server transaction |
aContext | that will be used for populating the Contact-header of the response to aTransaction |
aEvent | an event to send a notification about; the ownership is transferred. |
aState | a subscription state; the ownership is transferred. |
- Return Value
- New object; the ownership is transferred
Leave Codes |
---|
KErrArgument | if aTransaction is not a SUBSCRIBE or REFER transaction, or aEvent == 0 or aState == 0. |
KErrSIPInvalidTransactionState | if aTransaction is in a wrong state |
SendNotifyL ( CSIPMessageElements * )
Creates NOTIFY and sends it to the remote target. If client provides optional SIP headers they must not contain Event and Subscription-State headers.
- Pre-condition
- Dialog().Connection().State()==EActive
Dialog().State()==CSIPDialog::TState::EConfirmed
Parameters |
---|
aElements | optional SIP message headers and body. Ownership is transferred. |
- Return Value
- NOTIFY SIP UAC transaction
Leave Codes |
---|
KErrSIPInvalidDialogState | if dialog's state is incorrect |
KErrSIPResourceNotAvailable | if a required SIP Client API object has been deleted. |
Capability |
---|
NetworkServices | |
SubscriptionState ( )
- Return Value
- subscription state
SubscriptionState ( )
- Return Value
- subscription state