CConvergedCallProvider Class Reference

class CConvergedCallProvider : public CBase

Converged Call Provider API - main header. Main class in CCP. Used e.g. to create calls, access provider classes. MCCPObserver class is used for notifying error, state etc information.

Since
S60 3.2

Inherits from

Constructor & Destructor Documentation

CConvergedCallProvider()

CConvergedCallProvider ( ) [protected, inline]
Since
S60 3.2

~CConvergedCallProvider()

~CConvergedCallProvider ( ) [inline, virtual]
Destructor. Destroys the plug-in via ecom framework using iDtor_ID_Key
Since
S60 3.2

Member Functions Documentation

Caps()

TUint32 Caps ( ) const [pure virtual]
Get plug-in capabilities.
Since
Series 60 3.2

DTMFProviderL(const MCCPDTMFObserver &)

MCCPDTMFProvider * DTMFProviderL ( const MCCPDTMFObserver & aObserver ) [pure virtual]
Request DTMF provider for dtmf functionality extension. Only one instance exist. Must return the already created object if called again after initial creation.
Since
Series 60 3.2
Pre-condition
Initialize has been called.
leave
KErrNoMemory Memory allocation error.
leave
Other general system error.

Parameters

const MCCPDTMFObserver & aObserver Observer for DTMF events.

ExtensionProviderL(const MCCPExtensionObserver &)

MCCPExtensionProvider * ExtensionProviderL ( const MCCPExtensionObserver & aObserver ) [pure virtual]
Request extension provider for custom command handling features. Must return the already created object if called again after initial creation.
Since
Series 60 3.2
Pre-condition
Initialize has been called.
leave
KErrNoMemory Memory allocation error.
leave
Other general system error.

Parameters

const MCCPExtensionObserver & aObserver observer for extension(custom) events.

GetCSInfo(CSInfo &)

TBool GetCSInfo ( CSInfo & ) [inline, virtual]
This method gets cs specific information from cs-plugin. This is used only CS, other plug-ins may ignore this method.
Since
S60 3.2

Parameters

CSInfo &

GetLifeTime(TDes8 &)

TBool GetLifeTime ( TDes8 & ) [inline, virtual]
This method gets the lifetime of the MS. The lifetime information includes the manufacturing date of the MS and the total amount of airtime use, from the manufacturing date until the call to this method. Calling this method does not reset any data. This is used only CS, other plug-ins may ignore this method.
Since
S60 3.2

Parameters

TDes8 &

InitializeL(const TUint32, const MCCPObserver &, const MCCPSsObserver &)

void InitializeL ( const TUint32 aServiceId,
const MCCPObserver & aObserver,
const MCCPSsObserver & aSsObserver
) [inline, virtual]
Initialize CConvergedCallProvider after it is created with NewL.
Since
S60 3.2
leave
KErrAlreadyExists If this method has already been called.

Parameters

const TUint32 aServiceId service id used by convergedcallprovider
const MCCPObserver & aObserver Observer class.
const MCCPSsObserver & aSsObserver Supplementary services observer class.

InitializeL(const MCCPObserver &, const MCCPSsObserver &)

void InitializeL ( const MCCPObserver & aObserver,
const MCCPSsObserver & aSsObserver
) [pure virtual]
Initialize CConvergedCallProvider after it is created with NewL.
Since
S60 3.2
leave
KErrAlreadyExists If this method has already been called.

Parameters

const MCCPObserver & aObserver Observer class.
const MCCPSsObserver & aSsObserver Supplementary services observer class.

ListImplementationsL(RImplInfoPtrArray &)

void ListImplementationsL ( RImplInfoPtrArray & aImplementations ) [static, inline]
Lists all implementations for this interface.
Since
S60 3.2

Parameters

RImplInfoPtrArray & aImplementations Array containing pointers to all implementations for this interface

NewCallL(const CCCPCallParameters &, const TDesC &, const MCCPCallObserver &)

MCCPCall * NewCallL ( const CCCPCallParameters & aParameters,
const TDesC & aRecipient,
const MCCPCallObserver & aObserver
) [pure virtual]
Creates a new call.
Since
S60 3.2
leave
KErrAlreadyExists Call already exists.
leave
KErrNotReady Temporarily not able to create the requested call. E.g. maximum supported number of calls already exists (CCE will not call this if the global limit of calls is reached, this refers to plug-in own call count limit).
leave
KErrNoMemory Memory error.
leave
KErrNotSupported Call not supported.
leave
KErrArgument Invalid recipient address or service id.
leave
Other general system error.
Pre-condition
Initialize has been called.

Parameters

const CCCPCallParameters & aParameters Call paramaters such as servive-id used and call type.
const TDesC & aRecipient Recipients address/number.
const MCCPCallObserver & aObserver Observer for the created call.

NewConferenceL(const TUint32, const MCCPConferenceCallObserver &)

MCCPConferenceCall * NewConferenceL ( const TUint32 aServiceId,
const MCCPConferenceCallObserver & aObserver
) [pure virtual]
Creates a new conference call.
Since
S60 3.2
leave
KErrNotReady Temporarily not able to create the requested conference.
leave
KErrNoMemory Memory error.
leave
KErrArgument Invalid service id.
leave
plug-in does not support conference calls.
Pre-condition
Initialize has been called.

Parameters

const TUint32 aServiceId Servive id used.
const MCCPConferenceCallObserver & aObserver Conference call observer.

NewEmergencyCallL(const TUint32, const TDesC &, const MCCPCallObserver &)

MCCPEmergencyCall * NewEmergencyCallL ( const TUint32 aServiceId,
const TDesC & aAddress,
const MCCPCallObserver & aObserver
) [pure virtual]
Creates a new emergency call.
Since
S60 3.2
leave
plug-in does not support emergency calls.
leave
In case of failure system error code.
Pre-condition
Emergency call object is created.

Parameters

const TUint32 aServiceId Service-Id (this might get removed)
const TDesC & aAddress Address where emergency call is to be made Can be KNullDesC. Plug-in will use the given address and/or use its own information.
const MCCPCallObserver & aObserver Observer for the emergency call.

NewL(const TUid &)

CConvergedCallProvider * NewL ( const TUid & aImplementationUid ) [static, inline]
Returns CCP API plug-in implementation identified by given UID.
Since
S60 3.2
leave
KErrNotFound If ECOM plug-in implementation is not found.
leave
KErrNoPermission If ECOM plug-in does not have required capabilities.
leave
Any other symbian ECOM leave code.

Parameters

const TUid & aImplementationUid CCP API interface implementation UID

ReleaseCall(MCCPCall &)

TInt ReleaseCall ( MCCPCall & aCalltoRemove ) [pure virtual]
Releases all bindings to call and deletes it. This will be called by CCE to free all the resources reserved for the call. After this call CCE will not access the call object anymore and observer for the class must not be used in plug-in. This operation must always succeed. If plug-in decides to pre-allocate the call object it can choose to do so, but plug-in has to make sure call is returned to the state it was before calling CConvergedCallProvider::NewCallL .
Pre-condition
None, can always be called.
Post-condition
Plug-in must quarantee all resources for the call will be cleaned up and plug-in must not call observer after this call!
Since
S60 3.2

Parameters

MCCPCall & aCalltoRemove Call to remove.

ReleaseConferenceCall(MCCPConferenceCall &)

TInt ReleaseConferenceCall ( MCCPConferenceCall & aCalltoRemove ) [pure virtual]
Releases all bindings to conference call. CCE will call this after receiving MCCPConferenceCallObserver::ECCPConferenceIdle from plug-in or when it itself wants to release the call. In normal sequence called from CCE after HangUp is completed.
Pre-condition
None, can always be called.
Post-condition
Plug-in must quarantee all resources for the call will be cleaned up. Call must not be referenced anymore from CCE and plug-in must not call observer after this call!
Since
S60 3.2

Parameters

MCCPConferenceCall & aCalltoRemove Call to remove.

ReleaseEmergencyCall(MCCPEmergencyCall &)

TInt ReleaseEmergencyCall ( MCCPEmergencyCall & aCalltoRemove ) [pure virtual]
Releases all bindings to call and deletes it. This must be called to free all the resources reserved for the call. After this call CCE must not be access the call object anymore and observer for the class must not be used in plug-in. This operation mustways succeed. If plug-in decides to pre-allocate the call object it can choose to do so, but client has to be sure call is cleared from the plug-in and all resuorces are returned to the state before calling CConvergedCallProvider::NewEmergencyCallL .
Pre-condition
None, can always be called.
Post-condition
Plug-in must quarantee all resources for the call will be cleaned up. Call must not be referenced anymore from CCE and plug-in must not call observer after this call!
Since
S60 3.2

Parameters

MCCPEmergencyCall & aCalltoRemove Call to remove.

Uid()

const TUid & Uid ( ) const [pure virtual]
Returns the plug-in UID.
Since
S60 3.2

Member Data Documentation

TUid iDtor_ID_Key

TUid iDtor_ID_Key [private]