Data Call Parameters Tutorial

This tutorial describes how to get the data call parameters from a call.

The various parameters that can be retrieved from a call are:

  • type of data service

  • data transfer rate

  • GSM and WCDMA specific parameters such as the quality of data service and the version of Radio Link Protocol (RLP).


  1. Create a RMobileCall::TMobileDataCallParamsV1 class to store the data call parameters. The class is derived from RCall::TCallParams.
  2. Pass a package object to the RCall::Dial() to set the data parameters to make a call.
  3. Pass a package object to the RCall::AnswerIncomingCall() to set the data parameters for an inbound call.
  4. Use RCall::GetCallParams() to get the current parameters used for data calls.

Data call parameters example

The following code prints the call's speed.

void CClientApp::DataCallParamsL(RMobileCall& aCall)
    {
    RMobileCall::TMobileDataCallParamsV1 callParams;
    RMobileCall::TMobileDataCallParamsV1Pckg callParamsPckg(callParams);
    
 User::LeaveIfError(aCall.GetCallParams(callParamsPckg));
    const TText* speeds[] = {_S("Unspecified"),_S("Autobauding"), _S("2400"), 
        _S("4800"), _S("9600"), _S("14400"), _S("19200"), _S("28800"), _S("32000"),
        _S("33600"), _S("38400"), _S("43200"), _S("48000"), _S("56000"), _S("57600"),
        _S("64000")};
    
 TBuf<20> speedDes (speeds[callParams.iSpeed]);
    console->Printf(_L("Speed %S"), &speedDes);
    }