telephonyserverplugins/common_tsy/commontsy/src/mmgsmwcdma/cmmcallgsmwcdmaext.cpp
changeset 42 3adadc800673
parent 23 6b1d113cdff3
child 64 b34bb05ac869
equal deleted inserted replaced
31:8ab6687fb94c 42:3adadc800673
     1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
     1 // Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
     2 // All rights reserved.
     2 // All rights reserved.
     3 // This component and the accompanying materials are made available
     3 // This component and the accompanying materials are made available
     4 // under the terms of "Eclipse Public License v1.0"
     4 // under the terms of "Eclipse Public License v1.0"
     5 // which accompanies this distribution, and is available
     5 // which accompanies this distribution, and is available
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
    12 //
    12 //
    13 // Description:
    13 // Description:
    14 //
    14 //
    15 
    15 
    16 
    16 
       
    17 
       
    18 
       
    19 #include "OstTraceDefinitions.h"
       
    20 #ifdef OST_TRACE_COMPILER_IN_USE
       
    21 #include "cmmcallgsmwcdmaextTraces.h"
       
    22 #endif
    17 
    23 
    18 #include "cmmcallgsmwcdmaext.h"
    24 #include "cmmcallgsmwcdmaext.h"
    19 #include <featureuids.h>
    25 #include <featureuids.h>
    20 #include "cmmphonetsy.h"
    26 #include "cmmphonetsy.h"
    21 #include "cmmcalllist.h"
    27 #include "cmmcalllist.h"
    22 #include "cmmconferencecalltsy.h"
    28 #include "cmmconferencecalltsy.h"
    23 #include "cmmconferencecallgsmwcdmaext.h"
    29 #include "cmmconferencecallgsmwcdmaext.h"
    24 #include <ctsy/pluginapi/cmmdatapackage.h>
    30 #include <ctsy/pluginapi/cmmdatapackage.h>
    25 #include "cmmmessagemanagerbase.h"
    31 #include "cmmmessagemanagerbase.h"
    26 #include <ctsy/tflogger.h>
       
    27 
    32 
    28 #include "cmmvoicecalltsy.h"
    33 #include "cmmvoicecalltsy.h"
    29 
    34 
    30 //csd includes
    35 //csd includes
    31 #include "cmmdatacalltsy.h"
    36 #include "cmmdatacalltsy.h"
   235     RMobilePhone::TMobileService aCallMode,
   240     RMobilePhone::TMobileService aCallMode,
   236     const TDesC8* aCallParams,
   241     const TDesC8* aCallParams,
   237     const TDesC* aTelNumber,
   242     const TDesC* aTelNumber,
   238     TInt aExtensionId )
   243     TInt aExtensionId )
   239     {
   244     {
   240 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::DialL extensionid %d", aExtensionId );
   245 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_1, "TSY: CMmCallGsmWcdmaExt::DialL extensionid %d", aExtensionId );
   241 
   246 
   242     // Reset iCallParams extended members 
   247     // Reset iCallParams extended members 
   243     iCallParams.iAlphaId.Zero();
   248     iCallParams.iAlphaId.Zero();
   244     iCallParams.iIconId.iQualifier = RMobileCall::EIconQualifierNotSet;
   249     iCallParams.iIconId.iQualifier = RMobileCall::EIconQualifierNotSet;
   245     iCallParams.iIconId.iIdentifier = 0x00;
   250     iCallParams.iIconId.iIdentifier = 0x00;
   261         reinterpret_cast<RCall::TCallParamsPckg*>(const_cast<TDesC8*>( aCallParams ) ); 
   266         reinterpret_cast<RCall::TCallParamsPckg*>(const_cast<TDesC8*>( aCallParams ) ); 
   262 
   267 
   263     RCall::TCallParams& callParams = ( *callParamsPckg )();
   268     RCall::TCallParams& callParams = ( *callParamsPckg )();
   264     
   269     
   265     TInt extensionId( callParams.ExtensionId() );
   270     TInt extensionId( callParams.ExtensionId() );
   266 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::DialL callParams.extensionId %d ", extensionId);
   271 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_2, "TSY: CMmCallGsmWcdmaExt::DialL callParams.extensionId %d ", extensionId);
   267 
   272 
   268     if( ( RMobileCall::KETelMobileCallParamsV1 == extensionId ) || 
   273     if( ( RMobileCall::KETelMobileCallParamsV1 == extensionId ) || 
   269     		( RMobileCall::KETelMobileCallParamsV2 == extensionId ))
   274     		( RMobileCall::KETelMobileCallParamsV2 == extensionId ))
   270         {
   275         {
   271 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL callparams V1, V2");
   276 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_3, "TSY: CMmCallGsmWcdmaExt::DialL callparams V1, V2");
   272 
   277 
   273         iCallParams.iSpeakerControl = callParams.iSpeakerControl;
   278         iCallParams.iSpeakerControl = callParams.iSpeakerControl;
   274 
   279 
   275         iCallParams.iSpeakerVolume = callParams.iSpeakerVolume;
   280         iCallParams.iSpeakerVolume = callParams.iSpeakerVolume;
   276         iCallParams.iInterval = callParams.iInterval;
   281         iCallParams.iInterval = callParams.iInterval;
   286         iCallParams.iCug.iSuppressOA = params1.iCug.iSuppressOA;
   291         iCallParams.iCug.iSuppressOA = params1.iCug.iSuppressOA;
   287         iCallParams.iCug.iSuppressPrefCug = params1.iCug.iSuppressPrefCug;        
   292         iCallParams.iCug.iSuppressPrefCug = params1.iCug.iSuppressPrefCug;        
   288 
   293 
   289         if ( RMobileCall::KETelMobileCallParamsV2 == extensionId ) 
   294         if ( RMobileCall::KETelMobileCallParamsV2 == extensionId ) 
   290             {
   295             {
   291     TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL callparams V2");
   296     OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_4, "TSY: CMmCallGsmWcdmaExt::DialL callparams V2");
   292             RMobileCall::TMobileCallParamsV2Pckg* paramsPckgV2 = 
   297             RMobileCall::TMobileCallParamsV2Pckg* paramsPckgV2 = 
   293                 reinterpret_cast<RMobileCall::TMobileCallParamsV2Pckg*>( 
   298                 reinterpret_cast<RMobileCall::TMobileCallParamsV2Pckg*>( 
   294                 const_cast<TDesC8*>( aCallParams ) );
   299                 const_cast<TDesC8*>( aCallParams ) );
   295             
   300             
   296             RMobileCall::TMobileCallParamsV2& params2 = (*paramsPckgV2)();
   301             RMobileCall::TMobileCallParamsV2& params2 = (*paramsPckgV2)();
   298             }
   303             }
   299         }
   304         }
   300 
   305 
   301     else if( RMobileCall::KETelMobileCallParamsV7 == extensionId )
   306     else if( RMobileCall::KETelMobileCallParamsV7 == extensionId )
   302         {
   307         {
   303 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL callparams V7");        
   308 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_5, "TSY: CMmCallGsmWcdmaExt::DialL callparams V7");
   304         RMobileCall::TMobileCallParamsV7Pckg* paramsPckgV7 = 
   309         RMobileCall::TMobileCallParamsV7Pckg* paramsPckgV7 = 
   305             reinterpret_cast<RMobileCall::TMobileCallParamsV7Pckg*>( 
   310             reinterpret_cast<RMobileCall::TMobileCallParamsV7Pckg*>( 
   306             const_cast<TDesC8*>( aCallParams ) );
   311             const_cast<TDesC8*>( aCallParams ) );
   307 
   312 
   308         iCallParams = ( *paramsPckgV7 )();
   313         iCallParams = ( *paramsPckgV7 )();
   309         }
   314         }
   310     else
   315     else
   311         {
   316         {
   312 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL callparams version unknown");
   317 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_6, "TSY: CMmCallGsmWcdmaExt::DialL callparams version unknown");
   313         iCallParams.iSpeakerControl = callParams.iSpeakerControl;
   318         iCallParams.iSpeakerControl = callParams.iSpeakerControl;
   314         iCallParams.iSpeakerVolume = callParams.iSpeakerVolume;
   319         iCallParams.iSpeakerVolume = callParams.iSpeakerVolume;
   315         iCallParams.iInterval = callParams.iInterval;
   320         iCallParams.iInterval = callParams.iInterval;
   316         iCallParams.iWaitForDialTone = callParams.iWaitForDialTone;
   321         iCallParams.iWaitForDialTone = callParams.iWaitForDialTone;
   317         //default unknown values
   322         //default unknown values
   346     if ( KETelExt3rdPartyV1 == aExtensionId )
   351     if ( KETelExt3rdPartyV1 == aExtensionId )
   347     	{
   352     	{
   348         //Pack call parameters and mobile call info
   353         //Pack call parameters and mobile call info
   349         // Use argument parameters since TMobileCallParamsV7 does not inherit from 3rd party params.
   354         // Use argument parameters since TMobileCallParamsV7 does not inherit from 3rd party params.
   350         package.PackData(const_cast<TDesC8*>(aCallParams), &iMobileCallInfo);
   355         package.PackData(const_cast<TDesC8*>(aCallParams), &iMobileCallInfo);
   351 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL: KETelExt3rdPartyV1");
   356 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_7, "TSY: CMmCallGsmWcdmaExt::DialL: KETelExt3rdPartyV1");
   352     	//if it is a 3rd party client
   357     	//if it is a 3rd party client
   353     	return iMessageManager->HandleRequestL( EMobileCallDialISV, 
   358     	return iMessageManager->HandleRequestL( EMobileCallDialISV, 
   354             &package );
   359             &package );
   355     	}
   360     	}
   356         
   361         
   358     else if ( KMultimodeCallTypeIDNoFdnCheck == aExtensionId )
   363     else if ( KMultimodeCallTypeIDNoFdnCheck == aExtensionId )
   359         {
   364         {
   360         //Pack call parameters and mobile call info
   365         //Pack call parameters and mobile call info
   361         TPckg<RMobileCall::TMobileCallParamsV7> pckgToSend(iCallParams); 
   366         TPckg<RMobileCall::TMobileCallParamsV7> pckgToSend(iCallParams); 
   362         package.PackData(  &pckgToSend , &iMobileCallInfo );
   367         package.PackData(  &pckgToSend , &iMobileCallInfo );
   363 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL: KMultimodeCallTypeIDNoFdnCheck");
   368 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_8, "TSY: CMmCallGsmWcdmaExt::DialL: KMultimodeCallTypeIDNoFdnCheck");
   364         return iMessageManager->HandleRequestL( 
   369         return iMessageManager->HandleRequestL( 
   365             EMobileCallDialNoFdnCheck, &package );
   370             EMobileCallDialNoFdnCheck, &package );
   366         }    
   371         }    
   367     else
   372     else
   368         {
   373         {
   369         //Pack call parameters and mobile call info
   374         //Pack call parameters and mobile call info
   370         TPckg<RMobileCall::TMobileCallParamsV7> pckgToSend(iCallParams); 
   375         TPckg<RMobileCall::TMobileCallParamsV7> pckgToSend(iCallParams); 
   371         package.PackData(  &pckgToSend , &iMobileCallInfo );
   376         package.PackData(  &pckgToSend , &iMobileCallInfo );
   372 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialL: EEtelCallDial");    	    
   377 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALL_9, "TSY: CMmCallGsmWcdmaExt::DialL: EEtelCallDial");
   373     	return iMessageManager->HandleRequestL( EEtelCallDial, &package );
   378     	return iMessageManager->HandleRequestL( EEtelCallDial, &package );
   374     	}
   379     	}
   375 
   380 
   376     }
   381     }
   377 
   382 
  1153     	 	params.iAlphaId = iCallParams.iAlphaId;
  1158     	 	params.iAlphaId = iCallParams.iAlphaId;
  1154 	 	
  1159 	 	
  1155             }
  1160             }
  1156         else
  1161         else
  1157         	{
  1162         	{
  1158         	TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::GetCallParams callparams version unknown");
  1163         	OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_GETCALLPARAMS_1, "TSY: CMmCallGsmWcdmaExt::GetCallParams callparams version unknown");
  1159         	}
  1164         	}
  1160 
  1165 
  1161         }
  1166         }
  1162     else
  1167     else
  1163     	{
  1168     	{
  1304 	        hscsdParams8.iBearerCap1 = hscsdCallParamsV8->iBearerCap1;
  1309 	        hscsdParams8.iBearerCap1 = hscsdCallParamsV8->iBearerCap1;
  1305 	        hscsdParams8.iBearerCap2 = hscsdCallParamsV8->iBearerCap2;
  1310 	        hscsdParams8.iBearerCap2 = hscsdCallParamsV8->iBearerCap2;
  1306 	        hscsdParams8.iBCRepeatIndicator = hscsdCallParamsV8->iBCRepeatIndicator;
  1311 	        hscsdParams8.iBCRepeatIndicator = hscsdCallParamsV8->iBCRepeatIndicator;
  1307 	          
  1312 	          
  1308 	        }
  1313 	        }
  1309 	    TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::GetCallParams callparams version unknown");
  1314 	    OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_GETCALLPARAMS_2, "TSY: CMmCallGsmWcdmaExt::GetCallParams callparams version unknown");
  1310 	    
  1315 	    
  1311     	}
  1316     	}
  1312        
  1317        
  1313     }
  1318     }
  1314 
  1319 
  1548         RMobileCall::EStatusHold );
  1553         RMobileCall::EStatusHold );
  1549 
  1554 
  1550     if ( mmCall )
  1555     if ( mmCall )
  1551         {
  1556         {
  1552         // Held call Id
  1557         // Held call Id
  1553 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::Transfer, CallId: %d", \
  1558 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_TRANSFERL_1, "TSY: CMmCallGsmWcdmaExt::Transfer, CallId: %d", mmCall->CallId() );
  1554             mmCall->CallId() );
       
  1555 
  1559 
  1556         //Create package
  1560         //Create package
  1557         CCallDataPackage package;
  1561         CCallDataPackage package;
  1558         //Set call id and call mode
  1562         //Set call id and call mode
  1559         package.SetCallIdAndMode( mmCall->CallId(), iSymbianCallMode );
  1563         package.SetCallIdAndMode( mmCall->CallId(), iSymbianCallMode );
  1598 // ---------------------------------------------------------------------------
  1602 // ---------------------------------------------------------------------------
  1599 //
  1603 //
  1600 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV3(
  1604 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV3(
  1601     RMobileCall::TMobileCallInfoV3* aInfoV3 )
  1605     RMobileCall::TMobileCallInfoV3* aInfoV3 )
  1602     {
  1606     {
  1603 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV3 - extensionid=%d", aInfoV3->ExtensionId() );    
  1607 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_FILLMOBILECALLINFOV3_1, "TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV3 - extensionid=%d", aInfoV3->ExtensionId() );
  1604     
  1608     
  1605     // V3 info parameters
  1609     // V3 info parameters
  1606     aInfoV3->iSecurity = iMobileCallInfo.iSecurity;
  1610     aInfoV3->iSecurity = iMobileCallInfo.iSecurity;
  1607     
  1611     
  1608     return KErrNone;
  1612     return KErrNone;
  1615 // ---------------------------------------------------------------------------
  1619 // ---------------------------------------------------------------------------
  1616 //
  1620 //
  1617 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV7(
  1621 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV7(
  1618     RMobileCall::TMobileCallInfoV7* aInfoV7 )
  1622     RMobileCall::TMobileCallInfoV7* aInfoV7 )
  1619     {
  1623     {
  1620 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV7 - extensionid=%d", aInfoV7->ExtensionId() );
  1624 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_FILLMOBILECALLINFOV7_1, "TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV7 - extensionid=%d", aInfoV7->ExtensionId() );
  1621         
  1625         
  1622     // V7 info parameters
  1626     // V7 info parameters
  1623     // TCallParamOrigin iCallParamOrigin;    
  1627     // TCallParamOrigin iCallParamOrigin;    
  1624     aInfoV7->iCallParamOrigin =           iMobileCallInfo.iCallParamOrigin;
  1628     aInfoV7->iCallParamOrigin =           iMobileCallInfo.iCallParamOrigin;
  1625     // TIconId iIconId;
  1629     // TIconId iIconId;
  1641 // ---------------------------------------------------------------------------
  1645 // ---------------------------------------------------------------------------
  1642 //
  1646 //
  1643 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV8(
  1647 TInt CMmCallGsmWcdmaExt::FillMobileCallInfoV8(
  1644     RMobileCall::TMobileCallInfoV8* aInfoV8 )
  1648     RMobileCall::TMobileCallInfoV8* aInfoV8 )
  1645     {
  1649     {
  1646 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV8 - extensionid=%d", aInfoV8->ExtensionId() );
  1650 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_FILLMOBILECALLINFOV8_1, "TSY: CMmCallGsmWcdmaExt::FillMobileCallInfoV8 - extensionid=%d", aInfoV8->ExtensionId() );
  1647    
  1651    
  1648     // V8 info parameters
  1652     // V8 info parameters
  1649     aInfoV8->iSubAddress = iMobileCallInfo.iSubAddress;
  1653     aInfoV8->iSubAddress = iMobileCallInfo.iSubAddress;
  1650     aInfoV8->iBearerCap1 = iMobileCallInfo.iBearerCap1;
  1654     aInfoV8->iBearerCap1 = iMobileCallInfo.iBearerCap1;
  1651     aInfoV8->iBearerCap2 = iMobileCallInfo.iBearerCap2;
  1655     aInfoV8->iBearerCap2 = iMobileCallInfo.iBearerCap2;
  1683 void CMmCallGsmWcdmaExt::SetRfState(
  1687 void CMmCallGsmWcdmaExt::SetRfState(
  1684     TRfStateInfo aMtcState, 
  1688     TRfStateInfo aMtcState, 
  1685     MCtsySsmPluginCallback* aSsmPluginCallback,
  1689     MCtsySsmPluginCallback* aSsmPluginCallback,
  1686     TCtsySsmCallbackData& aCallbackData  )
  1690     TCtsySsmCallbackData& aCallbackData  )
  1687     {
  1691     {
  1688 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::SetRfState - state=%d", aMtcState );
  1692 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SETRFSTATE_1, "TSY: CMmCallGsmWcdmaExt::SetRfState - state=%d", aMtcState );
  1689 
  1693 
  1690     TInt err ( KErrNotSupported );  
  1694     TInt err ( KErrNotSupported );  
  1691     if ( (iUsingFeatureManager) && (iFeatureControl.FeatureSupported(NFeature::KEmergencyCallsEnabledInOfflineMode ) == KFeatureSupported) )
  1695     if ( (iUsingFeatureManager) && (iFeatureControl.FeatureSupported(NFeature::KEmergencyCallsEnabledInOfflineMode ) == KFeatureSupported) )
  1692         {
  1696         {
  1693         if (!iSystemStatePluginHandler)
  1697         if (!iSystemStatePluginHandler)
  1709        		{
  1713        		{
  1710        		iSystemStatePluginHandler->DeactivateRfAfterEmergencyCall();
  1714        		iSystemStatePluginHandler->DeactivateRfAfterEmergencyCall();
  1711        		}
  1715        		}
  1712        	else
  1716        	else
  1713        		{
  1717        		{
  1714        		TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::SetRfState - bad state");
  1718        		OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SETRFSTATE_2, "TSY: CMmCallGsmWcdmaExt::SetRfState - bad state");
  1715        		// pass this error to callback
  1719        		// pass this error to callback
  1716        		SsmPluginCallback (KErrArgument, aCallbackData);
  1720        		SsmPluginCallback (KErrArgument, aCallbackData);
  1717        		}        		
  1721        		}        		
  1718         }  
  1722         }  
  1719      else
  1723      else
  1820         
  1824         
  1821         if(RMobileCall::KCallSecurity & mobileCallInfo->iValid)
  1825         if(RMobileCall::KCallSecurity & mobileCallInfo->iValid)
  1822         	{
  1826         	{
  1823         	// V3 parameters
  1827         	// V3 parameters
  1824 	        iMobileCallInfo.iSecurity = mobileCallInfoV3->iSecurity;
  1828 	        iMobileCallInfo.iSecurity = mobileCallInfoV3->iSecurity;
  1825 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::SetMobileCallData V3 params copied");         
  1829 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SETMOBILECALLDATA_1, "TSY: CMmCallGsmWcdmaExt::SetMobileCallData V3 params copied");
  1826         	}
  1830         	}
  1827         }
  1831         }
  1828         
  1832         
  1829     // TMobileCallInfoV7
  1833     // TMobileCallInfoV7
  1830     if ( (KEtelExtMultimodeV7 == extensionId) || (KEtelExtMultimodeV8 == extensionId))
  1834     if ( (KEtelExtMultimodeV7 == extensionId) || (KEtelExtMultimodeV8 == extensionId))
  1859         	// TBool iParamsCallControlModified;
  1863         	// TBool iParamsCallControlModified;
  1860 	        iMobileCallInfo.iParamsCallControlModified = mobileCallInfoV7->iParamsCallControlModified;
  1864 	        iMobileCallInfo.iParamsCallControlModified = mobileCallInfoV7->iParamsCallControlModified;
  1861         	}
  1865         	}
  1862        
  1866        
  1863         
  1867         
  1864 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::SetMobileCallData V7 params copied"); 
  1868 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SETMOBILECALLDATA_2, "TSY: CMmCallGsmWcdmaExt::SetMobileCallData V7 params copied");
  1865         }
  1869         }
  1866         
  1870         
  1867     // TMobileCallInfoV8
  1871     // TMobileCallInfoV8
  1868 	if ( KEtelExtMultimodeV8 == extensionId )
  1872 	if ( KEtelExtMultimodeV8 == extensionId )
  1869 	    {
  1873 	    {
  1890 	    if(RMobileCall::KCallBCRepeatIndicator & mobileCallInfo->iValid) 
  1894 	    if(RMobileCall::KCallBCRepeatIndicator & mobileCallInfo->iValid) 
  1891         	{
  1895         	{
  1892         	iMobileCallInfo.iBCRepeatIndicator = mobileCallInfoV8->iBCRepeatIndicator;
  1896         	iMobileCallInfo.iBCRepeatIndicator = mobileCallInfoV8->iBCRepeatIndicator;
  1893         	}	 
  1897         	}	 
  1894 	    
  1898 	    
  1895 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::SetMobileCallData V8 params copied"); 
  1899 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SETMOBILECALLDATA_3, "TSY: CMmCallGsmWcdmaExt::SetMobileCallData V8 params copied");
  1896 	       }
  1900 	       }
  1897 	
  1901 	
  1898 	//update validity flags
  1902 	//update validity flags
  1899 	iMobileCallInfo.iValid |= mobileCallInfo->iValid;
  1903 	iMobileCallInfo.iValid |= mobileCallInfo->iValid;
  1900     
  1904     
  2021                // get extensionid from the recieved data
  2025                // get extensionid from the recieved data
  2022                TInt extensionId( infoParams.ExtensionId() );
  2026                TInt extensionId( infoParams.ExtensionId() );
  2023 
  2027 
  2024                if (KETelExtMultimodeV1 == extensionId )
  2028                if (KETelExtMultimodeV1 == extensionId )
  2025                    {
  2029                    {
  2026 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV1");                   
  2030 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_GETCURRENTHSCSDINFO_1, "TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV1");
  2027                    RMobileCall::TMobileCallHscsdInfoV1Pckg* hscsdInfoPckg =
  2031                    RMobileCall::TMobileCallHscsdInfoV1Pckg* hscsdInfoPckg =
  2028                        REINTERPRET_CAST( RMobileCall::TMobileCallHscsdInfoV1Pckg*,
  2032                        REINTERPRET_CAST( RMobileCall::TMobileCallHscsdInfoV1Pckg*,
  2029                        aHSCSDInfo );
  2033                        aHSCSDInfo );
  2030                    RMobileCall::TMobileCallHscsdInfoV1& hscsdInfo =
  2034                    RMobileCall::TMobileCallHscsdInfoV1& hscsdInfo =
  2031                        ( *hscsdInfoPckg )();
  2035                        ( *hscsdInfoPckg )();
  2037                    hscsdInfo.iTxTimeSlots = iCurrentHSCSDInfo->iTxTimeSlots;
  2041                    hscsdInfo.iTxTimeSlots = iCurrentHSCSDInfo->iTxTimeSlots;
  2038                    }
  2042                    }
  2039             
  2043             
  2040                else if (KEtelExtMultimodeV7 == extensionId )
  2044                else if (KEtelExtMultimodeV7 == extensionId )
  2041                    {
  2045                    {
  2042 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV7");                  
  2046 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_GETCURRENTHSCSDINFO_2, "TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV7");
  2043                    RMobileCall::TMobileCallHscsdInfoV7Pckg* hscsdInfoPckg7 =
  2047                    RMobileCall::TMobileCallHscsdInfoV7Pckg* hscsdInfoPckg7 =
  2044                        ( RMobileCall::TMobileCallHscsdInfoV7Pckg* )aHSCSDInfo;
  2048                        ( RMobileCall::TMobileCallHscsdInfoV7Pckg* )aHSCSDInfo;
  2045                    RMobileCall::TMobileCallHscsdInfoV7& hscsdInfoV7 =
  2049                    RMobileCall::TMobileCallHscsdInfoV7& hscsdInfoV7 =
  2046                        ( *hscsdInfoPckg7 )();
  2050                        ( *hscsdInfoPckg7 )();
  2047                 
  2051                 
  2062                        iCurrentHSCSDInfo->iParamsCallControlModified;
  2066                        iCurrentHSCSDInfo->iParamsCallControlModified;
  2063                    }     
  2067                    }     
  2064             
  2068             
  2065                else if (KEtelExtMultimodeV8 == extensionId )
  2069                else if (KEtelExtMultimodeV8 == extensionId )
  2066                    {
  2070                    {
  2067 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV8");                  
  2071 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_GETCURRENTHSCSDINFO_3, "TSY: CMmCallGsmWcdmaExt::GetCurrentHscsdInfo - KETelMobileHscsdCallParamsV8");
  2068                    RMobileCall::TMobileCallHscsdInfoV8Pckg* hscsdInfoPckg8 =
  2072                    RMobileCall::TMobileCallHscsdInfoV8Pckg* hscsdInfoPckg8 =
  2069                        ( RMobileCall::TMobileCallHscsdInfoV8Pckg* )aHSCSDInfo;
  2073                        ( RMobileCall::TMobileCallHscsdInfoV8Pckg* )aHSCSDInfo;
  2070                    RMobileCall::TMobileCallHscsdInfoV8& hscsdInfoV8 =
  2074                    RMobileCall::TMobileCallHscsdInfoV8& hscsdInfoV8 =
  2071                        ( *hscsdInfoPckg8 )();
  2075                        ( *hscsdInfoPckg8 )();
  2072                 
  2076                 
  2126 TInt CMmCallGsmWcdmaExt::DialDataCallL(
  2130 TInt CMmCallGsmWcdmaExt::DialDataCallL(
  2127     RMobilePhone::TMobileService aCallMode,
  2131     RMobilePhone::TMobileService aCallMode,
  2128     const TDesC8* aCallParams,
  2132     const TDesC8* aCallParams,
  2129     const TDesC* aTelNumber )
  2133     const TDesC* aTelNumber )
  2130     {
  2134     {
  2131 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialDataCallL");
  2135 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALDATACALLL_1, "TSY: CMmCallGsmWcdmaExt::DialDataCallL");
  2132 TFLOGSTRING2("TSY: CMmCallGsmWcdmaExt::DialDataCallL aCallMode: %d", aCallMode);
  2136 OstTraceDef1(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALDATACALLL_2, "TSY: CMmCallGsmWcdmaExt::DialDataCallL aCallMode: %d", aCallMode);
  2133 
  2137 
  2134 	iMobileCallInfo.iDialledParty.iTelNumber.Copy( *aTelNumber );
  2138 	iMobileCallInfo.iDialledParty.iTelNumber.Copy( *aTelNumber );
  2135 	iMobileCallInfo.iDialledParty.iNumberPlan =
  2139 	iMobileCallInfo.iDialledParty.iNumberPlan =
  2136 		RMobilePhone::EUnknownNumberingPlan;
  2140 		RMobilePhone::EUnknownNumberingPlan;
  2137 	iMobileCallInfo.iDialledParty.iTypeOfNumber =
  2141 	iMobileCallInfo.iDialledParty.iTypeOfNumber =
  2367         package.PackData( const_cast<TDesC8*>( aCallParams ), &iMobileCallInfo );
  2371         package.PackData( const_cast<TDesC8*>( aCallParams ), &iMobileCallInfo );
  2368         }
  2372         }
  2369     
  2373     
  2370     if( KMultimodeCallTypeIDNoFdnCheck == iMmCallTsy->GetDialTypeId() )
  2374     if( KMultimodeCallTypeIDNoFdnCheck == iMmCallTsy->GetDialTypeId() )
  2371         {
  2375         {
  2372 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialDataCallL: EMobileCallDialNoFdnCheck");                      
  2376 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALDATACALLL_3, "TSY: CMmCallGsmWcdmaExt::DialDataCallL: EMobileCallDialNoFdnCheck");
  2373         //Send request to the Domestic OS layer.
  2377         //Send request to the Domestic OS layer.
  2374         return iMessageManager->HandleRequestL( EMobileCallDialNoFdnCheck, &package );
  2378         return iMessageManager->HandleRequestL( EMobileCallDialNoFdnCheck, &package );
  2375         }
  2379         }
  2376     else
  2380     else
  2377         {
  2381         {
  2378 TFLOGSTRING("TSY: CMmCallGsmWcdmaExt::DialDataCallL: EEtelCallDial");          
  2382 OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_DIALDATACALLL_4, "TSY: CMmCallGsmWcdmaExt::DialDataCallL: EEtelCallDial");
  2379         //Send request to the Domestic OS layer.
  2383         //Send request to the Domestic OS layer.
  2380         return iMessageManager->HandleRequestL( EEtelCallDial, &package );
  2384         return iMessageManager->HandleRequestL( EEtelCallDial, &package );
  2381         }        
  2385         }        
  2382 
  2386 
  2383     }
  2387     }
  2980 	{
  2984 	{
  2981 	TInt result (aResult);
  2985 	TInt result (aResult);
  2982 	
  2986 	
  2983 	if ( KErrNone == aResult )
  2987 	if ( KErrNone == aResult )
  2984     	{
  2988     	{
  2985 		TFLOGSTRING ("TSY:CMmCallGsmWcdmaExt::SsmPluginCallback: Dialing...");
  2989 		OstTraceDef0(OST_TRACE_CATEGORY_DEBUG, TRACE_INTERNALS, CMMCALLGSMWCDMAEXT_SSMPLUGINCALLBACK_1, "TSY:CMmCallGsmWcdmaExt::SsmPluginCallback: Dialing...");
  2986 		
  2990 		
  2987 		//at this point the RF should be enabled in all cases
  2991 		//at this point the RF should be enabled in all cases
  2988 		TRAPD(err, result = iMessageManager->HandleRequestL(
  2992 		TRAPD(err, result = iMessageManager->HandleRequestL(
  2989          		EMobileCallDialEmergencyCall, &aCallbackData.iNumberPackage ));
  2993          		EMobileCallDialEmergencyCall, &aCallbackData.iNumberPackage ));
  2990         if (KErrNone != err)
  2994         if (KErrNone != err)