diff -r 89d6a7a84779 -r 25a17d01db0c Symbian3/PDK/Source/GUID-8FC2BA94-2374-5BFE-B4CF-624A6B0056BC.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/PDK/Source/GUID-8FC2BA94-2374-5BFE-B4CF-624A6B0056BC.dita Fri Jan 22 18:26:19 2010 +0000 @@ -0,0 +1,61 @@ + + + + + +Call Waiting Status TutorialThis tutorial describes how to get the call waiting status information with the telephony API for applications. create a new instance of CTelephony call CTelephony::GetCallWaitingStatus() to get the call waiting information you can cancel the asynchronous request with a CTelephony::EGetCallWaitingStatusCancel enumeration. Call waiting status example #include <e32base.h> +#include <Etel3rdParty.h> + +class CClientApp : public CActive + { + +private: + CTelephony* iTelephony; + CTelephony::TCallWaitingSupplServicesV1 iCallWaitingSupplServicesV1; + CTelephony::TCallWaitingSupplServicesV1Pckg iCallWaitingSupplServicesV1Pckg; + +public: + CClientApp(CTelephony* aTelephony); + void SomeFunction(); + +private: + /* + These are the pure virtual methods from CActive that + MUST be implemented by all active objects + */ + void RunL(); + void DoCancel(); + }; + +CClientApp::CClientApp(CTelephony* aTelephony) + : CActive(EPriorityStandard), + iTelephony(aTelephony), + iCallWaitingSupplServicesV1Pckg(iCallWaitingSupplServicesV1) + { + //default constructor + } + +void CClientApp::SomeFunction() + { + iTelephony->GetCallWaitingStatus(iStatus, iCallWaitingSupplServicesV1Pckg); + SetActive(); + } + +void CClientApp::RunL() + { + if(iStatus==KErrNone) + { + CTelephony::TSupplServiceStatus callWaitingStatus = iCallWaitingSupplServicesV1.iCallWaiting; + } + } + +void CClientApp::DoCancel() + { + iTelephony->CancelAsync(CTelephony::EGetCallWaitingStatusCancel); + } \ No newline at end of file