4 * Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Ja-young Gu <jygu@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
23 * @ingroup TelephonyAPI
24 * @addtogroup MISC_TAPI MISC
29 @brief This file serves as a "C" header file defines structures for Tapi Misc Services. \n
30 It contains a sample set of constants, enums, structs that would be required by applications.
38 #include <TelDefines.h>
44 #define MAX_VERSION_LEN 32 /**< Maximum version length *///sw version, hw version, rf cal date, me sn
45 #define FUS_DUMMY_DATA_SIZE 2 /**< Data Size*/
47 #define MMICHECK_CALL_RELEASE_NOTI "User.LauncherUi.RequestTermination"
48 #define MMICHECK_END_ALL_NOTI "User.LauncherUi.RequestTermination"
49 #define MMICHECK_DIALER_KEY_NOTI "User.LauncherUi.DialerKeyInsert"
50 #define MMICHECK_ACTIVITY_VIEW_NOTI "User.MMICheck.ActivityView.ChangeStatus"
52 #define TAPI_MISC_ME_SN_LEN_MAX 32
53 #define TAPI_MISC_PRODUCT_CODE_LEN_MAX 32
54 #define TAPI_MISC_MODEL_ID_LEN_MAX 17
55 #define TAPI_MISC_PRL_ERI_VER_LEN_MAX 17
57 #define TAPI_MISC_MCC_LEN_MAX 3
58 #define TAPI_MISC_MNC_LEN_MAX 2
59 #define TAPI_MISC_MIN_LEN_MAX 10
60 #define TAPI_MISC_MDN_LEN_MAX 15
61 #define TAPI_MISC_NAME_LEN_MAX 17
64 * @enum TelMiscApplicationKey_t
65 * This enumeration defines mmi check key values
68 MMI_CHECK_DIAL_STAR = 0x2A, // 20 00 2A AF 4B 7E
69 MMI_CHECK_DIAL_SHARP = 0x23, // 20 00 23 6E D6 7E
70 MMI_CHECK_DIAL_0 = 0x30, // 20 00 30 74 F4 7E
71 MMI_CHECK_DIAL_1, // 20 00 31 FD E5 7E
72 MMI_CHECK_DIAL_2, // 20 00 32 66 D7 7E
73 MMI_CHECK_DIAL_3, // 20 00 33 EF C6 7E
74 MMI_CHECK_DIAL_4, // 20 00 34 50 B2 7E
75 MMI_CHECK_DIAL_5, // 20 00 35 D9 A3 7E
76 MMI_CHECK_DIAL_6, // 20 00 36 42 91 7E
77 MMI_CHECK_DIAL_7, // 20 00 37 CB 80 7E
78 MMI_CHECK_DIAL_8, // 20 00 38 3C 78 7E
79 MMI_CHECK_DIAL_9, // 20 00 39 B5 69 7E
81 MMI_CHECK_END_ALL = 0x41, //
83 MMI_CHECK_CALL = 0x50, // 20 00 50 72 97 7E
84 MMI_CHECK_END = 0x51, // 20 00 51 FB 86 7E
85 MMI_CHECK_CANCEL = 0x52, // 20 00 52 60 B4 7E
86 MMI_CHECK_RIGHT = 0x53, // 20 00 5C 1E 5D 7E
87 MMI_CHECK_SIDE_UP = 0x54, // 20 00 54 56 D1 7E
88 MMI_CHECK_SIDE_DOWN = 0x55, // 20 00 55 DF C0 7E
90 MMI_CHECK_LEFT = 0x5B, // 20 00 5B A1 29 7E
91 MMI_CHECK_ARROW_UP = 0x63, // 20 00 63 6A 94 7E
92 MMI_CHECK_ARROW_DOWN = 0x64, // 20 00 64 D5 E0 7E
93 MMI_CHECK_ARROW_LEFT = 0x65, // 20 00 65 5C F1 7E
94 MMI_CHECK_ARROW_RIGHT = 0x66, // 20 00 66 C7 C3 7E
96 MMI_CHECK_WAP = 0x8C, // 20 00 53 E9 A5 7E
97 MMI_CHECK_CAMERA = 0x8D, // 20 01 8D C2 83 7E
98 MMI_CHECK_MP3 = 0xDD, // 20 00 DD 9F C8 7E
99 MMI_CHECK_POWER = 0x95, // 20 00 95 D3 06 7E
100 MMI_CHECK_LONG_PRESS = 0xFF
104 * @enum TelMiscApplicationKey_t
105 * This enumeration defines application key type
118 KEY_EXT_DIAL_STAR, // 10 : *
119 KEY_EXT_DIAL_SHARP, // 11 : #
121 KEY_EXT_DIAL_BACK, // 12 : <- (backkey)
122 KEY_EXT_DIAL_HIDE, // 13 :�� (hidekey)
123 KEY_EXT_DIAL_P, // 14 : p
124 KEY_EXT_DIAL_PLUS, // 15 : +
125 KEY_EXT_DIAL_MUTE, // 16 : mute
127 KEY_EXT_DIAL_CALL = 100, // 100 : BTN1 (call)
128 KEY_EXT_DIAL_MESSAGE, // 101 : BTN2 (message)
129 KEY_EXT_DIAL_VIDEO_CALL, // 102 : BTN3 (video call)
130 KEY_EXT_DIAL_SAVE, // 103 : BTN4 (save)
131 KEY_EXT_DIAL_CALL_END, // noti publish
132 KEY_EXT_TERMINATE_ALL,
134 KEY_EXT_PAGEDOWN = 114, // Volume down
135 KEY_EXT_PAGEUP = 115, // Volume up
136 KEY_EXT_POWER = 116, // Power short
137 KEY_EXT_PEOPLE_VIEW = 132, // People view
138 KEY_EXT_TIMELINE = 169, // Lifedrive
139 KEY_EXT_PREPARE_CAMERA = 171, // Prepare Camera
140 KEY_EXT_ACTIVITY_VIEW = 174, // Activity view
141 KEY_EXT_CAMERA = 212, // Camera
142 KEY_EXT_SEARCH = 217, // Phone Search
143 KEY_EXT_POWER_LONG = 356, // Power off
145 KEY_EXT_INVALID_KEY = 500
146 } TelMiscApplicationKey_t;
149 * @enum TelMiscDiagTouchEventType_t
150 * This enumeration defines the touch event type
153 TAPI_DIAG_TOUCH_CLICK_DOWN = 0x000F, /**< 0x0F00: Click Down */
154 TAPI_DIAG_TOUCH_MOVE = 0x0010, /**< 0x1000: Move */
155 TAPI_DIAG_TOUCH_CLICK_UP = 0x0011, /**< 0x1100: Click Up */
156 TAPI_DIAG_TOUCH_HOLD = 0x0012 /**< 0x1200: Hold */
157 } TelMiscDiagTouchEventType_t;
160 * @enum TelMiscAlarmMode_t
161 * Enum type for Validity of the Alarm booting
164 TAPI_MISC_ALARMBOOT_INACTIVATE, /**< 0x00: Inactivated */
165 TAPI_MISC_ALARMBOOT_ACTIVATE /**< 0x00: Activated */
166 } TelMiscAlarmMode_t;
169 TAPI_MISC_ME_IMEI = 0x00, /**< 0x00: IMEI, GSM/UMTS device */
170 TAPI_MISC_ME_ESN = 0x01, /**< 0x01: ESN(Electronic Serial Number), It`s essentially run out. CDMA device */
171 TAPI_MISC_ME_MEID = 0x02, /**< 0x02: MEID, This value can have hexa decimal digits. CDMA device */
172 TAPI_MISC_ME_MAX = 0xff /**< 0xff: reserved */
173 } TelMiscSNIndexType_t;
176 * NAM Information MASK fiel
179 TAPI_MISC_NAM_INFO_MASK_TOTAL = 0x0001,
180 TAPI_MISC_NAM_INFO_MASK_CURRENT_INDEX = 0x0002,
181 TAPI_MISC_NAM_INFO_MASK_REQUEST_INDEX = 0x0004,
182 TAPI_MISC_NAM_INFO_MASK_AUTONAM = 0x0008,
183 TAPI_MISC_NAM_INFO_MASK_MCC = 0x0010,
184 TAPI_MISC_NAM_INFO_MASK_MNC = 0x0020,
185 TAPI_MISC_NAM_INFO_MASK_MIN = 0x0040,
186 TAPI_MISC_NAM_INFO_MASK_MDN = 0x0080,
187 TAPI_MISC_NAM_INFO_MASK_NAM_NAME = 0x0100,
188 TAPI_MISC_NAM_INFO_MASK_NAM_CHANGE = 0x0200,
189 TAPI_MISC_NAM_INFO_MASK_NAM_NUM = 0x0400,
190 TAPI_MISC_NAM_INFO_MASK_ALL = 0x8000
191 } TelMiscNamInfoMaskType_t;
197 TAPI_MISC_NAM_1 = 0x00,
206 * @enum tapi_misc_nitz_dayofweek_t
207 * Enum type for day of week
210 TAPI_MISC_NITZ_DOW_SUN = 0x00, /**< Sunday */
211 TAPI_MISC_NITZ_DOW_MON = 0x01, /**< Monday */
212 TAPI_MISC_NITZ_DOW_TUE = 0x02, /**< Tuesday */
213 TAPI_MISC_NITZ_DOW_WED = 0x03, /**< Wednesday */
214 TAPI_MISC_NITZ_DOW_THU = 0x04, /**< Thursday */
215 TAPI_MISC_NITZ_DOW_FRI = 0X05, /**< Friday */
216 TAPI_MISC_NITZ_DOW_SAT = 0x06 /**< Saturday */
217 } tapi_misc_nitz_dayofweek_t;
220 * @enum tapi_misc_nitz_daylight_t
221 * Enum type for daylight
224 TAPI_MISC_NITZ_NOADJUST = 0x00, /**< No daylight adjustment */
225 TAPI_MISC_NITZ_ONE_HR = 0x01, /**< One hour */
226 TAPI_MISC_NITZ_TW0_HR = 0x02 /**< two hours */
227 } tapi_misc_nitz_daylight_t;
230 * @enum tapi_misc_nitz_timeinfo_t
231 * Enum type for types of data
234 TAPI_MISC_NITZ_INVALID = 0x00, /**< Invalid */
235 TAPI_MISC_NITZ_TIMEINFO_NW_CDMA = 0x01, /**< Time info network */
236 TAPI_MISC_NITZ_TIMEINFO_NW_GSM = 0x02, /**< Time info network */
237 TAPI_MISC_NITZ_RTC_INFO_LINE = 0x03, /**< RTC Info line */
238 TAPI_MISC_NITZ_RTC_BKUP_PHONE = 0x04, /**< RTC Backup phone */
239 TAPI_MISC_NITZ_NO_TIME_INFO = 0x05 /**< No time info */
240 } tapi_misc_nitz_timeinfo_t;
243 * Mobile Equipment Version Information
246 unsigned char ver_mask; /**< version mask - 0x01:SW_ver, 0x02:HW_ver, 0x04:RF_CAL_date, 0x08:Product_code, 0x10:Model_ID, 0x20:PRL, 0x04:ERI, 0xff:all */
247 unsigned char szSwVersion[MAX_VERSION_LEN]; /**< Software version, null termination */
248 unsigned char szHwVersion[MAX_VERSION_LEN]; /**< Hardware version, null termination */
249 unsigned char szRfCalDate[MAX_VERSION_LEN]; /**< Calculation Date, null termination */
250 unsigned char szProductCode[TAPI_MISC_PRODUCT_CODE_LEN_MAX]; /**< product code, null termination */
251 unsigned char szModelId[TAPI_MISC_MODEL_ID_LEN_MAX]; /**< model id (only for CDMA), null termination */
252 unsigned char prl_nam_num; /**< number of PRL NAM fields */
253 unsigned char szPrlVersion[TAPI_MISC_PRL_ERI_VER_LEN_MAX * 3];/**< prl version (only for CDMA), null termination */
254 unsigned char eri_nam_num; /**< number of PRL NAM fields */
255 unsigned char szEriVersion[TAPI_MISC_PRL_ERI_VER_LEN_MAX * 3];/**< eri version (only for CDMA), null termination */
256 } TelMiscVersionInformation;
259 * Mobile Equipment Serial Number Information
262 TelMiscSNIndexType_t sn_index; /**< serial number index */
263 int sn_len; /**< Length */
264 unsigned char szNumber[TAPI_MISC_ME_SN_LEN_MAX]; /**< Number */
265 } TelMiscSNInformation;
268 * Event delivery - event type
271 struct timeval time; /**< Time information */
272 unsigned short type; /**< Type of event */
273 unsigned short code; /**< Code */
274 long value; /**< Value */
278 * Diagnostic Key Code Information
281 unsigned char keycode; /**< Key Code */
282 unsigned char keyhold; /**< Key Hold */
283 } TelMiscDiagKeyCodeInfomation;
286 * Struct for alarm info
289 unsigned char year; /**< year */
290 unsigned char month; /**< month */
291 unsigned char day; /**< day */
292 unsigned char hour; /**< hour */
293 unsigned char minute; /**< minute */
294 unsigned char second; /**< second */
295 unsigned char time_zone; /**< time zone */
296 tapi_misc_nitz_dayofweek_t day_of_week; /**< day of week */
297 } TelMiscAlarmInfo_t;
300 * Struct for alarm response
303 TelMiscAlarmMode_t validity; /**< validity */
304 TelMiscAlarmInfo_t alarm_info; /**< alarm info */
305 } TelMiscAlarmStatus_t;
308 * @struct TelMiscNamInfo_t
309 * struct type for nam info
312 unsigned short nam_info_mask;
313 unsigned char nam_total; // this field is not used in case of nam set req.
314 unsigned char nam_current_index;
315 unsigned char nam_req_index;
316 unsigned char nam_auto;
317 unsigned char nam_mcc[TAPI_MISC_MCC_LEN_MAX+1];
318 unsigned char nam_mnc[TAPI_MISC_MCC_LEN_MAX+1];
319 unsigned char nam_min[TAPI_MISC_MIN_LEN_MAX+1];
320 unsigned char nam_mdn[TAPI_MISC_MDN_LEN_MAX+1];
321 unsigned char nam_name[TAPI_MISC_NAME_LEN_MAX+1];
325 * Struct for time info
328 tapi_misc_nitz_timeinfo_t time_zone_valid; /**< time zone */
329 int bDaylight_valid; /**< day light */
330 unsigned char year; /**< year */
331 unsigned char month; /**< month */
332 unsigned char day; /**< day */
333 unsigned char hour; /**< hour */
334 unsigned char minute; /**< minute */
335 unsigned char second; /**< second */
336 unsigned char time_zone; /**< time zone */
337 tapi_misc_nitz_daylight_t daylight_adjust; /**< day light adjust */
338 tapi_misc_nitz_dayofweek_t day_of_week; /**< day of week */
339 unsigned long plmn; /**< day of week */
340 } tapi_misc_time_zone_info_type;
346 #endif // _TEL_MISC_H_