send caller id - outgoing calls

Login to reply to this topic.
Wed, 2006-12-13 19:35
Joined: 2006-10-30
Forum posts: 17
hi all,

i have a problem with outgoing calls with etelmm. the caller id will be send everytime Sad.

with CTelephony i can change the sending of the caller id by:

Code:
CTelephony::TCallParamsV1 callParams;
callParams.iIdRestrict = CTelephony::EDontSendMyId;
CTelephony::TCallParamsV1Pckg callParamsPckg(callParams);

iTelephony->DialNewCall(iStatus, callParamsPckg, telNumber, iCallId);

if i use etelmm for older phones i use the following code:

Code:
RMobileCall::TMobileCallParamsV1 callParams;   
callParams.iIdRestrict = RMobileCall::EDontSendMyId;
RMobileCall::TMobileCallParamsV1Pckg callParamsPckg(callParams);
   
...

iCall.Dial(iStatus, callParamsPckg, iNumber);

the CTelephony solution works well, but with etelmm nothing happens - the caller id will be send.

1. can anybody say me what i do wrong on etelmm?

2. on the other hand i ask me if i can check the phone setting "send my caller id". does anybody know if there is a way to do this?

thx

Tue, 2007-02-27 16:10
Joined: 2007-02-27
Forum posts: 6
Re: send caller id - outgoing calls
Hi grapentin,

I ran into your second question today, and here's the way to detect it on Series60 Symbian 9.

Code:
/*
Retrieve value Settings>Call settings>Send my caller ID
0 for the "Set by network" setting
1 for "No"
2 for "Yes"
*/
#include <centralrepository.h>
TInt GetSendCallerIdL( void )
{
   const TUid KCRUidCallSettings = { 0x101F87E3 };
   TInt iValue;
   CRepository* iCr = CRepository::NewLC( KCRUidCallSettings );
   User::LeaveIfError( iCr->Get( 2, iValue ) );
   CleanupStack::PopAndDestroy( iCr );
   return iValue
}

Furthermore there's the option of getting the network's setting:
Code:
#include <Etel3rdParty.h>
class CInfoExtractor : public CActive
{
   TInt iRequest;
   CTelephony* iTelephony;
   CActiveSchedulerWait* iSchedWait;
   void RunL( void )
   {
      if( iStatus == KErrNone )
         iRequest++;
      else
         iRequest = -1;
      iSchedWait->AsyncStop();
   }
   void DoCancel( void )
   {
   }
   TInt AsyncResponse( void )
   {
      if ( iRequest == 1 )
         return 0; //Success
      else if ( iRequest == -1 )
         return -1; //Error
   }
public:
   CInfoExtractor( void ):CActive(EPriorityStandard)
   {
      CActiveScheduler::Add( this );
      iTelephony = CTelephony::NewL();
      iSchedWait = new CActiveSchedulerWait();
   }
   ~CInfoExtractor( void )
   {
      Cancel(); // ActiveObject
      delete iTelephony;
      delete iSchWait;
   }

   // return values for GetSendCallerIdL are -1 for error and the CTelephony::TIdentityServiceStatus values defined inf Etel3rdParty.h
   TInt GetSendCallerIdL( void )
   {
      iRequest = 0;
      CTelephony::TIdentityService iIdentityService = CTelephony::EIdServiceCallerRestriction;
      CTelephony::TIdentityServiceV1 iTIdentityServiceV1;
      CTelephony::TIdentityServiceV1Pckg iTIdentityServiceV1Pckg(iTIdentityServiceV1);
      iTelephony->GetIdentityServiceStatus( iStatus, iIdentityService, iTIdentityServiceV1Pckg );
      SetActive();
      iSchedWait->Start();
      if( AsyncResponse() != 0)
      {
         return iTIdentityServiceV1.iIdentityStatus;
      }
      return -1;// error
   }
};

Above snippets may not be entirely typo free, but then, you can't get any thing for free, right?   Undecided

Regards,
Jens
Fri, 2007-09-21 09:14
Joined: 2007-09-06
Forum posts: 4
Re: send caller id - outgoing calls

Hello..
I'm trying to get "Send my caller ID" value useing this code:

/*
Retrieve value Settings>Call settings>Send my caller ID
0 for the "Set by network" setting
1 for "No"
2 for "Yes"
*/
#include <centralrepository.h>
TInt GetSendCallerIdL( void )
{
  const TUid KCRUidCallSettings = { 0x101F87E3 };
  TInt iValue;
  CRepository* iCr = CRepository::NewLC( KCRUidCallSettings );
  User::LeaveIfError( iCr->Get( 2, iValue ) );
  CleanupStack::PopAndDestroy( iCr );
  return iValue
}

but on emulator is working and on phone i've got error -46
can any one give any solution?

Regards, X.

  • Login to reply to this topic.