tizen 2.3 release
[framework/telephony/libslp-tapi.git] / include / TelSatEnvelope.h
1 /*
2  * libslp-tapi
3  *
4  * Copyright (c) 2014 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  * @file TelSatEnvelope.h
23  */
24
25 /**
26  * @internal
27  * @addtogroup CAPI_TELEPHONY_SERVICE_SAT
28  * @{
29  */
30
31 #ifndef _TEL_SAT_ENVELOPE_H_
32 #define _TEL_SAT_ENVELOPE_H_
33
34 #include <TelSatObj.h>
35
36 #ifdef __cplusplus
37 extern "C"
38 {
39 #endif
40
41 /**
42  * @brief Enumeration for the SAT call type.
43  * @since_tizen 2.3
44  */
45 typedef enum
46 {
47         TAPI_SAT_CALL_TYPE_MO_VOICE = 0X00,     /**< Call type - MO voice */
48         TAPI_SAT_CALL_TYPE_MO_SMS,                      /**< Call type - MO SMS */
49         TAPI_SAT_CALL_TYPE_SS,                          /**< Call type - SS */
50         TAPI_SAT_CALL_TYPE_USSD,                        /**< Call type - USSD */
51         TAPI_SAT_PDP_CNTXT_ACT,                         /**< Call type - PDP context action */
52         TAPI_SAT_CALL_TYPE_MAX                          /**< Call type - max */
53 }TelSatCallType_t;
54
55 /**
56  * @brief Enumeration for the result of call control by SIM.
57  * @since_tizen 2.3
58  */
59 typedef enum
60 {
61         TAPI_SAT_CALL_CTRL_R_ALLOWED_NO_MOD                     = 0,            /**< Call control result type -  ALLOWED WITH NO MOD */
62         TAPI_SAT_CALL_CTRL_R_NOT_ALLOWED                        = 1,            /**< Call control result type -  NOT ALLOWED */
63         TAPI_SAT_CALL_CTRL_R_ALLOWED_WITH_MOD           = 2,            /**< Call control result type -  ALLOWED WITH MOD */
64         TAPI_SAT_CALL_CTRL_R_RESERVED                           = 0xFF          /**< Call control result type -  RESERVED */
65
66 } TelSatCallCtrlResultType_t;
67
68 /**
69  * @brief Enumeration for the general result of sending an envelope command to the USIM.
70  * @since_tizen 2.3
71  */
72 typedef enum
73 {
74         TAPI_SAT_ENVELOPE_SUCCESS,      /**< Envelope result - success */
75         TAPI_SAT_ENVELOPE_SIM_BUSY,     /**< Envelope result - USIM busy */
76         TAPI_SAT_ENVELOPE_FAILED        /**< Envelope result - failed */
77
78 }TelSatEnvelopeResp_t;
79
80 //      8.      MENU SELECTION
81 /**
82  * @brief The structure type containing data objects for the MENU SELECTION envelope.
83  * @since_tizen 2.3
84  */
85 typedef struct
86 {
87         unsigned char           itemIdentifier;         /**< Menu selection item identifier     */
88         int                             bIsHelpRequested;       /**< Flag to check whether help information is required */
89 } TelSatMenuSelectionReqInfo_t;
90
91 //      9.1 CALL CONTROL BY SIM
92 /**
93  * @brief Structure type containing data objects for Call Control result data sent by the USIM.
94  * @since_tizen 2.3
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 parameter 1 */
102         TelSatCapaConfigParamInfo_t             ccp2;                           /**< Capability configuration parameter 2 */
103 }TelSatVoiceCallCtrlIndInfo_t;
104
105 /**
106  * @brief The structure type containing SAT SS control result data sent by the USIM.
107  * @since_tizen 2.3
108  */
109 typedef struct
110 {
111         TelSatSsStringInfo_t                    ssString;                       /**< SS number */
112         TelSatSubAddressInfo_t                  subAddress;                     /**< SS sub address */
113         TelSatBcRepeatIndicatorType_t   bcRepeatIndicator;      /**< BC repeat indicator */
114         TelSatCapaConfigParamInfo_t             ccp1;                           /**< Capability configuration parameter 1 */
115         TelSatCapaConfigParamInfo_t             ccp2;                           /**< Capability configuration parameter 2 */
116 }TelSatSsCtrlIndInfo_t;
117
118 /**
119  * @brief The structure type containing SAT MO SMS control configuration data.
120  * @since_tizen 2.3
121  */
122 typedef struct
123 {
124         TelSatAddressInfo_t             rpDestAddress;  /**< SMS control RP destination address */
125         TelSatAddressInfo_t             tpDestAddress;  /**< SMS control TP destination address */
126 } TelSatMoSmsCtrlIndInfo_t;
127
128 /**
129  * @brief The structure type containing SAT call control configuration data.
130  * @since_tizen 2.3
131  */
132 typedef struct
133 {
134         TelSatCallType_t                                        callType;               /**< Call type */
135         TelSatCallCtrlResultType_t                      callCtrlResult; /**< Call control result */
136         TelSatAlphaIdentifierInfo_t                     alphaIdentifier;/**< Alpha identifier */
137         unsigned char                                           callId;                 /**< Call ID */
138         TelSatCallType_t                                        oldCallType;    /**< Old call type */
139         union
140         {
141                 TelSatVoiceCallCtrlIndInfo_t    voiceCallData;  /**< Voice call control data */
142                 TelSatSsCtrlIndInfo_t                   ssData;                 /**< SS control data */
143                 TelSatMoSmsCtrlIndInfo_t                smsData;
144         }u;                                                                                                     /**< Union */
145 } TelSatCallCtrlIndInfo_t;
146
147 //      9.2 MO SHORT MESSAGE CONTROL BY SIM RESULT
148 /**
149  * @brief The structure type containing SAT MO SS control request data.
150  * @since_tizen 2.3
151  */
152  typedef struct
153 {
154         TelSatCallCtrlResultType_t              callCtrlResult;         /**< Call control result */
155         TelSatAlphaIdentifierInfo_t             alphaIdentifier;        /**< Alpha identifier */
156         TelSatMoSmsCtrlIndInfo_t                smsData;                        /**< SMS control data */
157 }TelSatMoSMCtrlResult_t;
158
159 //      11.5 EVENT DOWNLOAD - USER ACTIVITY EVENT
160 /**
161  * @brief The structure type containing SAT user activity event request data.
162  * @since_tizen 2.3
163  */
164 typedef struct
165 {
166         TelSatEventListInfo_t                           eventList;                      /**< Event List */
167         TelSatDeviceIdentitiesInfo_t            deviceIdentities;       /**< Device identities info     */
168
169 } TelSatUserActivityEventReqInfo_t;
170
171 //      11.6 EVENT DOWNLOAD - IDLE SCREEN AVAILABLE EVENT
172 /**
173  * @brief The structure type containing the data objects for the IDLE SCREEN AVAILABLE event download.
174  * @since_tizen 2.3
175  */
176 typedef struct
177 {
178         TelSatEventDownloadType_t       eventData;      /**< Event type */
179 } TelSatIdleScreenAvailableEventReqInfo_t;
180
181 //      11.8 EVENT DOWNLOAD - LANGUAGE SELECTION EVENT
182 /**
183  * @brief The structure type containing the data objects for the LANGUAGE SELECTION event download.
184  * @since_tizen 2.3
185  */
186 typedef struct
187 {
188         TelSatLanguageType_t     language;              /**< Selected language info     */
189 } TelSatLanguageSelectionEventReqInfo_t;
190
191 //      11.9 EVENT DOWNLOAD - BROWSER TERMINATION EVENT
192 /**
193  * @brief The structure type containing the data objects for the BROWSER TERMINATION event download.
194  * @since_tizen 2.3
195  */
196 typedef struct
197 {
198         TelSatBrowserTerminationCauseType_t             browserTerminationCause;        /**< Browser Termination Cause */
199 } TelSatBrowserTerminationEventReqInfo_t;
200
201 //      11.10 EVENT DOWNLOAD - DATA AVAILABLE EVENT
202 /**
203  * @brief The structure type containing SAT data available event request data.
204  * @since_tizen 2.3
205  */
206 typedef struct
207 {
208         TelSatEventListInfo_t                   eventList;                      /**< Event List */
209         TelSatDeviceIdentitiesInfo_t    deviceIdentities;       /**< Device identities info     */
210         TelSatChannelStatusInfo_t               channelStatus;          /**< Channel status     */
211         TelSatChannelDataLengthInfo_t   channelDataLen;         /**< Channel data length */
212
213 } TelSatDataAvailableEventReqInfo_t;
214
215 //      11.11 EVENT DOWNLOAD - CHANNEL STATUS EVENT
216 /**
217  * @brief The structure type containing SAT channel status even request data.
218  * @since_tizen 2.3
219  */
220 typedef struct
221 {
222         TelSatEventListInfo_t                   eventList;                      /**< Event list */
223         TelSatDeviceIdentitiesInfo_t    deviceIdentities;       /**< Device identities info     */
224         TelSatChannelStatusInfo_t               channelStatus;          /**< Channel Status     */
225 } TelSatChannelStatusEventReqInfo_t;
226
227 #ifdef __cplusplus
228 }
229 #endif
230
231 #endif  /* _TEL_SAT_ENVELOPE_H_ */
232
233 /**
234  * @}
235  */