CSIPReferDialogAssoc Class Reference
class CSIPReferDialogAssoc : public CSIPDialogAssocBase |
Class for managing SIP REFER dialog associations. It provides services for creating, using and terminating SIP REFER dialog associations. User can have multiple REFER 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 "Refer-to" header semantics. sipclient.lib
Public Member Functions |
---|
| ~CSIPReferDialogAssoc() |
CSIPClientTransaction * | DoSendReferL(CSIPMessageElements *, TBool) |
IMPORT_C CSIPReferDialogAssoc * | NewL(CSIPDialog &, CSIPReferToHeader *) |
IMPORT_C CSIPReferDialogAssoc * | NewL(CSIPConnection &, CSIPFromHeader *, CUri8 *, CSIPReferToHeader *, CSIPToHeader *, CSIPContactHeader *) |
IMPORT_C CSIPReferDialogAssoc * | NewL(CSIPConnection &, CUri8 *, const MSIPRegistrationContext &, CSIPReferToHeader *, CSIPFromHeader *, CSIPToHeader *, CSIPContactHeader *) |
IMPORT_C CSIPReferDialogAssoc * | NewLC(CSIPDialog &, CSIPReferToHeader *) |
IMPORT_C CSIPReferDialogAssoc * | NewLC(CSIPConnection &, CSIPFromHeader *, CUri8 *, CSIPReferToHeader *, CSIPToHeader *, CSIPContactHeader *) |
IMPORT_C CSIPReferDialogAssoc * | NewLC(CSIPConnection &, CUri8 *, const MSIPRegistrationContext &, CSIPReferToHeader *, CSIPFromHeader *, CSIPToHeader *, CSIPContactHeader *) |
IMPORT_C const CSIPReferToHeader & | ReferTo() |
IMPORT_C CSIPClientTransaction * | SendReferL(CSIPMessageElements *) |
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() |
Constructor & Destructor Documentation
CSIPReferDialogAssoc()
CSIPReferDialogAssoc | ( | ) | [private] |
~CSIPReferDialogAssoc()
IMPORT_C | ~CSIPReferDialogAssoc | ( | ) | |
Member Functions Documentation
DoSendReferL(CSIPMessageElements *, TBool)
Sends a REFER request.
- Pre-condition
-
Dialog().Connection().State()==EActive
Parameters
CSIPMessageElements * aElements | optional SIP message headers and body. Ownership is transferred. |
TBool aWithinDialog | ETrue if REFER is sent within dialog, EFalse if REFER creates the dialog. |
NewL(CSIPDialog &, CSIPReferToHeader *)
Two-phased constructor. Should be used if response to the SIP request to be sent will create a SIP dialog association.
- Pre-condition
- aReferTo != 0
- leave
- KErrArgument if aReferTo == 0
NewL(CSIPConnection &, CSIPFromHeader *, CUri8 *, CSIPReferToHeader *, CSIPToHeader *, CSIPContactHeader *)
Two-phased constructor
- Pre-condition
- aFrom != 0
- aReferTo != 0
- aRemoteUri != 0 The user of the class must not define tags in From-header and To-header.
- leave
- KErrArgument if aFrom == 0 or aRemoteuri == 0 or aReferTo == 0
Parameters
CSIPConnection & aConnection | a SIP connection to be used with dialog association |
CSIPFromHeader * aFrom | originator's address; the ownership is transfered |
CUri8 * aRemoteUri | a remote target URI that identifies a resource that the request is addressed to. |
CSIPReferToHeader * aReferTo | referred-to resource; Ownership is transferred |
CSIPToHeader * aTo = 0 | logical recipient's address; if not defined the remote target uri will be used for To-header construction; the ownership is transfered |
CSIPContactHeader * aContact = 0 | a contact to be used in dialog creation. Must be given only if user intends to re-direct future requests; the ownership is transfered |
NewL(CSIPConnection &, CUri8 *, const MSIPRegistrationContext &, CSIPReferToHeader *, CSIPFromHeader *, CSIPToHeader *, CSIPContactHeader *)
Two-phased constructor
- Pre-condition
- aReferTo != 0
- aRemoteUri != 0 The user of the class must not define tags in From-header and To-header.
- aContext.IsContextActive() == ETrue
- leave
- KErrArgument if aRemoteuri == 0 or aReferTo == 0
- leave
- KErrSIPInvalidRegistrationState if aContext.IsContextActive() == EFalse
Parameters
CSIPConnection & aConnection | a SIP connection to be used with dialog association |
CUri8 * aRemoteUri | a remote target URI that identifies a resource that the request is targeted to. |
const MSIPRegistrationContext & aContext | used for selecting outbound proxy and originator's address (AOR) and contact |
CSIPReferToHeader * aReferTo | referred-to resource; Ownership is transferred |
CSIPFromHeader * aFrom = 0 | originator's address. If not defined it will constructed using registration context (User's AOR); the ownership is transfered |
CSIPToHeader * aTo = 0 | logical recipient's address; if not defined the remote target uri will be used for To-header construction; the ownership is transfered |
CSIPContactHeader * aContact = 0 | a contact to be used in dialog creation. Must be given only if user intends to re-direct future requests; the ownership is transfered |
NewLC(CSIPDialog &, CSIPReferToHeader *)
Two-phased constructor. Must be used if response to the SIP request to be sent will create a SIP dialog association.
- Pre-condition
- aReferTo != 0
- leave
- KErrArgument if aReferTo == 0
NewLC(CSIPConnection &, CSIPFromHeader *, CUri8 *, CSIPReferToHeader *, CSIPToHeader *, CSIPContactHeader *)
Two-phased constructor
- Pre-condition
- aFrom != 0
- aReferTo != 0
- aRemoteUri != 0 The user of the class must not define tags in From-header and To-header.
- leave
- KErrArgument if aFrom == 0 or aRemoteuri == 0 or aReferTo == 0
Parameters
CSIPConnection & aConnection | a SIP connection to be used with dialog association |
CSIPFromHeader * aFrom | originator's address; the ownership is transfered |
CUri8 * aRemoteUri | a remote target URI that identifies a resource that the request is addressed to. |
CSIPReferToHeader * aReferTo | referred-to resource; Ownership is transferred |
CSIPToHeader * aTo = 0 | logical recipient's address; if not defined the remote target uri will be used for To-header construction; the ownership is transfered |
CSIPContactHeader * aContact = 0 | a contact to be used in dialog creation. Must be given only if user intends to re-direct future requests; the ownership is transfered |
NewLC(CSIPConnection &, CUri8 *, const MSIPRegistrationContext &, CSIPReferToHeader *, CSIPFromHeader *, CSIPToHeader *, CSIPContactHeader *)
Two-phased constructor
- Pre-condition
- aReferTo != 0
- aRemoteUri != 0 The user of the class must not define tags in From-header and To-header.
- aContext.IsContextActive()==ETrue
- leave
- KErrArgument if aRemoteuri == 0 or aReferTo == 0
- leave
- KErrSIPInvalidRegistrationState if aContext.IsContextActive() == EFalse
Parameters
CSIPConnection & aConnection | a SIP connection to be used with dialog association |
CUri8 * aRemoteUri | a remote target URI that identifies a resource that the request is targeted to. |
const MSIPRegistrationContext & aContext | used for selecting outbound proxy and originator's address (AOR) and contact |
CSIPReferToHeader * aReferTo | referred-to resource; Ownership is transferred |
CSIPFromHeader * aFrom = 0 | originator's address. If not defined it will constructed using registration context (User's AOR); the ownership is transfered |
CSIPToHeader * aTo = 0 | logical recipient's address; if not defined the remote target uri will be used for To-header construction; the ownership is transfered |
CSIPContactHeader * aContact = 0 | a contact to be used in dialog creation. Must be given only if user intends to re-direct future requests; the ownership is transfered |
NewLC(CSIPConnection &, CUri8 *, CSIPReferToHeader *, CSIPFromHeader *, CSIPToHeader *, CSIPContactHeader *, const MSIPRegistrationContext *)
SendReferL(CSIPMessageElements *)
Creates REFER and sends it to the remote target. leaves on failure. 101-199 or 2xx response will create REFER dialog association in case of first REFER request within this dialog association.
- Pre-condition
- Dialog().Connection().State()==EActive
- Dialog().State()==CSIPDialogEInit || Dialog().State()==CSIPDialogEConfirmed
- leave
- KErrSIPInvalidDialogState if dialog is in wrong state
- leave
- KErrSIPResourceNotAvailable if a required SIP Client API object has been deleted.
- capability
- NetworkServices
Parameters
CSIPMessageElements * aElements = 0 | optional SIP message headers and body. Ownership is transferred. |
Member Data Documentation
CSIPReferToHeader * iReferTo
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.