📄 etelagsm.h
字号:
//
class CGsmNetworkList;
class MAdvGsmPhoneNetwork
{
public:
virtual CGsmNetworkList* RetrievePreferredNetworksLC()=0;
virtual TInt StorePreferredNetworksL(CGsmNetworkList* aNetworkList) const=0;
virtual void StorePreferredNetworksL(TRequestStatus& aReqStatus, CGsmNetworkList* aNetworkList) const=0;
virtual void StorePreferredNetworksCancel() const=0;
virtual void NotifyPreferredNetworksChanged(TRequestStatus& aReqStatus) const=0;
virtual void NotifyPreferredNetworksChangedCancel() const=0;
virtual TInt GetHomeNetworkInfo(RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
virtual void GetHomeNetworkInfo(TRequestStatus& aReqStatus, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
virtual void GetHomeNetworkInfoCancel() const=0;
//
// Interrogation of "Master list" of Networks stored on ME
//
virtual TInt EnumerateMasterListNetworks(TInt& aPhoneNetworks) const=0;
virtual void EnumerateMasterListNetworks(TRequestStatus& aReqStatus, TInt& aPhoneNetworks) const=0;
virtual void EnumerateMasterListNetworksCancel() const=0;
virtual TInt GetMasterListNetworkInfo(const TInt aIndex, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
virtual void GetMasterListNetworkInfo(TRequestStatus& aReqStatus, const TInt aIndex, RBasicGsmPhone::TNetworkInfo& aNetworkInfo) const=0;
virtual void GetMasterListNetworkInfoCancel() const=0;
virtual CGsmNetworkList* GetMultipleMasterNetworkInfoLC(const TInt aIndexFrom, const TInt aIndexTo)=0;
//
// Server/TSY internal struct
//
struct TReadPositions
{
TUint iPosFrom;
TUint iPosTo;
};
};
//
// Phone security - Lock settings, status and security events/actions
//
class MAdvGsmPhoneSecurity
{
public:
//
// Access Phone Lock Functionality
//
enum TLockType
{
ELockSIMCard,
ELockPhoneDevice, // A pass phrase that locks the phone
ELockPhoneToSim // Phone lock to Sim Card, requires pass phrase to lock/unlock
};
enum TLockCurrentStatus
{
EUnlocked, // Lock is now open - user can access functionality governed by this lock
ELocked // Lock is now closed - user can not access functionality governed by this lock
};
enum TLockSetting
{
ELockDisabled, // Lock is disabled, so its status is always unlocked
ELockEnabled // Lock is enabled, ( PIN code or password required to unlock the lock )
};
struct TLockInfo
{
TLockCurrentStatus iStatus;
TLockSetting iSetting;
};
struct TLockChangeSetting
{
TLockSetting iSetting;
TGsmPassword iPassword;
};
virtual TInt GetLockInfo(const TLockType aType,TLockInfo& aLockInfo) const=0;
virtual void GetLockInfo(TRequestStatus& aStatus, const TLockType aType,TLockInfo& aLockInfo) const=0;
virtual void GetLockInfoCancel() const=0;
virtual TInt ChangeLockSetting(const TLockType aType,const TLockChangeSetting& aLockSetting) const=0;
virtual void ChangeLockSetting(TRequestStatus& aStatus, const TLockType aType,const TLockChangeSetting& aLockSetting) const=0;
virtual void ChangeLockSettingCancel() const=0;
virtual void NotifyLockInfoChanged(TRequestStatus& aReqStatus, TLockType& aLockType, TLockInfo& aLockInfo) const=0;
virtual void NotifyLockInfoChangedCancel() const=0;
//
// Change Password
//
enum TSecurityCodeType
{
ESecurityCodePin1,
ESecurityCodePin2,
ESecurityCodePassPhrase
};
virtual TInt ChangePassword(const TSecurityCodeType aType,const TGsmPassword& aOldPassword, const TGsmPassword& aNewPassword) const=0;
virtual void ChangePassword(TRequestStatus& aReqStatus, const TSecurityCodeType aType, const TGsmPassword& aOldPassword,const TGsmPassword& aNewPassword) const=0;
virtual void ChangePasswordCancel() const=0;
//
// Security notifications
//
enum TSecurityEvent
{
ENoSIMFound,
ESimTerminated,
EPin1Required,
EPuk1Required,
EPin2Required,
EPuk2Required,
EPassPhraseRequired,
EPin1Verified,
EPuk1Verified,
EPin2Verified,
EPuk2Verified,
EPassPhraseVerified
};
virtual void NotifyOnSecurityEvent(TRequestStatus& aReqStatus, TSecurityEvent& aEvent) const=0;
virtual void NotifyOnSecurityEventCancel() const=0;
//
// Unlock with Security Code
//
virtual TInt SendSecurityCode(const TSecurityCodeType aCodeType, const TGsmPassword& aCode) const=0;
virtual void SendSecurityCode(TRequestStatus& aReqStatus, const TSecurityCodeType aCodeType, const TGsmPassword& aCode) const=0;
virtual void SendSecurityCodeCancel() const=0;
virtual TInt AbortSecurityCode(const TSecurityCodeType aCodeType) const=0;
virtual void AbortSecurityCode(TRequestStatus& aReqStatus, const TSecurityCodeType aCodeType) const=0;
virtual void AbortSecurityCodeCancel() const=0;
//
// Unblock (and unlock) with PUK
//
enum TUnblockCodeType
{
EUnblockCodePuk1,
EUnblockCodePuk2
};
virtual TInt SendUnblockCode(const TUnblockCodeType aCodeType, const TGsmPassword& aUnblockCode, const TGsmPassword& aNewPin) const=0;
virtual void SendUnblockCode(TRequestStatus& aReqStatus, const TUnblockCodeType aCodeType, const TGsmPassword& aUnblockCode, const TGsmPassword& aNewPin) const=0;
virtual void SendUnblockCodeCancel() const=0;
virtual TInt AbortUnblockCode(const TUnblockCodeType aCodeType) const=0;
virtual void AbortUnblockCode(TRequestStatus& aReqStatus, const TUnblockCodeType aCodeType) const=0;
virtual void AbortUnblockCodeCancel() const=0;
//
// Dynamic Phone Lock Caps
//
enum TPhoneLockCaps
{
KCapsLockSim=0x00000001,
KCapsLockPhoneDevice=0x00000002,
KCapsLockPhoneToSim=0x00000004
};
struct TSecurityCapsFlags
{
TUint iPhoneLockCaps;
};
virtual TInt GetPhoneLockCaps(TSecurityCapsFlags& aCaps) const=0;
virtual void NotifyPhoneLockCaps(TRequestStatus& aReqStatus, TSecurityCapsFlags& aCaps) const=0;
virtual void NotifyPhoneLockCapsCancel() const=0;
//
// Server TSY internal definitions
//
public:
struct TChangePassword
{
TSecurityCodeType iType;
TGsmPassword iOldPassword;
TGsmPassword iNewPassword;
};
struct TUnlockPIN
{
TUnblockCodeType iPukType;
TGsmPassword iPuk;
TGsmPassword iNewPin;
};
};
//
// Advice of Charge - information, updates and settings
//
class MAdvGsmPhoneAoC
{
public:
enum TAocType
{
EAocTypeUnknown, // SIM & ME support AoC but no calls are in
// progress so network support is unknown
EAocTypeNotAvailable, // Either call in progress but network does not support AoC
// Or SIM/ME does not support AoC
EAocTypeInformation, // Call in progress - AoCI currently active
EAocTypeCharging // Call in progress - AoCC currently active
};
struct TPuct
{
TBuf<3> iCurrencyName;
TReal iPricePerUnit;
};
struct TAocSimInfo
{
TReal iAcm;
TUint iAcmUnits;
TReal iAcmMax;
TUint iAcmMaxUnits;
TPuct iPuct;
};
struct TAocDynamicInfo
{
TAocType iType;
TReal iCcm; // CCM is combined cost of all ongoing calls
TUint iCcmUnits;
TReal iRemaining; // remaining=ACMmax-ACM
TUint iRemainingUnits;
};
enum TAocMeCaps
{
KCapsAocInformation=0x00000001, // ME supports AoCI
KCapsAocCharging=0x00000002, // ME supports AoCC
KCapsCallMeterUnits=0x00000004, // ME supports the "unit" version of ACM, CCM and ACMmax
KCapsCallMeterReal=0x00000008 // ME supports the "real" version of ACM, CCM and ACMmax
};
struct TAocCapsFlags
{
TUint iAocMeCaps;
};
// Resets ACM in the SIM to zero.
// Probably also resets CCM to zero and Remaining to its max level
virtual TInt ClearAcm() const=0;
virtual void ClearAcm(TRequestStatus& aReqStatus) const=0;
virtual void ClearAcmCancel() const=0;
// Sets AcmMax in the SIM to the specified value.
// To conform to GSM 11.11, aAcmMax must always be greater than zero
virtual TInt SetAcmMax(const TReal aAcmMax) const=0;
virtual void SetAcmMax(TRequestStatus& aReqStatus, const TReal aAcmMax) const=0;
virtual TInt SetAcmMax(const TUint aChargingUnits) const=0;
virtual void SetAcmMax(TRequestStatus& aReqStatus, const TUint aChargingUnits) const=0;
virtual void SetAcmMaxCancel() const=0;
// Sets PUCT in the SIM
virtual TInt SetPuct(const TPuct& aPuctSetting) const=0;
virtual void SetPuct(TRequestStatus& aReqStatus, const TPuct& aPuctSetting) const=0;
virtual void SetPuctCancel() const=0;
// Get snapshot of current AoC related data on the SIM
virtual TInt GetAocSimInfo(TAocSimInfo& aAocSimInfo) const=0;
virtual void GetAocSimInfo(TRequestStatus& aReqStatus, TAocSimInfo& aAocSimInfo) const=0;
virtual void GetAocSimInfoCancel() const=0;
// Notification if AoC SIM data is changed by another client or by the TSY/ME
virtual void NotifyAocSimInfoChanged(TRequestStatus& aReqStatus, TAocSimInfo& aAocInfo) const=0;
virtual void NotifyAocSimInfoChangedCancel() const=0;
// Dynamic AoC information that changes during a call
virtual TInt GetAocDynamicInfo(TAocDynamicInfo& aAocInfo) const=0;
virtual void GetAocDynamicInfo(TRequestStatus& aReqStatus, TAocDynamicInfo& aAocInfo) const=0;
virtual void GetAocDynamicInfoCancel() const=0;
virtual void NotifyAocDynamicInfoChanged(TRequestStatus& aReqStatus, TAocDynamicInfo& aAocInfo) const=0;
virtual void NotifyAocDynamicInfoChangedCancel() const=0;
// Interrogate AoC capabilities - a summation of ME & SIM Aoc caps
virtual TInt GetAocCaps(TAocCapsFlags& aCaps) const=0;
virtual void GetAocCaps(TRequestStatus& aReqStatus, TAocCapsFlags& aCaps) const=0;
virtual void GetAocCapsCancel() const=0;
//
// Server internal structure
//
enum TWhichAcm
{
EAcmReal,
EAcmUnits,
};
};
//
// Activate/Deactive Fixed Dialling Numbers
//
class MAdvGsmPhoneFdn
{
public:
enum TFdnModeGet
{
EFdnModeNotActive,
EFdnModeActive,
EFdnModePermanentlyActive,
EFdnModeNotSupported,
EFdnModeUnknown
};
enum TFdnModeSet
{
EFdnModeActivate,
EFdnModeDeactivate
};
virtual TInt SetFdnMode(const TFdnModeSet aFdnMode) const=0;
virtual void SetFdnMode(TRequestStatus& aReqStatus, const TFdnModeSet aFdnMode) const=0;
virtual void SetFdnModeCancel() const=0;
virtual TInt GetFdnMode(TFdnModeGet& aFdnMode) const=0;
virtual void GetFdnMode(TRequestStatus& aReqStatus, TFdnModeGet& aFdnMode) const=0;
virtual void GetFdnModeCancel() const=0;
virtual void NotifyFdnModeChanged(TRequestStatus& aReqStatus, TFdnModeGet& aFdnMode) const=0;
virtual void NotifyFdnModeChangedCancel() const=0;
};
//
// Retrieve Total Air Time Duration
//
class MAdvGsmPhoneAirTimeDuration
{
public:
virtual TInt GetAirTimeDuration(TTimeIntervalSeconds& aTime) const=0;
virtual void GetAirTimeDuration(TRequestStatus& aReqStatus, TTimeIntervalSeconds& aTime) const=0;
virtual void GetAirTimeDurationCancel() const=0;
virtual void NotifyAirTimeDurationChange(TRequestStatus& aReqStatus,TTimeIntervalSeconds& aTime) const=0;
virtual void NotifyAirTimeDurationChangeCancel() const=0;
};
//
// Call Forwarding on all lines - get/set call forwarding for "all basic services"
//
class MAdvGsmPhoneCallForwarding
{
public:
virtual TInt GetCallForwardingInfo(const MAdvGsmLineForwarding::TCallForwardingReasonGet aReason, MAdvGsmLineForwarding::TCallForwardingInfo& aInfo,const RAdvGsmLine::TForwardingInfoLocation aLocation = RAdvGsmLine::EForwardingLocationCache) const=0;
virtual void GetCallForwardingInfo(TRequestStatus& aReqStatus,const MAdvGsmLineForwarding::TCallForwardingReasonGet aReason, MAdvGsmLineForwarding::TCallForwardingInfo& aInfo,const RAdvGsmLine::TForwardingInfoLocation aLocation = RAdvGsmLine::EForwardingLocationCache) const=0;
virtual void GetCallForwardingInfoCancel() const=0;
virtual TInt SetCallForwardingInfo(const MAdvGsmLineForwarding::TCallForwardingReasonSet aReason, MAdvGsmLineForwarding::TCallForwardingChange& aInfo) const=0;
virtual void SetCallForwardingInfo(TRequestStatus& aReqStatus,const MAdvGsmLineForwarding::TCallForwardingReasonSet aReason, MAdvGsmLineForwarding::TCallForwardingChange& aInfo) const=0;
virtual void SetCallForwardingInfoCancel() const=0;
virtual void CallForwardingStatusNotification(TRequestStatus& aReqStatus, MAdvGsmLineForwarding::TCallForwardingReasonGet& aReason,MAdvGsmLineForwarding::TCallForwardingInfo& aInfo) const=0;
virtual void CallForwardingStatusNotificationCancel() const=0;
};
//
// Call Barring on all lines - get/set call barring for "all basic services"
//
class MAdvGsmPhoneCallBarring
{
public:
struct TChangeLockPassword
{
TBuf<KGsmPasswordSize> iOldPassword;
TBuf<KGsmPasswordSize> iNewPassword;
};
virtual TInt ChangeBarringPassword(const TChangeLockPassword& aPasswords) const=0;
virtual void ChangeBarringPassword(TRequestStatus& aReqStatus, const TChangeLockPassword& aPasswords) const=0;
virtual void ChangeBarringPasswordCancel() const=0;
virtual TInt GetCallBarringMode(const MAdvGsmLineBarring::TBarringType aType, MAdvGsmLineBarring::TBarringMode& aMode, MAdvGsmLineBarring::TBarringModeLocation aLocation = RAdvGsmLine::EBarringLocationCache) const=0;
virtual void GetCallBarringMode(TRequestStatus& aReqStatus,const MAdvGsmLineBarring::TBarringType aType, MAdvGsmLineBarring::TBarringMode& aMode, MAdvGsmLineBarring::TBarringModeLocation aLocation = RAdvGsmLine::EBarringLocationCache) const=0;
virtual void GetCallBarringModeCancel() const=0;
virtual TInt SetCallBarringMode(const MAdvGsmLineBarring::TBarringType aType,const MAdvGsmLineBarring::TChangeBarringMode& aMode) const=0;
virtual void SetCallBarringMode(TRequestStatus& aReqStatus,const MAdvGsmLineBarring::TBarringType aType,const MAdvGsmLineBarring::TChangeBarringMode& aMode) const=0;
virtual void SetCallBarringModeCancel() const=0;
virtual void CallBarringModeNotification(TRequestStatus& aReqStatus, MAdvGsmLineBarring::TBarringType& aType, MAdvGsmLineBarring::TBarringMode& aMode) const=0;
virtual void CallBarringModeNotificationCancel() const=0;
};
//
// Call Waiting on all lines - get/set call waiting for "all basic services"
//
class MAdvGsmPhoneCallWaiting
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -