169e45296644040e61c47732fc6d3c622167a116
[framework/telephony/libslp-tapi.git] / wearable / include / TelSat.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 TelSat.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  */
34
35 #ifndef _TEL_SAT_H_
36 #define _TEL_SAT_H_
37
38 #include <TelDefines.h>
39 #include <TelCall.h>
40 #include <TelSs.h>
41 #include <TelSatObj.h>
42 #include <TelSatProactvCmd.h>
43 #include <TelSatEnvelope.h>
44 #include <TelSim.h>
45
46 #ifdef __cplusplus
47 extern "C"
48 {
49 #endif
50
51 #define TAPI_SAT_DEF_TITLE_LEN_MAX                      255 /**< max length for Menu Title */
52 #define TAPI_SAT_DEF_ITEM_STR_LEN_MAX           50 /**< max length for Menu Item  */
53 #define TAPI_SAT_DEF_TEXT_STRING_LEN_MAX        500 /**< max length for Text String  */
54 #define TAPI_SAT_DEF_BIT_MASK_CONTACT           0x01 /**< Bit Mask for Contact */
55 #define TAPI_SAT_DEF_BIT_MASK_MSG                       0x02 /**< Bit Mask for Msg */
56 #define TAPI_SAT_DEF_BIT_MASK_OTHER                     0x04 /**< Bit Mask for Psh */
57 #define TAPI_SAT_REFRESH_FILE_LIST                      20 /**< Refresh File List*/
58 #define TAPI_SAT_DEF_SS_LEN_MAX             250
59 #define TAPI_SAT_DEF_USSD_LEN_MAX           250
60
61 //      Telephony UI USER CONFIRM TYPE
62 /**
63  * @enum TelSatUiUserConfirmType_t
64  * This enumeration defines the UI User Confirm Type.
65  */
66 typedef enum
67 {
68         TAPI_SAT_USER_CONFIRM_YES,                                              /**<This Enum Informs That user confirms yes */
69         TAPI_SAT_USER_CONFIRM_NO_OR_CANCEL,                             /**<This enum informs that user confirms no/cancel */
70         TAPI_SAT_USER_CONFIRM_HELP_INFO,                                /**<This enum informs that user wants help information */
71         TAPI_SAT_USER_CONFIRM_END,                                              /**<This enum informs that user confirms end */
72         TAPI_SAT_USER_CONFIRM_TIMEOUT,                                  /**<This enum informs that user did not respond */
73 }TelSatUiUserConfirmType_t;
74
75 //      Telephony UI INKEY TYPE
76 /**
77  * @enum TelSatUiInkeyYesNoCaseType_t
78  * This enumeration defines the UI Inkey Type Yes or No.
79  */
80 typedef enum
81 {
82         TAPI_SAT_INKEY_CONFIRM_NO                               = 0x00,                 /**<No*/
83         TAPI_SAT_INKEY_CONFIRM_YES                              = 0x01,                 /**<Yes*/
84 }TelSatUiInkeyYesNoCaseType_t;
85
86 //      Telephony UI DISPLAY STATUS
87 /**
88  * @enum TelSatUiDisplayStatusType_t
89  * This enumeration defines the UI Display Status.
90  */
91 typedef enum
92 {
93         TAPI_SAT_DISPLAY_SUCCESS                                = 0x00,                                 /**<This enum informs  UI display success*/
94         TAPI_SAT_DISPLAY_FAIL                                   = 0x01,                                 /**<This enum informs  UI display failure*/
95 }TelSatUiDisplayStatusType_t;
96
97 //      TELEPHONY REFRESH APPLICATION TYPE
98 /**
99  * @enum TelSatRefreshAppType_t
100  * This enumeration defines the Refresh Application Type.
101  */
102  typedef enum
103 {
104         TAPI_SAT_REFRESH_CONTACT = 0x00,                                /**<refresh application type - Phonebook*/
105         TAPI_SAT_REFRESH_MSG,                                                   /**<refresh application type - SMS*/
106         TAPI_SAT_REFRESH_OTHER,                                                 /**<refresh application type - other*/
107         TAPI_SAT_REFRESH_MAX,                                                   /**<Maximum Enumeration Value*/
108 }TelSatRefreshAppType_t;
109
110 //      Telephony COMMAND PERFORMED RESULT
111 /**
112  * @enum TelSatCommandPerformResultType_t
113  * This enumeration defines the Result of Proactive Command execution.
114  */
115 typedef enum
116 {
117         TAPI_SAT_CMD_PERFORM_SUCCESS = 0x00,            /**<command performed successfully*/
118         TAPI_SAT_CMD_PERFORM_FAIL,                                      /**<command execution failed*/
119         TAPI_SAT_CMD_PERFORM_MAX,                                       /**<Maximum Enumeration Value*/
120 }TelSatCommandPerformResultType_t;
121
122 //      Telephony CALL CONTROL TYPE
123 /**
124  * @enum TelSatCallCtrlType_t
125  * This enumeration defines Call Control Type.
126  */
127 typedef enum
128 {
129         TAPI_SAT_CALL_CNF_NONE  = 0x00,         /**<call control confirm type - None*/
130         TAPI_SAT_CALL_CNF_CALL,                 /**<call control confirm type - call*/
131         TAPI_SAT_CALL_CNF_SS,                           /**<call control confirm type - ss*/
132         TAPI_SAT_CALL_CNF_USSD,                         /**<call control confirm type - ussd*/
133         TAPI_SAT_CALL_CNF_MAX,                          /**<Maximum Enumeration Value*/
134 }TelSatCallCtrlType_t;
135
136 //      SAT UI USER CONFIRMATION INFO
137 /**
138  * This structure defines the user confirmation data.
139  */
140 typedef struct
141 {
142         int                                             commandId;                              /**<Proactive Command Number sent by USIM*/
143         TelSatCommandType_t             commandType;                    /**<Proactive Command Type*/
144         TelSatUiUserConfirmType_t       keyType;                                /**<User Response Type*/
145         unsigned char*                          pAdditionalData;                /**<Additional Data*/
146         int                                                     dataLen;                                /**<Additional Data Length*/
147 }TelSatUiUserConfirmInfo_t;
148
149 //      Telephony TEXT INFO
150 /**
151  * This structure defines the character data for sat engine data structure.
152  */
153 typedef struct
154 {
155         unsigned short  stringLen;                                                                              /**<character data length*/
156         unsigned char           string[TAPI_SAT_DEF_TEXT_STRING_LEN_MAX+1];             /**<character data*/
157 }TelSatTextInfo_t;
158
159 //      Telephony MAIN MENU TITLE INFO
160 /**
161  * This structure defines the main menu title to check sat menu.
162  */
163 typedef struct
164 {
165         int                             bIsMainMenuPresent;             /**<flag to check sat main menu existence*/
166         TelSatTextInfo_t        mainMenuTitle;                  /**<main menu title data*/
167 }TelSatMainMenuTitleInfo_t;
168
169 //      Telephony DISPLAY TEXT DATA
170 /**
171  * This structure defines the display text proactive command for sat ui.
172  */
173 typedef struct
174 {
175         int                                                     commandId;                                      /**<Proactive Command Number sent by USIM*/
176         TelSatTextInfo_t                                text;                                           /**<character data to display on screen*/
177         unsigned int                                    duration;                                       /**<the duration of display */
178         int                                                     bIsPriorityHigh;                        /**<indicates whether the text is to be displayed if some other app is using the screen.*/
179         int                                                     bIsUserRespRequired;            /**<indicates whether user response required or Not*/
180         int                                                     b_immediately_resp;
181         TelSatIconIdentifierInfo_t      iconId;                                         /**< Icon Identifier */
182 }TelSatDisplayTextInd_t;
183
184 //      Telephony INKEY DATA
185 /**
186  * This structure defines the get inkey proactive command data for sat ui.
187  */
188 typedef struct
189 {
190         int                                                     commandId;                              /**<Proactive Command Number sent by USIM*/
191         TelSatInkeyType_t                               keyType;                                /**<input Type:Character Set or Yes/No*/
192         TelSatUseInputAlphabetType_t    inputCharMode;                  /**<input character mode(SMS default, UCS2)*/
193         int                                                     bIsNumeric;                             /**<is input character numeric(0-9, *, # and +)*/
194         int                                                     bIsHelpInfoAvailable;   /**<help info request flag*/
195         TelSatTextInfo_t                                text;                                   /**<character data to display on screen*/
196         unsigned int                                    duration;                               /**<the duration of display*/
197         TelSatIconIdentifierInfo_t              iconId;                                 /**<Icon Identifier*/
198 }TelSatGetInkeyInd_t;
199
200 //      Telephony GET INPUT DATA
201 /**
202  * This structure defines the get input proactive command data for sat ui.
203  */
204 typedef struct
205 {
206         int                                                     commandId;                              /**<Proactive Command Number sent by USIM*/
207         TelSatUseInputAlphabetType_t    inputCharMode;                  /**<input character mode(SMS default, UCS2)*/
208         int                                                     bIsNumeric;                             /**<is input character numeric(0-9, *, # and +)*/
209         int                                                     bIsHelpInfoAvailable;   /**<flag for help info request */
210         int                                                     bIsEchoInput;                   /**<indicates whether to show input data on screen or not*/
211         TelSatTextInfo_t                                text;                                   /**<character data to display on screen*/
212         TelSatRespLenInfo_t                             respLen;                                /**<input data min, max length*/
213         TelSatTextInfo_t                                defaultText;                    /**<default input character data*/
214         TelSatIconIdentifierInfo_t              iconId;                                 /**<Icon Identifier*/
215 }TelSatGetInputInd_t;
216
217 //      Telephony PLAY TONE DATA
218 /**
219  * This structure defines the play tone proactive command data for application.
220  */
221 typedef struct
222 {
223         int                                             commandId;      /**<Proactive Command Number sent by USIM*/
224         TelSatTextInfo_t                        text;           /**<character data to display on screen*/
225         TelSatToneInfo_t                        tone;           /**<tone info   */
226         unsigned int                            duration;       /**<the duration for playing tone*/
227         TelSatIconIdentifierInfo_t      iconId;         /**<Icon Identifier*/
228 }TelSatPlayToneInd_t;
229
230 //      Telephony UI info
231 /**
232  * This structure defines the data for sat ui.
233  */
234 typedef struct
235 {
236         int                                             commandId;              /**<Proactive Command Number sent by USIM*/
237         int                                             user_confirm;
238         TelSatTextInfo_t                        text;                   /**<character data to display on screen*/
239         TelSatIconIdentifierInfo_t      iconId;                 /**<Icon Identifier*/
240 }TelSatSendUiInfo_t;
241
242 //      Telephony MENU ITEM DATA FOR SETUP MENU
243 /**
244  * This structure defines the menu item info for setup menu.
245  */
246 typedef struct
247 {
248         char itemString[TAPI_SAT_DEF_ITEM_STR_LEN_MAX + 6];     /**<menu item character data*/
249         char itemId;                                                                                    /**<identifies the item on the menu that user selected*/
250 }TelSatMenuInfo_t;
251
252 //      Telephony SETUP MENU INFO
253 /**
254  * This structure defines the sat main menu info.
255  */
256 typedef struct
257 {
258         int commandId;  /**<Proactive Command Number sent by USIM*/
259         int     bIsMainMenuPresent;
260         char satMainTitle[TAPI_SAT_DEF_TITLE_LEN_MAX + 1];      /**<menu title text*/
261         TelSatMenuInfo_t satMainMenuItem[TAPI_SAT_MENU_ITEM_COUNT_MAX]; /**< menu items*/
262         unsigned short satMainMenuNum;  /**<number of menu items*/
263         int     bIsSatMainMenuHelpInfo; /**<flag for help information request */
264         int     bIsUpdatedSatMainMenu;
265         TelSatIconIdentifierInfo_t iconId;      /**<Icon Identifier*/
266         TelSatIconIdentifierListInfo_t iconIdList;      /**<List of Icon Identifiers*/
267 }TelSatSetupMenuInfo_t;
268
269 //      Telephony SELECT ITEM DATA
270 /**
271  * This structure defines the select item proactive command data for sat ui.
272  */
273 typedef struct
274 {
275         int                                                     commandId;                                                                      /**<Proactive Command Number sent by USIM*/
276         int                                                     bIsHelpInfoAvailable;                                           /**<flag for help information request*/
277         TelSatTextInfo_t                                text;                                                                           /**<menu title text*/
278         char                                                    defaultItemIndex;                                                       /**<selected default item - default value is 0*/
279         char                                                    menuItemCount;                                                          /**<number of menu items*/
280         TelSatMenuItemInfo_t                    menuItem[TAPI_SAT_MENU_ITEM_COUNT_MAX];         /**<menu items*/
281         TelSatIconIdentifierInfo_t              iconId;                                                                         /**<Icon Identifier*/
282         TelSatIconIdentifierListInfo_t  iconIdList;                                                                     /**<List of Icon Identifiers*/
283
284 }TelSatSelectItemInd_t;
285
286 //      Telephony IDLE MODE TEXT DATA
287 /**
288  * This structure defines the setup idle mode text proactive command for idle application.
289  */
290 typedef struct
291 {
292         int                                             commandId;                      /**<Proactive Command Number sent by USIM*/
293         TelSatTextInfo_t                        text;                           /**<character data to display on screen*/
294         TelSatIconIdentifierInfo_t      iconId;
295 } TelSatSetupIdleModeTextInd_t;
296
297 //      Telephony REFRESH DATA
298 /**
299  * This structure defines the refresh proactive command data for sat ui.
300  */
301 typedef struct
302 {
303         int                                                     commandId;                      /**<Proactive Command Number sent by USIM*/
304         unsigned int                            duration;                       /**<the duration of display*/
305         TelSatCmdQualiRefresh_t         refreshType;            /**<refresh mode*/
306 }TelSatRefreshIndUiInfo_t;
307
308 //      Telephony REFRESH DATA
309 /**
310  * This structure defines the refresh proactive command data for applications which are concerned with files resident on USIM .
311  */
312 typedef struct
313 {
314         int                                             commandId;                                                              /**<Proactive Command Number sent by USIM*/
315         TelSatRefreshAppType_t          appType;                                                                /**<concerned application type */
316         TelSatCmdQualiRefresh_t         refreshMode;                                                    /**<refresh mode*/
317         unsigned char                                   fileCount;                                                              /**<refresh file count*/
318         TelSimFileID_t                          fileId[TAPI_SAT_REFRESH_FILE_LIST];             /**<refresh file identifier*/
319 }TelSatRefreshInd_t;
320
321 //      Telephony END PROACTIVE COMMAND INFO
322 /**
323  * This structure defines the data objects to indicate to sat ui, the end of execution of a specific proactive command by other application.
324  */
325 typedef struct
326 {
327         int                                                                     commandId;                      /**<Proactive Command Number sent by USIM*/
328         char                                                                    commandType;            /**< Command Type*/
329         TelSatCommandPerformResultType_t                result;                         /**<result of command execution by application*/
330 }TelSatProactiveCmdEndIndInfo_t;
331
332 //      Telephony SEND SMS DATA
333 /**
334  * This structure defines the send sms proactive command data for sms application.
335  */
336 typedef struct
337 {
338         int                                     commandId;                              /**<Proactive Command Number sent by USIM*/
339         int                                     bIsPackingRequired;             /**<flag to check if packing required for sms tpdu*/
340         TelSatAddressInfo_t     address;                                /**<destination address*/
341         TelSatSmsTpduInfo_t     smsTpdu;                                /**<SMS TPDU data*/
342 } TelSatSendSmsIndSmsData_t;
343
344 //      Telephony SEND SS DATA
345 /**
346  * This structure defines the send ss proactive command data for ss application.
347  */
348 typedef struct
349 {
350         int                                     commandId;              /**<Proactive Command Number sent by USIM*/
351         TelSimTypeOfNum_t ton; /**<     type of number          */
352         TelSimNumberingPlanIdentity_t npi; /**< number plan identity            */
353         unsigned short          ssStringLen;
354         unsigned char           ssString[TAPI_SAT_DEF_SS_LEN_MAX+1];
355 }TelSatSendSsIndSsData_t;
356
357 //      Telephony USSD DATA
358 /**
359  * This structure defines the send ussd proactive command data for ussd application.
360  */
361 typedef struct
362 {
363         int                     commandId;              /**<Proactive Command Number sent by USIM*/
364         unsigned char           rawDcs;                 /**<data coding scheme*/
365         unsigned short          ussdStringLen;
366         unsigned char           ussdString[TAPI_SAT_DEF_USSD_LEN_MAX+1];
367 }TelSatSendUssdIndUssdData_t;
368
369 //      Telephony SEND DTMF DATA
370 /**
371  * This structure defines the send dtmf proactive command data for dtmf application.
372  */
373 typedef struct
374 {
375         int                                     commandId;                      /**<Proactive Command Number sent by USIM*/
376         int                                     bIsHiddenMode;          /**<hidden mode flag*/
377         TelSatTextInfo_t                dtmfString;                     /**<dtmf string data*/
378 }TelSatSendDtmfIndDtmfData_t;
379
380 //      Telephony SETUP CALL  DATA
381 /**
382  * This structure defines the setup call proactive command data for call application.
383  */
384 typedef struct
385 {
386         int                                                     commandId;              /**<Proactive Command Number sent by USIM*/
387         TelSatCmdQualiSetupCall_t               calltype;                       /**<call type*/
388         TelSatTextInfo_t                                dispText;                       /**<display data for calling*/
389         TelSatTextInfo_t                                callNumber;             /**<call number*/
390         unsigned int                                    duration;                       /**<maximum repeat duration*/
391         TelSatIconIdentifierInfo_t              iconId;                 /**<icon identifier for call application*/
392 }TelSatSetupCallIndCallData_t;
393
394 //      Telephony LAUNCH BROWSER DATA
395 /**
396  * This structure defines the launch browser proactive command data for browser application.
397  */
398 typedef struct
399 {
400         int                                                     commandId;              /**<Proactive Command Number sent by USIM*/
401         TelSatUrlInfo_t                                 url;                    /**<url to connect*/
402         TelSatCmdQualiLaunchBrowser_t   launchType;             /**<launch type*/
403         TelSatBrowserIdentityType_t     IdentityType;   /**<Browser Identity -default, html, etc*/
404 }TelSatLaunchBrowserIndBrowserData_t;
405
406 //      Telephony PROVIDE LOCAL INFO DATA
407 /**
408  * This structure defines the provide local info proactive command data for application.
409  */
410 typedef struct
411 {
412         int commandId;                                                                          /**<Proactive Command Number sent by USIM*/
413         TelSatCmdQualiProvideLocalInfo_t localInfoType;         /**<Provide Local Information Type*/
414 }TelSatProvideLocalInfoInd_t;
415
416 //      Telephony LANGUAGE NOTIFICATION DATA
417 /**
418  * This structure defines the language notification proactive command data for application.
419  */
420 typedef struct
421 {
422         int                                                     commandId;                                              /**<Proactive Command Number sent by USIM*/
423         int                                                     bSpecificLanguageNotification;  /**<flag for checking specific language notification. if FALSE, non-specific language notification      */
424         TelSatLanguageInfo_t                    language;                                       /**<language info from USIM application */
425 }TelSatLanguageNotiInfoInd_t;
426
427 //      Telephony PLAY TONE RETURN INFO
428 /**
429  * This structure defines the return result data for Play Tone proactive command.
430  */
431 typedef struct
432 {
433         TelSatResultType_t      resp;                   /**<result response value*/
434 }TelSatSetupMenuRetInfo_t;
435
436 //      Telephony REFRESH RETURN INFO
437 /**
438  * This structure defines the return result data for refresh proactive command.
439  */
440 typedef struct
441 {
442         TelSatRefreshAppType_t  appType;                        /**<application type*/
443         TelSatResultType_t              resp;                           /**<result response value*/
444 }TelSatRefreshRetInfo_t;
445
446 //      Telephony CALL RETURN INFO
447 /**
448  * This structure defines the return result data for setup call proactive command.
449  */
450 typedef struct
451 {
452         TelSatResultType_t                              resp;                                                   /**<result response value*/
453         int                                                     bIsTapiCauseExist;                              /**<flag for checking tapi error cause */
454         TelCallCause_t                                  tapiCause;                                              /**<tapi call error cause*/
455         TelSsCause_t                                            ssCause;                                                /**<tapi ss error cause*/
456         TelSatMeProblemType_t                           meProblem;                                              /**<me problem error cause*/
457         int                                                             bIsOtherInfoExist;                              /**<call control result existence flag*/
458         TelSatCallCtrlProblemType_t             permanentCallCtrlProblem;               /**<call control problem type*/
459         TelSatCallCtrlRequestedActionInfo_t     callCtrlRequestedAction;                /**<call control request data*/
460         TelSatResultInfo_t                      result2;                                                /**<call control envelope result value*/
461         TelSatTextTypeInfo_t                    text;                                                   /**<call control envelope display data*/
462 }TelSatCallRetInfo_t;
463
464 //      Telephony SS RETURN INFO
465 /**
466  * This structure defines the return result data for send ss proactive command.
467  */
468 typedef struct
469 {
470         TelSatResultType_t                              resp;                                                   /**<result response value*/
471         TelSsCause_t                                            ssCause;                                                /**<error - ss cause*/
472         TelSatTextInfo_t                                        ssString;                                               /**<ss result string*/
473         TelSatMeProblemType_t                   meProblem;                                              /**<error - me problem*/
474         int                                                             bIsOtherInfoExist;                              /**<call control result exist flag*/
475         TelSatCallCtrlProblemType_t                     additionalCallCtrlProblemInfo;  /**<call control problem*/
476         TelSatCallCtrlRequestedActionInfo_t     callCtrlRequestedAction;                /**<call control request data*/
477         TelSatResultInfo_t                                      result2;                                                /**<call control envelope result value*/
478 }TelSatSsRetInfo_t;
479
480 //      Telephony USSD RETURN INFO
481 /**
482  * This structure defines the return result data for send ussd proactive command.
483  */
484 typedef struct
485 {
486         TelSatResultType_t                                      resp;                                                   /**<result response value*/
487         TelSsCause_t                                            ssCause;                                                /**<error - ss cause*/
488         TelSatTextInfo_t                                        ussdString;                                             /**<ussd result string*/
489         TelSatDataCodingSchemeInfo_t            dcsUssdString;                                  /**<dcs of ussd result string */
490         TelSatMeProblemType_t                           meProblem;                                              /**<error - me problem*/
491         int                                                             bIsOtherInfoExist;                              /**<call control result exist flag*/
492         TelSatCallCtrlProblemType_t                     additionalCallCtrlProblemInfo;  /**<call control problem*/
493         int                                                             bCallCtrlHasModification;               /**<call control request modification flag*/
494         TelSatCallCtrlRequestedActionInfo_t     callCtrlRequestedAction;                /**<call control request data*/
495         TelSatResultInfo_t                                      result2;                                                /**<call control envelope result value*/
496         TelSatTextTypeInfo_t                            text2;                                                  /**<cc envelope display data */
497 }TelSatUssdRetInfo_t;
498
499 //      Telephony SMS RETURN INFO
500 /**
501  * This structure defines the return result data for send sms proactive command.
502  */
503 typedef struct
504 {
505         TelSatResultType_t      resp;                   /**<result response value*/
506 }TelSatSmsRetInfo_t;
507
508 //      Telephony DTMF RETUEN INFO
509 /**
510  * This structure defines the return result data for send dtmf proactive command.
511  */
512 typedef struct
513 {
514         TelSatResultType_t      resp;                   /**<result response value*/
515 }TelSatDtmfRetInfo_t;
516
517 //      Telephony BROWSER RETURN INFO
518 /**
519  * This structure defines the return result data for launch browser proactive command.
520  */
521 typedef struct
522 {
523         TelSatResultType_t                                      resp;                   /**<result response value*/
524         TelSatLaunchBrowserProblemType_t    browserProblem;     /**<specific browser problem*/
525 }TelSatBrowserRetInfo_t;
526
527 //      Telephony SETUP IDLE MODE TEXT RETURN INFO
528 /**
529  * This structure defines the return result data for setup idle mode text proactive command.
530  */
531 typedef struct
532 {
533         TelSatResultType_t      resp;                   /**<result response value*/
534 }TelSatIdleTextRetInfo_t;
535
536 //      Telephony PLAY TONE RETURN INFO
537 /**
538  * This structure defines the return result data for Play Tone proactive command.
539  */
540 typedef struct
541 {
542         TelSatResultType_t      resp;                   /**<result response value*/
543 }TelSatPlayToneRetInfo_t;
544
545 //      Telephony  PROVIDE LOCAL INFO RETURN INFO
546 /**
547  * This structure defines the return result data for setup idle mode text proactive command.
548  */
549 typedef struct
550 {
551         TelSatResultType_t                                      resp;                   /**<result response value*/
552         int                                                             bOtherInfo;             /**<flag to check whether other information are required or not */
553         TelSatCmdQualiProvideLocalInfo_t        infoType;               /**<local info type - e.g. time zone or language info, etc      */
554         union
555         {
556                 TelSatDataTimeZoneInfo_t                timeZoneInfo;   /**<    current time zone info  */
557                 TelSatLanguageInfo_t                    languageInfo;   /**<    current ME language setting info        */
558         }u;                                                                                                     /**<    Union*/
559 }TelSatProvideLocalRetInfo_t;
560
561 //      Telephony LANGUAGE NOTI RETURN INFO
562 /**
563  * This structure defines the return result data for setup idle mode text proactive command.
564  */
565 typedef struct
566         {
567                 TelSatResultType_t               resp;                          /**<result response value*/
568         }TelSatLanguageNotiRetInfo_t;
569
570 //      Telephony DISPLAY TEXT RETURN INFO
571 /**
572  * This structure defines the return result data for setup idle mode text proactive command.
573  */
574 typedef struct
575         {
576                 TelSatResultType_t               resp;                          /**<result response value*/
577                 TelSatMeProblemType_t    meProblem;                     /**<Me Problem Type */
578         }TelSatDiplayTextRetInfo_t;
579
580 //      Telephony APPLICATIONS RETURN DATA
581 /**
582  * This structure defines the common return result data for applications proactive command.
583  */
584 typedef struct
585 {
586         TelSatCommandType_t     commandType;                                            /**<Proactive Command type*/
587         int commandId;                                                                                  /**<Proactive Command Number sent by USIM*/
588         union
589                 {
590                         TelSatSetupMenuRetInfo_t        setupMenu;                      /**<result response value for setup menu*/
591                         TelSatRefreshRetInfo_t          refresh;                                /**<result response value for refresh*/
592                         TelSatCallRetInfo_t                     setupCall;                              /**<result response value for setup call*/
593                         TelSatSsRetInfo_t                       sendSs;                                 /**<result response value for send ss*/
594                         TelSatUssdRetInfo_t                     sendUssd;                               /**<result response value for send ussd*/
595                         TelSatSmsRetInfo_t                      sendSms;                                /**<result response value for send sms*/
596                         TelSatDtmfRetInfo_t                     sendDtmf;                               /**<result response value for send dtmf*/
597                         TelSatBrowserRetInfo_t          launchBrowser;                  /**<result response value for launch browser*/
598                         TelSatIdleTextRetInfo_t         setupIdleModeText;              /**<result response value for setup idle mode text*/
599                         TelSatLanguageNotiRetInfo_t     languageNoti;                   /**<result response value for language notification*/
600                         TelSatProvideLocalRetInfo_t provideLocalInfo;           /**<result response value for provide local info*/
601                         TelSatDiplayTextRetInfo_t   displayText;                        /**<result response value for dsiplay text*/
602                         TelSatPlayToneRetInfo_t     playTone;                           /**<result response value for play tone*/
603                 }appsRet;                                                                                               /**< common union result value */
604 }TelSatAppsRetInfo_t;
605
606 //      Telephony CALL CONTROL CONFIRM  DATA FOR CALL
607 /**
608  * This structure defines the call control confirm data for call.
609  */
610 typedef struct
611 {
612         TelSatTextInfo_t                                address;                                        /**< call destination address*/
613         TelSatTextInfo_t                                subAddress;                                     /**< call SUB address*/
614         TelSatBcRepeatIndicatorType_t   bcRepeatIndicator;                      /**< bc repeat indicator*/
615         TelSatTextInfo_t                                ccp1;                                           /**< Configuration Capability Parameter 1*/
616         TelSatTextInfo_t                                ccp2;                                           /**< Configuration Capability Parameter 2*/
617 } TelSatCallCtrlIndCallData_t;
618
619 //      Telephony CALL CONTROL CONFIRM  DATA FOR SS
620 /**
621  * This structure defines the call control confirm data for ss.
622  */
623 typedef struct
624 {
625         TelSatTextInfo_t                                ssString;                                       /**< ss destination address*/
626         TelSatTextInfo_t                                subAddress;                                     /**< call SUB address*/
627         TelSatBcRepeatIndicatorType_t   bcRepeatIndicator;                      /**< bc repeat indicator*/
628         TelSatTextInfo_t                                ccp1;                                           /**< Configuration Capability Parameter 1*/
629         TelSatTextInfo_t                                ccp2;                                           /**< Configuration Capability Parameter 2*/
630 } TelSatCallCtrlIndSsData_t;
631
632 //      Telephony CALL CONTROL CONFIRM  DATA FOR USSD
633 /**
634  * This structure defines the call control confirm data for ussd.
635  */
636 typedef struct
637 {
638         TelSatTextInfo_t                ussdString;                     /**< ussd destination address*/
639 } TelSatCallCtrlIndUssdData_t;
640
641 //      Telephony READ FILE REQUEST DATA
642 /**
643  * This structure defines the common call control confirm data.
644  */
645 typedef struct
646 {
647         TelSatCallType_t                        callCtrlCnfType;                                /**<call control confirm type - call, ss or ussd*/
648         TelSatCallCtrlResultType_t      callCtrlResult;                                 /**<call control result*/
649         TelSatTextInfo_t                        dispData;                                               /**<call control display data*/
650         int                                             bIsUserInfoDisplayEnabled;              /**<flag for checking existence of call control display */
651
652         union
653                 {
654                         TelSatCallCtrlIndCallData_t             callCtrlCnfCallData;    /**<call control call address*/
655                         TelSatCallCtrlIndSsData_t               callCtrlCnfSsData;              /**<call control ss string*/
656                         TelSatCallCtrlIndUssdData_t             callCtrlCnfUssdData;    /**<call control ussd string*/
657                 }u;                                                                                                                             /**<   Union*/
658 } TelSatCallCtrlIndData_t;
659
660 //      Telephony MO SMS CONTROL CONFIRMATION DATA
661 /**
662  * This structure defines the mo sms control confirm data.
663  */
664 typedef struct
665 {
666         TelSatCallCtrlResultType_t              moSmsCtrlResult;                        /**<envelope result*/
667         int                                                             bIsUserInfoDisplayEnabled;      /**<display present flag*/
668         TelSatTextTypeInfo_t                    dispData;                                       /**<display data for sending SMS*/
669         TelSatTextTypeInfo_t                    rpDestAddr;                             /**<the RP_Destination_Address of the Service Center */
670         TelSatTextTypeInfo_t                    tpDestAddr;                                     /**<the TP_Destination_Address */
671 } TelSatMoSmCtrlIndData_t;
672
673 //      Telephony EVENT LIST INFO
674 /**
675  * This structure defines the Event List Info.
676  */
677 typedef struct
678 {
679         int bIsEventDownloadActive;                     /**<Is Event Download Active*/
680         int bIsMtCallEvent;                                     /**<Is Mt Call Event*/
681         int bIsCallConnected;                           /**<Is Call Connected*/
682         int bIsCallDisconnected;                        /**<Is Call Disconnected*/
683         int bIsLocationStatus;                          /**<Is Location Status*/
684         int bIsUserActivity;                            /**<Is User Activity*/
685         int bIsIdleScreenAvailable;                     /**<Is Idle Screen Available*/
686         int bIsCardReaderStatus;                        /**<Is Card Reader Status*/
687         int bIsLanguageSelection;                       /**<Is Language Selection*/
688         int bIsBrowserTermination;                      /**<Is Browser Termination*/
689         int bIsDataAvailable;                           /**<Is Data Available*/
690         int bIsChannelStatus;                           /**<Is Channel Status*/
691 }       TelSatEventListData_t;
692
693 /**
694  * This is the structure to be used by the Application to send envelope/event download data.
695  * This contains the data structures to be used to send any envelope/event download data.
696  */
697 typedef struct
698 {
699         TelSatEventDownloadType_t                                       eventDownloadType;                              /**<    eventDownload Type      */
700
701         union
702         {
703                 int                                                                     bIdleScreenAvailable;                   /**<flag to specify whether Idle Screen is Available or not*/
704                 TelSatLanguageSelectionEventReqInfo_t   languageSelectionEventReqInfo;  /**<Selected Language Information*/
705                 TelSatBrowserTerminationEventReqInfo_t  browserTerminationEventReqInfo; /**<BrowserTermination Event Information        */
706                 TelSatDataAvailableEventReqInfo_t               dataAvailableEventReqInfo;              /**<dataAvailableEventReqInfo   */
707                 TelSatChannelStatusEventReqInfo_t               channelStatusEventReqInfo;              /**<channelStatusEventReqInfo   */
708         } u;                                                                                                                                            /**<Union*/
709 } TelSatEventDownloadReqInfo_t;
710
711 #ifdef __cplusplus
712 }
713 #endif
714
715 #endif /* _TEL_SAT_H_ */
716
717 /**
718 * @}
719 */