upload tizen1.0 source
[framework/telephony/libslp-tapi.git] / include / common / TelSatObj.h
1 /*
2  * libslp-tapi
3  *
4  * Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Ja-young Gu <jygu@samsung.com>
7  *
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
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
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.
19  */
20
21 /**
22  * @open
23  * @ingroup             TelephonyAPI
24  * @addtogroup  SAT_TAPI        SAT
25  * @{
26  *
27  * @file TelSatObj.h
28
29  @brief This file serves as a "C" header file defines structures for Telephony SAT Services. \n
30  It contains a sample set of constants, enums, structs that would be required by applications.
31  */
32
33 #ifndef _TEL_SAT_OBJ_H_
34 #define _TEL_SAT_OBJ_H_
35
36 #include <TelDefines.h>
37 #include <TelSim.h>
38
39 #ifdef __cplusplus
40 extern "C"
41 {
42 #endif
43
44 #define EXTENDED_ASCII 1
45
46 #define TAPI_SAT_DIALLING_NUMBER_LEN_MAX                                200      /**<   max length of dialing number            */
47 #define TAPI_SAT_ALPHA_ID_LEN_MAX                                               255      /**<   max length of  alpha identifier         */
48 #define TAPI_SAT_TEXT_STRING_LEN_MAX                                    500      /**<   max length of text string -when the string data is in 7Bit packed format, this length is not enough to support the maximum size so should increase the value to a value > 275 */
49 #define TAPI_SAT_SUB_ADDR_LEN_MAX                                               30       /**<   max length of sub address               */
50 #define TAPI_SAT_CCP_DATA_LEN_MAX                                               30       /**<   max length of ccp data          */
51 #define TAPI_SAT_ITEM_TEXT_LEN_MAX                                              45       /**<   max length of item text                 */
52 #define TAPI_SAT_SMS_TPDU_SMS_DATA_LEN_MAX                              175      /**<   max length of sms tpdu data             */
53 #define TAPI_SAT_SS_STRING_LEN_MAX                                              160      /**<   max length of ss string         */
54 #define TAPI_SAT_USSD_STRING_LEN_MAX                                    255      /**<   max length of ussd string               */
55 #define TAPI_SAT_FILE_ID_LIST_MAX_COUNT                                 255      /**<   max count of file id list               */
56 #define TAPI_SAT_ITEMS_NEXT_ACTION_INDI_LIST_MAX_COUNT  50       /**<   max count of items next action indication list  */
57 #define TAPI_SAT_EVENT_LIST_MAX_COUNT                                   17       /**<   max count of sat event list             */
58 #define TAPI_SAT_IMG_INSTANT_RAW_DATA_LEN_MAX                   256      /**<   max length of image instant raw         */
59 #define TAPI_SAT_CLUT_DATA_LEN_MAX                                              256      /**<   max length of clut data                 */
60 #define TAPI_SAT_IMG_DATA_FILE_PATH_LEN_MAX                             50       /**<   max length of image data file name (Icon, CLUT)         */
61 #define TAPI_SAT_ICON_LIST_MAX_COUNT                                    50       /**<   max count of icon list          */
62 #define TAPI_SAT_DTMF_STRING_LEN_MAX                                    30       /**<   max length of dtmf string               */
63 #define TAPI_SAT_DATE_TIME_AND_TIME_ZONE_LEN                    7        /**<   max length of date time and time zone           */
64 #define TAPI_SAT_URL_LEN_MAX                                                    129      /**<   max length of url               */
65 #define TAPI_SAT_BEARER_LIST_MAX_COUNT                                  50       /**<   max count of bearer list                */
66 #define TAPI_SAT_PROVISIONING_FILE_PATH_LEN_MAX                 50       /**<   max length of provisioning file path    */
67 #define TAPI_SAT_BEARER_PARAMS_LEN_MAX                                  10       /**<   max length of bearer parameters                 */
68 #define TAPI_SAT_CHANNEL_DATA_STRING_LEN_MAX                    255      /**<   max length of channel data string               */
69 #define TAPI_SAT_CHANNEL_STATUS_LEN                                             2        /**<   max length of channel status            */
70 #define TAPI_SAT_CHANNEL_ID_LEN                                                 3        /**<   max length of channel id                */
71 #define TAPI_SAT_OTHER_ADDR_LEN_MAX                                             30       /**<   max length of other address             */
72 #define TAPI_SAT_PORT_NUMBER_LEN                                                2        /**<   max length of port number               */
73 #define TAPI_SAT_NET_ACC_NAM_LEN_MAX                                    30       /**<   max length of net acc name              */
74 #define TAPI_SAT_AID_LEN_MAX                                                    128      /**<   max length of aid               */
75 #define TAPI_SAT_REMOTE_ENTITY_ADDR_LEN_MAX                             50       /**<   max length of remote entity address     */
76 #define TAPI_SAT_ITEM_TEXT_ATTRIBUTES_LIST_MAX_COUNT    50       /**<   max count of item text attributes list          */
77 #define TAPI_SAT_MCC_CODE_LEN                                                   3        /**<   max length of mcc               */
78 #define TAPI_SAT_MNC_CODE_LEN                                                   3        /**<   max length of mnc               */
79 #define TAPI_SAT_LAC_CODE_LEN                                                   2        /**<   max length of lac               */
80 #define TAPI_SAT_CELL_ID_LEN                                                    2        /**<   max length of cell id   */
81
82 /**
83  * @enum TelSatAlphabetFormatType_t
84  * This enum lists the Alphabet Format.
85  */
86 typedef enum {
87         TAPI_SAT_ALPHABET_FORMAT_SMS_DEFAULT = 0x00, /**<       ALPHABET FROMAT SMS DEFAULT             */
88         TAPI_SAT_ALPHABET_FORMAT_8BIT_DATA = 0x01, /**< ALPHABET FROMAT 8BIT DATA               */
89         TAPI_SAT_ALPHABET_FORMAT_UCS2 = 0x02, /**<      ALPHABET FROMAT UCS2            */
90         TAPI_SAT_ALPHABET_FORMAT_RESERVED = 0x03 /**<   ALPHABET FROMAT RESERVED                */
91 } TelSatAlphabetFormatType_t;
92
93 /**
94  * @enum TelSatMsgClassType_t
95  * This enum lists the message class.
96  */
97 typedef enum {
98         TAPI_SAT_MSG_CLASS_NONE = 0x00, /**<    none    */
99         TAPI_SAT_MSG_CLASS_0 = 0x01, /**<       class 0                 */
100         TAPI_SAT_MSG_CLASS_1, /**<      class 1 Default meaning:ME-specific             */
101         TAPI_SAT_MSG_CLASS_2, /**<      class 2 SIM specific message            */
102         TAPI_SAT_MSG_CLASS_3, /**<      class 3 Default meaning: TE specific            */
103         TAPI_SAT_MSG_CLASS_RESERVED = 0xFF /**< class reserved          */
104 } TelSatMsgClassType_t;
105
106 /**
107  * @enum TelSatCommandType_t
108  * This enum lists the type of command and the next action indicator.
109  */
110 typedef enum {
111         TAPI_SAT_CMD_TYPE_NONE = 0x00, /**<     command type - None             */
112
113         TAPI_SAT_CMD_TYPE_REFRESH = 0x01, /**<  command type - refresh          */
114         TAPI_SAT_CMD_TYPE_MORE_TIME = 0x02, /**<        command type - more time                */
115         TAPI_SAT_CMD_TYPE_SETUP_EVENT_LIST = 0x05, /**< command type - setup event list                 */
116         TAPI_SAT_CMD_TYPE_SETUP_CALL = 0x10, /**<       command type - setup call               */
117         TAPI_SAT_CMD_TYPE_SEND_SS = 0x11, /**<  command type - send ss          */
118         TAPI_SAT_CMD_TYPE_SEND_USSD = 0x12, /**<        command type - send ussd                */
119         TAPI_SAT_CMD_TYPE_SEND_SMS = 0x13, /**< command type - send sms                 */
120         TAPI_SAT_CMD_TYPE_SEND_DTMF = 0x14, /**<        command type - send dtmf                */
121         TAPI_SAT_CMD_TYPE_LAUNCH_BROWSER = 0x15, /**<   command type - launch browser           */
122         TAPI_SAT_CMD_TYPE_PLAY_TONE = 0x20, /**<        command type - play tone                */
123         TAPI_SAT_CMD_TYPE_DISPLAY_TEXT = 0x21, /**<     command type - display text             */
124         TAPI_SAT_CMD_TYPE_GET_INKEY = 0x22, /**<        command type - get inkey                */
125         TAPI_SAT_CMD_TYPE_GET_INPUT = 0x23, /**<        command type - get input                */
126         TAPI_SAT_CMD_TYPE_SELECT_ITEM = 0x24, /**<      command type - select item              */
127         TAPI_SAT_CMD_TYPE_SETUP_MENU = 0x25, /**<       command type - setup menu               */
128         TAPI_SAT_CMD_TYPE_PROVIDE_LOCAL_INFO = 0x26, /**<       command type - provide local info               */
129         TAPI_SAT_CMD_TYPE_SETUP_IDLE_MODE_TEXT = 0x28, /**<     command type - setup idle mode text             */
130         TAPI_SAT_CMD_TYPE_LANGUAGE_NOTIFICATION = 0x35, /**<    command type - language notification            */
131         TAPI_SAT_CMD_TYPE_OPEN_CHANNEL = 0x40, /**<     command type - open channel -class e            */
132         TAPI_SAT_CMD_TYPE_CLOSE_CHANNEL = 0x41, /**<    command type - close channel - class e          */
133         TAPI_SAT_CMD_TYPE_RECEIVE_DATA = 0x42, /**<     command type - receive data -class e            */
134         TAPI_SAT_CMD_TYPE_SEND_DATA = 0x43, /**<        command type - send data                */
135         TAPI_SAT_CMD_TYPE_GET_CHANNEL_STATUS = 0x44, /**<       command type - get channel status -class e              */
136         TAPI_SAT_CMD_TYPE_END_OF_APP_EXEC = 0xFD, /**<  inform to End the execution of a Proactive Command*/
137         TAPI_SAT_CMD_TYPE_END_PROACTIVE_SESSION = 0xFE, /**<    inform end proactive session            */
138         TAPI_SAT_CMD_TYPE_RESERVED = 0xFF /**<  command type - reserved         */
139 } TelSatCommandType_t;
140
141 /**
142  * @enum TelSatCmdQualiRefresh_t
143  * This enum lists the Command qualifier values for Refresh command.
144  */
145 typedef enum {
146         TAPI_SAT_REFRESH_SIM_INIT_AND_FULL_FCN = 0x00, /**<     command qualifier for REFRESH SIM INIT AND FULL FILE CHANGE_NOTIFICATION                */
147         TAPI_SAT_REFRESH_FCN = 0x01, /**<       command qualifier for REFRESH FILE CHANGE NOTIFICATION          */
148         TAPI_SAT_REFRESH_SIM_INIT_AND_FCN = 0x02, /**<  command qualifier for REFRESH SIM INIT AND FILE CHANGE NOTIFICATION             */
149         TAPI_SAT_REFRESH_SIM_INIT = 0x03, /**<  command qualifier for REFRESH SIM INIT          */
150         TAPI_SAT_REFRESH_SIM_RESET = 0x04, /**< command qualifier for REFRESH SIM RESET         */
151         TAPI_SAT_REFRESH_3G_APPLICATION_RESET = 0x05, /**<      command qualifier for REFRESH 3G APPLICATION RESET              */
152         TAPI_SAT_REFRESH_3G_SESSION_RESET = 0x06, /**<  command qualifier for REFRESH 3G SESSION RESET          */
153         TAPI_SAT_REFRESH_RESERVED = 0xFF /**<   command qualifier for REFRESH RESERVED          */
154 } TelSatCmdQualiRefresh_t;
155
156 /**
157  * @enum TelSatCmdQualiSetupCall_t
158  * This enum lists the Command qualifier values for setup call command.
159  */
160 typedef enum {
161         TAPI_SAT_SETUP_CALL_IF_ANOTHER_CALL_NOT_BUSY = 0x00, /**<       command qualifier for SETUP CALL IF ANOTHER CALL NOT BUSY               */
162         TAPI_SAT_SETUP_CALL_IF_ANOTHER_CALL_NOT_BUSY_WITH_REDIAL = 0x01, /**<   command qualifier for SETUP CALL IF ANOTHER CALL NOT BUSY WITH REDIAL           */
163         TAPI_SAT_SETUP_CALL_PUT_ALL_OTHER_CALLS_ON_HOLD = 0x02, /**<    command qualifier for SETUP CALL PUTTING ALL OTHER CALLS ON HOLD                */
164         TAPI_SAT_SETUP_CALL_PUT_ALL_OTHER_CALLS_ON_HOLD_WITH_REDIAL = 0x03, /**<        command qualifier for SETUP CALL PUTTING ALL OTHER CALLS ON HOLD WITH REDIAL            */
165         TAPI_SAT_SETUP_CALL_DISCONN_ALL_OTHER_CALLS = 0x04, /**<        command qualifier for SETUP CALL DISCONNECTING ALL OTHER CALLS          */
166         TAPI_SAT_SETUP_CALL_DISCONN_ALL_OTHER_CALLS_WITH_REDIAL = 0x05, /**<    command qualifier for SETUP CALL DISCONNECTING ALL OTHER CALLS WITH REDIAL              */
167         TAPI_SAT_SETUP_CALL_RESERVED = 0xFF /**<        command qualifier for SETUP CALL RESERVED               */
168 } TelSatCmdQualiSetupCall_t;
169
170 /**
171  * @enum TelSatDisplayTextPriorityType_t
172  * This is associated with the command qualifier for display text.
173  */
174 typedef enum {
175         TAPI_SAT_MSG_PRIORITY_NORMAL = 0, /**<  MSG PRIORITY NORMAL             */
176         TAPI_SAT_MSG_PRIORITY_HIGH = 1 /**<     MSG PRIORITY HIGH               */
177 } TelSatDisplayTextPriorityType_t;
178
179 /**
180  * @enum TelSatDisplayTextMsgClearType_t
181  * This is associated with the command qualifier for display text.
182  */
183 typedef enum {
184         TAPI_SAT_AUTO_CLEAR_MSG_AFTER_A_DELAY = 0, /**< message clear type -  AUTO CLEAR MSG AFTER A DELAY              */
185         TAPI_SAT_WAIT_FOR_USER_TO_CLEAR_MSG = 1 /**<    message clear type -  WAIT FOR USER TO CLEAR MSG                */
186 } TelSatDisplayTextMsgClearType_t;
187
188 /**
189  * @enum TelSatInkeyType_t
190  * This is associated with the command qualifier for get inkey.
191  */
192 typedef enum {
193         TAPI_SAT_INKEY_TYPE_CHARACTER_SET_ENABLED = 0, /**<     command qualifier for  INKEY TYPE CHARACTER SET ENABLED         */
194         TAPI_SAT_INKEY_TYPE_YES_NO_REQUESTED = 1 /**<   command qualifier for  INKEY TYPE YES NO REQUESTED              */
195 } TelSatInkeyType_t;
196
197 /**
198  * @enum TelSatUseInputAlphabetType_t
199  * This is associated with the command qualifier for get input.
200  */
201 typedef enum {
202         TAPI_SAT_USER_INPUT_ALPHABET_TYPE_SMS_DEFAULT = 1, /**< command qualifier for  ALPHABET TYPE SMS DEFAULT                */
203         TAPI_SAT_USER_INPUT_ALPHABET_TYPE_UCS2 = 2 /**< command qualifier for  ALPHABET TYPE UCS2               */
204 } TelSatUseInputAlphabetType_t;
205
206 /**
207  * @enum TelSatDisplayVibrateAlertType_t
208  * This is associated with the command qualifier for play tone command.
209  */
210 typedef enum {
211         TAPI_SAT_VIBRATE_ALERT_OPTIONAL = 0, /**<       VIBRATE ALERT UPTO THE TERMINAL         */
212         TAPI_SAT_VIBRATE_ALERT_REQUIRED = 1 /**<        VIBRATE, IF AVAILABLE, WITH TONE.               */
213 } TelSatDisplayVibrateAlertType_t;
214
215 /**
216  * @enum TelSatPresentationType_t
217  * This is associated with the command qualifier for select item command.
218  */
219 typedef enum {
220         TAPI_SAT_PRESENTATION_TYPE_NOT_SPECIFIED = 0x00, /**<   command qualifier for PRESENTATION TYPE NOT SPECIFIED */
221         TAPI_SAT_PRESENTATION_TYPE_DATA_VALUE = 0x01, /**<      command qualifier for PRESENTATION TYPE DATA VALUE              */
222         TAPI_SAT_PRESENTATION_TYPE_NAVIGATION_OPTION = 0x02 /**<        command qualifier for PRESENTATION TYPE NAVIGATION OPTION       */
223 } TelSatPresentationType_t;
224
225 /**
226  * @enum TelSatSelectionPreferenceType_t
227  * This is associated with the command qualifier for select item command.
228  */
229 typedef enum {
230         TAPI_SAT_SELECTION_PREFERENCE_NONE_REQUESTED = 0, /**<  command qualifier for SELECTION PREFERENCE NONE REQUESTED               */
231         TAPI_SAT_SELECTION_PREFERENCE_USING_SOFT_KEY = 1 /**<   command qualifier for SELECTION PREFERENCE USING SOFT KEY               */
232 } TelSatSelectionPreferenceType_t;
233
234 /**
235  * @enum TelSatCmdQualiProvideLocalInfo_t
236  * This enum defines the Command qualifier values for provide local info command.
237  */
238 typedef enum {
239         TAPI_SAT_PROVIDE_DATE_TIME_AND_TIME_ZONE = 0x03, /**<   command qualifier for PROVIDE DATE TIME AND TIME ZONE           */
240         TAPI_SAT_PROVIDE_LANGUAGE_SETTING = 0x04, /**<  command qualifier for PROVIDE LANGUAGE SETTING          */
241         TAPI_SAT_PROVIDE_IMEISV = 0x08, TAPI_SAT_PROVIDE_RESERVED = 0xFF /**<   reserved                */
242 } TelSatCmdQualiProvideLocalInfo_t;
243
244 /**
245  * @enum TelSatCmdQualiLaunchBrowser_t
246  * This enum defines the Command qualifier values for launch browser command.
247  */
248 typedef enum {
249         TAPI_SAT_LAUNCH_BROWSER = 0, /**<       command qualifier for  LAUNCH BROWSER           */
250         TAPI_SAT_NOT_USED = 1, /**<     command qualifier for  NOT USED         */
251         TAPI_SAT_USE_EXISTING_BROWSER = 2, /**< command qualifier for  USE EXISTING BROWSER if secure session, do not use it.           */
252         TAPI_SAT_CLOSE_AND_LAUNCH_NEW_BROWSER = 3, /**< command qualifier for CLOSE AND LAUNCH NEW BROWSER              */
253         TAPI_SAT_NOT_USED2 = 4, /**<    command qualifier for  NOT USED2                */
254         TAPI_SAT_LB_RESERVED = 0xFF /**<        reserved        */
255 } TelSatCmdQualiLaunchBrowser_t;
256
257 /**
258  * @enum TelSatDeviceIdentitiesTagType_t
259  * This enum lists the device identity tag value IDs.
260  */
261 typedef enum {
262         TAPI_SAT_DEVICE_ID_KEYPAD = 0x01, /**<  DEVICE ID KEYPAD                */
263         TAPI_SAT_DEVICE_ID_DISPLAY = 0x02, /**< DEVICE ID DISPLAY               */
264         TAPI_SAT_DEVICE_ID_EARPIECE = 0x03, /**<        DEVICE ID EARPIECE              */
265
266         TAPI_SAT_DEVICE_ID_SIM = 0x81, /**<     DEVICE ID SIM           */
267         TAPI_SAT_DEVICE_ID_ME = 0x82, /**<      DEVICE ID ME            */
268         TAPI_SAT_DEVICE_ID_NETWORK = 0x83, /**< DEVICE ID NETWORK               */
269
270         TAPI_SAT_DEVICE_ID_RESERVED = 0XFF /**< reserved        */
271 } TelSatDeviceIdentitiesTagType_t;
272
273 /**
274  * @enum TelSatTimeUnitType_t
275  * This enum lists the time units for the duration data object.
276  */
277 typedef enum {
278         TAPI_SAT_TIME_UNIT_MINUTES = 0x0, /**<  time unit - minutes             */
279         TAPI_SAT_TIME_UNIT_SECONDS = 0x01, /**< time unit - second              */
280         TAPI_SAT_TIME_UNIT_TENTHS_OF_SECONDS = 0x02, /**<       time unit - tenths of seconds           */
281         TAPI_SAT_TIME_UNIT_RESERVED = 0xFF /**< reserved        */
282 } TelSatTimeUnitType_t;
283
284 /**
285  * @enum TelSatResultType_t
286  * This enum lists the values for the RESULT data object - General Response.
287  */
288 typedef enum {
289         TAPI_SAT_R_SUCCESS = 0x0, /**<  command performed successfully */
290         TAPI_SAT_R_SUCCESS_WITH_PARTIAL_COMPREHENSION = 0x01, /**<      command performed with partial comprehension    */
291         TAPI_SAT_R_SUCCESS_WITH_MISSING_INFO = 0x02, /**<       command performed, with missing information     */
292
293         TAPI_SAT_R_REFRESH_PERFORMED_WITH_ADDITIONAL_EFS_READ = 0x03, /**<      REFRESH PERFORMED WITH ADDITIONAL EFS READ              */
294         TAPI_SAT_R_SUCCESS_BUT_REQUESTED_ICON_NOT_DISPLAYED = 0x04, /**<        command performed but REQUESTED ICON NOT DISPLAYED                      */
295         TAPI_SAT_R_SUCCESS_BUT_MODIFIED_BY_CALL_CONTROL_BY_SIM = 0x05, /**<     command performed but MODIFIED BY CALL CONTROL BY SIM           */
296         TAPI_SAT_R_SUCCESS_LIMITED_SERVICE = 0x06, /**< command performed with LIMITED SERVICE          */
297         TAPI_SAT_R_SUCCESS_WITH_MODIFICATION = 0x07, /**<       command performed with MODIFICATION             */
298         TAPI_SAT_R_REFRESH_PRFRMD_BUT_INDICATED_USIM_NOT_ACTIVE = 0x08, /**<    REFRESH PERFORMED BUT INDICATED USIM NOT ACTIVE                 */
299
300         TAPI_SAT_R_PROACTIVE_SESSION_TERMINATED_BY_USER = 0x10, /**<    proactive sim application session terminated by user            */
301         TAPI_SAT_R_BACKWARD_MOVE_BY_USER = 0x11, /**<   backward move in the proactive sim application session request by the user              */
302         TAPI_SAT_R_NO_RESPONSE_FROM_USER = 0x12, /**<   no response from user           */
303
304         TAPI_SAT_R_HELP_INFO_REQUIRED_BY_USER = 0x13, /**<      HELP INFO REQUIRED BY USER              */
305         TAPI_SAT_R_USSD_OR_SS_TRANSACTION_TERMINATED_BY_USER = 0x14, /**<       USSD OR SS TRANSACTION TERMINATED BY USER       */
306
307         TAPI_SAT_R_ME_UNABLE_TO_PROCESS_COMMAND = 0x20, /**<    ME currently unable to process command          */
308         TAPI_SAT_R_NETWORK_UNABLE_TO_PROCESS_COMMAND = 0x21, /**<       Network currently unable to process command             */
309         TAPI_SAT_R_USER_DID_NOT_ACCEPT_CALL_SETUP_REQ = 0x22, /**<      User did not accept call setup request          */
310         TAPI_SAT_R_USER_CLEAR_DOWN_CALL_BEFORE_CONN = 0x23, /**<        User cleared down call before connection or network released            */
311
312         TAPI_SAT_R_INTERACTION_WITH_CC_BY_SIM_IN_TMP_PRBLM = 0x25, /**< INTERACTION WITH CALL CONTROL BY SIM IN TEMPORARY PROBLEM               */
313         TAPI_SAT_R_LAUNCH_BROWSER_GENERIC_ERROR_CODE = 0x26, /**<       LAUNCH BROWSER GENERIC ERROR CODE               */
314
315         TAPI_SAT_R_BEYOND_ME_CAPABILITIES = 0x30, /**<  command beyond ME's capabilities                */
316         TAPI_SAT_R_COMMAND_TYPE_NOT_UNDERSTOOD_BY_ME = 0x31, /**<       command type not understood by ME               */
317         TAPI_SAT_R_COMMAND_DATA_NOT_UNDERSTOOD_BY_ME = 0x32, /**<       command data not understood by ME               */
318         TAPI_SAT_R_COMMAND_NUMBER_NOT_KNOWN_BY_ME = 0x33, /**<  command number not known by ME          */
319         TAPI_SAT_R_SS_RETURN_ERROR = 0x34, /**< SS return error         */
320         TAPI_SAT_R_SMS_RP_ERROR = 0x35, /**<    SMS rp-error            */
321         TAPI_SAT_R_ERROR_REQUIRED_VALUES_ARE_MISSING = 0x36, /**<       Error, required values are missing              */
322
323         TAPI_SAT_R_USSD_RETURN_ERROR = 0x37, /**<       USSD_RETURN_ERROR               */
324         TAPI_SAT_R_INTRCTN_WITH_CC_OR_SMS_CTRL_PRMNT_PRBLM = 0x39, /**< INTERACTION WITH CALL CONTROL OR SMS CONTROL PERMANENT PROBLEM          */
325         TAPI_SAT_R_BEARER_INDEPENDENT_PROTOCOL_ERROR = 0x3A, /**<       BEARER INDEPENDENT PROTOCOL ERROR               */
326         TAPI_SAT_R_FRAMES_ERROR = 0x3C /**<     FRAMES ERROR            */
327 } TelSatResultType_t;
328
329 /**
330  * @enum TelSatMeProblemType_t
331  * This enum lists the values for the Additional response for the RESULT object and specifies a particular ME PROBLEM.
332  */
333 typedef enum {
334         TAPI_SAT_ME_PROBLEM_NO_SPECIFIC_CAUSE = 0x0, /**<       ME problem with NO SPECIFIC CAUSE               */
335         TAPI_SAT_ME_PROBLEM_SCREEN_BUSY = 0x01, /**<    ME problem with SCREEN BUSY             */
336         TAPI_SAT_ME_PROBLEM_ME_BUSY_ON_CALL = 0x02, /**<        ME problem with ME BUSY ON CALL         */
337         TAPI_SAT_ME_PROBLEM_ME_BUSY_ON_SS = 0x03, /**<  ME problem with ME_BUSY ON SS           */
338         TAPI_SAT_ME_PROBLEM_NO_SERVICE = 0x04, /**<     ME problem with NO SERVICE              */
339         TAPI_SAT_ME_PROBLEM_ACCESS_CONTROL_CLASS_BAR = 0x05, /**<       ME problem with ACCESS CONTROL CLASS BAR                */
340         TAPI_SAT_ME_PROBLEM_RADIO_RES_NOT_GRANTED = 0x06, /**<  ME problem with RADIO RES NOT GRANTED           */
341         TAPI_SAT_ME_PROBLEM_NOT_IN_SPEECH_CALL = 0x07, /**<     ME problem with NOT IN SPEECH CALL      */
342         TAPI_SAT_ME_PROBLEM_ME_BUSY_ON_USSD = 0x08, /**<        ME problem with ME BUSY ON USSD         */
343         TAPI_SAT_ME_PROBLEM_ME_BUSY_ON_SEND_DTMF_CMD = 0x09, /**<       ME problem with ME BUSY ON SEND DTMF CMD        */
344         TAPI_SAT_ME_PROBLEM_NO_USIM_ACTIVE = 0x0A, /**< ME problem with NO USIM ACTIVE          */
345         TAPI_SAT_ME_PROBLEM_INVALID = 0xFF /**< ME problem with INVALID                 */
346 } TelSatMeProblemType_t;
347
348 /**
349  * @enum TelSatNetworkProblemType_t
350  * This enum lists the values for the Additional response for the RESULT object and specifies a particular network PROBLEM.
351  */
352 typedef enum {
353         TAPI_SAT_NETWORK_PROBLEM_NO_SPECIFIC_CAUSE = 0x0, /**<  Network problem with no specific cause          */
354         TAPI_SAT_NETWORK_PROBLEM_USER_BUSY = 0x91 /**<  Network problem with USER BUSY          */
355 } TelSatNetworkProblemType_t;
356
357 /**
358  * @enum TelSatSsProblemType_t
359  * This enum lists the values for the Additional response for the RESULT object related to SEND SS.
360  */
361 typedef enum {
362         TAPI_SAT_SS_PROBLEM_NO_SPECIFIC_CAUSE = 0, /**< SS problem with no specific cause               */
363         TAPI_SAT_SS_PROBLEM_FACILITY_NOT_SUPPORTED = 0x15 /**<  SS problem with FACILITY NOT SUPPORTED          */
364 } TelSatSsProblemType_t;
365
366 /**
367  * @enum TelSatSmsProblemType_t
368  * This enum lists the values for the Additional response for the RESULT object related to SEND SMS.
369  */
370 typedef enum {
371         TAPI_SAT_SMS_PROBLEM_NO_SPECIFIC_CAUSE = 0 /**< SMS problem with no specific cause              */
372 } TelSatSmsProblemType_t;
373
374 /**
375  * @enum TelSatUssdProblemType_t
376  * This enum lists the values for the Additional response for the RESULT object related to SEND USSD STRING.
377  */
378 typedef enum {
379         TAPI_SAT_USSD_PROBLEM_NO_SPECIFIC_CAUSE = 0, /**<       USSD problem with no specific cause             */
380         TAPI_SAT_USSD_PROBLEM_UNKNOWN_ALPHABET = 0x47 /**<      USSD problem with UNKNOWN ALPHABET              */
381 } TelSatUssdProblemType_t;
382
383 /**
384  * @enum TelSatCallCtrlProblemType_t
385  * This enum lists the values for the Additional response for the RESULT object related to CALL CONTROL or MO SMS CONTROL.
386  */
387 typedef enum {
388         TAPI_SAT_CC_PROBLEM_NO_SPECIFIC_CAUSE = 0, /**< Call Control problem with no specific cause             */
389         TAPI_SAT_CC_PROBLEM_ACTION_NOT_ALLOWED = 1, /**<        Call Control problem with action not allowed    */
390         TAPI_SAT_CC_PROBLEM_REQUEST_TYPE_HAS_CHANGED = 2 /**<   Call Control problem with request type has changed      */
391 } TelSatCallCtrlProblemType_t;
392
393 /**
394  * @enum TelSatLaunchBrowserProblemType_t
395  * This enum lists the values for the Additional response for the RESULT object related to LAUNCH BROWSER PROBLEM
396  */
397 typedef enum {
398         TAPI_SAT_BROWSER_PROBLEM_NO_SPECIFIC_CAUSE = 0, /**<    Browser problem with no specific cause          */
399         TAPI_SAT_BROWSER_PROBLEM_BEARER_UNAVAILABLE = 1, /**<   Browser problem with bearer unavailable         */
400         TAPI_SAT_BROWSER_PROBLEM_BROWSER_UNAVAILABLE = 2, /**<  Browser problem with browser unavailable                */
401         TAPI_SAT_BROWSER_PRBLM_ME_UNABLE_TO_READ_PROV_DATA = 3 /**<     Browser problem with ME unable to read provisioning data                */
402 } TelSatLaunchBrowserProblemType_t;
403
404 /**
405  * @enum TelSatBipProblemType_t
406  * This enum lists the values for the Additional response for the RESULT object.
407  *  Permanent Problems  ::: 12.12.11 ADDITIONAL INFORMATION :  BEARER INDEPENDENT PROTOCOL
408  */
409 typedef enum {
410         TAPI_SAT_BIP_PROBLEM_NO_SPECIFIC_CAUSE = 0x00, /**<     BIP problem with no specific cause      */
411         TAPI_SAT_BIP_PROBLEM_NO_CHANNEL_AVAILABLE = 0x01, /**<  BIP problem with no channel available           */
412         TAPI_SAT_BIP_PROBLEM_CHANNEL_CLOSED = 0x02, /**<        BIP problem with channel closed                 */
413         TAPI_SAT_BIP_PROBLEM_CHANNEL_ID_NOT_VALID = 0x03, /**<  BIP problem with channel id not valid           */
414         TAPI_SAT_BIP_PROBLEM_BUF_SIZE_NOT_AVAILABLE = 0x04, /**<        BIP problem with buffer size not available              */
415         TAPI_SAT_BIP_PROBLEM_SECURITY_ERROR = 0x05, /**<        BIP problem with security error                 */
416         TAPI_SAT_BIP_PRBLM_SIM_ME_IF_TRNSPRT_LEVEL_NOT_AVL = 0x06, /**< BIP problem with SIM ME interface transport level not available         */
417         TAPI_SAT_BIP_REMOTE_DEV_NOT_REACHABLE = 0x07, /**<      BIP problem with remote device not reachable            */
418         TAPI_SAT_BIP_SERVICE_ERROR = 0x08, /**< BIP service error               */
419         TAPI_SAT_BIP_SERVICE_IDENTIFIER_UNKNOWN = 0x09 /**<     BIP service identifier unknown          */
420 } TelSatBipProblemType_t;
421
422 /**
423  * @enum TelSatSmsTpduType_t
424  * This enum lists the values for the SMS TPDU type.
425  */
426 typedef enum {
427         TAPI_SAT_SMS_TPDU_TYPE_DELIVER_TPDU = 0, /**<   sms tpdu type - DELIVER TPDU    */
428         TAPI_SAT_SMS_TPDU_TYPE_DELIVER_RPT = 1, /**<    sms tpdu type - DELIVER RPT     */
429         TAPI_SAT_SMS_TPDU_TYPE_SUBMIT_TPDU = 2, /**<    sms tpdu type - SUBMIT TPDU             */
430         TAPI_SAT_SMS_TPDU_TYPE_SUBMIT_RPT = 3, /**<     sms tpdu type - SUBMIT RPT      */
431         TAPI_SAT_SMS_TPDU_TYPE_STATUS_RPT = 4, /**<     sms tpdu type - STATUS RPT      */
432         TAPI_SAT_SMS_TPDU_TYPE_TPDU_CMD = 5 /**<        sms tpdu type - TPDU CMD        */
433 } TelSatSmsTpduType_t;
434
435 /**
436  * @enum TelSatToneType_t
437  * This enum lists the values tones type.
438  */
439 typedef enum {
440         // standard supervisory tones
441         TAPI_SAT_DIAL_TONE = 0x01, /**< TONE TYPE DIAL TONE             */
442         TAPI_SAT_CALLED_SUBSCRIBER_BUSY = 0x02, /**<    TONE TYPE CALLED SUBSCRIBER BUSY                */
443         TAPI_SAT_CONGESTION = 0x03, /**<        TONE TYPE CONGESTION    */
444         TAPI_SAT_RADIO_PATH_ACK = 0x04, /**<    TONE TYPE RADIO PATH ACK        */
445         TAPI_SAT_RADIO_PATH_NOT_AVAILABLE_CALL_DROPPED = 0x05, /**<     TONE TYPE RADIO PATH NOT AVAILABLE CALL DROPPED */
446         TAPI_SAT_ERR_SPECIAL_INFO = 0x06, /**<  TONE TYPE ERR SPECIAL INFO      */
447         TAPI_SAT_CALL_WAITING_TONE = 0x07, /**< TONE TYPE CALL WAITING TONE             */
448         TAPI_SAT_RINGING_TONE = 0x08, /**<      TONE TYPE RINGING TONE  */
449
450         // ME proprietary tones
451         TAPI_SAT_GENERAL_BEEP = 0x10, /**<      TONE TYPE GENERAL BEEP          */
452         TAPI_SAT_POSITIVE_ACK_TONE = 0x11, /**< TONE TYPE POSITIVE ACK TONE             */
453         TAPI_SAT_NEGATIVE_ACK_OR_ERROR_TONE = 0x12, /**<        TONE TYPE NEGATIVE ACK OR ERROR TONE            */
454         TAPI_SAT_RINGING_TONE_SLCTD_BY_USR_FOR_INCOM_SPEECH_CALL = 0x13, /**<   TONE TYPE RINGING TONE SELECTED BY USER FOR INCOMING SPEECH CALL                */
455         TAPI_SAT_ALERT_TONE_SELECTED_BY_USER_FOR_INCOMING_SMS = 0x14, /**<      TONE TYPE ALERT TONE SELECTED BY USER FOR INCOMING SMS          */
456         TAPI_SAT_CRITICAL_ALERT = 0x15, /**<    TONE TYPE CRITICAL ALERT                */
457
458         //Themed tones
459         TAPI_SAT_HAPPY_TONE = 0x30, /**<        TONE TYPE HAPPY TONE            */
460         TAPI_SAT_SAD_TONE = 0x31, /**<  TONE TYPE SAD TONE                      */
461         TAPI_SAT_URGENT_ACTION_TONE = 0x32, /**<        TONE TYPE URGENT ACTION TONE            */
462         TAPI_SAT_QUESTION_TONE = 0x33, /**<     TONE TYPE QUESTION TONE                 */
463         TAPI_SAT_MESSAGE_RECEIVED_TONE = 0x34, /**<     TONE TYPE MESSAGE RECEIVED TONE                 */
464
465         //Melody tones
466         TAPI_SAT_MELODY_1 = 0x40, /**<  TONE TYPE MELODY 1              */
467         TAPI_SAT_MELODY_2 = 0x41, /**<  TONE TYPE MELODY 2              */
468         TAPI_SAT_MELODY_3 = 0x42, /**<  TONE TYPE MELODY 3              */
469         TAPI_SAT_MELODY_4 = 0x43, /**<  TONE TYPE MELODY 4              */
470         TAPI_SAT_MELODY_5 = 0x44, /**<  TONE TYPE MELODY 5              */
471         TAPI_SAT_MELODY_6 = 0x45, /**<  TONE TYPE MELODY 6              */
472         TAPI_SAT_MELODY_7 = 0x46, /**<  TONE TYPE MELODY 7              */
473         TAPI_SAT_MELODY_8 = 0x47, /**<  TONE TYPE MELODY 8              */
474
475         TAPI_SAT_TONE_TYPE_RESERVED = 0xFF /**< TONE TYPE RESERVED              */
476 } TelSatToneType_t;
477
478 /**
479  * @enum TelSatEventDownloadType_t
480  * This enum lists event types required by ME to monitor and report to SIM.
481  */
482 typedef enum {
483         TAPI_EVENT_SAT_DW_TYPE_MT_CALL = 0,
484         TAPI_EVENT_SAT_DW_TYPE_CALL_CONNECTED = 1,
485         TAPI_EVENT_SAT_DW_TYPE_CALL_DISCONNECTED = 2,
486         TAPI_EVENT_SAT_DW_TYPE_LOCATION_STATUS = 3,
487         TAPI_EVENT_SAT_DW_TYPE_USER_ACTIVITY = 4, /**<  data download type - USER_ACTIVITY              */
488         TAPI_EVENT_SAT_DW_TYPE_IDLE_SCREEN_AVAILABLE = 5, /**<  data download type - IDLE SCREEN AVAILABLE              */
489         TAPI_EVENT_SAT_DW_TYPE_CARD_READER_STATUS = 6,
490         TAPI_EVENT_SAT_DW_TYPE_LANGUAGE_SELECTION = 7, /**<     data download type - LANGUAGE SELECTION         */
491         TAPI_EVENT_SAT_DW_TYPE_BROWSER_TERMINATION = 8, /**<    data download type - BROWSER TERMINATION                */
492         TAPI_EVENT_SAT_DW_TYPE_DATA_AVAILABLE = 9, /**< data download type -DATA AVAILABLE              */
493         TAPI_EVENT_SAT_DW_TYPE_CHANNEL_STATUS = 0x0A, /**<      data download type - CHANNEL STATUS             */
494         TAPI_EVENT_SAT_DW_TYPE_ACCESS_TECHNOLOGY_CHANGED = 0x0B,
495         TAPI_EVENT_SAT_DW_TYPE_DISPLAY_PARAMETERS_CHANGED = 0x0C,
496         TAPI_EVENT_SAT_DW_TYPE_LOCAL_CONNECTION = 0x0D,
497         TAPI_EVENT_SAT_DW_TYPE_NW_SEARCH_MODE_CHANGED = 0X0E,
498         TAPI_EVENT_SAT_DW_TYPE_BROWSING_STATUS = 0X0F,
499         TAPI_EVENT_SAT_DW_TYPE_FRAMES_INFORMATION_CHANGED = 0X10,
500         TAPI_EVENT_SAT_DW_TYPE_RESERVED_FOR_3GPP = 0X11,
501         TAPI_EVENT_SAT_DW_TYPE_UNKNOWN = 0xFF /**<      data download type - unknown            */
502 } TelSatEventDownloadType_t;
503
504 /**
505  * @enum TelSatImageCodingSchemeType_t
506  * This enum lists image coding scheme types required by ME to show.
507  */
508 typedef enum {
509         TAPI_SAT_SIM_IMAGE_CODING_SCHEME_BASIC = 0x11, /**<     IMAGE CODING SCHEME BASIC               */
510         TAPI_SAT_SIM_IMAGE_CODING_SCHEME_COLOUR = 0x21, /**<    IMAGE CODING SCHEME COLOUR              */
511         TAPI_SAT_SIM_IMAGE_CODING_SCHEME_RESERVED = 0xFF /**<      RESERVED             */
512 } TelSatImageCodingSchemeType_t;
513
514 /**
515  * @enum TelSatIconQualifierType_t
516  * This enum defines the icon qualifier.
517  */
518 typedef enum {
519         TAPI_SAT_ICON_QUALI_SELF_EXPLANATORY = 0, /**<  ICON QUALI SELF EXPLANATORY     */
520         TAPI_SAT_ICON_QUALI_NOT_SELF_EXPLANATORY = 1, /**<      ICON QUALI NOT SELF EXPLANATORY         */
521         TAPI_SAT_ICON_QUALI_RESERVED = 0xFF /**<          RESERVED      */
522 } TelSatIconQualifierType_t;
523
524 /**
525  * @enum TelSatBcRepeatIndicatorType_t
526  * This enum defines the SIM ATK BC repeat indicator type.
527  */
528 typedef enum {
529         TAPI_SAT_BC_REPEAT_INDI_ALTERNATE_MODE = 0x01, /**<     BC REPEAT ALTERNATE MODE                */
530         TAPI_SAT_BC_REPEAT_INDI_SEQUENTIAL_MODE = 0x03, /**<    BC REPEAT SEQUENTIAL MODE               */
531         TAPI_SAT_BC_REPEAT_INDI_RESERVED = 0xFF /**<    RESERVED        */
532 } TelSatBcRepeatIndicatorType_t;
533
534 /**
535  * @enum TelSatCallCtrlStringType_t
536  * This enum defines call control string type.
537  */
538 typedef enum {
539         TAPI_SAT_CC_VOICE = 0x00, /**<  Call Control String Type - voice                */
540         TAPI_SAT_CC_SS = 0x01, /**<     Call Control String Type - ss           */
541         TAPI_SAT_CC_USSD = 0x02, /**<   Call Control String Type - ussd         */
542         TAPI_SAT_CC_NONE = 0xFF /**<    Call Control String Type - none                 */
543 } TelSatCallCtrlStringType_t;
544
545 /**
546  * @enum TelSatLanguageType_t
547  * This enum lists the language values.
548  */
549 typedef enum {
550         TAPI_SAT_LP_GERMAN = 0x00, /**< GERMAN          */
551         TAPI_SAT_LP_ENGLISH = 0x01, /**<        ENGLISH         */
552         TAPI_SAT_LP_ITALIAN = 0x02, /**<        ITALIAN         */
553         TAPI_SAT_LP_FRENCH = 0x03, /**< FRENCH          */
554         TAPI_SAT_LP_SPANISH = 0x04, /**<        SPANISH         */
555         TAPI_SAT_LP_DUTCH = 0x05, /**<  DUTCH           */
556         TAPI_SAT_LP_SWEDISH = 0x06, /**<        SWEDISH */
557         TAPI_SAT_LP_DANISH = 0x07, /**< DANISH  */
558         TAPI_SAT_LP_PORTUGUESE = 0x08, /**<     PORTUGUESE      */
559         TAPI_SAT_LP_FINNISH = 0x09, /**<        FINNISH */
560         TAPI_SAT_LP_NORWEGIAN = 0x0A, /**<      NORWEGIAN       */
561         TAPI_SAT_LP_GREEK = 0x0B, /**<  GREEK   */
562         TAPI_SAT_LP_TURKISH = 0x0C, /**<        TURKISH */
563         TAPI_SAT_LP_HUNGARIAN = 0x0D, /**<      HUNGARIAN       */
564         TAPI_SAT_LP_POLISH = 0x0E, /**< POLISH  */
565         TAPI_SAT_LP_LANG_UNSPECIFIED = 0x0F /**<        LANGUAGE UNSPECIFIED    */
566 } TelSatLanguageType_t;
567
568 /**
569  * @enum TelSatBrowserIdentityType_t
570  * This enum lists the SAT browser identity type.
571  */
572 typedef enum {
573         TAPI_SAT_BROWSER_ID_DEFAULT = 0x0, /**< DEFAULT BROWSER                 */
574         TAPI_SAT_BROWSER_ID_WML, /**<   BROWSER WML     */
575         TAPI_SAT_BROWSER_ID_HTML, /**<  BROWSER HTML    */
576         TAPI_SAT_BROWSER_ID_XHTML, /**< BROWSER XHTML   */
577         TAPI_SAT_BROWSER_ID_CHTML, /**< BROWSER CHTML   */
578         TAPI_SAT_BROWSER_ID_RESERVED = 0xFF /**<        RESERVED        */
579 } TelSatBrowserIdentityType_t;
580
581 /**
582  * @enum TelSatBearerType_t
583  * This enum lists the SAT bearer type.
584  */
585 typedef enum {
586         TAPI_SAT_BEARER_TYPE_SMS = 0x0, /**<    BEARER SMS              */
587         TAPI_SAT_BEARER_TYPE_CSD = 0x1, /**<    BEARER CSD              */
588         TAPI_SAT_BEARER_TYPE_USSD = 0x2, /**<   BEARER USSD             */
589         TAPI_SAT_BEARER_TYPE_GPRS = 0x3, /**<   BEARER GPRS             */
590         TAPI_SAT_BEARER_TYPE_RESERVED = 0xFF /**<       BEARER RESERVED         */
591 } TelSatBearerType_t;
592
593 /**
594  * @enum TelSatBrowserTerminationCauseType_t
595  * This enum lists the SAT browser termination cause type.
596  */
597 typedef enum {
598         TAPI_SAT_BROWSER_TERMINATED_BY_USER = 0, /**<   BROWSER TERMINATED BY USER              */
599         TAPI_SAT_BROWSER_TERMINATED_BY_ERROR = 1, /**<  BROWSER TERMINATED BY ERROR             */
600 } TelSatBrowserTerminationCauseType_t;
601
602 /**
603  * @enum TelSatBearerDescType_t
604  * This enum lists the SAT bearer destination type.
605  */
606 typedef enum {
607         TAPI_SAT_BEARER_CSD = 0x1, /**< BEARER DESC CSD                 */
608         TAPI_SAT_BEARER_GPRS = 0x2, /**<        BEARER DESC GPRS                */
609         TAPI_SAT_BEARER_DEFAULT_BEARER_FROM_TRANSPORT_LAYER = 0x3, /**< BEARER DESC DEFAULT BEARER FROM TRANSPORT LAYER         */
610         TAPI_SAT_BEARER_LOCAL_LINK_TECHNOLOGY_INDEPENDENT = 0x4, /**<   BEARER DESC LOCAL LINK TECHNOLOGY INDEPENDENT           */
611         TAPI_SAT_BEARER_BLUETOOTH = 0x5, /**<   BEARER DESC BLUETOOTH   */
612         TAPI_SAT_BEARER_IrDA = 0x6, /**<        BEARER DESC IrDA        */
613         TAPI_SAT_BEARER_RS232 = 0x7, /**<       BEARER DESC RS232       */
614         TAPI_SAT_BEARER_USB = 0x10, /**<        BEARER DESC USB */
615         TAPI_SAT_BEARER_RESERVED = 0xFF /**<    RESERVED        */
616 } TelSatBearerDescType_t;
617
618 /**
619  * @enum TelSatBearerParamCsdDataRateType_t
620  * This enum lists the SAT bearer parameter csd data rate. refer TS 27.007
621  */
622 typedef enum {
623         TAPI_SAT_BIP_DR_AUTOBAUDING = 0, /**<   CSD data rate - AUTOBAUDING             */
624         TAPI_SAT_BIP_DR_300BPS_V21 = 1, /**<    CSD data rate -300BPS V21               */
625         TAPI_SAT_BIP_DR_1200BPS_V22 = 2, /**<   CSD data rate - 1200BPS V22             */
626         TAPI_SAT_BIP_DR_1200_75BPS_V23 = 3, /**<        CSD data rate -1200 75BPS V23                   */
627         TAPI_SAT_BIP_DR_2400BPS_V22 = 4, /**<   CSD data rate -2400BPS V22              */
628         TAPI_SAT_BIP_DR_2400BPS_V26 = 5, /**<   CSD data rate - 2400BPS V26                     */
629         TAPI_SAT_BIP_DR_4800BPS_V32 = 6, /**<   CSD data rate - 4800BPS V32             */
630         TAPI_SAT_BIP_DR_9600BPS_V32 = 7, /**<   CSD data rate - 9600BPS V32             */
631         TAPI_SAT_BIP_DR_9600BPS_V34 = 12, /**<  CSD data rate - 9600BPS_V34             */
632         TAPI_SAT_BIP_DR_14400BPS_V34 = 14, /**< CSD data rate -14400BPS V34             */
633         TAPI_SAT_BIP_DR_19200BPS_V34 = 15, /**< CSD data rate -19200BPS V34             */
634         TAPI_SAT_BIP_DR_28800BPS_V34 = 16, /**< CSD data rate -28800BPS V34             */
635         TAPI_SAT_BIP_DR_33600BPS_V34 = 17, /**< CSD data rate -33600BPS V34             */
636         TAPI_SAT_BIP_DR_1200BPS_V120 = 34, /**< CSD data rate -1200BPS V120             */
637         TAPI_SAT_BIP_DR_2400BPS_V120 = 36, /**< CSD data rate -2400BPS V120             */
638         TAPI_SAT_BIP_DR_4800BPS_V120 = 38, /**< CSD data rate -4800BPS V120             */
639         TAPI_SAT_BIP_DR_9600BPS_V120 = 39, /**< CSD data rate -9600BPS V120             */
640         TAPI_SAT_BIP_DR_14400BPS_V120 = 43, /**<        CSD data rate -14400BPS V120            */
641         TAPI_SAT_BIP_DR_19200BPS_V120 = 47, /**<        CSD data rate -19200BPS V120            */
642         TAPI_SAT_BIP_DR_28800BPS_V120 = 48, /**<        CSD data rate -28800BPS V120            */
643         TAPI_SAT_BIP_DR_38400BPS_V120 = 49, /**<        CSD data rate -38400BPS V120            */
644         TAPI_SAT_BIP_DR_48000BPS_V120 = 50, /**<        CSD data rate -48000BPS V120            */
645         TAPI_SAT_BIP_DR_56000BPS_V120 = 51, /**<        CSD data rate -56000BPS V120            */
646         TAPI_SAT_BIP_DR_300BPS_V110 = 65, /**<  CSD data rate - 300BPS V110             */
647         TAPI_SAT_BIP_DR_1200BPS_V110 = 66, /**< CSD data rate -1200BPS V110             */
648         TAPI_SAT_BIP_DR_2400BPS_V110_OR_X31_FALG_STUFFING = 68, /**<    CSD data rate - 2400BPS V110 OR X31 FALG STUFFING               */
649         TAPI_SAT_BIP_DR_4800BPS_V110_OR_X31_FALG_STUFFING = 70, /**<    CSD data rate - 4800BPS V110 OR X31 FALG STUFFING               */
650         TAPI_SAT_BIP_DR_9600BPS_V110_OR_X31_FALG_STUFFING = 71, /**<    CSD data rate - 9600BPS V110 OR X31 FALG STUFFING               */
651         TAPI_SAT_BIP_DR_14400BPS_V110_OR_X31_FALG_STUFFING = 75, /**<   CSD data rate - 14400BPS V110 OR X31 FALG STUFFING              */
652         TAPI_SAT_BIP_DR_19200BPS_V110_OR_X31_FALG_STUFFING = 79, /**<   CSD data rate -19200BPS V110 OR X31 FALG STUFFING               */
653         TAPI_SAT_BIP_DR_28800BPS_V110_OR_X31_FALG_STUFFING = 80, /**<   CSD data rate -28800BPS V110 OR X31 FALG STUFFING               */
654         TAPI_SAT_BIP_DR_38400BPS_V110_OR_X31_FALG_STUFFING = 81, /**<   CSD data rate -38400BPS V110 OR X31 FALG STUFFING               */
655         TAPI_SAT_BIP_DR_48000BPS_V110_OR_X31_FALG_STUFFING = 82, /**<   CSD data rate -48000BPS V110 OR X31 FALG STUFFING               */
656         TAPI_SAT_BIP_DR_56000BPS_V110_OR_X31_FALG_STUFFING = 83, /**<   CSD data rate -56000BPS V110 OR X31 FALG STUFFING               */
657         TAPI_SAT_BIP_DR_64000BPS = 84, /**<     CSD data rate -64000BPS                 */
658         TAPI_SAT_BIP_DR_56000BPS_BIT_TRANSPERENT = 115, /**<    CSD data rate -56000BPS BIT TRANSPERENT                 */
659         TAPI_SAT_BIP_DR_64000BPS_BIT_TRANSPERENT = 116, /**<    CSD data rate -64000BPS BIT TRANSPERENT                 */
660         TAPI_SAT_BIP_DR_32000BPS_PIAFS32K = 120, /**<   CSD data rate -32000BPS PIAFS32K                */
661         TAPI_SAT_BIP_DR_64000BPS_PIAFS64K = 121, /**<   CSD data rate - 64000BPS PIAFS64K               */
662         TAPI_SAT_BIP_DR_28800BPS_MULTIMEDIA = 130, /**< CSD data rate -28800BPS MULTIMEDIA              */
663         TAPI_SAT_BIP_DR_32000BPS_MULTIMEDIA = 131, /**< CSD data rate -32000BPS MULTIMEDIA              */
664         TAPI_SAT_BIP_DR_33600BPS_MULTIMEDIA = 132, /**< CSD data rate - 33600BPS MULTIMEDIA             */
665         TAPI_SAT_BIP_DR_56000BPS_MULTIMEDIA = 133, /**< CSD data rate -56000BPS MULTIMEDIA              */
666         TAPI_SAT_BIP_DR_64000BPS_MULTIMEDIA = 134 /**<  CSD data rate -64000BPS MULTIMEDIA              */
667 } TelSatBearerParamCsdDataRateType_t;
668
669 /**
670  * @enum TelSatBearerParamCsdBearerServiceType_t
671  * This enum lists the SAT bearer parameter csd bearer service
672  */
673 typedef enum {
674         TAPI_SAT_BIP_CSD_BS_DATA_CIRCUIT_ASYNC_UDI = 0, /**<    CSD Bearer service - DATA CIRCUIT ASYNCHRONOUS UDI              */
675         TAPI_SAT_BIP_CSD_BS_DATA_CIRCUIT_SYNC = 1, /**< CSD Bearer service - DATA CIRCUIT SYNCHRONOUS UDI               */
676         TAPI_SAT_BIP_CSD_BS_PAD_ACCESS_ASYNC_UDI = 2, /**<      CSD Bearer service - PAD ACCESS ASYNCHRONOUS UDI                        */
677         TAPI_SAT_BIP_CSD_BS_PACKET_ACCESS_SYNC = 3, /**<        CSD Bearer service - PACKET ACCESS SYNCHRONOUS UDI              */
678         TAPI_SAT_BIP_CSD_BS_DATA_CIRCUIT_ASYNC_RDI = 4, /**<    CSD Bearer service - DATA CIRCUIT ASYNCHRONOUS RDI              */
679         TAPI_SAT_BIP_CSD_BS_DATA_CIRCUIT_SYNC_RDI = 5, /**<     CSD Bearer service - DATA CIRCUIT SYNCHRONOUS RDI               */
680         TAPI_SAT_BIP_CSD_BS_PAD_ACCESS_ASYNC_RDI = 6, /**<      CSD Bearer service - PAD ACCESS ASYNCHRONOUS RDI                */
681         TAPI_SAT_BIP_CSD_BS_PACKET_ACCESS_SYNC_RDI = 7 /**<     CSD Bearer service - PACKET ACCESS SYNCHRONOUS RDI              */
682 } TelSatBearerParamCsdBearerServiceType_t;
683
684 /**
685  * @enum TelSatBearerParamCsdConnectionElementType_t
686  * This enum lists the SAT bearer parameter csd connection element
687  */
688 typedef enum {
689         TAPI_SAT_BIP_CSD_CONN_ELEM_TRANSPARENT = 0, /**<        CSD connection element - TRANSPARENT            */
690         TAPI_SAT_BIP_CSD_CONN_ELEM_NON_TRANSPARENT = 1, /**<    CSD connection element - NON TRANSPARENT                */
691         TAPI_SAT_BIP_CSD_CONN_ELEM_BOTH_TRANSPARENT_PREF = 2, /**<      CSD connection element -BOTH TRANSPARENT PREFFERED              */
692         TAPI_SAT_BIP_CSD_CONN_ELEM_BOTH_NON_TRANSPARENT_PREF = 3 /**<   CSD connection element -  NON TRANSPARENT PREFFERED             */
693 } TelSatBearerParamCsdConnectionElementType_t;
694
695 /**
696  * @enum TelSatBearerParamGprsPrecedenceClassType_t
697  * This enum lists the SAT bearer parameter GPRS precedence class. refer  TS 23.107
698  */
699 typedef enum {
700         TAPI_SAT_BIP_GPRS_PRECED_CLASS_HIGH_PRIORITY = 0x01, /**<       GPRS precedence class -HIGH PRIORITY            */
701         TAPI_SAT_BIP_GPRS_PRECED_CLASS_NORM_PRIORITY = 0x02, /**<       GPRS precedence class -NORM PRIORITY            */
702         TAPI_SAT_BIP_GPRS_PRECED_CLASS_LOW_PRIORITY = 0x03 /**< GPRS precedence class - LOW PRIORITY            */
703 } TelSatBearerParamGprsPrecedenceClassType_t;
704
705 /**
706  * @enum TelSatBearerParamGprsDelayClassType_t
707  * This enum lists the SAT bearer parameter GPRS delay class.
708  */
709 typedef enum {
710         TAPI_SAT_BIP_GPRS_DELAY_CLASS_1 = 0x01, /**<    GPRS delay class - 1            */
711         TAPI_SAT_BIP_GPRS_DELAY_CLASS_2 = 0x02, /**<    GPRS delay class -      2       */
712         TAPI_SAT_BIP_GPRS_DELAY_CLASS_3 = 0x03, /**<    GPRS delay class -      3       */
713         TAPI_SAT_BIP_GPRS_DELAY_CLASS_4 = 0x04 /**<     GPRS delay class - 4            */
714 } TelSatBearerParamGprsDelayClassType_t;
715
716 /**
717  * @enum TelSatBearerParamGprsReliabilityClassType_t
718  * This enum lists the SAT bearer parameter GPRS Reliability class.
719  */
720 typedef enum {
721         TAPI_SAT_BIP_GPRS_RELIABILITY_CLASS_1 = 0x01, /**<      GPRS Reliability class -1               */
722         TAPI_SAT_BIP_GPRS_RELIABILITY_CLASS_2 = 0x02, /**<      GPRS Reliability class -2               */
723         TAPI_SAT_BIP_GPRS_RELIABILITY_CLASS_3 = 0x03, /**<      GPRS Reliability class -3               */
724         TAPI_SAT_BIP_GPRS_RELIABILITY_CLASS_4 = 0x04, /**<      GPRS Reliability class -4               */
725         TAPI_SAT_BIP_GPRS_RELIABILITY_CLASS_5 = 0x05 /**<       GPRS Reliability class -5               */
726 } TelSatBearerParamGprsReliabilityClassType_t;
727
728 /**
729  * @enum TelSatBearerParamGprsPeakThroughputClassType_t
730  * This enum lists the SAT bearer parameter GPRS peak throughput class.
731  */
732 typedef enum {
733         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_8KBPS = 0x01, /**< GPRS peak throughput class- UPTO 8KBPS          */
734         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_16KBPS = 0x02, /**<        GPRS peak throughput class- UPTO 16KBPS         */
735         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_32KBPS = 0x03, /**<        GPRS peak throughput class-UPTO 32KBPS          */
736         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_64KBPS = 0x04, /**<        GPRS peak throughput class-UPTO 64KBPS          */
737         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_128KBPS = 0x05, /**<       GPRS peak throughput class- UPTO 128KBPS                        */
738         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_256KBPS = 0x06, /**<       GPRS peak throughput class- UPTO 256KBPS                        */
739         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_512KBPS = 0x07, /**<       GPRS peak throughput class- UPTO 512KBPS                */
740         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_1024KBPS = 0x08, /**<      GPRS peak throughput class-UPTO 1024KBPS                */
741         TAPI_SAT_BIP_GPRS_PEAK_THROUGHPUT_CLASS_UPTO_2048KBPS = 0x09 /**<       GPRS peak throughput class- UPTO 2048KBPS               */
742 } TelSatBearerParamGprsPeakThroughputClassType_t;
743
744 /**
745  * @enum TelSatBearerParamGprsMeanThroughputClassType_t
746  * This enum lists the SAT bearer parameter GPRS mean throughput class.
747  */
748 typedef enum {
749         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_DOT_22_BPS = 0x01, /**< GPRS mean throughput class - DOT 22 BPS         */
750         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_DOT_44_BPS = 0x02, /**< GPRS mean throughput class - DOT 44 BPS         */
751         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_1_DOT_11_BPS = 0x03, /**<       GPRS mean throughput class -1 DOT 11 BPS                */
752         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_2_DOT_2_BPS = 0x04, /**<        GPRS mean throughput class -2 DOT 2 BPS         */
753         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_2_DOT_4_BPS = 0x05, /**<        GPRS mean throughput class -2 DOT 4 BPS                 */
754         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_11_DOT_1_BPS = 0x06, /**<       GPRS mean throughput class - 11 DOT 1 BPS               */
755         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_22BPS = 0x07, /**<      GPRS mean throughput class -22BPS               */
756         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_44BPS = 0x08, /**<      GPRS mean throughput class - 44BPS              */
757         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_111BPS = 0x09, /**<     GPRS mean throughput class - 111BPS             */
758         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_DOT_22_KBPS = 0x0A, /**<        GPRS mean throughput class - DOT 22 KBPS                */
759         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_DOT_44_KBPS = 0x0B, /**<        GPRS mean throughput class -DOT 44 KBPS                 */
760         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_1_DOT_11_KBPS = 0x0C, /**<      GPRS mean throughput class -1 DOT 11 KBPS               */
761         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_2_DOT_2_KBPS = 0x0D, /**<       GPRS mean throughput class -2 DOT 2 KBPS                */
762         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_4_DOT_4_KBPS = 0x0E, /**<       GPRS mean throughput class - 4 DOT 4 KBPS               */
763         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_11_DOT_1_KBPS = 0x0F, /**<      GPRS mean throughput class -11 DOT 1 KBPS               */
764         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_22KBPS = 0x10, /**<     GPRS mean throughput class - 22KBPS             */
765         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_44KBPS = 0x11, /**<     GPRS mean throughput class - 44KBPS             */
766         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_111KBPS = 0x12, /**<    GPRS mean throughput class -111KBPS             */
767         TAPI_SAT_BIP_GPRS_MEAN_THROUGHPUT_CLASS_BEST_EFFORT = 0x13 /**< GPRS mean throughput class - BEST EFFORT                */
768 } TelSatBearerParamGprsMeanThroughputClassType_t;
769
770 /**
771  * @enum TelSatBearerParamGprsPdpType_t
772  * This enum lists the SAT bearer parameter GPRS pdp type.
773  */
774 typedef enum {
775         TAPI_SAT_BIP_GPRS_PDP_TYPE_IP = 0x02, /**<      bearer parameter GPRS pdp type - IP             */
776         TAPI_SAT_BIP_GPRS_PDP_TYPE_RESERVED = 0xff /**< reserved                */
777 } TelSatBearerParamGprsPdpType_t;
778
779 /**
780  * @enum TelSatBearerParamLocalLinksServiceIdentityType_t
781  * This enum lists the SAT bearer parameters local links service identity.
782  */
783 typedef enum {
784         TAPI_SAT_BIP_LL_SERVICE_IDENT_VALUE_ASSIGNED_BY_USIM = 0x00, /**<       local links service identity - value assigned by USIM           */
785         TAPI_SAT_BIP_LL_SERVICE_IDENT_VALUE_ASSIGNED_BY_REMOTED_DEVICE = 0xFF /**<      local links service identity - value assigned by remote service */
786 } TelSatBearerParamLocalLinksServiceIdentityType_t;
787
788 /**
789  * @enum TelSatChannelStatusType_t
790  * This enum lists the SAT channel status type.
791  */
792 typedef enum {
793         TAPI_SAT_CS_LINK_ESTABLISHED_OR_PDP_CTX_NOT_ACTIVATED, /**<     channel status type-CS LINK ESTABLISHED OR PDP CTX NOT ACTIVATED                */
794         TAPI_SAT_CS_LINK_ESTABLISHED_OR_PDP_CTX_ACTIVATED, /**< channel status type-CS LINK ESTABLISHED OR PDP CTX ACTIVATED            */
795         TAPI_SAT_UICC_SERVER_MODE_TCP_IN_CLOSED_STATE, /**<     channel status type-UICC SERVER MODE TCP IN CLOSED STATE                */
796         TAPI_SAT_UICC_SERVER_MODE_TCP_IN_LISTEN_STATE, /**<     channel status type-UICC SERVER MODE TCP IN LISTEN STATE                */
797         TAPI_SAT_UICC_SERVER_MODE_TCP_IN_ESTABLISHED_STATE, /**<        channel status type-UICC SERVER MODE TCP IN ESTABLISHED STATE           */
798         TAPI_SAT_UICC_SERVER_MODE_RESERVED /**< reserved                */
799 } TelSatChannelStatusType_t;
800
801 /**
802  * @enum TelSatChannelStatusInfoType_t
803  * This enum lists the SAT channel status info type.
804  */
805 typedef enum {
806         TAPI_SAT_CHANNEL_STATUS_NO_FURTHER_INFO_AVAILABLE = 0, /**<     CHANNEL STATUS NO FURTHER INFO AVAILABLE                */
807         TAPI_SAT_CHANNEL_STATUS_NOT_USED = 1, /**<      CHANNEL STATUS NOT USED                 */
808         TAPI_SAT_CHANNEL_STATUS_LINK_DROPPED = 5 /**<   CHANNEL STATUS LINK DROPPED     */
809 } TelSatChannelStatusInfoType_t;
810
811 /**
812  * @enum TelSatAddressType_t
813  * This enum lists the SAT address type.
814  */
815 typedef enum {
816         TAPI_SAT_ADDR_TYPE_IPv4 = 0x21, /**<    address type - IPv4     */
817         TAPI_SAT_ADDR_TYPE_IPv6 = 0x57, /**<    address type - IPv6     */
818         TAPI_SAT_ADDR_RESERVED = 0xFF /**<      reserved                */
819 } TelSatAddressType_t;
820
821 /**
822  * @enum TelSatTransportProtocolType_t
823  * This enum lists the SAT transport protocol type.
824  */
825 typedef enum {
826         TAPI_SAT_TP_TYPE_UDP_UICC_CLIENT = 0x01, /**<   transport protocol type- UDP UICC CLIENT        */
827         TAPI_SAT_TP_TYPE_TCP_UICC_CLIENT = 0x02, /**<   transport protocol type-TCP UICC CLIENT         */
828         TAPI_SAT_TP_TYPE_TCP_UICC_SERVER = 0x03 /**<    transport protocol type- TCP UICC SERVER        */
829 } TelSatTransportProtocolType_t;
830
831 /**
832  * @enum TelSatRemoteEntityAddrCodingType_t
833  * This enum lists the SAT remote entity address coding type.
834  */
835 typedef enum {
836         TAPI_SAT_REMOTE_ENTITY_ADDR_CODING_TYPE_IEEE802_48BIT = 0, /**< remote entity address coding type- IEEE802 48BIT                */
837         TAPI_SAT_REMOTE_ENTITY_ADDR_CODING_TYPE_IRDA_32BIT = 1, /**<    remote entity address coding type- IRDA 32BIT           */
838         TAPI_SAT_REMOTE_ENTITY_ADDR_CODING_TYPE_RESERVED = 0xFF /**<    reserved                */
839 } TelSatRemoteEntityAddrCodingType_t;
840
841 /**
842  * This structure defines the Address data object.
843  */
844 typedef struct {
845         TelSimTypeOfNum_t ton; /**<     type of number          */
846         TelSimNumberingPlanIdentity_t npi; /**< number plan identity            */
847         unsigned char diallingNumberLen; /**<   dialing number length           */
848         char diallingNumber[TAPI_SAT_DIALLING_NUMBER_LEN_MAX]; /**<     dialing number  */
849 } TelSatAddressInfo_t;
850
851 /**
852  * This structure defines the data coding scheme object.
853  */
854 typedef struct {
855         int bIsCompressedFormat; /**<   flag to verify compressed format        */
856         TelSatAlphabetFormatType_t alphabetFormat; /**< alphabet format Type            */
857         TelSatMsgClassType_t msgClass; /**<     Type of message class           */
858         unsigned char rawDcs; /**<      raw dcs info            */
859 } TelSatDataCodingSchemeInfo_t;
860
861 /**
862  * This structure defines the Alpha ID data object.
863  */
864 typedef struct {
865         int bIsPresent; /**<    flag for checking existence of alpha identifier         */
866         TelSatDataCodingSchemeInfo_t dcs; /**<  dcs info                */
867         unsigned char stringLen; /**<   alpha identifier length                 */
868         char string[TAPI_SAT_ALPHA_ID_LEN_MAX]; /**<    alpha identifier info   */
869 } TelSatAlphaIdentifierInfo_t;
870
871 /**
872  * This structure defines the Sub Address data object.
873  */
874 typedef struct {
875         unsigned char subAddressLen; /**<       sub address length              */
876         char subAddress[TAPI_SAT_SUB_ADDR_LEN_MAX]; /**<        sub address             */
877 } TelSatSubAddressInfo_t;
878
879 /**
880  * This structure defines the Capability Configuration Parameters data object.
881  */
882 typedef struct {
883         unsigned char dataLen; /**<     capability configuration parameter length       */
884         char data[TAPI_SAT_CCP_DATA_LEN_MAX]; /**<      capability configuration parameter      */
885 } TelSatCapaConfigParamInfo_t;
886
887 /**
888  * This struct defines the Command qualifier values for send SMS command.
889  */
890 typedef struct {
891         int bIsPackingByMeRequired; /**<        flag to verify packing requirement, if FALSE, packing by ME not required        */
892 } TelSatCmdQualiSendSms_t;
893
894 /**
895  * This struct defines the Command qualifier values for display text command.
896  */
897 typedef struct {
898         TelSatDisplayTextPriorityType_t msgPriority; /**<       message priority                */
899         TelSatDisplayTextMsgClearType_t msgClear; /**<  message clear type              */
900 } TelSatCmdQualiDisplayText_t;
901
902 /**
903  * This struct defines the Command qualifier values for get inkey command.
904  */
905 typedef struct {
906         TelSatInkeyType_t inkeyType; /**<       inkey type              */
907         int bIsUsingAlphabetSet; /**<   flag for checking whether using alphabet set or not. if FALSE, digits(0-9,*,#and+) only         */
908         TelSatUseInputAlphabetType_t alphabetType; /**< alphabet type           */
909         int bIsImmediateResponseRequired;/**<   flag for checking whether immediate response required or not            */
910         int bIsHelpInfoAvailable; /**<  flag for checking whether help info available or not. if FALSE, no help information available   */
911 } TelSatCmdQualiGetInkey_t;
912
913 /**
914  * This struct defines the Command qualifier values for get input command.
915  */
916 typedef struct {
917         int bIsUsingAlphabetSet; /**<   flag for checking whether using alphabet set. if FALSE, digits(0-9,*,#and+) only        */
918         TelSatUseInputAlphabetType_t alphabetType; /**< alphabet type. only using alphabet set case.            */
919         int bIsMeEchoUserInput; /**<    flag for checking whether ME should echo user input. if FALSE, user input shall not be displayed*/
920         int bIsUserInputUnpackedFormat; /**<    flag for checking whether user input is in unpacked format or not.  if FALSE, user input in SMS packed format   */
921         int bIsHelpInfoAvailable; /**<  flag to verify if help info available or not. if FALSE, no help information available   */
922 } TelSatCmdQualiGetInput_t;
923
924 /**
925  * This struct defines the Command qualifier values for play tone command.
926  */
927 typedef struct {
928         TelSatDisplayVibrateAlertType_t vibrateAlert; /**<      type of vibrate alert           */
929 } TelSatCmdQualiPlayTone_t;
930
931 /**
932  * This struct defines the Command qualifier values for select item command.
933  */
934 typedef struct {
935         TelSatPresentationType_t presentationType; /**< type of presentation. only presentation type specified          */
936         TelSatSelectionPreferenceType_t selectionPreference; /**<       type of selection preference            */
937         int bIsHelpInfoAvailable; /**<  flag for checking whether help info available or not. if FALSE, no help information available   */
938 } TelSatCmdQualiSelectItem_t;
939
940 /**
941  * This struct defines the Command qualifier values for setup menu command.
942  */
943 typedef struct {
944         TelSatSelectionPreferenceType_t selectionPreference; /**<       type of selection preference            */
945         int bIsHelpInfoAvailable; /**<  flag to verify help info available or not. if FALSE, no help information available      */
946 } TelSatCmdQualiSetupMenu_t;
947
948 /**
949  * This struct defines the Command qualifier values for language notification command.
950  */
951 typedef struct {
952         int bSpecificLanguageNotification; /**< flag for specific language notification. if FALSE, non-specific language notification   */
953 } TelSatCmdQualiLanguageNotification_t;
954
955 /**
956  * SAT command qualifier open channel
957  */
958 typedef struct {
959         int bIsEstablishImmediateLink; /**<     flag whether establishing immediate link or not. if FALSE, on demand link establishment */
960         int bIsAutomaticReconnection; /**<      flag whether automatic reconnection or not. if FALSE, no automatic reconnection */
961         int bIsModeBackground; /**<     flag whether background mode or not.            */
962 } TelSatCmdQualiOpenChannel_t;
963
964 /**
965  * SAT command qualifier send data
966  */
967 typedef struct {
968         int bIsSendDataImmediately; /**<        flag whether to send data immediately or not. if FALSE, store data in Tx buffer*/
969 } TelSatCmdQualiSendData_t;
970
971 /**
972  * This structure contains the command number, type and the qualifier objects of a SATK command.
973  */
974 typedef struct {
975         unsigned char commandNumber; /**< specific command number       */
976         TelSatCommandType_t commandType; /**<   proactive command type          */
977
978         union {
979                 TelSatCmdQualiRefresh_t cmdQualiRefresh; /**<   refresh command qualifier info  */
980                 TelSatCmdQualiSetupCall_t cmdQualiSetupCall; /**<       setup call command qualifier info       */
981                 TelSatCmdQualiSendSms_t cmdQualiSendSms; /**<   send sms command qualifier info */
982                 TelSatCmdQualiDisplayText_t cmdQualiDisplayText; /**<   display text command qualifier info     */
983                 TelSatCmdQualiGetInkey_t cmdQualiGetInkey; /**< get inkey command qualifier info        */
984                 TelSatCmdQualiGetInput_t cmdQualiGetInput; /**< get input command qualifier info        */
985                 TelSatCmdQualiPlayTone_t cmdQualiPlayTone; /**< play tone command qualifier info        */
986                 TelSatCmdQualiSelectItem_t cmdQualiSelectItem; /**<     select item command qualifier info      */
987                 TelSatCmdQualiSetupMenu_t cmdQualiSetupMenu; /**<       setup menu command qualifier info       */
988                 TelSatCmdQualiProvideLocalInfo_t cmdQualiProvideLocalInfo;/**<  provide local info command qualifier info       */
989                 TelSatCmdQualiLanguageNotification_t cmdQualiLanguageNotification;/**<  language notification command qualifier info    */
990                 TelSatCmdQualiLaunchBrowser_t cmdQualiLaunchBrowser; /**<       launch Browser command qualifier info   */
991                 TelSatCmdQualiOpenChannel_t cmdQualiOpenChannel; /**<   Open channel command qualifier info     */
992                 TelSatCmdQualiSendData_t cmdQualiSendData; /**< send data command qualifier info        */
993         } u; /**<       Union   */
994 } TelSatCommandDetailInfo_t;
995
996 /**
997  * This struct defines the device identity values.
998  */
999 typedef struct {
1000         TelSatDeviceIdentitiesTagType_t source; /**<    device identity tag for source  */
1001         TelSatDeviceIdentitiesTagType_t destination; /**<       device identity for destination */
1002 } TelSatDeviceIdentitiesInfo_t;
1003
1004 /**
1005  * This structure defines the Duration data object.
1006  */
1007 typedef struct {
1008         TelSatTimeUnitType_t timeUnit; /**<     time units for the duration data                */
1009         unsigned char timeInterval; /**<        time interval           */
1010 } TelSatDurationInfo_t;
1011
1012 /**
1013  * This structure defines the menu item data object.
1014  */
1015 typedef struct {
1016         unsigned char itemId; /**<      item identifier                 */
1017         unsigned char textLen; /**<     text length             */
1018         unsigned char text[TAPI_SAT_ITEM_TEXT_LEN_MAX + 1]; /**<        text information                */
1019 } TelSatMenuItemInfo_t;
1020
1021 /**
1022  * This structure defines the item identifier object.
1023  */
1024 typedef struct {
1025         unsigned char selectedItemIdentifier; /**<      selected item identifier                */
1026 } TelSatItemIdentifierInfo_t;
1027
1028 /**
1029  * This structure defines expected user response length.
1030  */
1031 typedef struct {
1032         unsigned char min; /**< user response length minimum value              */
1033         unsigned char max; /**< user response length maximum value              */
1034 } TelSatRespLenInfo_t;
1035
1036 /**
1037  * This structure defines RESUlT data object.
1038  */
1039 typedef struct {
1040         TelSatResultType_t generalResult; /**<  general result  */
1041         TelSatMeProblemType_t meProblem; /**<   additional information on general result        */
1042 } TelSatResultInfo_t;
1043
1044 /**
1045  * This structure defines RESUlT data object.
1046  */
1047 typedef struct {
1048         TelSatSmsTpduType_t tpduType; /**<      SMS TPDU TYPE   */
1049         unsigned char dataLen; /**<     SMS TPDU DATA LENGTH    */
1050         unsigned char data[TAPI_SAT_SMS_TPDU_SMS_DATA_LEN_MAX]; /**< SMS TPDU DATA*/
1051 } TelSatSmsTpduInfo_t;
1052
1053 /**
1054  * This structure defines SS STRING data object.
1055  */
1056 typedef struct {
1057         TelSimTypeOfNum_t ton; /**<     type of number  */
1058         TelSimNumberingPlanIdentity_t npi; /**< number plan identity    */
1059         unsigned char stringLen; /**<   ss string length        */
1060         char string[TAPI_SAT_SS_STRING_LEN_MAX]; /**<   ss string       */
1061 } TelSatSsStringInfo_t;
1062
1063 /**
1064  * This structure defines TEXT STRING data object.
1065  */
1066 typedef struct {
1067         int bIsDigitOnly; /**<  flag for checking whether only digits used or not       */
1068         TelSatDataCodingSchemeInfo_t dcs; /**<  data coding scheme              */
1069         unsigned short stringLen; /**<  text length             */
1070         char string[TAPI_SAT_TEXT_STRING_LEN_MAX + 1]; /**<     text string     */
1071 } TelSatTextTypeInfo_t;
1072
1073 /**
1074  * This structure defines menu item text object.
1075  */
1076 typedef struct {
1077         int bIsDigitOnly; /**<  flag for checking whether only digits used or not       */
1078         TelSatDataCodingSchemeInfo_t dcs; /**<  data coding scheme              */
1079         unsigned char stringLen; /**<   menu item string length */
1080         char* pString; /**<     Menu Item String */
1081 } TelSatMenuItemTextInfo_t;
1082
1083 /**
1084  * This structure defines tone object.
1085  */
1086 typedef struct {
1087         TelSatToneType_t type; /**<     tone type       */
1088 } TelSatToneInfo_t;
1089
1090 /**
1091  * This structure defines USSD string data object.
1092  */
1093 typedef struct {
1094         TelSatDataCodingSchemeInfo_t dcs; /**<  data coding scheme      */
1095         unsigned char ussdStringLen; /**<       ussd string length      */
1096         char ussdString[TAPI_SAT_USSD_STRING_LEN_MAX]; /**<     ussd string     */
1097 } TelSatUssdStringInfo_t;
1098
1099 /**
1100  * This structure defines File list data object.
1101  */
1102 typedef struct {
1103         unsigned char fileCount; /**<   file count      */
1104         TelSimFileName_t fileId[TAPI_SAT_FILE_ID_LIST_MAX_COUNT]; /**<  file identifier */
1105 } TelSatFileListInfo_t;
1106
1107 /**
1108  * This structure defines default text data object.
1109  */
1110 typedef struct {
1111         int bIsPresent; /**<    flag for checking whether default text exists or not    */
1112         int bIsDigitOnly; /**<  flag for checking whether only digits used or not       */
1113         TelSatDataCodingSchemeInfo_t dcs; /**<  data coding scheme      */
1114         unsigned char stringLen; /**<   default text string length              */
1115         char string[TAPI_SAT_TEXT_STRING_LEN_MAX]; /**< default text    */
1116 } TelSatDefaultTextInfo_t;
1117
1118 /**
1119  * This structure defines Next Action Indicator List data object.
1120  */
1121 typedef struct {
1122         unsigned char listCount; /**<   next action identifier count    */
1123         unsigned char list[TAPI_SAT_ITEMS_NEXT_ACTION_INDI_LIST_MAX_COUNT]; /**<        next action identifier list     */
1124 } TelSatItemsNextActionIndiListInfo_t;
1125
1126 /**
1127  * This structure defines event list data object.
1128  */
1129 typedef struct {
1130         unsigned char eventListCount; /**<      event list count        */
1131         TelSatEventDownloadType_t list[TAPI_SAT_EVENT_LIST_MAX_COUNT]; /**<     event list */
1132 } TelSatEventListInfo_t;
1133
1134 /**
1135  * This structure defines icon info object.
1136  */
1137 typedef struct {
1138         unsigned char width; /**<       icon width              */
1139         unsigned char height; /**<      icon height     */
1140         TelSatImageCodingSchemeType_t ics; /**< image coding scheme     */
1141         unsigned short iconDataLen; /**<        icon data length        */
1142         unsigned short clutDataLen; /**<        clut data length        */
1143         char iconFile[TAPI_SAT_IMG_DATA_FILE_PATH_LEN_MAX];
1144         char clutFile[TAPI_SAT_IMG_DATA_FILE_PATH_LEN_MAX];
1145 } TelSatIconInfo_t;
1146
1147 /**
1148  * This structure defines icon data object.
1149  */
1150 typedef struct {
1151         int bIsPresent; /**<    flag for checking whether icon identifier exists or not         */
1152         TelSatIconQualifierType_t iconQualifier; /**<   icon qualifier type             */
1153         unsigned char iconIdentifier; /**<      icon identifier         */
1154         TelSatIconInfo_t iconInfo; /**< icon info       */
1155 } TelSatIconIdentifierInfo_t;
1156
1157 /**
1158  * This structure defines icon identifier data object.
1159  */
1160 typedef struct {
1161         int bIsPresent; /**<    flag for checking whether icon identifier exists or not */
1162         TelSatIconQualifierType_t iconListQualifier; /**<       icon list qualifier     */
1163         unsigned char iconCount; /**<   icon count      */
1164         unsigned char iconIdentifierList[TAPI_SAT_ICON_LIST_MAX_COUNT]; /**<    icon identifier list    */
1165         TelSatIconInfo_t iconInfo[TAPI_SAT_ICON_LIST_MAX_COUNT]; /**<   icon list info  */
1166 } TelSatIconIdentifierListInfo_t;
1167
1168 /**
1169  * This structure defines SAT bc repeat indicator Info
1170  */
1171 typedef struct {
1172         TelSatBcRepeatIndicatorType_t indType; /**<     bc repeat indicator type        */
1173 } TelSatBcRepeatIndicatorInfo_t;
1174
1175 /**
1176  * This structure defines call control strings.
1177  */
1178 typedef struct {
1179         TelSatCallCtrlStringType_t callCtrlStringType; /**<     call control type       */
1180         union {
1181                 TelSatAddressInfo_t voiceString; /**<   voice call string       */
1182                 TelSatSsStringInfo_t ssString; /**<     ss string       */
1183                 TelSatUssdStringInfo_t ussdString; /**< ussd string     */
1184         } u; /**<       Union   */
1185 } TelSatCallCtrlAddressStringInfo_t;
1186
1187 /**
1188  * This structure defines the Action requested call control data.
1189  */
1190 typedef struct {
1191         TelSatCallCtrlAddressStringInfo_t callCtrlAddString; /**< Call control address string */
1192         TelSatCapaConfigParamInfo_t ccp1; /**< Capability configuration parameter 1 */
1193         TelSatSubAddressInfo_t subAddress; /**< Subaddress */
1194         TelSatAlphaIdentifierInfo_t alphaId; /**< Alpha identifier */
1195         TelSatBcRepeatIndicatorInfo_t bcRepeatIndicator; /**< Bc repeat indicator */
1196         TelSatCapaConfigParamInfo_t ccp2; /**< Capability configuration parameter 2 */
1197 } TelSatCallCtrlRequestedActionInfo_t;
1198
1199 /**
1200  * This structure defines dtmf string data object.
1201  */
1202 typedef struct {
1203         unsigned char stringLen; /**<   dtmf string lengh       */
1204         char dtmfTone[TAPI_SAT_DTMF_STRING_LEN_MAX]; /**<       dtmf tone data  */
1205 } TelSatDtmfStringInfo_t;
1206
1207 /**
1208  * This structure defines language data object.
1209  */
1210 typedef struct {
1211         TelSatLanguageType_t language; /**<     language type   */
1212 } TelSatLanguageInfo_t;
1213
1214 /**
1215  * This structure defines date time and time zone data object.
1216  */
1217 typedef struct {
1218         unsigned char year; /**<        year    */
1219         unsigned char month; /**<       month   */
1220         unsigned char day; /**< day     */
1221         unsigned char hour; /**<        hour    */
1222         unsigned char minute; /**<      minute  */
1223         unsigned char second; /**<      second  */
1224         unsigned char timeZone; /**<    timeZone        */
1225 } TelSatDataTimeZoneInfo_t;
1226
1227 /**
1228  * This structure defines SAT browser identities.
1229  */
1230 typedef struct {
1231         TelSatBrowserIdentityType_t browserIdentity; /**<       browser identity        */
1232 } TelSatBrowserIdentitiesInfo_t;
1233
1234 /**
1235  * This structure defines SAT browser URL Data Object.
1236  */
1237 typedef struct {
1238         char string[TAPI_SAT_URL_LEN_MAX + 1]; /**<     url string      */
1239 } TelSatUrlInfo_t;
1240
1241 /**
1242  * This structure defines SAT bearer type.
1243  */
1244 typedef struct {
1245         unsigned char listLen; /**<     bearer list length      */
1246         TelSatBearerType_t bearerList[TAPI_SAT_BEARER_LIST_MAX_COUNT]; /**<     bearer list     */
1247 } TelSatBearerInfo_t;
1248
1249 /**
1250  * This structure defines SAT provisioning reference.
1251  */
1252 typedef struct {
1253         char provisioningFilePath[TAPI_SAT_PROVISIONING_FILE_PATH_LEN_MAX]; /**<        provisioning file path  */
1254 } TelSatProvisioningRefInfo_t;
1255
1256 /**
1257  * This structure defines SAT browser termination cause.
1258  */
1259 typedef struct {
1260         TelSatBrowserTerminationCauseType_t cause; /**< browser termination cause       */
1261 } TelSatBrowserTerminationCauseInfo_t;
1262
1263 /**
1264  * This structure defines SAT Csd bearer parameters .
1265  */
1266 typedef struct {
1267         TelSatBearerParamCsdDataRateType_t dataRate; /**<       bearer csd data rate    */
1268         TelSatBearerParamCsdBearerServiceType_t bearerService; /**<     bearer csd service type */
1269         TelSatBearerParamCsdConnectionElementType_t connectionElement; /**<     bearer connection element type  */
1270 } TelSatBearerParametersCsdInfo_t;
1271
1272 /**
1273  * This structure defines SAT bearer parameters GPRS.
1274  */
1275 typedef struct {
1276         TelSatBearerParamGprsPrecedenceClassType_t precedenceClass; /**<        bearer gprs     precedence class        */
1277         TelSatBearerParamGprsDelayClassType_t delayClass; /**<  bearer gprs delay       */
1278         TelSatBearerParamGprsReliabilityClassType_t reliabilityClass; /**<      bearer gprs reliability */
1279         TelSatBearerParamGprsPeakThroughputClassType_t peakThroughputClass;/**< bearer gprs peak throughput     */
1280         TelSatBearerParamGprsMeanThroughputClassType_t meanThroughputClass;/**< bearer gprs mean throughput     */
1281         TelSatBearerParamGprsPdpType_t pdpType; /**<    bearer gprs pdp type    */
1282 } TelSatBearerParametersGprsInfo_t;
1283
1284 /**
1285  * This structure defines SAT bearer parameters local links.
1286  */
1287 typedef struct {
1288         TelSatBearerParamLocalLinksServiceIdentityType_t serviceIdentifier; /**<        bearer local link service identifier            */
1289         char serviceRecord[TAPI_SAT_BEARER_PARAMS_LEN_MAX]; /**<        bearer local link service record        */
1290 } TelSatBearerParametersLocalLinksInfo_t;
1291
1292 /**
1293  * This structure defines SAT bearer description.
1294  */
1295 typedef struct {
1296         TelSatBearerDescType_t bearerType; /**< bearer type     */
1297         union {
1298                 TelSatBearerParametersCsdInfo_t bearerParamsCsd; /**<   csd     */
1299                 TelSatBearerParametersGprsInfo_t bearerParamsGprs; /**< gprs    */
1300                 TelSatBearerParametersLocalLinksInfo_t bearerParamsLocalLinks; /**<     local link      */
1301         } bearer_params; /**<Union */
1302 } TelSatBearerDescriptionInfo_t;
1303
1304 /**
1305  * This structure defines SAT channel data.
1306  */
1307 typedef struct {
1308         unsigned char channelDataStringLen; /**<        channel data length     */
1309         char channelDataString[TAPI_SAT_CHANNEL_DATA_STRING_LEN_MAX]; /**<      channel data    */
1310 } TelSatChannelDataInfo_t;
1311
1312 /**
1313  * This structure defines SAT channel data length.
1314  */
1315 typedef struct {
1316         unsigned char channelDataLen; /**<      channel data length     */
1317 } TelSatChannelDataLengthInfo_t;
1318
1319 /**
1320  * This structure defines SAT buffer size.
1321  */
1322 typedef struct {
1323         unsigned char bufferSize[2]; /**<       channel data buffer size        */
1324 } TelSatBufferSizeInfo_t;
1325
1326 /**
1327  * This structure defines SAT channel status.
1328  */
1329 typedef struct {
1330         unsigned char channelId; /**<   channel id      */
1331         TelSatChannelStatusType_t status; /**<  channel status          */
1332         TelSatChannelStatusInfoType_t channelInfo; /**< channel status info     */
1333 } TelSatChannelStatusInfo_t;
1334
1335 /**
1336  * This structure defines SAT other address.
1337  */
1338 typedef struct {
1339         TelSatAddressType_t addressType; /**<   channel address type    */
1340         unsigned char addressLen; /**<  channel address length  */
1341         char address[TAPI_SAT_OTHER_ADDR_LEN_MAX]; /**< channel address */
1342 } TelSatOtherAddressInfo_t;
1343
1344 /**
1345  * This structure defines SIM me interface transport level.
1346  */
1347 typedef struct {
1348         TelSatTransportProtocolType_t transportProtocolType; /**<       transport protocol type */
1349         unsigned short portNumber; /**< port number     */
1350 } TelSatSimMeInterfaceTransportLevelInfo_t;
1351
1352 /**
1353  * This structure defines SAT network access name.
1354  */
1355 typedef struct {
1356         unsigned char length; /**<      network access name length      */
1357         unsigned char netAccName[TAPI_SAT_NET_ACC_NAM_LEN_MAX]; /**<    network access name     */
1358 } TelSatnetworkAccessNameInfo_t;
1359
1360 /**
1361  * This structure defines SAT aid.
1362  */
1363 typedef struct {
1364         char aid[TAPI_SAT_AID_LEN_MAX]; /**<    application Id  */
1365 } TelSatAidInfo_t;
1366
1367 /**
1368  * This structure defines SAT remote entity address.
1369  */
1370 typedef struct {
1371         TelSatRemoteEntityAddrCodingType_t codingType; /**<     remote entity address coding type       */
1372         unsigned short length; /**<     remote entity address length    */
1373         unsigned char remoteEntityAddress[TAPI_SAT_REMOTE_ENTITY_ADDR_LEN_MAX]; /**<    remote entity address data      */
1374 } TelSatRemoteEntityAddressInfo_t;
1375
1376 /**
1377  * This structure defines SAT text attribute.
1378  */
1379 typedef struct {
1380         unsigned char textFormatting[4]; /**<   text attribute -e.g. bold, center align, etc    */
1381 } TelSatTextAttributeInfo_t;
1382
1383 /**
1384  * This structure defines SAT text attribute list.
1385  */
1386 typedef struct {
1387         unsigned int listCount; /**<    text attribute list count               */
1388         TelSatTextAttributeInfo_t list[TAPI_SAT_ITEM_TEXT_ATTRIBUTES_LIST_MAX_COUNT]; /**<      text attribute list info        */
1389 } TelSatTextAttributeListInfo_t;
1390
1391 #ifdef __cplusplus
1392 }
1393 #endif
1394
1395 #endif  /* _TEL_SAT_OBJ_H_ */
1396
1397 /**
1398  * @}
1399  */