diff -r 7b872347d83b -r 6d0b9f605b61 voipplugins/accountcreationplugin/engine/src/acpbrowserparams.cpp --- a/voipplugins/accountcreationplugin/engine/src/acpbrowserparams.cpp Tue Feb 02 00:05:57 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,373 +0,0 @@ -/* -* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). -* All rights reserved. -* This component and the accompanying materials are made available -* under the terms of "Eclipse Public License v1.0" -* which accompanies this distribution, and is available -* at the URL "http://www.eclipse.org/legal/epl-v10.html". -* -* Initial Contributors: -* Nokia Corporation - initial contribution. -* -* Contributors: -* -* Description: account creation plugin params source file -* -*/ - - -#include -#include // For getting network information. - -#include "acpbrowserparams.h" -#include "accountcreationpluginlogger.h" -#include "accountcreationengineconstants.h" - - -// --------------------------------------------------------------------------- -// CACPBrowserParams::NewL -// --------------------------------------------------------------------------- -// -CACPBrowserParams* CACPBrowserParams::NewL() - { - CACPBrowserParams* self = NewLC(); - CleanupStack::Pop(self); - return self; - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::NewLC -// --------------------------------------------------------------------------- -// -CACPBrowserParams* CACPBrowserParams::NewLC() - { - CACPBrowserParams* self = new (ELeave) CACPBrowserParams(); - CleanupStack::PushL(self); - self->ConstructL( ); - return self; - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::CACPBrowserParams -// --------------------------------------------------------------------------- -// -CACPBrowserParams::CACPBrowserParams() - { - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::~CACPBrowserParams -// --------------------------------------------------------------------------- -// -CACPBrowserParams::~CACPBrowserParams() - { - iPhone.Close(); - iTelServer.Close(); - -#ifdef __PLUG_AND_PLAY_MOBILE_SERVICES - delete iPnpUtil; -#endif - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::ConstructL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::ConstructL( ) - { - ACPLOG( "CACPBrowserParams::ConstructL begin" ); - -#ifdef __PLUG_AND_PLAY_MOBILE_SERVICES - // Create PnP utility class instance. - iPnpUtil = CPnpUtilImpl::NewLC(); - CleanupStack::Pop( iPnpUtil ); -#endif - - // Initialize the telephone server - User::LeaveIfError( iTelServer.Connect() ); - User::LeaveIfError( iTelServer.LoadPhoneModule( KPhoneModuleName ) ); - User::LeaveIfError( iPhone.Open( iTelServer, KPhoneName ) ); - - RetrieveParamsL(); - - ACPLOG( "CACPBrowserParams::ConstructL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrieveParamsL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrieveParamsL() - { - ACPLOG( "CACPBrowserParams::RetrieveParamsL begin" ); - - RetrievePhoneModel(); - RetrieveHomeNetworkInfoL(); - RetrieveSigningParamsL(); - RetrieveWlanMacAddress(); - RetrievePhoneInfoL(); - - ACPLOG( "CACPBrowserParams::RetrieveParamsL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrievePhoneModel -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrievePhoneModel() - { - ACPLOG( "CACPBrowserParams::RetrievePhoneModelL begin" ); - - RMobilePhone::TMobilePhoneIdentityV1 phoneIdentity; - TRequestStatus status( KRequestPending ); - iPhone.GetPhoneId( status, phoneIdentity ); - User::WaitForRequest( status ); - - iPhoneModel.Copy( phoneIdentity.iModel ); - - ACPLOG( "CACPBrowserParams::RetrievePhoneModelL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrieveHomeNetworkInfoL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrieveHomeNetworkInfoL() - { - ACPLOG( "CACPBrowserParams::RetrieveHomeNetworkInfoL begin" ); - - RMobilePhone::TMobilePhoneNetworkCountryCode homeMcc( KNullDesC ); - RMobilePhone::TMobilePhoneNetworkIdentity homeMnc( KNullDesC ); - - if ( RegisteredInNetwork() ) - { - ACPLOG( " - registered in network, fetch info" ); - iPnpUtil->FetchHomeNetworkInfoL(); - homeMcc = iPnpUtil->HomeMccL(); - homeMnc = iPnpUtil->HomeMncL(); - } - - _LIT( KZero, "0" ); - if ( homeMcc.Length() ) - { - iHomeMcc.Copy( homeMcc ); - } - else - { - iHomeMcc.Copy( KZero ); - } - - if ( homeMnc.Length() ) - { - iHomeMnc.Copy( homeMnc ); - } - else - { - iHomeMnc.Copy( KZero ); - } - - ACPLOG( "CACPBrowserParams::RetrieveHomeNetworkInfoL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrieveSigningParamsL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrieveSigningParamsL() - { - ACPLOG( "CACPBrowserParams::RetrieveSigningParamsL begin" ); - - // First reset nonce. - iNonce.Zero(); - -#ifdef __PLUG_AND_PLAY_MOBILE_SERVICES - // Create new nonce. - iPnpUtil->CreateNewNonceL( 0, iNonce ); - - // Get key info. - iPnpUtil->GetKeyInfoL( iKeyInfo ); -#endif - - ACPLOG( "CACPBrowserParams::RetrieveSigningParamsL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrieveWlanMacAddressL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrieveWlanMacAddress() - { - ACPLOG( "CACPBrowserParams::RetrieveWlanMacAddress begin" ); - - TBuf8 address; - - RProperty::Get( - KPSUidWlan, - KPSWlanMacAddress, - address ); - - for ( TInt counter = 0; counter < address.Length(); counter++ ) - { - TUint a = (TUint)address[counter]; - iWlanMACAddress.AppendNumFixedWidthUC( a, EHex, 2 ); - iWlanMACAddress.Append( KHyph ); - iWlanMACAddress.LowerCase(); - } - - // Delete the last ColonMark. - if ( iWlanMACAddress.Length() ) - { - iWlanMACAddress.Delete( iWlanMACAddress.Length() -1, 1 ); - } - - ACPLOG( "CACPBrowserParams::RetrieveWlanMacAddress end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::GetParameters -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::GetParameters( TDes& aUrl ) - { - ACPLOG2( "CACPBrowserParams::GetParameters begin: %S", &aUrl ); - - if ( aUrl.Find( KQuestionMark ) != KErrNotFound ) - { - aUrl.Append( KAmperSand ); - } - else - { - aUrl.Append( KQuestionMark ); - } - - // Home MNC. - aUrl.Append( KMnc ); - aUrl.Append( KPlacing ); - if( iHomeMnc != KNullDesC ) - { - aUrl.Append( iHomeMnc ); - } - else - { - aUrl.Append( _L("0") ); - } - - aUrl.Append( KAmperSand ); - - // Home MCC. - aUrl.Append( KMcc ); - aUrl.Append( KPlacing ); - if( iHomeMcc != KNullDesC ) - { - aUrl.Append( iHomeMcc ); - } - else - { - aUrl.Append( _L("0") ); - } - - aUrl.Append( KAmperSand ); - - // Nonce. - aUrl.Append( KNonce ); - aUrl.Append( KPlacing ); - - TBuf nonce16; - nonce16.Copy( iNonce ); - aUrl.Append( nonce16 ); - - aUrl.Append( KAmperSand ); - - // Key Info. - aUrl.Append( KKeyInfo ); - aUrl.Append( KPlacing ); - - TBuf keyInfo16; - keyInfo16.Copy( iKeyInfo ); - aUrl.Append( keyInfo16 ); - - aUrl.Append( KAmperSand ); - - // Phone Model. - aUrl.Append( KDeviceInfo ); - aUrl.Append( KPlacing ); - aUrl.Append( iPhoneModel ); - - // SType value is 2 - aUrl.Append( KAmperSand ); - aUrl.Append( KsType ); - aUrl.Append( KPlacing ); - aUrl.Append( KCharacterTwo ); - - // client version - aUrl.Append( KAmperSand ); - aUrl.Append( KcVersion ); - aUrl.Append( KPlacing ); - aUrl.Append( KValuecVersion ); - - // IMEI - aUrl.Append( KAmperSand ); - aUrl.Append( KImei ); - aUrl.Append( KPlacing ); - aUrl.Append( iImei ); - - // Variant - aUrl.Append( KAmperSand ); - aUrl.Append( KVariant ); - aUrl.Append( KPlacing ); - aUrl.Append( iVariant ); - - ACPLOG2( "CACPBrowserParams::GetParameters end: %S", &aUrl ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RetrievePhoneInfoL -// --------------------------------------------------------------------------- -// -void CACPBrowserParams::RetrievePhoneInfoL() - { - ACPLOG( "CACPBrowserParams::RetrievePhoneInfoL begin" ); - - // Get IMEI. - RMobilePhone::TMobilePhoneIdentityV1 id; - - TRequestStatus status; - iPhone.GetPhoneId( status, id ); - User::WaitForRequest( status ); - - iImei.Copy( id.iSerialNumber ); - - // Get product code. - SysVersionInfo::GetVersionInfo( SysVersionInfo::EProductCode, iVariant ); - - ACPLOG( "CACPBrowserParams::RetrievePhoneInfoL end" ); - } - -// --------------------------------------------------------------------------- -// CACPBrowserParams::RegisteredInNetworkL -// --------------------------------------------------------------------------- -// -TBool CACPBrowserParams::RegisteredInNetwork() - { - ACPLOG( "CACPBrowserParams::RegisteredInNetwork begin" ); - // Get registeration status - TRequestStatus status; - RMobilePhone::TMobilePhoneRegistrationStatus regStatus( - RMobilePhone::ERegistrationUnknown ); - iPhone.GetNetworkRegistrationStatus( status, regStatus ); - ACPLOG2( " - network registration status %d", regStatus ); - User::WaitForRequest( status ); - if ( RMobilePhone::ERegistrationUnknown == regStatus || - RMobilePhone::ENotRegisteredNoService == regStatus || - RMobilePhone::ENotRegisteredEmergencyOnly == regStatus || - RMobilePhone::ENotRegisteredSearching == regStatus ) - { - ACPLOG( "CACPBrowserParams::RegisteredInNetwork end" ); - return EFalse; - } - ACPLOG( "CACPBrowserParams::RegisteredInNetwork end" ); - return ETrue; - } - - -// End of file.