MSIPConnectionObserver Class Reference

class MSIPConnectionObserver

An interface to be implemented by users of CSIPConnection. Interface allows to be able to receive requests, responses, connection state notifications and error notifications from sip stack.

Note: The client must not delete related CSIPConnection object during the execution of the interface function.

n/a

Member Functions Documentation

ConnectionStateChanged(CSIPConnection::TState)

voidConnectionStateChanged(CSIPConnection::TStateaState)[pure virtual]

Connection state has changed. If connection state has changed to EInactive or EUnavailable, SIP stack has removed all stand-alone SIP refreshes, registrations and dialog associations that client requested to refresh. Client may re-issue refresh requests (stand-alone, registration or dialog association related) when connection becomes EActive again. SIP stack also terminates all pending SIP client transactions and no errors are reported back to the client about the terminated transactions nor about removed refreshes in order to avoid event flood.

Parameters

CSIPConnection::TState aStateindicates the current connection state

ErrorOccured(TInt, CSIPTransactionBase &)

voidErrorOccured(TIntaError,
CSIPTransactionBase &aTransaction
)[pure virtual]

An asynchronous error has occurred in the stack related to the request indicated by the given transaction.

Parameters

TInt aErrorsystem wide or SIP error code
CSIPTransactionBase & aTransactionfailed transaction

ErrorOccured(TInt, CSIPClientTransaction &, CSIPRegistrationBinding &)

voidErrorOccured(TIntaError,
CSIPClientTransaction &aTransaction,
CSIPRegistrationBinding &aRegistration
)[pure virtual]

An asynchronous error has occurred in the stack related to the request indicated by the given transaction.

Parameters

TInt aErrorsystem wide or SIP error code
CSIPClientTransaction & aTransactionthe failed transaction
CSIPRegistrationBinding & aRegistrationthe failed registration binding

ErrorOccured(TInt, CSIPTransactionBase &, CSIPDialogAssocBase &)

voidErrorOccured(TIntaError,
CSIPTransactionBase &aTransaction,
CSIPDialogAssocBase &aDialogAssoc
)[pure virtual]

An asynchronous error has occured related to a request within an existing dialog.

Parameters

TInt aErrorsystem wide or SIP error code
CSIPTransactionBase & aTransactionthe failed transaction.
CSIPDialogAssocBase & aDialogAssocthe failed dialog associoation.

ErrorOccured(TInt, CSIPRefresh &)

voidErrorOccured(TIntaError,
CSIPRefresh &aSIPRefresh
)[pure virtual]

An asynchronous error has occured related to a refresh

Parameters

TInt aErrorsystem wide or SIP error code
CSIPRefresh & aSIPRefreshoriginal refresh object.

ErrorOccured(TInt, CSIPRegistrationBinding &)

voidErrorOccured(TIntaError,
CSIPRegistrationBinding &aRegistration
)[pure virtual]

An asynchronous error has occured related to a periodical refresh that relates to a registration.

Parameters

TInt aErrorsystem wide or SIP error code; KErrCouldNotConnect if the refresh has failed due to the suspended connection.
CSIPRegistrationBinding & aRegistrationassociated registration binding

ErrorOccured(TInt, CSIPDialogAssocBase &)

voidErrorOccured(TIntaError,
CSIPDialogAssocBase &aDialogAssoc
)[pure virtual]

An asynchronous error has occured related to a periodical refresh that belongs to SIP dialog association.

Parameters

TInt aErrorsystem wide or SIP error code; KErrCouldNotConnect if the refresh has failed due to the suspended connection.
CSIPDialogAssocBase & aDialogAssocSIP dialog association.

IncomingRequest(CSIPServerTransaction *)

voidIncomingRequest(CSIPServerTransaction *aTransaction)[pure virtual]

A SIP request outside a dialog has been received from the network.

Pre-condition
aTransaction != 0

Parameters

CSIPServerTransaction * aTransactionSIP server transaction. The ownership is transferred.

IncomingRequest(CSIPServerTransaction *, CSIPDialog &)

voidIncomingRequest(CSIPServerTransaction *aTransaction,
CSIPDialog &aDialog
)[pure virtual]

A SIP request within a dialog has been received from the network. The client must resolve the actual dialog association to which this request belongs.

Pre-condition
aTransaction != 0

Parameters

CSIPServerTransaction * aTransactionSIP server transaction. The ownership is transferred.
CSIPDialog & aDialogthe dialog that this transaction belongs to.

IncomingResponse(CSIPClientTransaction &)

voidIncomingResponse(CSIPClientTransaction &aTransaction)[pure virtual]

A SIP response received from the network.

Parameters

CSIPClientTransaction & aTransactioncontains response elements.

IncomingResponse(CSIPClientTransaction &, CSIPDialogAssocBase &)

voidIncomingResponse(CSIPClientTransaction &aTransaction,
CSIPDialogAssocBase &aDialogAssoc
)[pure virtual]

A SIP response received from the network that is within a dialog association or creates a dialog association.

Parameters

CSIPClientTransaction & aTransactioncontains response elements.
CSIPDialogAssocBase & aDialogAssoca dialog association.

IncomingResponse(CSIPClientTransaction &, CSIPInviteDialogAssoc *)

voidIncomingResponse(CSIPClientTransaction &aTransaction,
CSIPInviteDialogAssoc *aDialogAssoc
)[pure virtual]

Multiple SIP responses have been received to the single INVITE due to the forking proxy. Note that each response creates a separate INVITE dialog association. Multiple responses can arrive until SIP stack completes UAC core INVITE transaction. If clients deletes INVITE transaction after first SIP response other possible responses will be consumed by the implementation.

Parameters

CSIPClientTransaction & aTransactioncontains response elements
CSIPInviteDialogAssoc * aDialogAssocINVITE dialog association; the ownership is transferred

IncomingResponse(CSIPClientTransaction &, CSIPRegistrationBinding &)

voidIncomingResponse(CSIPClientTransaction &aTransaction,
CSIPRegistrationBinding &aRegistration
)[pure virtual]

A SIP response related a registration binding or an error response that is related to registration binding has been received from the network.

Parameters

CSIPClientTransaction & aTransactioncontains response elements
CSIPRegistrationBinding & aRegistrationregistration binding this transaction belongs to

InviteCanceled(CSIPServerTransaction &)

voidInviteCanceled(CSIPServerTransaction &aTransaction)[pure virtual]

Invite was canceled with the CANCEL

Parameters

CSIPServerTransaction & aTransactiona canceled INVITE UAS transaction

InviteCompleted(CSIPClientTransaction &)

voidInviteCompleted(CSIPClientTransaction &aTransaction)[pure virtual]

SIP stack has completed UAC core INVITE transaction 64*T1 seconds after the reception of the first 2xx response. No more 2xx responses can be received to the issued single INVITE.

If the INVITE transaction does not create a dialog, or the INVITE transaction encounters an error, this event will not be sent.

Parameters

CSIPClientTransaction & aTransactiona complete UAC core INVITE transaction