#include <mw/sipregistrationbinding.h>
Link against: sipclient.lib
class CSIPRegistrationBinding : public CSIPRegistrationBindingBase, public MTransactionOwner, public MExpirationHandler, public CBase, public MSIPRegistrationContext |
Inherited Attributes | |
---|---|
CSIPRegistrationBindingBase::iContact | |
CSIPRegistrationBindingBase::iCurrentState | |
CSIPRegistrationBindingBase::iOwner | |
CSIPRegistrationBindingBase::iRegistered | |
CSIPRegistrationBindingBase::iRegistering | |
CSIPRegistrationBindingBase::iRegistrar | |
CSIPRegistrationBindingBase::iRegistrationId | |
CSIPRegistrationBindingBase::iRemoteTarget | |
CSIPRegistrationBindingBase::iResponse423Received | |
CSIPRegistrationBindingBase::iRetryTransactionId | |
CSIPRegistrationBindingBase::iRouteSet | |
CSIPRegistrationBindingBase::iSIPSecUser | |
CSIPRegistrationBindingBase::iSigCompCompartmentId | |
CSIPRegistrationBindingBase::iTransactionId | |
CSIPRegistrationBindingBase::iTransactionUser | |
CSIPRegistrationBindingBase::iTransportId | |
CSIPRegistrationBindingBase::iUnregistered | |
CSIPRegistrationBindingBase::iUnregistering | |
CSIPRegistrationBindingBase::iUpdating |
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() | |
CSIPRegistrationBindingBase::AOR()const | |
CSIPRegistrationBindingBase::ByPassSIPSec()const | |
CSIPRegistrationBindingBase::CSIPRegistrationBindingBase(MTransactionUser &,MSigComp &,CSIPSec &,CSIPRegistrationBindingStore &,MRegistrationOwner *,MSIPSecUser &,MSIPTransportMgr &,TBool,TBool) | |
CSIPRegistrationBindingBase::ChangeState(CSIPRegistrationState *) | |
CSIPRegistrationBindingBase::ClearRequest() | |
CSIPRegistrationBindingBase::CompareWithRegisterRequest(const MRegistrationOwner &,CSIPRequest &) | |
CSIPRegistrationBindingBase::ConstructL(CSIPRequest *,CURIContainer &) | |
CSIPRegistrationBindingBase::Contact() | |
CSIPRegistrationBindingBase::CreateProxyTransportResourcesL(CSIPRouteHeader &) | |
CSIPRegistrationBindingBase::CurrentState() | |
CSIPRegistrationBindingBase::DetachFromStore() | |
CSIPRegistrationBindingBase::DetachOutboundProxy(TAny *) | |
CSIPRegistrationBindingBase::FillToFromL(CSIPRequest &) | |
CSIPRegistrationBindingBase::FillTransportParams() | |
CSIPRegistrationBindingBase::FindContactByFromL(const CSIPFromToHeaderBase *,CSIPContactHeader &) | |
CSIPRegistrationBindingBase::FlowFailure(TInt) | |
CSIPRegistrationBindingBase::HasOutboundProxy()const | |
CSIPRegistrationBindingBase::HasTransaction(const TTransactionId &)const | |
CSIPRegistrationBindingBase::IAPId()const | |
CSIPRegistrationBindingBase::IsCacheOutboundProxyIPEnabled() | |
CSIPRegistrationBindingBase::OutboundProxy() | |
CSIPRegistrationBindingBase::OutboundProxyFailed() | |
CSIPRegistrationBindingBase::OutboundProxyIPL() | |
CSIPRegistrationBindingBase::Owner()const | |
CSIPRegistrationBindingBase::PAssociatedURIHeader()const | |
CSIPRegistrationBindingBase::PassOnlyRealmsToUser()const | |
CSIPRegistrationBindingBase::Received2XXResponseL(CSIPResponse &,TTransactionId) | |
CSIPRegistrationBindingBase::Received423ResponseL(CSIPResponse &) | |
CSIPRegistrationBindingBase::ReceivedErrorResponseL() | |
CSIPRegistrationBindingBase::RefreshId()const | |
CSIPRegistrationBindingBase::RegisterL(TTransactionId &,CSIPRequest *,CSIPRouteHeader *) | |
CSIPRegistrationBindingBase::RegisterPending()const | |
CSIPRegistrationBindingBase::Registrar() | |
CSIPRegistrationBindingBase::RegistrationId()const | |
CSIPRegistrationBindingBase::RemoveBinding() | |
CSIPRegistrationBindingBase::RemoveOutboundProxy() | |
CSIPRegistrationBindingBase::Request() | |
CSIPRegistrationBindingBase::RequestCredentialsL(CSIPResponse &,TTransactionId,TRefreshId) | |
CSIPRegistrationBindingBase::RequestCredentialsL(const TDesC8 &) | |
CSIPRegistrationBindingBase::RouteSet() | |
CSIPRegistrationBindingBase::SelfDetach(TBool) | |
CSIPRegistrationBindingBase::SelfDetach(TBool,TBool) | |
CSIPRegistrationBindingBase::ServiceRouteOk(CSIPResponse &)const | |
CSIPRegistrationBindingBase::SetExpiresValueL(CSIPRequest &) | |
CSIPRegistrationBindingBase::SetOutboundProxy(CSIPRouteHeader *) | |
CSIPRegistrationBindingBase::SetRequest(CSIPRequest *) | |
CSIPRegistrationBindingBase::SetRouteHeaderFromResponseL(CSIPResponse &) | |
CSIPRegistrationBindingBase::SigCompCompartmentId()const | |
CSIPRegistrationBindingBase::TrustedUser(TRegistrationId) | |
CSIPRegistrationBindingBase::UnregisterL(TTransactionId &,CSIPRequest *) | |
CSIPRegistrationBindingBase::UpdateContactFromRequestL() | |
CSIPRegistrationBindingBase::UpdateL(TTransactionId &,CSIPRequest *) | |
CSIPRegistrationBindingBase::~CSIPRegistrationBindingBase() | |
MExpirationHandler::~MExpirationHandler() | |
MRegistrationContext::~MRegistrationContext() | |
MSIPRegistrationContext::~MSIPRegistrationContext() | |
MTransactionOwner::~MTransactionOwner() |
Class for managing SIP registration binding. Class provides functions for creating and updating SIP registration bindings.
~CSIPRegistrationBinding | ( | ) |
IMPORT_C const CSIPToHeader & | Aor | ( | ) | const |
Gets the address-of-record (AOR) used for creating binding
void | ClearTransactionOwner | ( | TBool | aUseRetryId = EFalse | ) |
IMPORT_C CSIPConnection * | Connection | ( | ) |
Gets the SIP connection used for the registration.
IMPORT_C const CSIPConnection * | Connection | ( | ) | const |
Gets the SIP connection used for the registration.
IMPORT_C const CSIPContactHeader & | ContactHeader | ( | ) | const |
Gets Contact header associated with the registration binding
IMPORT_C CSIPContactHeader & | ContactHeader | ( | ) |
Gets Contact header associated with the registration binding
IMPORT_C TUint32 | ContextId | ( | ) | const [virtual] |
Reimplemented from MSIPRegistrationContext::ContextId()const
Gets the context id
IMPORT_C CSIPClientTransaction * | DeregisterL | ( | CSIPMessageElements * | aElements = 0 | ) |
IsContextActive()==ETrue
Parameters | |
---|---|
aElements | contains user SIP headers and content; the ownership is transfered. If set, user SIP headers must not contain any Contact-header nor Expires-header |
Leave Codes | |
---|---|
KErrSIPInvalidRegistrationState | if |
Capability | |
---|---|
NetworkServices |
void | DoRegisterL | ( | TTransactionId & | aTransactionId, |
CSIPRequest * | aSIPRequest, | |||
CSIPRouteHeader * | aOutboundProxy | |||
) | [virtual] |
Reimplemented from CSIPRegistrationBindingBase::DoRegisterL(TTransactionId &,CSIPRequest *,CSIPRouteHeader *)
void | DoUnregisterL | ( | TTransactionId & | aTransactionId, |
CSIPRequest * | aSIPRequest | |||
) | [virtual] |
Reimplemented from CSIPRegistrationBindingBase::DoUnregisterL(TTransactionId &,CSIPRequest *)
void | DoUpdateL | ( | TTransactionId & | aTransactionId, |
CSIPRequest * | aSIPRequest | |||
) | [virtual] |
Reimplemented from CSIPRegistrationBindingBase::DoUpdateL(TTransactionId &,CSIPRequest *)
CRegBindingImplementation & | Implementation | ( | ) |
Returns the implementation instance.
IMPORT_C TBool | IsContextActive | ( | ) | const [virtual] |
Reimplemented from MSIPRegistrationContext::IsContextActive()const
Checks if the registration context can be used for creating SIP messages/dialogs
IMPORT_C CSIPRegistrationBinding * | NewL | ( | CSIPConnection & | aConnection, |
CSIPToHeader * | aAor, | |||
CSIPContactHeader * | aContact, | |||
CSIPRefresh * | aRefresh = 0, | |||
CSIPRouteHeader * | aOutboundProxy = 0, | |||
CUri8 * | aRemoteUri = 0, | |||
CSIPFromHeader * | aFrom = 0 | |||
) | [static] |
"Expires" parameter in aContact must be >= KSIPMinExpirationValue
Parameters | |
---|---|
aConnection | a SIP connection to be used |
aAor | contains user's address-of-record to register; the ownership is transfered |
aContact | contact(s) to be registered. The "expires" parameter indicates how long the client would like the binding to be valid. "expires" parameter value must be >= KSIPMinExpirationValue; the ownership is transfered |
aRefresh | if set, created binding will be refreshed; the ownership is transfered |
aOutboundProxy | an outbound proxy address; the ownership is transfered |
aRemoteUri | if set, will be used in request-uri construction; the ownership is transfered |
aFrom | From header, the ownership is transferred |
Leave Codes | |
---|---|
KErrArgument | if aAor == 0, aContact == 0 or if "Expires" parameter in aContact is less than KSIPMinExpirationValue |
CSIPRegistrationBinding * | NewLC | ( | CSIPRequest * | aSIPRequest, |
MSigComp & | aSigComp, | |||
CSIPSec & | aSIPSec, | |||
MTimerManager & | aTimerMgr, | |||
MTransactionUser & | aTransactionUser, | |||
CSIPRegistrationBindingStore & | aBindingStore, | |||
MRegistrationOwner * | aRegistrationOwner, | |||
MSIPSecUser & | aSIPSecUser, | |||
MSIPTransportMgr & | aTransportMgr, | |||
CURIContainer & | aRemoteTarget, | |||
TBool | aSendWithExpires, | |||
TBool | aCacheOutboundProxyIP | |||
) | [static] |
IMPORT_C CSIPRegistrationBinding * | NewLC | ( | CSIPConnection & | aConnection, |
CSIPToHeader * | aAor, | |||
CSIPContactHeader * | aContact, | |||
CSIPRefresh * | aRefresh = 0, | |||
CSIPRouteHeader * | aOutboundProxy = 0, | |||
CUri8 * | aRemoteUri = 0, | |||
CSIPFromHeader * | aFrom = 0 | |||
) | [static] |
"Expires" parameter in aContact must be >= KSIPMinExpirationValue
Parameters | |
---|---|
aConnection | a SIP connection to be used |
aAor | contains user's address-of-record to register; the ownership is transfered |
aContact | contact to be registered; The "expires" parameter indicates how long the client would like the binding to be valid. "expires" parameter value must be >= KSIPMinExpirationValue; the ownership is transfered |
aRefresh | if set, created binding will be refreshed; the ownership is transfered |
aOutboundProxy | an outbound proxy address; the ownership is transfered |
aRemoteUri | if set, will be used in request-uri construction; the ownership is transfered |
aFrom | From header, the ownership is transferred |
Leave Codes | |
---|---|
KErrArgument | if aAor == 0, aContact == 0 or if "Expires" parameter in aContact is less than KSIPMinExpirationValue |
Reimplemented from MTransactionOwner::NextCSeq(TUint &)
TransactionUser is going to send the SIP request either after modifications to the request, or to another address, and asks the next CSeq sequence number to use for the request.
See also:
Parameters | |
---|---|
aCSeq | an in-out parameter. While entering the function contains the current CSeq of the caller. On return contains the incremented CSeq of the callee. If the subsystem implementing the interface does not keep track of the CSeqs it should simply increment aCSeq by one. |
IMPORT_C const CSIPRouteHeader * | OutboundProxy | ( | ) | const |
Gets used outbound proxy
void | ReceiveL | ( | TUint32 | aIapId, |
TTransactionId | aTransactionId, | |||
CSIPRequest * | aRequest | |||
) | [virtual] |
Reimplemented from MTransactionOwner::ReceiveL(TUint32,TTransactionId,CSIPRequest *)
Transaction has received a SIP request from a remote endpoint and passes it to the upper layer.
Parameters | |
---|---|
aIapId | The IAP using which the request was received. |
aTransactionId | Identifies the transaction |
aRequest | IN: SIP request message. The ownership is transferred. If the function leaves, the ownership of aRequest is NOT transferred. |
void | ReceiveL | ( | TTransactionId | aTransactionId, |
CSIPResponse * | aResponse | |||
) | [virtual] |
Reimplemented from MTransactionOwner::ReceiveL(TTransactionId,CSIPResponse *)
Transaction has received a SIP response message from remote endpoint and passes it to the upper layer.
Parameters | |
---|---|
aTransactionId | Identifies the transaction |
aResponse | IN: SIP response message. The ownership is transferred. If the function leaves, the ownership of aResponse is NOT transferred. |
IMPORT_C CSIPClientTransaction * | RegisterL | ( | CSIPMessageElements * | aElements = 0 | ) |
Parameters | |
---|---|
aElements | contains user SIP headers and content; the ownership is taken |
Leave Codes | |
---|---|
KErrSIPMalformedMessage | if aElements contains contact or expires headers |
KErrSIPInvalidRegistrationState | if already registered or registering is in progress or deregistering is in progress. |
Capability | |
---|---|
NetworkServices |
IMPORT_C const CSIPContactHeader * | RegisteredContact | ( | ) | const |
Gets the registered Contact-header received in the 200 OK response.
IMPORT_C const CSIPRefresh * | SIPRefresh | ( | ) | const |
Gets associated refresh in case the user has requested the refresh of the registration. Note that client cannot use update or terminate functions defined in the CSIPRefresh class.
IMPORT_C CSIPRefresh * | SIPRefresh | ( | ) |
Gets associated refresh in case the user has requested the refresh of the registration. Note that client cannot use update or terminate functions defined in the CSIPRefresh class.
const MSIPSecUser * | SIPSecUser | ( | ) | const [virtual] |
Reimplemented from MTransactionOwner::SIPSecUser()const
Returns a pointer to the MSIPSecUser that is used to map the SIPSec cache entries to their users and can be used to query credentials from the user.
IMPORT_C void | SetOutboundProxyL | ( | CSIPRouteHeader * | aOutboundProxy | ) | [virtual] |
Reimplemented from CSIPRegistrationBindingBase::SetOutboundProxyL(CSIPRouteHeader *)
Parameters | |
---|---|
aOutboundProxy | an outbound proxy. Ownership is transferred. |
Leave Codes | |
---|---|
KErrSIPResourceNotAvailable | if a required SIP Client API object has been deleted |
Sets/resets properties.
void | StartTimerL | ( | TUint | aExpiresValue | ) |
void | TimerExpiredL | ( | TTimerId | aTimerId, |
TAny * | aTimerParam | |||
) | [virtual] |
Reimplemented from MExpirationHandler::TimerExpiredL(TTimerId,TAny *)
Indicates that a timer has expired.
Parameters | |
---|---|
aTimerId | Identifies the expired timer |
aTimerParam | User specified value which was given when the timer was set. It can be used to identify the timer in case multiple timers are running simultaneously. Value is NULL if the timer was set using CTimerManager::StartL without parameter aTimerParam. Ownership isn't transferred. |
Reimplemented from MTransactionOwner::TransactionEnded(TUint32,TTransactionId,TInt)
The specified transaction has ended and no more events from that transaction will come through the MTransactionOwner interface.
See also:
Parameters | |
---|---|
aIapId | The IAP used. |
aTransaction | Identifies the transaction that ended |
aReason | Tells why the transaction ended. KErrNone means the transaction ended normally. |
IMPORT_C CSIPClientTransaction * | UpdateL | ( | CSIPMessageElements * | aElements | ) |
Connection().State()==EActive IsContextActive()==ETrue
Parameters | |
---|---|
aElements | contains user SIP header and content, must not contain any Contact-header nor Expires-header; the ownership is transferred. |
Leave Codes | |
---|---|
KErrArgument | if aElements == NULL |
KErrSIPInvalidRegistrationState | if |
Capability | |
---|---|
NetworkServices |
IMPORT_C CSIPClientTransaction * | UpdateL | ( | TUint | aExpirationValue, |
CSIPMessageElements * | aElements = 0 | |||
) |
Connection().State()==EActive IsContextActive()==ETrue
Parameters | |
---|---|
aExpirationValue | a new expiration value in seconds |
aElements | contains user SIP headers and content; must not contain any Contact-header nor Expires-header; the ownership is transferred. |
Leave Codes | |
---|---|
KErrSIPInvalidRegistrationState | if |
Capability | |
---|---|
NetworkServices |
IMPORT_C TBool | operator== | ( | const CSIPRegistrationBinding & | aRegistration | ) | const |
Compares this object to another object
Parameters | |
---|---|
aRegistration | CSIPRegistrationBinding object to compare |