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