Symbian: Retrieving caller number

王朝other·作者佚名  2006-01-09
宽屏版  字体: |||超大  

http://discussion.forum.nokia.com/forum/showthread.php?s=&threadid=42369&perpage=15&highlight=*answer%20call*&pagenumber=3

In my application, I am trying to retrieve the calling number while the phone is still ringing.

Here is the code for RunL() method.

--------------------------------------------------------------------------

void CCallWatcher::RunL()

{

if(iStatus.Int() != KErrNone)

return;

switch(iState)

{

case EWaiting:

{

iLine.NotifyIncomingCall(iStatus, iCallName);

iState = EAnswering;

break;

}

case EAnswering:

{

iLine.GetStatus(iCallStatus);

if ( iCallStatus == RCall::EStatusRinging )

{

User::LeaveIfError(iCall.OpenExistingCall(iLine, iCallName));

/////////// code added from forum for using RAdvGsmCall::TRemotePartyInfo /////////////

TBuf<20> callNum;

RAdvGsmCall::TRemotePartyInfo myRemotePartyInfo;

myCall->GetRemotePartyInfo(myRemotePartyInfo);

callNum = myRemotePartyInfo.iNumber.iTelNumber;

_LIT(KMessage,"Got a new call ... Caller ID: ");

CEikonEnv::Static()->InfoWinL(KMessage,callNum);

/////////// code added from forum for using RAdvGsmCall::TRemotePartyInfo /////////////

}

iState = EAnswering;

break;

}

}

SetActive();

}

--------------------------------------------------------------------------

RAdvGsmCall will not work under Nokia 6600.

Try this:

RMobileCall::TMobileCallInfoV1 callInfo;

RMobileCall::TMobileCallInfoV1Pckg callInfoPckg(callInfo);

m_currentCall.GetMobileCallInfo(callInfoPckg);

(where m_currentCall defined as RMobileCall)

The caller ID is hidden in: callInfo.iRemoteParty.iRemoteNumber.iTelNumber

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有