upload tizen1.0 source
[framework/telephony/libslp-tapi.git] / include / common / TelSatEnvelope.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 TelSatEnvelope.h
28
29      @brief This file serves as a "C" header file defines structures for Tapi Sat envelope command Services. \n
30       It contains a sample set of constants, enums, structs that would be required by applications.
31  */
32
33 #ifndef _TEL_SAT_ENVELOPE_H_
34 #define _TEL_SAT_ENVELOPE_H_
35
36 #include <TelSatObj.h>
37
38 #ifdef __cplusplus
39 extern "C"
40 {
41 #endif
42
43 /**
44  * @enum TelSatCallType_t
45  * This enum indicates the SAT call type
46  */
47 typedef enum
48 {
49         TAPI_SAT_CALL_TYPE_MO_VOICE = 0X00,     /**<    call type -  mo voice   */
50         TAPI_SAT_CALL_TYPE_MO_SMS,                      /**<    call type - mo sms      */
51         TAPI_SAT_CALL_TYPE_SS,                          /**<    call type -  ss */
52         TAPI_SAT_CALL_TYPE_USSD,                        /**<    call type -  ussd       */
53         TAPI_SAT_PDP_CNTXT_ACT,                         /**<    call type -  pdp context action */
54         TAPI_SAT_CALL_TYPE_MAX                          /**<    call type -  max        */
55 }TelSatCallType_t;
56
57 /**
58  * @enum TelSatCallCtrlResultType_t
59  * This enum indicates the result of call control by SIM.
60  */
61 typedef enum
62 {
63         TAPI_SAT_CALL_CTRL_R_ALLOWED_NO_MOD                     = 0,            /**<    call control result type -  ALLOWED WITH NO MOD */
64         TAPI_SAT_CALL_CTRL_R_NOT_ALLOWED                        = 1,            /**<    call control result type -  NOT ALLOWED */
65         TAPI_SAT_CALL_CTRL_R_ALLOWED_WITH_MOD           = 2,            /**<    call control result type -  ALLOWED WITH MOD    */
66         TAPI_SAT_CALL_CTRL_R_RESERVED                           = 0xFF          /**<    call control result type -  RESERVED    */
67
68 } TelSatCallCtrlResultType_t;
69
70 /**
71  * @enum TelSatEnvelopeResp_t
72  * This enum indicates the general result of sending an envelope command to USIM.
73  */
74 typedef enum
75 {
76         TAPI_SAT_ENVELOPE_SUCCESS,      /**<    envelope result - success       */
77         TAPI_SAT_ENVELOPE_SIM_BUSY,     /**<    envelope result - USIM busy     */
78         TAPI_SAT_ENVELOPE_FAILED        /**<    envelope result - failed        */
79
80 }TelSatEnvelopeResp_t;
81
82 //      8.      MENU SELECTION
83 /**
84  * This structure contains the data objects for MENU SELECTION envelope.
85  */
86 typedef struct
87 {
88         unsigned char           itemIdentifier;         /**<    menu selection item identifier  */
89         int                             bIsHelpRequested;       /**<    flag to check whether help information required or not  */
90 } TelSatMenuSelectionReqInfo_t;
91
92 //      9.1 CALL CONTROL BY SIM
93 /**
94  * This struct contains the data objects for Call Control result data sent by USIM.
95  */
96 typedef struct
97 {
98         TelSatAddressInfo_t                             address;                        /**<    call number     */
99         TelSatSubAddressInfo_t                  subAddress;                     /**<    call number sub address */
100         TelSatBcRepeatIndicatorType_t   bcRepeatIndicator;      /**<    bc repeat indicator */
101         TelSatCapaConfigParamInfo_t             ccp1;                           /**<    capability configuration parameter1     */
102         TelSatCapaConfigParamInfo_t             ccp2;                           /**<    capability configuration parameter2     */
103 }TelSatVoiceCallCtrlIndInfo_t;
104
105 /**
106  * This struct contains SAT ss control result data sent by USIM.
107  */
108 typedef struct
109 {
110         TelSatSsStringInfo_t                    ssString;                       /**<    ss number       */
111         TelSatSubAddressInfo_t                  subAddress;                     /**<    ss sub address */
112         TelSatBcRepeatIndicatorType_t   bcRepeatIndicator;      /**<    bc repeat indicator     */
113         TelSatCapaConfigParamInfo_t             ccp1;                           /**<    capability configuration parameter1     */
114         TelSatCapaConfigParamInfo_t             ccp2;                           /**<    capability configuration parameter2     */
115 }TelSatSsCtrlIndInfo_t;
116
117 /**
118  * This struct contains SAT mo SMS control configuration data
119  */
120 typedef struct
121 {
122         TelSatAddressInfo_t             rpDestAddress;  /**<    sms control rp destination address      */
123         TelSatAddressInfo_t             tpDestAddress;  /**<    sms control tp destination address      */
124 } TelSatMoSmsCtrlIndInfo_t;
125
126 /**
127  * This struct contains SAT call control configuration data
128  */
129 typedef struct
130 {
131         TelSatCallType_t                                        callType;               /**<    call type       */
132         TelSatCallCtrlResultType_t                      callCtrlResult; /**<    call control result     */
133         TelSatAlphaIdentifierInfo_t                     alphaIdentifier;/**<    alpha identifier        */
134         unsigned char                                           callId;                 /**<    call id */
135         TelSatCallType_t                                        oldCallType;    /**<    old call type   */
136         union
137         {
138                 TelSatVoiceCallCtrlIndInfo_t    voiceCallData;  /**<    voice call control data */
139                 TelSatSsCtrlIndInfo_t                   ssData;                 /**<    ss control data */
140                 TelSatMoSmsCtrlIndInfo_t                smsData;
141         }u;                                                                                                     /**<    Union           */
142 } TelSatCallCtrlIndInfo_t;
143
144 //      9.2 MO SHORT MESSAGE CONTROL BY SIM RESULT
145 /**
146  * This struct contains SAT mo ss control request data
147  */
148  typedef struct
149 {
150         TelSatCallCtrlResultType_t              callCtrlResult;         /**<    call control result     */
151         TelSatAlphaIdentifierInfo_t             alphaIdentifier;        /**<    alpha identifier        */
152         TelSatMoSmsCtrlIndInfo_t                smsData;                        /**<    sms control data        */
153 }TelSatMoSMCtrlResult_t;
154
155 //      11.5 EVENT DOWNLOAD - USER ACTIVITY EVENT
156 /**
157  * This struct contains SAT user activity event request data
158  */
159 typedef struct
160 {
161         TelSatEventListInfo_t                           eventList;                      /**<    event List      */
162         TelSatDeviceIdentitiesInfo_t            deviceIdentities;       /**<    device identities info  */
163
164 } TelSatUserActivityEventReqInfo_t;
165
166 //      11.6 EVENT DOWNLOAD - IDLE SCREEN AVAILABLE EVENT
167 /**
168  * This structure contains the data objects for IDLE SCREEN AVAILABLE event download.
169  */
170 typedef struct
171 {
172         TelSatEventDownloadType_t       eventData;      /**<    event type      */
173 } TelSatIdleScreenAvailableEventReqInfo_t;
174
175 //      11.8 EVENT DOWNLOAD - LANGUAGE SELECTION EVENT
176 /**
177  * This structure contains the data objects for LANGUAGE SELECTION event download.
178  */
179 typedef struct
180 {
181         TelSatLanguageType_t     language;              /**<    selected language info  */
182 } TelSatLanguageSelectionEventReqInfo_t;
183
184 //      11.9 EVENT DOWNLOAD - BROWSER TERMINATION EVENT
185 /**
186  * This structure contains the data objects for BROWSER TERMINATION event download.
187  */
188 typedef struct
189 {
190         TelSatBrowserTerminationCauseType_t             browserTerminationCause;        /**<    browser Termination Cause       */
191 } TelSatBrowserTerminationEventReqInfo_t;
192
193 //      11.10 EVENT DOWNLOAD - DATA AVAILABLE EVENT
194 /**
195  * This struct contains SAT data available event request data
196  */
197 typedef struct
198 {
199         TelSatEventListInfo_t                   eventList;                      /**<    event List      */
200         TelSatDeviceIdentitiesInfo_t    deviceIdentities;       /**<    device identities info  */
201         TelSatChannelStatusInfo_t               channelStatus;          /**<    channel status  */
202         TelSatChannelDataLengthInfo_t   channelDataLen;         /**<    channel data length     */
203
204 } TelSatDataAvailableEventReqInfo_t;
205
206 //      11.11 EVENT DOWNLOAD - CHANNEL STATUS EVENT
207 /**
208  * This struct contains SAT channel status even request data
209  */
210 typedef struct
211 {
212         TelSatEventListInfo_t                   eventList;                      /**<    event list      */
213         TelSatDeviceIdentitiesInfo_t    deviceIdentities;       /**<    device identities info  */
214         TelSatChannelStatusInfo_t               channelStatus;          /**<    channel Status  */
215 } TelSatChannelStatusEventReqInfo_t;
216
217 #ifdef __cplusplus
218 }
219 #endif
220
221 #endif  /* _TEL_SAT_ENVELOPE_H_ */
222
223 /**
224  * @}
225  */