|
API Guide Home (Online version only) |
![]() |
00001 /****************************************************************************** 00002 * Copyright (c) 2004 palmOne, Inc. or its subsidiaries. 00003 * All rights reserved. 00004 *****************************************************************************/ 00005 /** @ingroup Telephony 00006 * 00007 */ 00008 00009 00010 /** 00011 * 00012 * @file HsPhoneGSMTypes.h 00013 * 00014 * @brief Header File for Phone Library API ---- NETWORK CATEGORY 00015 * 00016 * NOTES: 00017 * All implementations of the Handspring Phone Library support a common API. 00018 * This API is broken up into various categories for easier management. This file 00019 * defines the GSM category. These API calls are used to interact with the wireless network. 00020 */ 00021 00022 00023 00024 #ifndef _HS_PHONE_GSM_TYPES_H__ 00025 #define _HS_PHONE_GSM_TYPES_H__ 00026 #include <PalmOS.h> 00027 #include <PalmTypes.h> 00028 #ifndef __CORE_COMPATIBILITY_H__ 00029 #include <PalmCompatibility.h> 00030 /** workaround for differing header files in sdk-3.5 and sdk-internal */ 00031 #ifndef __CORE_COMPATIBILITY_H__ 00032 #define __CORE_COMPATIBILITY_H__ 00033 #endif 00034 #endif 00035 00036 /** 00037 * @name 00038 * 00039 */ 00040 /*@{*/ 00041 #define GSMLockSelectorOperatorLock ('PN') /**< */ 00042 #define GSMLockSelectorProviderLock ('PP') /**< */ 00043 /*@}*/ 00044 00045 00046 /** 00047 * @name 00048 * 00049 */ 00050 /*@{*/ 00051 //<chg 09-16-2002 TRS> moved from gsmlibrary.h 00052 #define phnNetPrefGPRSPDPContextID 1 /**< */ 00053 00054 // <chg 09-12-2002 TRS> DUO CLEANUP - moved from gsmlibrary.h (for now) 00055 // This is a prebuilt database. So if this name changes, need to make 00056 // sure that the following references to the Ring Tone database name 00057 // are updated as well: 00058 // 1. In the Viewer/Prebuilt directory, update the actual name 00059 // of the pdb file 00060 // 2. In the GSMLibrary Makefile, update ringTonePdbName 00061 // 3. In GSMLibraryCommon.rcp, update the DATA 'dflt' 1 resource 00062 // 4. In PhoneLib.h 00063 #define GSMLibRingsDbName "System Ring Tones" /**< Name of GSM RingTone DB */ 00064 00065 // Return if the lineNumber is unknown. Maybe returned from the PhnLibGetRadioState 00066 // if the activeLineNumber as not been determined yet. 00067 #define kLineNumberUnknown 0 /**< */ 00068 /*@}*/ 00069 00070 /** 00071 * 00072 **/ 00073 typedef struct { 00074 UInt16 firstEntry; /**< */ 00075 UInt16 lastEntry; /**< */ 00076 UInt16 maxNameLength; /**< */ 00077 UInt16 maxNumberLength; /**< */ 00078 } PhnPhoneBookInfoType, *PhnPhoneBookInfoPtr; 00079 00080 00081 00082 /** 00083 * SIM Application Toolkit's data types 00084 * type of request/respond we are sending 00085 **/ 00086 typedef enum { 00087 kSATSelectMainMenuItem, /**< */ 00088 kSATClearText, /**< */ 00089 kSATSetInkey, /**< */ 00090 kSATSetInput, /**< */ 00091 kSATMakeCall, /**< */ 00092 kSATSelectItem = 6, /**< */ 00093 kSATReqLaunchBrowser, /**< */ 00094 kSATReqIdleModeText, 00095 kSATReqDataSrv, 00096 kSATReqPlayTone, /**< */ 00097 kSATReqRefresh, /**< */ 00098 kSATCancel = 95, /**< */ 00099 kSATUnknownNotification, /**< */ 00100 kSATApplicationBusy, /**< */ 00101 kSATUserNotResponse, /**< */ 00102 kSATEndSession, /**< */ 00103 kSATReqSendDTMF /**< */ 00104 } _SATRequestType; 00105 00106 typedef UInt8 SATRequestType; 00107 00108 /** 00109 * decision we are sending to SIM 00110 **/ 00111 typedef enum { 00112 kSATSessionAborted, /**< */ 00113 kSATItemSelected, /**< */ 00114 kSATHelpRequested, /**< */ 00115 kSATNavigateBack /**< */ 00116 } _SATDecisionType; 00117 00118 typedef UInt8 SATDecisionType; 00119 00120 /** 00121 * type of notification sent by SAT 00122 **/ 00123 typedef enum { 00124 kSATMainMenuAvailable, /**< */ 00125 kSATDisplayText, /**< */ 00126 kSATGetInkey, /**< */ 00127 kSATGetInput, /**< */ 00128 kSATSetupCall, /**< */ 00129 kSATPlayTone, /**< */ 00130 kSATDisplaySubmenus, /**< */ 00131 kSATRefresh, /**< application do not get this notification */ 00132 kSATSendSS, /**< */ 00133 kSATSendSMS, /**< */ 00134 kSATSendUSSD, /**< */ 00135 kSATLaunchBrowser, /**< */ 00136 kSATIdleModeText, /**< */ 00137 kSATRunAT, /**< */ 00138 kSATDataSvc, /**< */ 00139 kSATSendDTMF, /**< */ 00140 kSATTimeout = 98, /**< */ 00141 kSATSessionEnd = 99 /**< */ 00142 } _SATNotificationType; 00143 00144 typedef UInt8 SATNotificationType; 00145 00146 /*Used for Call setup STK command, MTCALL, to specify the mode the call should 00147 * be setup in 00148 */ 00149 00150 typedef enum 00151 { 00152 kSATSetupCallModeNotBusy, 00153 kSATSetupCallWithRedialModeNotBusy, 00154 kSATSetupCallHoldOtherCalls, 00155 kSATSetupCallWithRedialHoldOtherCalls, 00156 kSATSetupCallDisconnectOtherCalls, 00157 kSATSetupCallWithRedialDisconnectOtherCalls, 00158 00159 kSATSetupCallMax// do not use 00160 }_SATSetupCallType; 00161 00162 typedef UInt16 SATSetupCallType; 00163 00164 #define isValidSATNotificationType(s) (((s >= kSATMainMenuAvailable) && (s <= kSATSendUSSD)) \ 00165 || (s == kSATTimeout) || (s == kSATSessionEnd)) /**< */ 00166 00167 typedef enum 00168 { 00169 kSATEFSimPhoneBook = 0x00000001 00170 00171 }_SATRefreshFile; 00172 00173 typedef UInt32 SATRefreshFile; 00174 00175 typedef enum 00176 { 00177 kSATInitWithFullFileChange, 00178 kSATFileChange, 00179 kSATInitWithFileChange, 00180 kSATInit, 00181 kSATSIMReset, 00182 kSATMax 00183 }_SATRefreshType; 00184 00185 typedef UInt16 SATRefreshType; 00186 00187 /** 00188 * 00189 **/ 00190 typedef enum 00191 { 00192 phnGPRSPDPTypeIP = 1, /**< */ 00193 phnGPRSPDPTypePPP = 2 /**< */ 00194 } _PhnGPRSPDPType; 00195 00196 typedef UInt8 PhnGPRSPDPType; 00197 00198 #define isValidPhnGPRSPDPType(t) ((t >= phnGPRSPDPTypeIP) && (t <= phnGPRSPDPTypePPP)) /**< */ 00199 00200 /** 00201 * 00202 **/ 00203 typedef enum 00204 { 00205 kGPRSQOSTypeRequired = 1, /**< */ 00206 kGPRSQOSTypeMinimum = 2 /**< */ 00207 } _PhnGPRSQOSType; 00208 00209 typedef UInt8 PhnGPRSQOSType; 00210 00211 #define isValidPhnGPRSQOSType(t) ((t >= kGPRSQOSTypeRequired) && (t <= kGPRSQOSTypeMinimum)) /**< */ 00212 00213 /** 00214 * Used when we get a list of context that are currently 00215 * stored on the radio. 00216 **/ 00217 typedef struct PhnGPRSPDPContextType 00218 { 00219 UInt16 contextId; /**< */ 00220 PhnGPRSPDPType pdpType; /**< */ 00221 char* apn; /**< */ 00222 char* pdpAddr; /**< */ 00223 UInt16 pdpDataCompression; /**< 0 means OFF, 1 means ON */ 00224 UInt16 pdpHdrCompression; /**< */ 00225 } PhnGPRSPDPContextType; 00226 00227 /** 00228 * This is a list node that is returened when we 00229 * retreive the current list of PDP contexts stored 00230 * on the device 00231 **/ 00232 typedef struct PhnGPRSPDPContextListNodeType 00233 { 00234 struct PhnGPRSPDPContextType type; /**< */ 00235 struct PhnGPRSPDPContextListNodeType* nextP; /**< */ 00236 } PhnGPRSPDPContextListNodeType; 00237 00238 /** 00239 * 00240 **/ 00241 typedef enum { 00242 gsmMessagesConfirmMove, gsmMessagesCantReceive /**< */ 00243 } _GSMSIMMessagesDialogKind; 00244 00245 typedef UInt8 GSMSIMMessagesDialogKind; 00246 00247 #define isValidGSMSIMMessagesDialogKind(d) ((d >= gsmMessagesConfirmMove) && (d <= gsmMessagesCantReceive)) /**< */ 00248 00249 /** 00250 * 00251 **/ 00252 enum _GSMSATEventMenuFlag { 00253 phnSATEventMenuFlagHelp = 1, /**< help is available */ 00254 phnSATEventMenuFlagNextAct = 2 /**< nextAction is valid */ 00255 }; 00256 00257 typedef UInt8 GSMSATEventMenuFlag; 00258 00259 00260 /** 00261 * Possible values of format for PhnSATEventGetInkey and PhnSATEventGetInput 00262 **/ 00263 enum _GSMSATEventInputFormatEnum { 00264 phnSATEventInputFormatDigit = 0, /**< Get Inkey or Get Input */ 00265 /**< 0-9, #, *, or + */ 00266 phnSATEventInputFormatSMSChar = 1, /**< Get Inkey or Get Input */ 00267 /**< SMS character set */ 00268 phnSATEventInputFormatUCS2 = 2, /**< Get Inkey or Get Input */ 00269 phnSATEventInputFormatUnpacked = 3, /**< Get Input only */ 00270 phnSATEventInputFormatPacked = 4, /**< Get Input only */ 00271 00272 phnSATEventInputFormatYesNo = 5, /**< Get Inkey or Get Input */ 00273 00274 00275 00276 phnSATEventInputFormatUnknown = 255 /**< KEEP THIS ONE AT THE END */ 00277 }; 00278 00279 typedef UInt8 GSMSATEventInputFormatEnum; 00280 00281 /** 00282 * 00283 **/ 00284 enum _GSMATEventInputEchoModeEnum { 00285 phnSATEventInputEchoModeShowInput = 0, /**< Show input as entered */ 00286 phnSATEventInputEchoModeHideInput = 1 /**< Display bullets or boxes instead of entered characters */ 00287 }; 00288 typedef UInt8 GSMATEventInputEchoModeEnum; 00289 00290 /** 00291 * @name Special response values for PhnSATEventGetInkey (besides a single character) 00292 * 00293 */ 00294 /*@{*/ 00295 #define phnSATInkeyResponseValueYes ((UInt32)'YES_') /**< */ 00296 #define phnSATInkeyResponseValueNo ((UInt32)'NO__') /**< */ 00297 /*@}*/ 00298 00299 00300 /** 00301 * Possible values of timeUnit for PhnSATEventPlayTone 00302 **/ 00303 enum _GSMSATEventToneTimeUnitEnum { 00304 phnSATEventToneTimeUnitMinutes = 0, /**< Duration specified in minutes */ 00305 phnSATEventToneTimeUnitSeconds = 1, /**< Duration specified in seconds */ 00306 phnSATEventToneTimeUnitDeciSeconds = 2 /**< Duration specified in 1/10 seconds */ 00307 }; 00308 00309 typedef UInt8 GSMSATEventToneTimeUnitEnum; 00310 00311 /** 00312 * Possible values of toneType for PhnSATEventPlayTone 00313 **/ 00314 enum _GSMSATEventToneTypeEnum { 00315 phnSATEventToneTypeNoneSpecified = 0xFFFF, /**< Means just do a normal beep... */ 00316 phnSATEventToneTypeDial = 0, /**< */ 00317 phnSATEventToneTypeBusy = 1, /**< */ 00318 phnSATEventToneTypeCongestion = 2, /**< */ 00319 phnSATEventToneTypeRadioAck = 3, /**< */ 00320 phnSATEventToneTypeDropped = 4, /**< */ 00321 phnSATEventToneTypeError = 5, /**< */ 00322 phnSATEventToneTypeCallWaiting = 6, /**< */ 00323 phnSATEventToneTypeRinging = 7, /**< */ 00324 phnSATEventToneTypeGeneralBeep = 8, /**< */ 00325 phnSATEventToneTypePositiveBeep = 9, /**< */ 00326 phnSATEventToneTypeNegativeBeep = 10 /**< */ 00327 }; 00328 00329 typedef UInt16 GSMSATEventToneTypeEnum; 00330 00331 #define isValidGSMSATEventToneTypeEnum(x) (((x >= phnSATEventToneTypeDial) && (x <= phnSATEventToneTypeNegativeBeep)) || (x == phnSATEventToneTypeNoneSpecified)) /**< */ 00332 00333 00334 /** 00335 * Possible values of callType for PhnSATEventSetupCall 00336 **/ 00337 enum _GSMSATEventSetupCallCallTypeEnum { 00338 phnSATEventSetupCallCallTypeVoice = 0, /**< SIM wants to set up a voice call */ 00339 phnSATEventSetupCallCallTypeData = 1, /**< SIM wants to set up a data call */ 00340 phnSATEventSetupCallCallTypeFax = 2 /**< SIM wants to set up a fax */ 00341 }; 00342 00343 typedef UInt8 GSMSATEventSetupCallCallTypeEnum; 00344 00345 /** 00346 * Possible values of serviceType for PhnSATEventDataSvc 00347 **/ 00348 enum _GSMSATDataSvcTypeEnum { 00349 phnSATEventDataSvcTypeOpenChannel=1, 00350 phnSATEventDataSvcTypeSendData=2, 00351 phnSATEventDataSvcTypeRcvData=3, 00352 phnSATEventDataSvcTypeCloseChannel=4 00353 }; 00354 typedef UInt8 GSMSATDataSvcType; 00355 00356 #define isValidGSMSATEventSetupCallCallTypeEnum(x) ((x >= phnSATEventSetupCallCallTypeVoice) && (x <= phnSATEventSetupCallCallTypeFax)) /**< */ 00357 00358 00359 #endif // _HS_PHONE_GSM_TYPES_H__
| Top | Palm Developer Network © 2004-2008, Palm, Inc. All rights reserved. Generated on Fri Jun 13 10:06:53 2008 for Palm API Guide |