modify msg-service to support dpm feature
[platform/core/messaging/msg-service.git] / include / mapi / msg_types.h
1 /*
2  * Copyright (c) 2014 Samsung Electronics Co., Ltd. All rights reserved
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15 */
16
17 #ifndef MSG_TYPES_H_
18 #define MSG_TYPES_H_
19
20 /*==================================================================================================
21                                                                                         DEFINES
22 ==================================================================================================*/
23
24 #define DEPRECATED __attribute__((deprecated))
25
26 #ifndef EXPORT_API
27 #define EXPORT_API __attribute__ ((visibility("default")))
28 #endif
29
30 /**
31  * @addtogroup MSG_SERVICE_FRAMEWORK
32  * @{
33  */
34
35 /**
36  * @brief       Definition for maximum address count
37  */
38 #define MAX_TO_ADDRESS_CNT 10
39
40 /**
41  * @brief       Definition for maximum phone number length
42  */
43 #define MAX_PHONE_NUMBER_LEN 20
44
45 /**
46  * @brief       Definition for maximum XDN alpha ID length
47  */
48 #define MAX_SIM_XDN_ALPHA_ID_LEN 30
49 /**
50  * @brief       Definition for maximum address value length
51  */
52 #define MAX_ADDRESS_VAL_LEN     254
53
54 /**
55  * @brief       Definition for maximum subject length
56  */
57 #define MAX_SUBJECT_LEN 120
58
59 /**
60  * @brief       Definition for maximum display length length
61  */
62 #define MAX_DISPLAY_NAME_LEN 195
63
64 /**
65  * @brief       Definition for maximum image path length
66  */
67 #define MAX_IMAGE_PATH_LEN 1024
68
69 /**
70  * @brief       Definition for maximum message data length
71  */
72 #define MAX_MSG_DATA_LEN 320
73
74 /**
75  * @brief       Definition for maximum message text length
76  */
77 #define MAX_MSG_TEXT_LEN 1530
78
79 /**
80  * @brief       Definition for maximum filter value length
81  */
82 #define MAX_FILTER_VALUE_LEN 128
83
84 /**
85  * @brief       Definition for maximum command length
86  */
87 #define MAX_COMMAND_LEN 1024
88
89 /**
90  * @brief       Definition for maximum folder name size
91  */
92 #define MAX_FOLDER_NAME_SIZE 20
93
94 /**
95  * @brief       Definition for maximum ID length of push message
96  */
97 #define MAX_WAPPUSH_ID_LEN 100
98
99 /**
100  * @brief       Definition for maximum content type length of push message
101  */
102 #define MAX_WAPPUSH_CONTENT_TYPE_LEN 100
103
104 /**
105  * @brief       Definition for maximum href length of push message
106  */
107 #define MAX_WAPPUSH_HREF_LEN 300
108
109 /**
110  * @brief       Definition for maximum contents length of push message
111  */
112 #define MAX_WAPPUSH_CONTENTS_LEN 2048
113
114 /**
115  * @brief       Definition for maximum invalid object count of push message(CO)
116  */
117 #define MAX_PUSH_CACHEOP_INVALID_OBJECT_MAX     5
118
119 /**
120  * @brief       Definition for maximum invalid service count of push message(CO)
121  */
122 #define MAX_PUSH_CACHEOP_INVALID_SERVICE_MAX 5
123
124 /**
125  * @brief       Definition for maximum URL length of push message(CO)
126  */
127 #define MAX_PUSH_CACHEOP_MAX_URL_LEN 200
128
129 /**
130  * @brief       Definition for maximum segment count
131  */
132 #define MAX_SEGMENT_NUM 15
133
134 /**
135  * @brief       Definition for maximum file path length
136  */
137 #define MSG_FILEPATH_LEN_MAX 1024
138
139 /* setting */
140 /**
141  * @brief       Definition for maximum SMSC name length
142  */
143 #define SMSC_NAME_MAX 127
144
145 /**
146  * @brief       Definition for maximum SMSC address length
147  */
148 #define SMSC_ADDR_MAX 21
149
150 /**
151  * @brief       Definition for maximum SMSC list count
152  */
153 #define SMSC_LIST_MAX 5
154
155 /**
156  * @brief       Definition for maximum CB channel name length
157  */
158 #define CB_CHANNEL_NAME_MAX 32
159
160 /**
161  * @brief       Definition for maximum CB channel count
162  */
163 #define CB_CHANNEL_MAX 30
164
165 /**
166  * @brief       Definition for maximum CB language type count
167  */
168 #define CB_LANG_TYPE_MAX 10
169
170 /**
171  * @brief       Definition for maximum file name length
172  */
173 #define MSG_FILENAME_LEN_MAX 1024
174
175 /**
176  * @brief       Definition for maximum message id length
177  */
178 #define MSG_MSG_ID_LEN 1024
179
180 /**
181  * @brief       Definition for maximum in transition id length
182  */
183 #define MAX_SMIL_TRANSIN_ID 100
184
185 /**
186  * @brief       Definition for maximum out transition id length
187  */
188 #define MAX_SMIL_TRANSOUT_ID 100
189
190 /**
191  * @brief       Definition for maximum region id length
192  */
193 #define MAX_SMIL_REGION_ID 151
194
195 /**
196  * @brief       Definition for maximum transition id length
197  */
198 #define MAX_SMIL_TRANSITION_ID 151
199
200 /**
201  * @brief       Definition for maximum meta id length
202  */
203 #define MAX_SMIL_META_ID 151
204
205 /**
206  * @brief       Definition for maximum meta name length
207  */
208 #define MAX_SMIL_META_NAME 100
209
210 /**
211  * @brief       Definition for maximum meta content length
212  */
213 #define MAX_SMIL_META_CONTENT 255
214
215 /**
216  * @brief       Definition for maximum fit size
217  */
218 #define MAX_SMIL_FIT_SIZE 31
219
220 /**
221  * @brief       Definition for maximum pages in a MMS
222  */
223 #define MMS_PAGE_MAX 20
224
225 /**
226  * @brief       Definition for maximum media in a MMS
227  */
228 #define MMS_MEDIA_MAX 60
229
230 /**
231  * @brief       Definition for maximum alternate text length
232  */
233 #define MAX_SMIL_ALT_LEN 255
234
235
236 /*font size */
237 /**
238  * @brief       Definition for small font size
239  */
240 #define MMS_SMIL_FONT_SIZE_SMALL 24
241
242 /**
243  * @brief       Definition for normal font size
244  */
245 #define MMS_SMIL_FONT_SIZE_NORMAL 30
246
247 /**
248  * @brief       Definition for large font size
249  */
250 #define MMS_SMIL_FONT_SIZE_LARGE 36
251
252 /**
253  * @brief       Definition for maximum length of java app ID
254  */
255 #define MAX_MMS_JAVA_APPID_LEN 32
256
257 /**
258  * @brief       Definition for maximum length of MMS transaction ID
259  */
260 #define MMS_TR_ID_LEN 40
261
262 /**
263  * @brief       Definition for maximum length of MMS message ID
264  */
265 #define MMS_MSG_ID_LEN 40
266
267 /**
268  * @brief       Definition for maximum length of MMS contents location
269  */
270 #define MMS_LOCATION_LEN 100
271
272 /**
273  * @brief       Definition for maximum mimeType length
274  */
275 #define MAX_MIME_TYPE_LEN 64
276
277 /*==================================================================================================
278                                                                                         TYPES
279 ==================================================================================================*/
280
281 /**
282  * @brief       The structure type representing an opaque pointer to message handle.
283  */
284 typedef struct opq_msg_svc_s *msg_handle_t;
285
286 /**
287  * @brief       The structure type representing an opaque pointer to message structure type.
288  */
289 typedef struct opq_struct_s *msg_struct_t;
290
291 /**
292  * @brief       The structure type representing a pointer to message list handle.
293  */
294 typedef struct msg_list_handle *msg_list_handle_t;
295
296 /**
297  * @brief       The structure type representing a message structure list.
298  */
299 typedef struct {
300         int             nCount;            /**< The count of #msg_struct_t */
301         msg_struct_t    *msg_struct_info;  /**< The #msg_struct_t information list */
302 } msg_struct_list_s;
303
304
305 /**
306  * @brief  The message ID.
307  */
308 typedef unsigned int msg_message_id_t;
309
310
311 /**
312  * @brief  The storage type.
313  *         See enum _MSG_STORAGE_ID_E.
314  */
315 typedef unsigned char msg_storage_id_t;
316
317
318 /**
319  * @brief  The folder ID.
320  *         See enum _MSG_FOLDER_ID_E.
321  */
322 typedef char msg_folder_id_t;
323
324
325 /**
326  * @brief The request ID, which is unique for each request.
327  */
328 typedef unsigned int msg_request_id_t;
329
330
331 /**
332  * @brief  The message priority. \n
333  *         The values for this type SHOULD be in _MSG_PRIORITY_TYPE_E.
334  */
335 typedef unsigned char msg_priority_type_t;
336
337
338 /**
339  * @brief  The network status of a message. \n
340  *         The values for this type SHOULD be in _MSG_NETWORK_STATUS_E.
341  */
342 typedef unsigned char msg_network_status_t;
343
344
345 /**
346  * @brief  The address type. \n
347  *         The values for this type SHOULD be in _MSG_ADDRESS_TYPE_E.
348  */
349 typedef unsigned char msg_address_type_t;
350
351
352 /**
353  * @brief  The recipient type. \n
354  *         The values for this type SHOULD be in _MSG_RECIPIENT_TYPE_E.
355  */
356 typedef unsigned char msg_recipient_type_t;
357
358
359 /**
360  * @brief  The type of a message direction. \n
361  *         The values for this type SHOULD be in _MSG_DIRECTION_TYPE_E.
362  */
363 typedef unsigned char msg_direction_type_t;
364
365
366 /**
367  * @brief  The encoding type. \n
368  *         The values for this type SHOULD be in _MSG_ENCODE_TYPE_E.
369  */
370 typedef unsigned char msg_encode_type_t;
371
372
373 /**
374  * @brief  The error code. \n
375  *         The values for this type SHOULD be in _MSG_ERROR_E.
376  */
377 typedef int msg_error_t;
378
379
380 /**
381 * @brief The WAP Push App Code.
382 */
383 typedef unsigned char msg_push_action_t;
384
385
386 /**
387 * @brief The SyncML Message Type.
388 */
389 typedef unsigned short msg_syncml_message_type_t;
390
391
392 /**
393  * @brief The Contact ID.
394  */
395 typedef unsigned int msg_contact_id_t;
396
397
398 /**
399  * @brief  The Report Type. \n
400  *         The values for this type SHOULD be in _MSG_REPORT_TYPE_E.
401  */
402 typedef int msg_report_type_t;
403
404
405 /**
406  * @brief  The Delivery Report Status. \n
407  *         The values for this type SHOULD be in _MSG_DELIVERY_REPORT_STATUS_E.
408  */
409 typedef int msg_delivery_report_status_t;
410
411
412 /**
413  * @brief  The Read Report Status.\n
414  *         The values for this type SHOULD be in _MSG_READ_REPORT_STATUS_E
415  */
416 typedef int msg_read_report_status_t;
417
418
419 /**
420  * @brief  The Message Type. \n
421  *         The values for this type SHOULD be in _MSG_MESSAGE_TYPE_E.
422 */
423 typedef unsigned short msg_message_type_t;
424
425 /**
426  * @brief  The Message Backup Type. \n
427  *         The values for this type SHOULD be in _MSG_MESSAGE_BACKUP_TYPE_E.
428 */
429 typedef unsigned int msg_message_backup_type_t;
430
431 /**
432  * @brief  The thread ID.
433  */
434 typedef unsigned int msg_thread_id_t;
435
436 /* filter */
437 /**
438  * @brief  The filter ID.
439  */
440 typedef unsigned char msg_filter_id_t;
441
442
443 /**
444  * @brief  The filter Type. \n
445  *         The filter type represents a unique filter type. \n
446  *         The values for this type SHOULD be in _MSG_FILTER_TYPE_E.
447  */
448 typedef unsigned char msg_filter_type_t;
449
450
451
452 /*==================================================================================================
453                                                                                         ENUMS
454 ==================================================================================================*/
455
456 /**
457  * @brief  Enumeration for the values of a structure type for #msg_sturuct_t. \n
458  */
459 enum _MSG_STRUCT_E {
460         MSG_STRUCT_FILTER = 0X0000,                             /**< Indicates the MSG_STRUCT_FILTER */
461
462         MSG_STRUCT_MESSAGE_INFO = 0x0200,                       /**< Indicates the MSG_STRUCT_MESSAGE_INFO */
463         MSG_STRUCT_THREAD_INFO = 0x0300,                        /**< Indicates the MSG_STRUCT_THREAD_INFO*/
464         MSG_STRUCT_CONV_INFO = 0x0400,                          /**< Indicates the MSG_STRUCT_CONV_INFO*/
465         MSG_STRUCT_MMS = 0x0500,                                /**< Indicates the MSG_STRUCT_MMS */
466         MSG_STRUCT_MMS_PAGE = 0x0600,                           /**< Indicates the MSG_STRUCT_MMS_PAGE */
467         MSG_STRUCT_MMS_MEDIA = 0x0700,                          /**< Indicates the MSG_STRUCT_MMS_MEDIA */
468         MSG_STRUCT_MMS_ATTACH = 0x0800,                         /**< Indicates the MSG_STRUCT_MMS_ATTACH */
469         MSG_STRUCT_MMS_REGION = 0x0900,                         /**< Indicates the MSG_STRUCT_MMS_REGION */
470         MSG_STRUCT_MMS_TRANSITION = 0x0a00,                     /**< Indicates the MSG_STRUCT_MMS_TRANSITION */
471         MSG_STRUCT_MMS_META = 0x0b00,                           /**< Indicates the MSG_STRUCT_MMS_META */
472         MSG_STRUCT_MMS_SMIL_TEXT = 0x0c00,                      /**< Indicates the MSG_STRUCT_MMS_SMIL_TEXT */
473         MSG_STRUCT_MMS_SMIL_AVI = 0x0d00,                       /**< Indicates the MSG_STRUCT_MMS_SMIL_AVI */
474
475         MSG_STRUCT_SETTING_SMSC_OPT = 0x2000,                   /**< Indicates the MSG_STRUCT_SETTING_SMSC_OPT */
476         MSG_STRUCT_SETTING_SMSC_INFO = 0x2100,                  /**< Indicates the MSG_STRUCT_SETTING_SMSC_INFO */
477         MSG_STRUCT_SETTING_CB_OPT = 0x2200,                     /**< Indicates the MSG_STRUCT_SETTING_CB_OPT */
478         MSG_STRUCT_SETTING_CB_CHANNEL_INFO = 0x2300,            /**< Indicates the MSG_STRUCT_CB_CHANNEL_INFO */
479         MSG_STRUCT_SETTING_SMS_SEND_OPT = 0x2400,               /**< Indicates the MSG_STRUCT_SETTING_SMS_SEND_OPT */
480         MSG_STRUCT_SETTING_MMS_SEND_OPT = 0x2500,               /**< Indicates the MSG_STRUCT_SETTING_MMS_SEND_OPT */
481         MSG_STRUCT_SETTING_MMS_RECV_OPT = 0x2600,               /**< Indicates the MSG_STRUCT_SETTING_MMS_RECV_OPT */
482         MSG_STRUCT_SETTING_PUSH_MSG_OPT = 0x2700,               /**< Indicates the MSG_STRUCT_SETTING_PUSH_MSG_OPT */
483         MSG_STRUCT_SETTING_VOICE_MSG_OPT = 0x2800,              /**< Indicates the MSG_STRUCT_SETTING_VOICE_MSG_OPT */
484         MSG_STRUCT_SETTING_GENERAL_OPT = 0x2900,                /**< Indicates the MSG_STRUCT_SETTING_GENERAL_OPT */
485
486         MSG_STRUCT_SETTING_MSGSIZE_OPT = 0x2c00,                /**< Indicates the MSG_STRUCT_SETTING_MSGSIZE_OPT */
487
488         MSG_STRUCT_SYNCML_INFO = 0x3100,                        /**< Indicates the MSG_STRUCT_SYNCML_INFO */
489         MSG_STRUCT_COUNT_INFO = 0x3200,                         /**< Indicates the MSG_STRUCT_COUNT_INFO */
490         MSG_STRUCT_THREAD_COUNT_INFO = 0x3300,                  /**< Indicates the MSG_STRUCT_THREAD_COUNT_INFO */
491         MSG_STRUCT_THREAD_LIST_INDEX = 0x3400,                  /**< Indicates the MSG_STRUCT_THREAD_LIST_INDEX */
492         MSG_STRUCT_SORT_RULE = 0x3500,                          /**< Indicates the MSG_STRUCT_SORT_RULE */
493         MSG_STRUCT_FOLDER_INFO = 0x3600,                        /**< Indicates the MSG_STRUCT_FOLDER_INFO */
494         MSG_STRUCT_REPORT_STATUS_INFO = 0x3800,                 /**< Indicates the MSG_STRUCT_REPORT_STATUS_INFO */
495         MSG_STRUCT_MSG_LIST_CONDITION = 0x3900,                 /**< Indicates the MSG_LIST_CONDITION  */
496
497         MSG_STRUCT_ADDRESS_INFO = 0x4000,                       /**< Indicates the MSG_STRUCT_ADDRESS_INFO */
498         MSG_STRUCT_SENDOPT = 0x4100,                            /**< Indicates the MSG_STRUCT_SENDOPT */
499         MSG_STRUCT_MMS_SENDOPT = 0x4200,                        /**< Indicates the MSG_STRUCT_MMS_SENDOPT */
500         MSG_STRUCT_SMS_SENDOPT = 0x4300,                        /**< Indicates the MSG_STRUCT_SMS_SENDOPT */
501         MSG_STRUCT_REJECT_MSG_INFO = 0x4400,                    /**< Indicates the MSG_STRUCT_REJECT_MSG_INFO */
502         MSG_STRUCT_REQUEST_INFO = 0x4500,                       /**< Indicates the MSG_STRUCT_REQUEST_INFO */
503         MSG_STRUCT_SENT_STATUS_INFO = 0x4600,                   /**< Indicates the MSG_STRUCT_SENT_STATUS_INFO */
504         MSG_STRUCT_PUSH_CONFIG_INFO = 0x4700,                   /**< Indicates the MSG_STRUCT_PUSH_CONFIG_INFO */
505         MSG_STRUCT_CB_MSG = 0x4800,                             /**< Indicates the MSG_STRUCT_CB_MSG */
506         MSG_STRUCT_MULTIPART_INFO = 0x4a00,                     /**< Indicates the MSG_STRUCT_MULTIPART_INFO */
507         MSG_STRUCT_MEDIA_INFO = 0x5000,                         /**< Indicates the MSG_STRUCT_MEDIA_INFO*/
508 };
509
510 /**
511  * @brief  Enumeration for the values of message detail information. \n
512  *         This enum is used as member of #msg_struct_t for MSG_STRUCT_MESSAGE_INFO.
513  */
514 enum _MSG_MESSAGE_INFO_E_ {
515         MSG_MESSAGE_ID_INT = MSG_STRUCT_MESSAGE_INFO+1,     /**< Indicates the message ID of this message. */
516         MSG_MESSAGE_THREAD_ID_INT,                          /**< Indicates the thread ID. */
517         MSG_MESSAGE_FOLDER_ID_INT,                          /**< Indicates the folder ID. See enum _MSG_FOLDER_ID_E */
518         MSG_MESSAGE_TYPE_INT,                               /**< Indicates the message type. See enum _MSG_MESSAGE_TYPE_E */
519         MSG_MESSAGE_CLASS_TYPE_INT,                         /**< Indicates the message class type. See enum _MSG_CLASS_TYPE_E */
520         MSG_MESSAGE_STORAGE_ID_INT,                         /**< Indicates where the message is saved. See enum _MSG_STORAGE_ID_E*/
521         MSG_MESSAGE_ADDR_LIST_STRUCT,                       /**< Indicates the address information list. **DEPRECATED** */
522         MSG_MESSAGE_REPLY_ADDR_STR,                         /**< Indicates the reply address. */
523         MSG_MESSAGE_SUBJECT_STR,                            /**< Indicates the message subject. */
524         MSG_MESSAGE_DISPLAY_TIME_INT,                       /**< Indicates the display time related to the specific operation. */
525         MSG_MESSAGE_NETWORK_STATUS_INT,                     /**< Indicates the network status of the message. See enum _MSG_NETWORK_STATUS_E */
526         MSG_MESSAGE_ENCODE_TYPE_INT,                        /**< Indicates the string encoding type. See enum _MSG_ENCODE_TYPE_E */
527         MSG_MESSAGE_READ_BOOL,                              /**< Indicates whether the message is read or not. */
528         MSG_MESSAGE_PROTECTED_BOOL,                         /**< Indicates whether the message is protected or not. */
529         MSG_MESSAGE_BACKUP_BOOL,                            /**< Indicates whether the message was restored from PC. */
530         MSG_MESSAGE_PRIORITY_INT,                           /**< Indicates the priority of the message. See enum _MSG_PRIORITY_TYPE_E */
531         MSG_MESSAGE_DIRECTION_INT,                          /**< Indicates whether the message is MO or MT, affecting address. See enum _MSG_DIRECTION_TYPE_E */
532         MSG_MESSAGE_PORT_VALID_BOOL,                        /**< Indicates whether port information is used or not. */
533         MSG_MESSAGE_DEST_PORT_INT,                          /**< Indicates the recipient port number, not greater than 16 bit */
534         MSG_MESSAGE_SRC_PORT_INT,                           /**< Indicates the sender port number, not greater than 16 bit */
535         MSG_MESSAGE_ATTACH_COUNT_INT,                       /**< Indicates the count of attached files in MMS. */
536         MSG_MESSAGE_DATA_SIZE_INT,                          /**< Indicates the data size. The unit is byte. */
537         MSG_MESSAGE_SMS_DATA_STR,                           /**< Indicates the message payload information as a body. default character encoding is UTF-8*/
538         MSG_MESSAGE_MMS_TEXT_STR,                           /**< Indicates the text part of MMS message payload. default character encoding is UTF-8  */
539         MSG_MESSAGE_ADDR_LIST_HND,                          /**< Indicates the address information list. */
540         MSG_MESSAGE_REPLACE_BOOL,                           /**< Indicates whether the message is replace or not */
541         MSG_MESSAGE_SIM_INDEX_INT,                          /**< Indicates the sim index */
542         MSG_MESSAGE_DPM_RESTRICTED_BOOL,                    /**< Indicates whether the message is DPM restricted or not*/
543         MSG_MESSAGE_INFO_MAX,                               /**< Placeholder for max value of this enum*/
544 };
545
546 /**
547  *  @brief  Enumeration for the values of message filter information. \n
548  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_FILTER.
549  */
550 enum MSG_FILTER_INFO_E {
551         MSG_FILTER_ID_INT = MSG_STRUCT_FILTER+1,        /**< Indicates the filter ID. */
552         MSG_FILTER_TYPE_INT,                            /**< Indicates the filter type. See enum _MSG_FILTER_TYPE_E */
553         MSG_FILTER_VALUE_STR,                           /**< Indicates the value of the filter. */
554         MSG_FILTER_ACTIVE_BOOL,                         /**< Indicates the activation of the filter. */
555 };
556
557 /**
558  *  @brief  Enumeration for the values of thread information. \n
559  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_THREAD_INFO.
560  */
561 enum MSG_STRUCT_THREAD_INFO_E {
562         MSG_THREAD_ID_INT = MSG_STRUCT_THREAD_INFO+1,       /**< Indicates the message thread ID. */
563         MSG_THREAD_NAME_STR,                                /**< Indicates the message thread name */
564         MSG_THREAD_MSG_TYPE_INT,                            /**< Indicates the message type. See enum _MSG_MESSAGE_TYPE_E  */
565         MSG_THREAD_MSG_DATA_STR,                            /**< The latest message text. */
566         MSG_THREAD_MSG_TIME_INT,                            /**< The latest message time */
567         MSG_THREAD_DIRECTION_INT,                           /**< The latest message direction See enum _MSG_DIRECTION_TYPE_E */
568         MSG_THREAD_UNREAD_COUNT_INT,                        /**< Indicates unread count of thread */
569         MSG_THREAD_SMS_COUNT_INT,                           /**< Indicates SMS message count of thread */
570         MSG_THREAD_MMS_COUNT_INT,                           /**< Indicates MMS message count of thread */
571         MSG_THREAD_PROTECTED_BOOL,                          /**< Indicates whether thread includes protected message. */
572         MSG_THREAD_DRAFT_BOOL,                              /**< Indicates whether thread includes draft message. */
573         MSG_THREAD_SEND_FAILED_BOOL,                        /**< Indicates whether thread includes  send failed message. */
574         MSG_THREAD_SENDING_BOOL,                            /**< Indicates whether thread includes  sending message. */
575
576         MSG_THREAD_INFO_MAX                                 /**< Placeholder for max value of this enum */
577 };
578
579 /**
580  *  @brief  Enumeration for the values of conversation information. \n
581  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_CONV_INFO.
582  */
583 enum MSG_STRUCT_CONV_INFO_E {
584         MSG_CONV_MSG_ID_INT = MSG_STRUCT_CONV_INFO+1,       /**< Indicates the message ID of this message. */
585         MSG_CONV_MSG_THREAD_ID_INT,                         /**< Indicates the thread ID. */
586         MSG_CONV_MSG_TYPE_INT,                              /**< Indicates the message type. See enum _MSG_MESSAGE_TYPE_E */
587         MSG_CONV_MSG_FOLDER_ID_INT,                         /**< Indicates the folder ID. See enum _MSG_FOLDER_TYPE_E */
588         MSG_CONV_MSG_STORAGE_ID_INT,                        /**< Indicates where the message is saved. See enum _MSG_STORAGE_ID_E*/
589         MSG_CONV_MSG_SUBJECT_STR,                           /**< Indicates the message subject. */
590         MSG_CONV_MSG_DISPLAY_TIME_INT,                      /**< Indicates the display time related to the specific operation. */
591         MSG_CONV_MSG_SCHEDULED_TIME_INT,                    /**< Indicates the time to send scheduled message. */
592         MSG_CONV_MSG_NETWORK_STATUS_INT,                    /**< Indicates the network status of the message. See enum _MSG_NETWORK_STATUS_E */
593         MSG_CONV_MSG_READ_BOOL,                             /**< Indicates whether the message is read or not. */
594         MSG_CONV_MSG_PROTECTED_BOOL,                        /**< Indicates whether the message is protected or not. */
595         MSG_CONV_MSG_DIRECTION_INT,                         /**< Indicates whether the message is MO or MT, affecting address. See enum _MSG_DIRECTION_TYPE_E */
596         MSG_CONV_MSG_PAGE_COUNT_INT,                        /**< Indicates the count of pages in MMS. */
597         MSG_CONV_MSG_ATTACH_COUNT_INT,                      /**< Indicates the count of attached files in MMS. */
598         MSG_CONV_MSG_ATTACH_NAME_STR,                       /**< Indicates the attached file name of message. */
599         MSG_CONV_MSG_AUDIO_NAME_STR,                        /**< Indicates the audio file name of message. */
600         MSG_CONV_MSG_IMAGE_THUMB_PATH_STR,                  /**< Indicates the image thumbnail path of message. */
601         MSG_CONV_MSG_VIDEO_THUMB_PATH_STR,                  /**< Indicates the video thumbnail path of message. */
602         MSG_CONV_MSG_TEXT_SIZE_INT,                         /**< Indicates the data size. The unit is byte. */
603         MSG_CONV_MSG_TEXT_STR,                              /**< Indicates the message payload information as a body. default character encoding is UTF-8*/
604         MSG_CONV_MSG_TCS_BC_LEVEL_INT,                      /**< Indicates the Behavior Level of malware. @c -1 is None*/
605         MSG_CONV_MSG_1ST_MEDIA_PATH_STR,                    /**< Indicates the First Media path of MMS */
606         MSG_CONV_MSG_MULTIPART_HND,
607         MSG_CONV_MSG_SIM_INDEX_INT,                         /**< Indicates the sim index */
608         MSG_CONV_MSG_DPM_RESTRICTED_BOOL,                       /**< */
609
610         MSG_CONV_INFO_MAX                                   /**< Placeholder for max value of this enum */
611 };
612
613 /**
614  *  @brief  Enumeration for the values of setting for SMSC options. \n
615  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_SMSC_OPT.
616  */
617 enum _MSG_STRUCT_SETTING_SMSC_OPT_E {
618         MSG_SMSC_SELECTED_ID_INT = MSG_STRUCT_SETTING_SMSC_OPT+1,       /**< Indicates Selected SMSC index option */
619         MSG_SMSC_LIST_STRUCT,                                           /**< Indicates SMSC data information list option*/
620         MSG_SMSC_LIST_INDEX_INT,                                        /**< Indicates SMSC index option for Updating information */
621         MSG_SMSC_LIST_SIM_INDEX_INT                                     /**< Indicates the sim index */
622 };
623
624 /**
625  *  @brief  Enumeration for the values of setting for SMSC informations. \n
626  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_SMSC_INFO.
627  */
628 enum _MSG_STRUCT_SETTING_SMSC_INFO_E {
629         MSG_SMSC_ADDR_TON_INT = MSG_STRUCT_SETTING_SMSC_INFO+1,     /**< Type of number. See enum _MSG_SMS_TON_E */
630         MSG_SMSC_ADDR_NPI_INT,                                      /**< Numbering plan ID. See enum _MSG_SMS_NPI_E */
631         MSG_SMSC_ADDR_STR,                                          /**< SMSC address */
632         MSG_SMSC_NAME_STR,                                          /**< SMSC name */
633         MSG_SMSC_PID_INT,                                           /**< Protocol idendifier See enum _MSG_SMS_PID_E */
634         MSG_SMSC_VAL_PERIOD_INT                                     /**< Validity period value. See enum _MSG_VAL_PERIOD_E*/
635 };
636
637 /**
638  *  @brief  Enumeration for the values of setting for CB channel options. \n
639  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_CB_OPT.
640  */
641 enum _MSG_STRUCT_CB_OPT_E {
642         MSG_CB_RECEIVE_BOOL = MSG_STRUCT_SETTING_CB_OPT+1,      /**< Indicates whether the CB message is received or not. */
643         MSG_CB_MAX_SIM_COUNT_INT,                               /**< Indicates the number of channels which can be stored in SIM. */
644         MSG_CB_CHANNEL_LIST_STRUCT,                             /**< Indicates the cell broadcasting channel information. */
645         MSG_CB_LANGUAGE_TYPE_ALL_BOOL,                          /**< CB message all languages */
646         MSG_CB_LANGUAGE_TYPE_ENG_BOOL,                          /**< CB message English  */
647         MSG_CB_LANGUAGE_TYPE_GER_BOOL,                          /**< CB message Germany */
648         MSG_CB_LANGUAGE_TYPE_FRE_BOOL,                          /**< CB message France */
649         MSG_CB_LANGUAGE_TYPE_ITA_BOOL,                          /**< CB message Italy */
650         MSG_CB_LANGUAGE_TYPE_NED_BOOL,                          /**< CB message Netherland */
651         MSG_CB_LANGUAGE_TYPE_SPA_BOOL,                          /**< CB message Spain */
652         MSG_CB_LANGUAGE_TYPE_POR_BOOL,                          /**< CB message Portugal */
653         MSG_CB_LANGUAGE_TYPE_SWE_BOOL,                          /**< CB message Sweden */
654         MSG_CB_LANGUAGE_TYPE_TUR_BOOL,                          /**< CB message Turkey */
655         MSG_CB_SIM_INDEX_INT,                                   /**< Indicates the sim index */
656 };
657
658 /**
659  *  @brief  Enumeration for the values of setting for CB channel informations. \n
660  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_CB_CHANNEL_INFO.
661  */
662 enum _MSG_STRUCT_CB_CHANNEL_INFO_E {
663         MSG_CB_CHANNEL_ACTIVATE_BOOL = MSG_STRUCT_SETTING_CB_CHANNEL_INFO+1,    /**< Indicates whether the CB channel is activate or passive. */
664         MSG_CB_CHANNEL_ID_FROM_INT,                                             /**< Indicates the From ID of a CB channel. */
665         MSG_CB_CHANNEL_ID_TO_INT,                                               /**< Indicates the To ID of a CB channel. */
666         MSG_CB_CHANNEL_NAME_STR                                                 /**< Indicates the name of a CB channel. */
667 };
668
669 /**
670  *  @brief  Enumeration for the values of setting for SMS sending options. \n
671  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_SMS_SEND_OPT.
672  */
673 enum _MSG_STRUCT_SMS_SEND_OPT_E {
674         MSG_SMS_SENDOPT_ENCODE_TYPE_INT = MSG_STRUCT_SETTING_SMS_SEND_OPT+1,  /**< Indicates the string encoding type.  See enum _MSG_ENCODE_TYPE_E*/
675         MSG_SMS_SENDOPT_NETWORK_MODE_INT,                                     /**< Indicates the network mode (CS/PS) to send SMS. See enum _MSG_SMS_NETWORK_MODE_E*/
676         MSG_SMS_SENDOPT_REPLY_PATH_BOOL,                                      /**< Indicates whether the SMS reply path is set or not. */
677         MSG_SMS_SENDOPT_DELIVERY_REPORT_BOOL,                                 /**< Indicates whether the SMS delivery report will be sent or not. */
678         MSG_SMS_SENDOPT_SAVE_STORAGE_INT                                      /**< Indicates the default storage to save SMS. See enum _MSG_SMS_SAVE_STORAGE_E */
679 };
680
681 /**
682  *  @brief  Enumeration for the values of setting for MMS sending options. \n
683  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_MMS_SEND_OPT.
684  */
685 enum _MSG_STRUCT_MMS_SEND_OPT_E {
686         MSG_MMS_SENDOPT_CLASS_TYPE_INT = MSG_STRUCT_SETTING_MMS_SEND_OPT+1,  /**< Indicates the class type of message. See enum _MSG_MMS_MSG_CLASS_TYPE_E */
687         MSG_MMS_SENDOPT_PRIORITY_TYPE_INT,                                   /**< Indicates the priority of the message. See enum _MSG_PRIORITY_TYPE_E */
688         MSG_MMS_SENDOPT_EXPIRY_TIME_INT,                                     /**< Indicates the time when the message is to be removed from the MMSC. See enum _MSG_MMS_EXPIRY_TIME_E */
689         MSG_MMS_SENDOPT_DELIVERY_TIME_INT,                                   /**< Indicates the message transmission time which is set in the MMSC. See enum _MSG_MMS_DELIVERY_TIME_E */
690         MSG_MMS_SENDOPT_CUSTOM_DELIVERY_TIME_INT,                            /**< Indicates the message transmission time which is set in the MMSC. */
691         MSG_MMS_SENDOPT_SENDER_VISIBILITY_BOOL,                              /**< Indicates whether the address is hidden or not. */
692         MSG_MMS_SENDOPT_DELIVERY_REPORT_BOOL,                                /**< Indicates whether the delivery report will be sent or not. */
693         MSG_MMS_SENDOPT_READ_REPLY_BOOL,                                     /**< Indicates whether the read report will be sent or not. */
694         MSG_MMS_SENDOPT_KEEP_COPY_BOOL,                                      /**< Indicates whether the message copy is kept or not. */
695         MSG_MMS_SENDOPT_BODY_REPLYING_BOOL,                                  /**< Indicates whether the body is included when replying or not. */
696         MSG_MMS_SENDOPT_HIDE_RECIPIENTS_BOOL,                                /**< Indicates whether the recipients are hidden or not. */
697         MSG_MMS_SENDOPT_REPLY_CHARGING_INT,                                  /**< Indicates the reply charging type of message. See enum _MSG_MMS_REPLY_CHARGING_TYPE_E */
698         MSG_MMS_SENDOPT_REPLY_CHARGING_DEADLINE_INT,                         /**< Indicates the deadline for replying charging. is set in the MMSC. */
699         MSG_MMS_SENDOPT_REPLY_CHARGING_SIZE_INT,                             /**< Indicates the reply charging size. */
700         MSG_MMS_SENDOPT_CREATION_MODE_INT                                    /**< Indicates the creation mode of MMS. See enum _MSG_MMS_CREATION_MODE_E */
701 };
702
703 /**
704  *  @brief  Enumeration for the values of setting for MMS receiving options. \n
705  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_MMS_RECV_OPT.
706  */
707 enum _MSG_STRUCT_MMS_RECV_OPT_E {
708         MSG_MMS_RECVOPT_HOME_RETRIEVE_TYPE_INT = MSG_STRUCT_SETTING_MMS_RECV_OPT+1, /**< Indicates the retrieve type for MMS home network. See enum _MSG_MMS_HOME_RETRIEVE_TYPE_E */
709         MSG_MMS_RECVOPT_ABROAD_RETRIEVE_TYPE_INT,                                   /**< Indicates the retrieve type for MMS abroad network. See enum _MSG_MMS_ABROAD_RETRIEVE_TYPE_E */
710         MSG_MMS_RECVOPT_READ_REPORT_BOOL,                                           /**< Indicates whether the read report will be sent or not. */
711         MSG_MMS_RECVOPT_DELIVERY_REPORT_BOOL,                                       /**< Indicates whether the delivery report will be sent or not. */
712         MSG_MMS_RECVOPT_REJECT_UNKNOWN_BOOL,                                        /**< Indicates whether unknown addresses are rejected or not. */
713         MSG_MMS_RECVOPT_REJECT_ADVERTISEMENT_BOOL                                   /**< Indicates whether advertisement is rejected or not. */
714 };
715
716 /**
717  *  @brief  Enumeration for the values of setting for general options. \n
718  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_GENERAL_OPT.
719  */
720 enum _MSG_STRUCT_GENERAL_OPT_E {
721         MSG_GENERAL_KEEP_COPY_BOOL = MSG_STRUCT_SETTING_GENERAL_OPT+1,  /**< Indicates whether the SMS message copy is kept or not. */
722         MSG_GENERAL_ALERT_TONE_INT,                                     /**< Indicates the period of playing alert tone. See enum _MSG_ALERT_TONE_E */
723         MSG_GENERAL_AUTO_ERASE_BOOL,                                    /**< Indicates whether the auto-erase option is enabled or not. */
724         MSG_GENERAL_BLOCK_UNKNOWN_NUMBER_BOOL,                          /**< Indicates whether unknown sender message is blocked or not. */
725         MSG_GENERAL_SMS_LIMIT_CNT_INT,                                  /**< Indicates the count limitation of SMS messages in one conversation */
726         MSG_GENERAL_MMS_LIMIT_CNT_INT,                                  /**< Indicates the count limitation of MMS messages in one conversation */
727         MSG_GENERAL_MSG_NOTIFICATION_BOOL,                              /**< Indicates whether notification for incoming message is shown or not. */
728         MSG_GENERAL_MSG_VIBRATION_BOOL,                                 /**< Indicates whether vibration for incoming message is run or not. */
729         MSG_GENERAL_MSG_PREVIEW_BOOL,                                   /**< Indicates whether preview for incoming message is shown or not. */
730         MSG_GENERAL_RINGTONE_TYPE_INT,                                  /**< Indicates the message ringtone type. See enum _MSG_RINGTONE_TYPE_E */
731         MSG_GENERAL_RINGTONE_PATH_STR                                   /**< Indicates the message ringtone path */
732 };
733
734 /**
735  *  @brief  Enumeration for the values of setting for push message options. \n
736  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_PUSH_MSG_OPT.
737  */
738 enum _MSG_STRUCT_PUSH_MSG_OPT_E {
739         MSG_PUSHMSG_RECEIVE_BOOL = MSG_STRUCT_SETTING_PUSH_MSG_OPT+1,  /**< Indicates whether the push message is received or not. */
740         MSG_PUSHMSG_SERVICE_TYPE_INT                                   /**< Indicates the service type of a push message. See enum _MSG_PUSH_SERVICE_TYPE_E */
741 };
742
743 /**
744  *  @brief  Enumeration for the values of setting for voice message options. \n
745  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_VOICE_MSG_OPT.
746  */
747 enum _MSG_STRUCT_VOICE_MSG_OPT_E {
748         MSG_VOICEMSG_ADDRESS_STR = MSG_STRUCT_SETTING_VOICE_MSG_OPT+1,  /**< Indicates the address for voice message. */
749         MSG_VOICEMSG_ALPHA_ID_STR,                                      /**< Indicates the alpha id for voice message address. */
750         MSG_VOICEMSG_SIM_INDEX_INT,                                     /**< Indicates the SIM index for voice message. */
751         MSG_VOICEMSG_VOICE_COUNT_INT,                                   /**< Indicates the count of voice messages. */
752 };
753
754
755 /**
756  *  @brief  Enumeration for the values of setting for message size option. \n
757  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SETTING_MSGSIZE_OPT.
758  */
759 enum _MSG_STRUCT_MSGSISE_OPT_E {
760         MSG_MESSAGE_SIZE_INT = MSG_STRUCT_SETTING_MSGSIZE_OPT+1,        /**< Indicates the message size */
761 };
762
763 /**
764  *  @brief  Enumeration for the values of MMS detail informations. \n
765  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS.
766  */
767 enum MSG_MMS_INFO_E {
768         MSG_MMS_PAGE_LIST_HND = MSG_STRUCT_MMS+1,       /**< The pointer to SMIL pages list */
769         MSG_MMS_REGION_LIST_HND,                        /**< The pointer to SMIL regions list */
770         MSG_MMS_ATTACH_LIST_HND,                        /**< The pointer to attachment list */
771         MSG_MMS_TRANSITION_LIST_HND,                    /**< The pointer to SMIL transitions list */
772         MSG_MMS_META_LIST_HND,                          /**< The pointer to SMIL meta list */
773         MSG_MMS_ROOTLAYOUT_WIDTH_INT,                   /**< Indicates the width of the root layout */
774         MSG_MMS_ROOTLAYOUT_WIDTH_PERCENT_BOOL,          /**< Indicates the length is in percentage(%) or not */
775         MSG_MMS_ROOTLAYOUT_HEIGHT_INT,                  /**< Indicates the height of the root layout */
776         MSG_MMS_ROOTLAYOUT_HEIGHT_PERCENT_BOOL,         /**< Indicates the length is in percentage(%) or not */
777         MSG_MMS_ROOTLAYOUT_BGCOLOR_INT,                 /**< Indicates the background color of the root layout */
778         MSG_MMS_ROOTLAYOUT_BGCOLOR_BOOL,                /**< Indicates the background color is set in the root layout */
779         MSG_MMS_HEADER_BCC_ADDRESS_LIST_HND,            /**< The pointer to BCC address list */
780         MSG_MMS_HEADER_CC_ADDRESS_LIST_HND,             /**< The pointer to CC address list */
781         MSG_MMS_HEADER_CONTENT_LOCATION_STR,            /**< Indicates contentLocation in MMS header */
782         MSG_MMS_HEADER_CONTENT_TYPE_STR,                /**< Indicates szContentType in MMS header. ex) application/vnd.wap.multipart.related */
783         MSG_MMS_HEADER_DATE_INT,                        /**< Indicates date in MMS header */
784         MSG_MMS_HEADER_DELIVERY_REPORT_INT,             /**< Indicates X-Mms-Delivery-Report */
785         MSG_MMS_HEADER_DELIVERY_TIME_INT,               /**< Indicates X-Mms-Delivery-Time */
786         MSG_MMS_HEADER_EXPIRY_TIME_INT,                 /**< Indicates X-Mms-Expiry-Time */
787         MSG_MMS_HEADER_FROM_STR,                        /**< Indicates FROM address in header */
788         MSG_MMS_HEADER_MESSAGE_CLASS_INT,               /**< Indicates messageClassin in header. ex) Personal | Advertisement | Informational | Auto */
789         MSG_MMS_HEADER_MESSAGE_ID_STR,                  /**< Indicates messageID in header*/
790         MSG_MMS_HEADER_MESSAGE_TYPE_INT,                /**< Indicates MmsMsgTypein header. ex) sendreq */
791         MSG_MMS_HEADER_VERSION_INT,                     /**< Indicates mmsVersion in header. ex) 1.0 1.3 etc */
792         MSG_MMS_HEADER_SIZE_INT,                        /**< Indicates X-Mms-Message-Size */
793         MSG_MMS_HEADER_PRIORITY_INT,                    /**< Indicates _MSG_PRIORITY_TYPE_E in header: Low | Normal | High */
794         MSG_MMS_HEADER_READ_REPORT_INT,                 /**< Indicates X-Mms-Read-Report */
795         MSG_MMS_HEADER_HIDE_ADDRESS_INT,                /**< Indicates X-Mms-Sender-Visibility */
796         MSG_MMS_HEADER_MMS_STATUS_INT,                  /**< Indicates X-Mms-Status */
797         MSG_MMS_HEADER_TO_ADDRESS_LIST_HND,             /**< The pointer to 'TO' address list in header*/
798         MSG_MMS_HEADER_TR_ID_STR,                       /**< Indicates thread ID in header */
799         MSG_MMS_HEADER_CONTENT_CLASS_INT,               /**< Indicates contentClass in header. ex) text | image-basic| image-rich | video-basic | video-rich | megapixel | content-basic | content-rich */
800         MSG_MMS_SMIL_MULTIPART_CONTENT_TYPE_STR,        /**< Indicates multipart content type in header*/
801         MSG_MMS_SMIL_MULTIPART_NAME_STR,                /**<Indicates multipart file name in header*/
802         MSG_MMS_SMIL_MULTIPART_FILEPATH_STR,            /**< Indicates multipart file path in header*/
803         MSG_MMS_SMIL_MULTIPART_CONTENT_ID_STR,          /**< Indicates multipart content id in header*/
804         MSG_MMS_SMIL_MULTIPART_CONTENT_LOCATION_STR,    /**< Indicates multipart content Location in header*/
805         MSG_MMS_MULTIPART_LIST_HND,                     /**< The pointer to MMS multipart list */
806         MSG_MMS_INFO_MAX,                               /**< Placeholder for max value of this enum */
807 };
808
809 /**
810  *  @brief  Enumeration for the values of MMS multipart informations. \n
811  *          This enum is used as member of #msg_struct_t for MMS_MULTIPART_DATA_S.
812  */
813 enum _MSG_STRUCT_MULTIPART_INFO_E {
814         MSG_MMS_MULTIPART_CONTENT_TYPE_STR = MSG_STRUCT_MULTIPART_INFO+1,  /**< Indicates multipart content type */
815         MSG_MMS_MULTIPART_NAME_STR,                                        /**< Indicates multipart file name */
816         MSG_MMS_MULTIPART_FILEPATH_STR,                                    /**< Indicates multipart file path */
817         MSG_MMS_MULTIPART_CONTENT_ID_STR,                                  /**< Indicates mutipart content ID */
818         MSG_MMS_MULTIPART_CONTENT_LOCATION_STR,                            /**< Indicates multipart content Location */
819         MSG_MMS_MULTIPART_TCS_LEVEL_INT,                                   /**< Indicates detection of malware type */
820         MSG_MMS_MULTIPART_MALWARE_ALLOW_INT,                               /**< Indicates malware allowed */
821         MSG_MMS_MULTIPART_THUMBNAIL_FILEPATH_STR,                          /**< Indicates the thumbnail filepath */
822 };
823
824 /**
825  *  @brief  Enumeration for the values of MMS page informations. \n
826  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_PAGE.
827  */
828 enum MSG_MMS_PAGE_INFO_E {
829         MSG_MMS_PAGE_MEDIA_LIST_HND = MSG_STRUCT_MMS_PAGE+1,  /**< The pointer to media list */
830         MSG_MMS_PAGE_PAGE_DURATION_INT,                       /**< Indicates the duration of the page */
831         MSG_MMS_PAGE_BEGIN_TIME_INT,                          /**< Indicates the begin time of the page */
832         MSG_MMS_PAGE_END_TIME_INT,                            /**< Indicates the end time of the page */
833         MSG_MMS_PAGE_MIN_INT,                                 /**< Indicates the min attribute of the page */
834         MSG_MMS_PAGE_MAX_INT,                                 /**< Indicates the max attribute of the page */
835         MSG_MMS_PAGE_REPEAT_INT,                              /**< Indicates the page needs to be displayed repeatedly */
836 };
837
838 /**
839  *  @brief  Enumeration for the values of MMS media informations. \n
840  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_MEDIA.
841  */
842 enum MSG_MMS_MEDIA_INFO_E {
843         MSG_MMS_MEDIA_TYPE_INT = MSG_STRUCT_MMS_MEDIA+1,  /**< Indicates the SMIL media type. See enum MmsSmilMediaType */
844         MSG_MMS_MEDIA_SRC_STR,                            /**< Indicates the media source name */
845         MSG_MMS_MEDIA_FILENAME_STR,                       /**< Indicates the file name */
846         MSG_MMS_MEDIA_FILEPATH_STR,                       /**< Indicates the file path */
847         MSG_MMS_MEDIA_CONTENT_ID_STR,                     /**< Indicates the content ID */
848         MSG_MMS_MEDIA_REGION_ID_STR,                      /**< Indicates the region ID */
849         MSG_MMS_MEDIA_ALTERNATIVE_STR,                    /**< Indicates the alternative text to be displayed in failure case */
850         MSG_MMS_MEDIA_DRM_TYPE_INT,                       /**< Indicates the DRM type. See enum MsgDrmType */
851         MSG_MMS_MEDIA_DRM_FULLPATH_STR,                   /**< Indicates the fullpath of the DRM */
852         MSG_MMS_MEDIA_SMIL_TEXT_HND,                      /**< Indicates the text attributes */
853         MSG_MMS_MEDIA_SMIL_AVI_HND,                       /**< Indicates the video attributes */
854         MSG_MMS_MEDIA_CONTENT_LOCATION_STR,               /**< Indicates the content location */
855         MSG_MMS_MEDIA_CONTENT_TYPE_STR,                   /**< Indicates the content type */
856         MSG_MMS_MEDIA_INFO_MAX,                           /**< Placeholder for max value of this enum*/
857 };
858
859 /**
860  *  @brief  Enumeration for the values of MMS attachment informations. \n
861  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_ATTACH.
862  */
863 enum MSG_MMS_ATTACH_INFO_E {
864         MSG_MMS_ATTACH_MIME_TYPE_INT = MSG_STRUCT_MMS_ATTACH+1,     /**< Indicates the file mime type. See enum MimeType */
865         MSG_MMS_ATTACH_FILENAME_STR,                                /**< Indicates the file name */
866         MSG_MMS_ATTACH_FILEPATH_STR,                                /**< Indicates the file path */
867         MSG_MMS_ATTACH_FILESIZE_INT,                                /**< Indicates the size of the file */
868         MSG_MMS_ATTACH_DRM_TYPE_INT,                                /**< Indicates the DRM type. See enum MsgDrmType */
869         MSG_MMS_ATTACH_DRM_FULLPATH_STR,                            /**< Indicates the fullpath of the DRM */
870         MSG_MMS_ATTACH_CONTENT_TYPE_STR,                            /**< Indicates the content type */
871         MSG_MMS_ATTACH_INFO_MAX,                                    /**< Placeholder for max value of this enum*/
872 };
873
874 /**
875  *  @brief  Enumeration for the values of MMS region informations. \n
876  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_REGION.
877  */
878 enum MSG_MMS_REGION_INFO_E {
879         MSG_MMS_REGION_ID_STR = MSG_STRUCT_MMS_REGION+1,      /**< Indicates the ID of region information */
880         MSG_MMS_REGION_LENGTH_LEFT_INT,                       /**< Indicates the left co-ordinate of the region */
881         MSG_MMS_REGION_LENGTH_LEFT_PERCENT_BOOL,              /**< Indicates the length is in percentage(%) or not */
882         MSG_MMS_REGION_LENGTH_TOP_INT,                        /**< Indicates the top co-ordinate of the region */
883         MSG_MMS_REGION_LENGTH_TOP_PERCENT_BOOL,               /**< Indicates the length is in percentage(%) or not */
884         MSG_MMS_REGION_LENGTH_WIDTH_INT,                      /**< Indicates the width of the region */
885         MSG_MMS_REGION_LENGTH_WIDTH_PERCENT_BOOL,             /**< Indicates the length is in percentage(%) or not */
886         MSG_MMS_REGION_LENGTH_HEIGHT_INT,                     /**< Indicates the width of the region */
887         MSG_MMS_REGION_LENGTH_HEIGHT_PERCENT_BOOL,            /**< Indicates the length is in percentage(%) or not */
888         MSG_MMS_REGION_BGCOLOR_INT,                           /**< Indicates the background color of the region */
889         MSG_MMS_REGION_FIT_TYPE_INT,                          /**< Indicates the fit type. See enum REGION_FIT_TYPE_T */
890         MSG_MMS_REGION_BGCOLOR_BOOL,                          /**< Indicates the background color is set in the region */
891 };
892
893 /**
894  *  @brief  Enumeration for the values of MMS meta data informations. \n
895  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_META.
896  */
897 enum MSG_MMS_META_INFO_E {
898         MSG_MMS_META_ID_STR = MSG_STRUCT_MMS_META+1,  /**< Indicates the ID of meta information */
899         MSG_MMS_META_NAME_STR,                        /**< Indicates the Name */
900         MSG_MMS_META_CONTENT_STR,                     /**< Indicates the content */
901 };
902
903 /**
904  *  @brief  Enumeration for the values of MMS transition informations. \n
905  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_TRANSITION.
906  */
907 enum MSG_MMS_TRANSITION_INFO_E {
908         MSG_MMS_TRANSITION_ID_STR = MSG_STRUCT_MMS_TRANSITION+1,    /**< Indicates the ID of transition information */
909         MSG_MMS_TRANSITION_TYPE_INT,                                /**< Indicates the transition type. See enum MmsSmilTransType */
910         MSG_MMS_TRANSITION_SUBTYPE_INT,                             /**< Indicates the transition sub type. See enum MmsSmilTransSubType */
911         MSG_MMS_TRANSITION_DURATION_INT,                            /**< Indicates the transition duration */
912 };
913
914 /**
915  *  @brief  Enumeration for the values of MMS SMIL text informations. \n
916  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_SMIL_TEXT.
917  */
918 enum MSG_MMS_SMIL_TEXT_INFO_E {
919         MSG_MMS_SMIL_TEXT_TRANSITION_IN_ID_STR = MSG_STRUCT_MMS_SMIL_TEXT+1,  /**< Indicates the In SMIL transition ID */
920         MSG_MMS_SMIL_TEXT_TRANSITION_OUT_ID_STR,                              /**< Indicates the Out SMIL transition ID */
921         MSG_MMS_SMIL_TEXT_REPEAT_INT,                                         /**< Indicates the text needs to be displayed repeatedly */
922         MSG_MMS_SMIL_TEXT_BEGIN_INT,                                          /**< Indicates the begin time */
923         MSG_MMS_SMIL_TEXT_END_INT,                                            /**< Indicates the end time */
924         MSG_MMS_SMIL_TEXT_DURTIME_INT,                                        /**< Indicates the duration */
925         MSG_MMS_SMIL_TEXT_BGCOLOR_INT,                                        /**< Indicates the background color of the text */
926         MSG_MMS_SMIL_TEXT_BOLD_BOOL,                                          /**< Indicates whether the text is bold */
927         MSG_MMS_SMIL_TEXT_UNDERLINE_BOOL,                                     /**< Indicates whether the text is underlined */
928         MSG_MMS_SMIL_TEXT_ITALIC_BOOL,                                        /**< Indicates whether the text is Italic */
929         MSG_MMS_SMIL_TEXT_REVERSE_BOOL,                                       /**< Indicates whether the text is reversed */
930         MSG_MMS_SMIL_TEXT_DIRECTION_TYPE_INT,                                 /**< Indicates the text direction type. see enum MmsTextDirection */
931         MSG_MMS_SMIL_TEXT_SIZE_INT,                                           /**< Indicates the font size */
932         MSG_MMS_SMIL_TEXT_COLOR_INT,                                          /**< Indicates the font color */
933 };
934
935 /**
936  *  @brief  Enumeration for the values of MMS SMIL avi informations. \n
937  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_SMIL_AVI.
938  */
939 enum MSG_MMS_SMIL_AVI_INFO_E {
940         MSG_MMS_SMIL_AVI_TRANSITION_IN_ID_STR = MSG_STRUCT_MMS_SMIL_AVI+1,  /**< Indicates the In SMIL transition ID */
941         MSG_MMS_SMIL_AVI_TRANSITION_OUT_ID_STR,                             /**< Indicates the Out SMIL transition ID */
942         MSG_MMS_SMIL_AVI_REPEAT_INT,                                        /**< Indicates the video needs to be displayed repeatedly */
943         MSG_MMS_SMIL_AVI_BEGIN_INT,                                         /**< Indicates the begin time */
944         MSG_MMS_SMIL_AVI_END_INT,                                           /**< Indicates the end time */
945         MSG_MMS_SMIL_AVI_DURTIME_INT,                                       /**< Indicates the duration */
946         MSG_MMS_SMIL_AVI_BGCOLOR_INT,                                       /**< Indicates the background color of the text */
947 };
948
949 /**
950  *  @brief  Enumeration for the values of message sending options. \n
951  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SENDOPT.
952  */
953 enum MSG_SEND_OPT_E {
954         MSG_SEND_OPT_SETTING_BOOL = MSG_STRUCT_SENDOPT+1,  /**< Indicates whether the sending option is set or not for a message */
955         MSG_SEND_OPT_DELIVER_REQ_BOOL,                     /**< Indicates whether the delivery custom time is used or not */
956         MSG_SEND_OPT_KEEPCOPY_BOOL,                        /**< Indicates whether the message copy is kept or not */
957         MSG_SEND_OPT_MMS_OPT_HND,                          /**< The handle of MMS sending option for a message */
958         MSG_SEND_OPT_SMS_OPT_HND,                          /**< The handle of SMS sending option for a message */
959 };
960
961 /**
962  *  @brief  Enumeration for the values of SyncML informations. \n
963  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SYNCML_INFO.
964  */
965 enum MSG_SYNCML_INFO_E {
966         MSG_SYNCML_INFO_EXTID_INT = MSG_STRUCT_SYNCML_INFO+1,  /**< Indicates the ext ID */
967         MSG_SYNCML_INFO_PINCODE_INT,                           /**< Indicates the PIN code */
968         MSG_SYNCML_INFO_MESSAGE_HND,                           /**< Indicate the handle of a message */
969 };
970
971 /**
972  *  @brief  Enumeration for the values of message count status. \n
973  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_COUNT_INFO.
974  */
975 enum MSG_COUNT_INFO_E {
976         MSG_COUNT_INFO_READ_INT = MSG_STRUCT_COUNT_INFO+1,  /**< The count of read messages */
977         MSG_COUNT_INFO_UNREAD_INT,                          /**< The count of unread messages */
978         MSG_COUNT_INFO_SMS_INT,                             /**< The count of SMS type messages */
979         MSG_COUNT_INFO_MMS_INT,                             /**< The count of MMS type messages */
980 };
981
982 /**
983  *  @brief  Enumeration for the values of message count in a thread. \n
984  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_THREAD_COUNT_INFO.
985  */
986 enum MSG_THREAD_COUNT_INFO_E {
987         MSG_THREAD_COUNT_TOTAL_INT = MSG_STRUCT_THREAD_COUNT_INFO+1,  /**< Indicates the total number of messages from the Peer. */
988         MSG_THREAD_COUNT_UNREAD_INT,                                  /**< Indicates the unread messages from the peer. */
989         MSG_THREAD_COUNT_SMS_INT,                                     /**< Indicates the SMS messages from the peer. */
990         MSG_THREAD_COUNT_MMS_INT,                                     /**< Indicates the MMS messages from the peer. */
991 };
992
993 /**
994  *  @brief  Enumeration for the values of thread informations for address. \n
995  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_THREAD_LIST_INDEX.
996  */
997 enum MSG_THREAD_LIST_INDEX_E {
998         MSG_THREAD_LIST_INDEX_CONTACTID_INT = MSG_STRUCT_THREAD_LIST_INDEX+1,   /**< The contact ID of message common informatioin */
999         MSG_THREAD_LIST_INDEX_ADDR_INFO_HND,                                    /**< The pointer to message common informatioin */
1000 };
1001
1002 /**
1003  *  @brief  Enumeration for the values of sort rule for getting message list. \n
1004  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SORT_RULE.
1005  */
1006 enum MSG_SORT_RULE_E {
1007         MSG_SORT_RULE_SORT_TYPE_INT = MSG_STRUCT_SORT_RULE+1,  /**< Indicates the sort type. See enum _MSG_SORT_TYPE_E */
1008         MSG_SORT_RULE_ACSCEND_BOOL,                            /**< Indicates the sort order which is ascending or descending */
1009 };
1010
1011 /**
1012  *  @brief  Enumeration for the values of message folder information. \n
1013  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_FOLDER_INFO.
1014  */
1015 enum MSG_FOLDER_INFO_E {
1016         MSG_FOLDER_INFO_ID_INT = MSG_STRUCT_FOLDER_INFO+1,  /**< Indicates the unique folder ID. */
1017         MSG_FOLDER_INFO_NAME_STR,                           /**< Indicates the name of the folder. */
1018         MSG_FOLDER_INFO_TYPE_INT,                           /**< Indicates the folder type. */
1019 };
1020
1021 /**
1022  *  @brief  Enumeration for the values of report message status. \n
1023  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_REPORT_STATUS_INFO.
1024  */
1025 enum MSG_REPORT_E {
1026         MSG_REPORT_ADDRESS_STR = MSG_STRUCT_REPORT_STATUS_INFO+1,  /**< Indicates Report address */
1027         MSG_REPORT_TYPE_INT,                                       /**< Indicates Report type. See the msg_report_type_t type*/
1028         MSG_REPORT_STATUS_INT,                                     /**< Indicates Report status. See the msg_delivery_report_status_t or msg_read_report_status_t type*/
1029         MSG_REPORT_TIME_INT,                                       /**< Indicates Report time */
1030 };
1031
1032 /**
1033  *  @brief  Enumeration for the values of conditions for getting message list. \n
1034  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MSG_LIST_CONDITION.
1035  */
1036 enum MSG_LIST_CONDITION_E {
1037         MSG_LIST_CONDITION_FOLDER_ID_INT = MSG_STRUCT_MSG_LIST_CONDITION+1,  /**< Indicates the folder ID for searching messages. See enum _MSG_FOLDER_ID_E */
1038         MSG_LIST_CONDITION_THREAD_ID_INT,                                    /**< Indicates the thread ID for searching messages. */
1039         MSG_LIST_CONDITION_STORAGE_ID_INT,                                   /**< Indicates the storage ID for searching messages. See enum _MSG_STORAGE_ID_E */
1040         MSG_LIST_CONDITION_MSGTYPE_INT,                                      /**< Indicates the message type for searching messages. See enum _MSG_MESSAGE_TYPE_E */
1041         MSG_LIST_CONDITION_PROTECTED_BOOL,                                   /**< Indicates the protected flag for searching messages*/
1042         MSG_LIST_CONDITION_SCHEDULED_BOOL,                                   /**< Indicates the scheduled flag for searching messages*/
1043         MSG_LIST_CONDITION_ADDRESS_VALUE_STR,                                /**< The address value for searching messages. */
1044         MSG_LIST_CONDITION_TEXT_VALUE_STR,                                   /**< The string to search */
1045         MSG_LIST_CONDITION_AND_OPERATER_BOOL,                                /**< Indicates presence of 'AND' operator for searching messages*/
1046         MSG_LIST_CONDITION_FROM_TIME_INT,                                    /**< Indicates the 'FROM TIME' for searching messages*/
1047         MSG_LIST_CONDITION_TO_TIME_INT,                                      /**< Indicates the 'TO TIME' for searching messages*/
1048         MSG_LIST_CONDITION_OFFSET_INT,                                       /**< Indicates Search Result offset*/
1049         MSG_LIST_CONDITION_LIMIT_INT,                                        /**< Indicates Search Result limit*/
1050         MSG_LIST_CONDITION_SORT_RULE_HND,                                    /**< The pointer to sort rule to apply*/
1051         MSG_LIST_CONDITION_SIM_INDEX_INT,
1052 };
1053
1054 /**
1055  *  @brief  Enumeration for the values of address informations. \n
1056  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_ADDRESS_INFO.
1057  */
1058 enum MSG_ADDRESS_INFO_E {
1059         MSG_ADDRESS_INFO_ADDRESS_TYPE_INT = MSG_STRUCT_ADDRESS_INFO+1,  /**< The type of an address in case of an Email or a mobile phone. See enum _MSG_ADDRESS_TYPE_E */
1060         MSG_ADDRESS_INFO_RECIPIENT_TYPE_INT,                            /**< The type of recipient address in case of To, Cc, and Bcc. See enum _MSG_RECIPIENT_TYPE_E */
1061         MSG_ADDRESS_INFO_CONTACT_ID_INT,                                /**< The contact ID of address **DEPRECATED** */
1062         MSG_ADDRESS_INFO_ADDRESS_VALUE_STR,                             /**< The actual value of an address */
1063         MSG_ADDRESS_INFO_DISPLAYNAME_STR,                               /**< The display name of an address **DEPRECATED** */
1064 };
1065
1066 /**
1067  *  @brief  Enumeration for the values of MMS sending options for sent message. \n
1068  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MMS_SENDOPT.
1069  */
1070 enum MSG_MMS_SENDOPT_E {
1071         MSG_MMS_SENDOPTION_READ_REQUEST_BOOL = MSG_STRUCT_MMS_SENDOPT+1,  /**< Indicates whether it requests read report or not */
1072         MSG_MMS_SENDOPTION_EXPIRY_TIME_INT,                               /**< Indicates MMS expiry time */
1073         MSG_MMS_SENDOPTION_DELIVERY_CUSTOMTIME_BOOL,                      /**< Indicates whether is use MMS delivery custom time */
1074         MSG_MMS_SENDOPTION_DELIVERY_TIME_INT,                             /**< Indicates MMS delivery time */
1075         MSG_MMS_SENDOPTION_PRIORITY_INT,                                  /**< Indicates MMS priority. See enum _MSG_PRIORITY_TYPE_E */
1076 };
1077
1078 /**
1079  *  @brief  Enumeration for the values of SMS sending options for sent message. \n
1080  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SMS_SENDOPT.
1081  */
1082 enum MSG_SMS_SENDOPT_E {
1083         MSG_SMS_SENDOPT_REPLYPATH_BOOL = MSG_STRUCT_SMS_SENDOPT+1,  /**< Indicates whether reply path is set */
1084 };
1085
1086 /**
1087  *  @brief  Enumeration for the values of reject message informations. \n
1088  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_REJECT_MSG_INFO.
1089  */
1090 enum MSG_REJECT_MESSAGE_E {
1091         MSG_REJECT_MESSAGE_MSGID_INT = MSG_STRUCT_REJECT_MSG_INFO+1,   /**< Indicates the ID of rejected message */
1092         MSG_REJECT_MESSAGE_MSGTEXT_STR,                                /**< Indicates the text of rejected message */
1093         MSG_REJECT_MESSAGE_DISPLAY_TIME_INT,                           /**< Indicates the display time of rejected message */
1094 };
1095
1096 /**
1097  *  @brief  Enumeration for the values of requested message informations. \n
1098  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_REQUEST_INFO.
1099  */
1100 enum MSG_REQUEST_INFO_E {
1101         MSG_REQUEST_REQUESTID_INT = MSG_STRUCT_REQUEST_INFO+1,  /**< Indicates the request ID, which is unique. When applications submit a request to the framework, this value will be set by the framework. */
1102         MSG_REQUEST_MESSAGE_HND,                                /**< Indicates the message structure to be sent by applications. */
1103         MSG_REQUEST_SENDOPT_HND,                                /**< Indicates the send options to be sent by applications*/
1104 };
1105
1106 /**
1107  *  @brief  Enumeration for the values of sent status informations. \n
1108  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_SENT_STATUS_INFO.
1109  */
1110 enum MSG_SENT_STATUS_INFO_E {
1111         MSG_SENT_STATUS_REQUESTID_INT = MSG_STRUCT_SENT_STATUS_INFO+1,  /**< Indicates the corresponding request ID. */
1112         MSG_SENT_STATUS_NETWORK_STATUS_INT,                             /**< Indicates the status of the corresponding request. See enum _MSG_NETWORK_STATUS_E*/
1113 };
1114
1115 /**
1116  *  @brief  Enumeration for the values of push configurations. \n
1117  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_PUSH_CONFIG_INFO.
1118  */
1119 enum MSG_PUSH_CONFIG_INFO_E {
1120         MSG_PUSH_CONFIG_CONTENT_TYPE_STR = MSG_STRUCT_PUSH_CONFIG_INFO+1,  /**< Indicates the content type*/
1121         MSG_PUSH_CONFIG_APPLICATON_ID_STR,                                 /**< Indicates the application ID*/
1122         MSG_PUSH_CONFIG_PACKAGE_NAME_STR,                                  /**< Indicates the package name*/
1123         MSG_PUSH_CONFIG_LAUNCH_BOOL,                                       /**< Indicates launch*/
1124 };
1125
1126 /**
1127  *  @brief  Enumeration for the values of CB message informations. \n
1128  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_CB_MSG.
1129  */
1130 enum MSG_CB_MSG_E {
1131         MSG_CB_MSG_TYPE_INT     = MSG_STRUCT_CB_MSG+1,      /**<  MSG_TYPE_SMS_CB/ETWS_PRIMARY/ETWS_SECONDARY (see _MSG_MESSAGE_TYPE_E) */
1132         MSG_CB_MSG_RECV_TIME_INT,                       /**< Received time*/
1133         MSG_CB_MSG_SERIAL_NUM_INT,                      /**< Serial number of CB/ETWS Primary Noti. : 2 bytes binary data */
1134         MSG_CB_MSG_MSG_ID_INT,                          /**< Message identifier of CB/ETWS Primary Noti. */
1135         MSG_CB_MSG_DCS_INT,                             /**< Data coding scheme of CB MSG. */
1136         MSG_CB_MSG_CB_TEXT_LEN_INT,                     /**< Length of CB text (except NULL) */
1137         MSG_CB_MSG_CB_TEXT_STR,                         /**< CB text */
1138         MSG_CB_MSG_ETWS_WARNING_TYPE_INT,               /**< Warning type of ETWS Primary Noti. : 2 bytes binary data */
1139         MSG_CB_MSG_ETWS_WARNING_SECU_INFO_STR,          /**< Warning security information of ETWS Primary Noti. : 50 bytes binary data */
1140         MSG_CB_MSG_LANGUAGE_TYPE_STR,                   /**< Language type of CB message data */
1141 };
1142
1143 /**
1144  *  @brief  Enumeration for the values of a message class type. \n
1145  *              This enum is used as the value of MSG_CLASS_TYPE_T.
1146  */
1147 enum _MSG_CLASS_TYPE_E {
1148         MSG_CLASS_0 = 0,                /**< Immediately presented on the recipient device display */
1149         MSG_CLASS_1,                    /**< Stored in the mobile equipment or SIM (depending on memory availability) */
1150         MSG_CLASS_2,                    /**< Stored in SIM */
1151         MSG_CLASS_3,                    /**< Transferred to the terminal equipment (such as PDA or PC) which is connected to the mobile equipment */
1152         MSG_CLASS_NONE,                 /**< Message class none*/
1153 };
1154
1155 /**
1156  *  @brief  Enumeration for the type of Message. \n
1157  *          More members maybe added if needed. \n
1158  *              This enum is used as the value of msg_message_type_t.
1159  */
1160 enum _MSG_MESSAGE_TYPE_E {
1161         MSG_TYPE_INVALID = 0,               /** < Invalid Type Message */
1162
1163         MSG_TYPE_SMS,                       /** < Normal SMS Message */
1164         MSG_TYPE_SMS_CB,                    /** < Cell Broadcasting SMS Message */
1165         MSG_TYPE_SMS_JAVACB,                /** < JAVA Cell Broadcasting SMS Message */
1166         MSG_TYPE_SMS_WAPPUSH,               /** < WAP Push SMS Message */
1167         MSG_TYPE_SMS_MWI,                   /** < MWI SMS Message */
1168         MSG_TYPE_SMS_SYNCML,                /** < SyncML CP SMS Message */
1169         MSG_TYPE_SMS_REJECT,                /** < Reject Message */
1170
1171         MSG_TYPE_MMS,                       /** < Normal MMS Message */
1172         MSG_TYPE_MMS_JAVA,                  /** < JAVA MMS Message */
1173         MSG_TYPE_MMS_NOTI,                  /** < MMS Notification Message */
1174
1175         MSG_TYPE_SMS_ETWS_PRIMARY,          /** < CB - ETWS Primary Notification */
1176         MSG_TYPE_SMS_ETWS_SECONDARY,        /** < CB - ETWS Secondary Notification */
1177
1178         MSG_TYPE_SMS_CMAS_PRESIDENTIAL,     /** < CB - CMAS Presidential Alerts */
1179         MSG_TYPE_SMS_CMAS_EXTREME,          /** < CB - CMAS Extreme Alerts */
1180         MSG_TYPE_SMS_CMAS_SEVERE,           /** < CB - CMAS Severe Alerts */
1181         MSG_TYPE_SMS_CMAS_AMBER,            /** < CB - CMAS AMBER Alerts (Child Abduction Emergency) */
1182         MSG_TYPE_SMS_CMAS_TEST,             /** < CB - CMAS Test */
1183         MSG_TYPE_SMS_CMAS_EXERCISE,         /** < CB - CMAS Exercise */
1184         MSG_TYPE_SMS_CMAS_OPERATOR_DEFINED, /** < CB - CMAS Operator defined */
1185         MSG_MESSAGE_TYPE_MAX,               /** < Placeholder for max value of this enum */
1186 };
1187
1188 /**
1189  *  @brief  Enumeration for the backup type of Message. More members maybe added if needed \n
1190  *              This enum is used as the value of msg_message_backup_type_t.
1191  */
1192 enum _MSG_MESSAGE_BACKUP_TYPE_E {
1193         MSG_BACKUP_TYPE_ALL = 0,                /**< Backup all*/
1194         MSG_BACKUP_TYPE_SMS,                    /**< Backup SMS*/
1195         MSG_BACKUP_TYPE_MMS,                    /**< Backup MMS*/
1196 };
1197
1198 /**
1199  *  @brief  Enumeration for the values of an error code. \n
1200  *              Success code is zero, but all error codes SHOULD be negative and smaller than MSG_SUCCESS. \n
1201  *              This enum is used as the value of msg_error_t.
1202  */
1203 enum _MSG_ERROR_E {
1204         MSG_SUCCESS = 0,                        /**< Successful */
1205
1206         MSG_ERR_NULL_MSGHANDLE = -1,            /**< Message handle is NULL */
1207         MSG_ERR_NULL_POINTER = -2,              /**< Pointer is NULL */
1208         MSG_ERR_NULL_MESSAGE = -3,              /**< Message is NULL */
1209         MSG_ERR_INVALID_STORAGE_ID = -4,        /**< Storage ID is invalid */
1210         MSG_ERR_INVALID_MSG_TYPE = -5,          /**< Message type is invalid */
1211
1212         MSG_ERR_INVALID_STORAGE_REG = -6,       /**< Storage registry is invalid */
1213         MSG_ERR_INVALID_MESSAGE_ID = -7,        /**< Message ID is invalid */
1214         MSG_ERR_INVALID_MSGHANDLE = -8,         /**< Message handle is invalid */
1215         MSG_ERR_INVALID_PARAMETER = -9,         /**< Parameter is invalid */
1216         MSG_ERR_INVALID_MESSAGE = -10,          /**< Message is invalid */
1217
1218         MSG_ERR_INVALID_PLUGIN_HANDLE = -11,    /**< Plugin handle is invalid */
1219         MSG_ERR_MEMORY_ERROR = -12,             /**< Memory is error */
1220         MSG_ERR_COMMUNICATION_ERROR = -13,      /**< Communication between client and server is error */
1221         MSG_ERR_SIM_STORAGE_FULL = -14,         /**< SIM Storage is full */
1222         MSG_ERR_TRANSPORT_ERROR = -15,          /**< Transport event error */
1223
1224         MSG_ERR_CALLBACK_ERROR = -16,           /**< Callback event error */
1225         MSG_ERR_STORAGE_ERROR = -17,            /**< Storage event error */
1226         MSG_ERR_FILTER_ERROR = -18,             /**< Filter event error */
1227         MSG_ERR_MMS_ERROR = -19,                /**< MMS event error */
1228         MSG_ERR_MMPLAYER_CREATE = -20,          /**< Multimedia Error*/
1229
1230         MSG_ERR_MMPLAYER_SET_ATTRS = -21,       /**< Multimedia Error*/
1231         MSG_ERR_MMPLAYER_REALIZE = -22,         /**< Multimedia Error*/
1232         MSG_ERR_MMPLAYER_PLAY = -23,            /**< Multimedia Error*/
1233         MSG_ERR_MMPLAYER_STOP = -24,            /**< Multimedia Error*/
1234         MSG_ERR_MMPLAYER_DESTROY = -25,         /**< Multimedia Error*/
1235
1236         MSG_ERR_UNKNOWN = -26,                  /**< Unknown errors */
1237
1238         /* Start Database Errors */
1239         MSG_ERR_DB_CONNECT = -27,               /**< DB connect error*/
1240         MSG_ERR_DB_DISCONNECT = -28,            /**< DB disconnect error*/
1241         MSG_ERR_DB_EXEC = -29,                  /**< DB command execute error*/
1242         MSG_ERR_DB_GETTABLE = -30,              /**< DB get-table error*/
1243
1244         MSG_ERR_DB_PREPARE = -31,               /**< DB prepare query error*/
1245         MSG_ERR_DB_STEP = -32,                  /**< DB step query error*/
1246         MSG_ERR_DB_NORECORD = -33,              /**< DB no-record error*/
1247         MSG_ERR_DB_STORAGE_INIT = -34,          /**< DB storage init error*/
1248         MSG_ERR_DB_MAKE_DIR = -35,              /**< mkdir error*/
1249
1250         MSG_ERR_DB_ROW = -36,                   /**< DB step() has another row ready */
1251         MSG_ERR_DB_DONE = -37,                  /**< DB step() has finished executing */
1252         MSG_ERR_DB_GENERIC = -38,               /**< Generic DB error*/
1253         MSG_ERR_DB_END = -39,                   /**< DB end error*/
1254         /* End Database Errors */
1255
1256         /* Start Setting Errors */
1257         MSG_ERR_SET_SETTING = -40,              /**< Error setting config data*/
1258         MSG_ERR_SET_SIM_SET = -41,              /**< Error setting config data in SIM*/
1259         MSG_ERR_SET_READ_ERROR = -42,           /**< Error reading config settings*/
1260         MSG_ERR_SET_WRITE_ERROR = -43,          /**< Error in writing config settings*/
1261         MSG_ERR_SET_DELETE_ERROR = -44,         /**< Error in deleting config settings*/
1262         /* End Setting Errors */
1263
1264         /* Start Plugin Errors */
1265         MSG_ERR_PLUGIN_TAPIINIT = -45,          /**< Telephony init error*/
1266         MSG_ERR_PLUGIN_REGEVENT = -46,          /**< Register even error*/
1267         MSG_ERR_PLUGIN_TRANSPORT = -47,         /**< Transport (send/receive) error*/
1268         MSG_ERR_PLUGIN_STORAGE = -48,           /**< Storage error*/
1269         MSG_ERR_PLUGIN_SETTING = -49,           /**< Error setting config data*/
1270
1271         MSG_ERR_PLUGIN_WAPDECODE = -50,         /**< WAP decode error*/
1272         MSG_ERR_PLUGIN_TAPI_FAILED = -51,       /**< TAPI failure*/
1273         MSG_ERR_PLUGIN_SIM_MSG_FULL = -52,      /**< SIM message full error*/
1274         /* End Plugin Errors */
1275
1276         MSG_ERR_MESSAGE_COUNT_FULL = -53,       /**< Message count full*/
1277         MSG_ERR_READREPORT_NOT_REQUESTED = -54, /**< Read report  not requested*/
1278         MSG_ERR_READREPORT_ALEADY_SENT = -55,   /**< Read report already sent*/
1279
1280         MSG_ERR_FILTER_DUPLICATED = -56,        /**< Filter duplicate error */
1281         MSG_ERR_PERMISSION_DENIED = -57,        /**< Permission denied*/
1282         MSG_ERR_NO_SIM = -58,                   /**< No SIM*/
1283
1284         MSG_ERR_SERVER_NOT_READY = -59,         /**< Message server not ready*/
1285
1286         MSG_ERR_STORE_RESTRICT = -60,           /**< Storage restricted error*/
1287         MSG_ERR_DB_BUSY = -61,                  /**< DB file locked*/
1288         MSG_ERR_NOT_SUPPORTED = -63,            /**< Not supported */
1289         MSG_ERR_NOT_ALLOWED_ZONE = -100,        /**< Not allowed zone */
1290         MSG_ERR_DPM_RESTRICT = -200,            /**< DPM restriction */
1291 };
1292
1293
1294 /**
1295  *  @brief  Enumeration for the values of a message priority. \n
1296  *              This enum is used as the value of msg_priority_type_t.
1297  */
1298 enum _MSG_PRIORITY_TYPE_E {
1299         MSG_MESSAGE_PRIORITY_LOW,               /**< Low priority */
1300         MSG_MESSAGE_PRIORITY_NORMAL,    /**< Normal priority */
1301         MSG_MESSAGE_PRIORITY_HIGH,              /**< High priority */
1302 };
1303
1304
1305 /**
1306  *  @brief  Enumeration for the values of a network status. \n
1307  *              This enum is used as the value of msg_network_status_t.
1308  */
1309 enum _MSG_NETWORK_STATUS_E {
1310         MSG_NETWORK_NOT_SEND = 0,                            /**< Message is not sending */
1311         MSG_NETWORK_SENDING,                                 /**< Sending message */
1312         MSG_NETWORK_SEND_SUCCESS,                            /**< Message is sent successfully */
1313         MSG_NETWORK_SEND_FAIL,                               /**< Failed to send message */
1314         MSG_NETWORK_DELIVER_SUCCESS,                         /**< Message is delivered */
1315         MSG_NETWORK_DELIVER_FAIL,                            /**< Failed to deliver message */
1316         MSG_NETWORK_RECEIVED,                                /**< Message is received */
1317         MSG_NETWORK_REQ_CANCELLED,                           /**< Request is cancelled */
1318         MSG_NETWORK_RETRIEVING,                              /**< Retrieving message */
1319         MSG_NETWORK_RETRIEVE_SUCCESS,                        /**< Message is retrieved successfully */
1320         MSG_NETWORK_RETRIEVE_FAIL,                           /**< Failed to retrieve */
1321         MSG_NETWORK_SEND_TIMEOUT,                            /**< Send timed-out*/ /* WILL BE REMOVED */
1322         MSG_NETWORK_SEND_FAIL_MANDATORY_INFO_MISSING,        /**< Send failed due to mandatory info missing*/ /* WILL BE REMOVED */
1323         MSG_NETWORK_SEND_FAIL_TEMPORARY,                     /**<Send failed temporarily*/ /* WILL BE REMOVED */
1324         MSG_NETWORK_SEND_FAIL_BY_MO_CONTROL_WITH_MOD,        /**< Send failed by MO control- ALLOWED WITH MOD*/ /* WILL BE REMOVED */
1325         MSG_NETWORK_SEND_FAIL_BY_MO_CONTROL_NOT_ALLOWED,     /**< Send failed by MO control*/ /* WILL BE REMOVED */
1326         MSG_NETWORK_DELIVER_PENDING,                         /**< Delivery pending*/
1327         MSG_NETWORK_DELIVER_EXPIRED,                         /**< Delivery expired*/
1328         MSG_NETWORK_SEND_PENDING,                            /**< Send is pending*/
1329 #ifdef FEATURE_SMS_CDMA
1330         MSG_NETWORK_SEND_FAIL_UNKNOWN_SUBSCRIBER,            /**< Unknown subscriber(destination) */
1331         MSG_NETWORK_SEND_FAIL_MS_DISABLED,                   /**< Mobile station originated SMS disabled */
1332         MSG_NETWORK_SEND_FAIL_NETWORK_NOT_READY,             /**< Network not ready */
1333 #endif
1334         MSG_NETWORK_RETRIEVE_PENDING,                        /**< Retrieve is pending */
1335 };
1336
1337
1338 /**
1339  *  @brief  Enumeration for the values of an address type. \n
1340  *              This enum is used as the value of msg_address_type_t.
1341 */
1342 enum _MSG_ADDRESS_TYPE_E {
1343         MSG_ADDRESS_TYPE_UNKNOWN = 0,   /**< The address type is unknown. */
1344         MSG_ADDRESS_TYPE_PLMN,                  /**< The address type is for a phone number like +1012345678. */
1345         MSG_ADDRESS_TYPE_EMAIL,                 /**< The address type is for an email address like abc@example.email. */
1346 };
1347
1348
1349 /**
1350  *  @brief  Enumeration for the values of a recipient type. \n
1351  *              This enum is used as the value of msg_recipient_type_t.
1352 */
1353 enum _MSG_RECIPIENT_TYPE_E {
1354         MSG_RECIPIENTS_TYPE_UNKNOWN = 0,    /**< The recipient type is unknown. */
1355         MSG_RECIPIENTS_TYPE_TO,             /**< The recipient type is for "To". */
1356         MSG_RECIPIENTS_TYPE_CC,             /**< The recipient type is for "Cc". */
1357         MSG_RECIPIENTS_TYPE_BCC,            /**< The recipient type is for "Bcc". */
1358 };
1359
1360
1361 /**
1362  *  @brief  Enumeration for the values of a direction type. \n
1363  *              This enum is used as the value of msg_direction_type_t.
1364  */
1365 enum _MSG_DIRECTION_TYPE_E {
1366         MSG_DIRECTION_TYPE_MO = 0,              /**< The direction type is for mobile originated */
1367         MSG_DIRECTION_TYPE_MT,                  /**< The direction type is for mobile terminated */
1368 };
1369
1370
1371 /**
1372  *  @brief  Enumeration for the values of a string encoding type. \n
1373  *              This enum is used as the value of msg_encode_type_t.
1374  */
1375 enum _MSG_ENCODE_TYPE_E {
1376         MSG_ENCODE_GSM7BIT = 0,      /**< The string encoding type is GSM7BIT */
1377         MSG_ENCODE_8BIT,             /**< The string encoding type is 8 BIT */
1378         MSG_ENCODE_UCS2,             /**< The string encoding type is UCS2 */
1379         MSG_ENCODE_AUTO,             /**< The string encoding type is AUTO */
1380
1381         MSG_ENCODE_GSM7BIT_ABNORMAL, /**< The string encoding type is GSM7BIT, but abnormal character included */
1382 #ifdef FEATURE_SMS_CDMA
1383         MSG_ENCODE_EUCKR,                               /**< For EUC-KR(Korean) */
1384         MSG_ENCODE_SHIFT_JIS,                           /**< For Shift-JIS(Japanese) */
1385         MSG_ENCODE_ASCII7BIT,           /**< the string encoding type is ASCII 7 BIT */
1386 #endif
1387 };
1388
1389
1390 /**
1391  *  @brief  Enumeration for the action type of Push Message. \n
1392  *              This enum is used as the value of msg_push_action_t.
1393  */
1394 enum _MSG_PUSH_ACTION_E {
1395         /* SI Action */
1396         MSG_PUSH_SI_ACTION_SIGNAL_NONE = 0x00,          /**<  No signal for push message action */
1397         MSG_PUSH_SI_ACTION_SIGNAL_LOW,                          /**< Low signal for push message action */
1398         MSG_PUSH_SI_ACTION_SIGNAL_MEDIUM,                       /**< Medium signal for push message action */
1399         MSG_PUSH_SI_ACTION_SIGNAL_HIGH,                         /**< High signal for push message action */
1400         MSG_PUSH_SI_ACTION_DELETE,                                      /**< Delete push message */
1401
1402         /* SL Action */
1403         MSG_PUSH_SL_ACTION_EXECUTE_LOW,                         /**< Action: execute-low*/
1404         MSG_PUSH_SL_ACTION_EXECUTE_HIGH,                        /**< Action: execute-high*/
1405         MSG_PUSH_SL_ACTION_CACHE,                                       /**< Action: cache*/
1406 };
1407
1408
1409 /**
1410  *  @brief  Enumeration for the type of SyncML Message. \n
1411  *              This enum is used as the value of msg_syncml_message_type_t.
1412  */
1413 enum _MSG_SYNCML_MESSAGE_TYPE_E {
1414         DM_WBXML,                                       /** < DM WBXML SyncML Message */
1415         DM_XML,                                         /** < DM XML SyncML Message */
1416         DM_NOTIFICATION,                        /** < DM Notification SyncML Message */
1417
1418         DS_NOTIFICATION,                        /** < DS Notification SyncML Message */
1419         DS_WBXML,                                       /** < DS WBXML SyncML Message */
1420
1421         CP_XML,                                         /** < CP XML SyncML Message */
1422         CP_WBXML,                                       /** < CP WBXML SyncML Message */
1423
1424         OTHERS,                                         /** < Unknown SyncML Message */
1425 };
1426
1427
1428 /**
1429  *  @brief  Enumeration for the values of a Delivery Report Status. \n
1430  *              This enum is used as the value of msg_delivery_report_status_t.
1431 */
1432 enum _MSG_DELIVERY_REPORT_STATUS_E  {
1433         MSG_DELIVERY_REPORT_NONE                                =       -1,     /**< Indicates the status unavailable */
1434         MSG_DELIVERY_REPORT_EXPIRED                     =       0,      /**< Indicates the expired status of message */
1435         MSG_DELIVERY_REPORT_SUCCESS                     =       1,      /**< Indicates the success status of message */
1436         MSG_DELIVERY_REPORT_REJECTED                    =       2,      /**< Indicates the rejected status of message */
1437         MSG_DELIVERY_REPORT_DEFERRED                    =       3,      /**< Indicates the deferred status of message */
1438         MSG_DELIVERY_REPORT_UNRECOGNISED                =       4,      /**< Indicates the unrecognized status of message */
1439         MSG_DELIVERY_REPORT_INDETERMINATE               =       5,      /**< Indicates the intermediate status of message */
1440         MSG_DELIVERY_REPORT_FORWARDED                   =       6,      /**< Indicates the forwarded status of message */
1441         MSG_DELIVERY_REPORT_UNREACHABLE         =       7,      /**< Indicates the unreachable status of message */
1442         MSG_DELIVERY_REPORT_ERROR                               =       8,      /**< Indicates the error status of message */
1443 };
1444
1445
1446 /**
1447  *  @brief  Enumeration for the values of a Read Report Status. \n
1448  *              This enum is used as the value of msg_read_report_status_t.
1449 */
1450 enum _MSG_READ_REPORT_STATUS_E  {
1451         MSG_READ_REPORT_NONE                    =       -1,             /**< Indicates the status unavailable */
1452         MSG_READ_REPORT_IS_READ                 =       0,      /**< Indicates the message is read */
1453         MSG_READ_REPORT_IS_DELETED              =       1,      /**< Indicates the message is deleted */
1454         MSG_READ_REPORT_REJECT_BY_USER  =       2,      /**< Indicates read report reject by user*/
1455 };
1456
1457 /**
1458  *  @brief  Enumeration for the values of a Report Type. \n
1459  *              This enum is used as the value of msg_read_report_status_t.
1460 */
1461 enum _MSG_REPORT_TYPE_E  {
1462         MSG_REPORT_TYPE_DELIVERY        =       0,      /**< Indicates the type is delivery report*/
1463         MSG_REPORT_TYPE_READ            =       1,          /**< Indicates the type is read report*/
1464         MSG_REPORT_TYPE_READ_REPORT_SENT = 2,  /**< Indicates the type is read report sent*/
1465 };
1466
1467 /* filter */
1468 /**
1469  *  @brief  Enumeration for the values of a filter type. \n
1470  *              This enum is used as the value of msg_filter_type_t.
1471  */
1472 enum _MSG_FILTER_TYPE_E {
1473         MSG_FILTER_BY_WORD = 0,             /**< Filtered by sub string in the text */
1474         MSG_FILTER_BY_ADDRESS_SAME,         /**< Filtered by address exactly same as */
1475         MSG_FILTER_BY_ADDRESS_START,        /**< Filtered by address start with */
1476         MSG_FILTER_BY_ADDRESS_INCLUDE,      /**< Filtered by address include */
1477         MSG_FILTER_BY_ADDRESS_END,          /**< Filtered by address end with */
1478 };
1479
1480
1481 /* mms */
1482
1483 /**
1484  *  @brief  Enumeration for the values of a MIME type.
1485  */
1486 typedef enum    _MimeType {
1487         /* 0 */
1488         MIME_ASTERISK                                       = 0x0000, /**< Indicates the valid default MIME type  */
1489
1490         /* 1 */
1491         MIME_APPLICATION_XML                                = 0x1000, /**< Indicates the application XML type */
1492         MIME_APPLICATION_WML_XML                            = 0x1001, /**< Indicates the application WML XML type  */
1493         MIME_APPLICATION_XHTML_XML                          = 0x1002, /**< Indicates the application XHTML XML type  */
1494         MIME_APPLICATION_JAVA_VM                            = 0x1003, /**< Indicates the application Java VM type */
1495         MIME_APPLICATION_SMIL                               = 0x1004, /**< Indicates the application SMIL  type */
1496         MIME_APPLICATION_JAVA_ARCHIVE                       = 0x1005, /**< Indicates the application Java archive type */
1497         MIME_APPLICATION_JAVA                               = 0x1006, /**< Indicates the application Java  type */
1498         MIME_APPLICATION_OCTET_STREAM                       = 0x1007, /**< Indicates the application octect stream type */
1499         MIME_APPLICATION_STUDIOM                            = 0x1008, /**< Indicates the application studiom type */
1500         MIME_APPLICATION_FUNMEDIA                           = 0x1009, /**< Indicates the application fun media type */
1501         MIME_APPLICATION_MSWORD                             = 0x100a, /**< Indicates the application MS Word type */
1502         MIME_APPLICATION_PDF                                = 0x100b, /**< Indicates the application PDF type */
1503         MIME_APPLICATION_SDP                                = 0x100c, /**< Indicates the application SDP type */
1504         MIME_APPLICATION_RAM                                = 0x100d, /**< Indicates the application RAM type */
1505         MIME_APPLICATION_ASTERIC                            = 0x100e, /**< Indicates the application as main type and generic sub type */
1506
1507         /* 16 */
1508         MIME_APPLICATION_VND_WAP_XHTMLXML                   = 0x1100, /**< Indicates the application wap xhtml xml type */
1509         MIME_APPLICATION_VND_WAP_WMLC                       = 0x1101, /**< Indicates the application wap wmlc type */
1510         MIME_APPLICATION_VND_WAP_WMLSCRIPTC                 = 0x1102, /**< Indicates the application wap wmlscrpitc type */
1511         MIME_APPLICATION_VND_WAP_WTA_EVENTC                 = 0x1103, /**< Indicates the application wap  wta event type */
1512         MIME_APPLICATION_VND_WAP_UAPROF                     = 0x1104, /**< Indicates the application wap uaprof type */
1513         MIME_APPLICATION_VND_WAP_SIC                        = 0x1105, /**< Indicates the application wap sic type */
1514         MIME_APPLICATION_VND_WAP_SLC                        = 0x1106, /**< Indicates the application wap slc type */
1515         MIME_APPLICATION_VND_WAP_COC                        = 0x1107, /**< Indicates the application wap coc type */
1516         MIME_APPLICATION_VND_WAP_SIA                        = 0x1108, /**< Indicates the application wap sia type */
1517         MIME_APPLICATION_VND_WAP_CONNECTIVITY_WBXML         = 0x1109, /**< Indicates the application wap connectivity wbxml type */
1518         MIME_APPLICATION_VND_WAP_MULTIPART_FORM_DATA        = 0x110a, /**< Indicates the application wap multipart data type */
1519         MIME_APPLICATION_VND_WAP_MULTIPART_BYTERANGES       = 0x110b, /**< Indicates the application wap multipart byte type */
1520         MIME_APPLICATION_VND_WAP_MULTIPART_MIXED            = 0x110c, /**< Indicates the application wap multipart mixed type */
1521         MIME_APPLICATION_VND_WAP_MULTIPART_RELATED          = 0x110d, /**< Indicates the application wap multipart related type */
1522         MIME_APPLICATION_VND_WAP_MULTIPART_ALTERNATIVE      = 0x110e, /**< Indicates the application wap  multipart alternative type */
1523         MIME_APPLICATION_VND_WAP_MULTIPART_ASTERIC          = 0x110f, /**< Indicates the application wap mulitpart as main type and generic sub type */
1524         MIME_APPLICATION_VND_WAP_WBXML                      = 0x1110, /**< Indicates the application wap wbxml type */
1525         MIME_APPLICATION_VND_OMA_DD_XML                     = 0x1111, /**< Indicates the application oma dd xml type */
1526         MIME_APPLICATION_VND_OMA_DRM_MESSAGE                = 0x1112, /**< Indicates the application oma drm message type */
1527         MIME_APPLICATION_VND_OMA_DRM_CONTENT                = 0x1113, /**< Indicates the application oma drm content type */
1528         MIME_APPLICATION_VND_OMA_DRM_RIGHTS_XML             = 0x1114, /**< Indicates the application oma drm rights xml type */
1529         MIME_APPLICATION_VND_OMA_DRM_RIGHTS_WBXML           = 0x1115, /**< Indicates the application oma drm rights wbxml type */
1530         MIME_APPLICATION_VND_OMA_DRM_RO_XML                 = 0x1116, /**< Indicates the application oma drm ro xml type */
1531         MIME_APPLICATION_VND_OMA_DRM_DCF                    = 0x1117, /**< Indicates the application oma drm dcf type */
1532         MIME_APPLICATION_VND_OMA_ROAPPDU_XML                = 0x1118, /**< Indicates the application oma roap pdu xml type */
1533         MIME_APPLICATION_VND_OMA_ROAPTRIGGER_XML            = 0x1119, /**< Indicates the application oma roap trigger xml  type */
1534         MIME_APPLICATION_VND_SMAF                           = 0x111a, /**< Indicates the application smaf type */
1535         MIME_APPLICATION_VND_RN_REALMEDIA                   = 0x111b, /**< Indicates the application rn real media type */
1536         MIME_APPLICATION_VND_SUN_J2ME_JAVA_ARCHIVE          = 0x111c, /**< Indicates the application J2ME Java archive type */
1537         MIME_APPLICATION_VND_SAMSUNG_THEME                  = 0x111d, /**< Indicates the application Samsung theme type */
1538         MIME_APPLICATION_VND_EXCEL                          = 0x111e, /**< Indicates the application Excel type */
1539         MIME_APPLICATION_VND_POWERPOINT                     = 0x111f, /**< Indicates the application Power point type */
1540         MIME_APPLICATION_VND_MSWORD                         = 0x1120, /**< Indicates the application MS Word type */
1541
1542         /* 49 */
1543         MIME_APPLICATION_X_HDMLC                            = 0x1200, /**< Indicates the application x hdmlc type */
1544         MIME_APPLICATION_X_X968_USERCERT                    = 0x1201, /**< Indicates the application x x968 user certified type */
1545         MIME_APPLICATION_X_WWW_FORM_URLENCODED              = 0x1202, /**< Indicates the application x www form url encoded type */
1546         MIME_APPLICATION_X_SMAF                             = 0x1203, /**< Indicates the application x smaf type */
1547         MIME_APPLICATION_X_FLASH                            = 0x1204, /**< Indicates the application x flash type */
1548         MIME_APPLICATION_X_EXCEL                            = 0x1205, /**< Indicates the application x excel type */
1549         MIME_APPLICATION_X_POWERPOINT                       = 0x1206, /**< Indicates the application x power point type */
1550
1551         /* 56 */
1552         MIME_AUDIO_BASIC                                    = 0x2000, /**< Indicates the audio basic type  */
1553         MIME_AUDIO_MPEG                                     = 0x2001, /**< Indicates the audio mpeg type  */
1554         MIME_AUDIO_MP3                                      = 0x2002, /**< Indicates the audio mp3 type  */
1555         MIME_AUDIO_MPG3                                     = 0x2003, /**< Indicates the audio mpg3 type  */
1556         MIME_AUDIO_MPEG3                                    = 0x2004, /**< Indicates the audio mpeg3 type  */
1557         MIME_AUDIO_MPG                                      = 0x2005, /**< Indicates the audio mpg type  */
1558         MIME_AUDIO_AAC                                      = 0x2006, /**< Indicates the audio aac type  */
1559         MIME_AUDIO_G72                                      = 0x2007, /**< Indicates the audio g72 type  */
1560         MIME_AUDIO_AMR                                      = 0x2008, /**< Indicates the audio amr type  */
1561         MIME_AUDIO_AMR_WB                                   = 0x2009, /**< Indicates the audio amr wb type  */
1562         MIME_AUDIO_MMF                                      = 0x200a, /**< Indicates the audio mmf type  */
1563         MIME_AUDIO_SMAF                                     = 0x200b, /**< Indicates the audio smaf type  */
1564         MIME_AUDIO_IMELODY                                  = 0x200c, /**< Indicates the audio imelody type  */
1565         MIME_AUDIO_IMELODY2                                 = 0x200d, /**< Indicates the audio imelody2 type  */
1566         MIME_AUDIO_MELODY                                   = 0x200e, /**< Indicates the audio melody type  */
1567         MIME_AUDIO_MID                                      = 0x200f, /**< Indicates the audio mid type  */
1568         MIME_AUDIO_MIDI                                     = 0x2010, /**< Indicates the audio midi type  */
1569         MIME_AUDIO_SP_MIDI                                  = 0x2011, /**< Indicates the audio sp midi type  */
1570         MIME_AUDIO_WAVE                                     = 0x2012, /**< Indicates the audio wave type  */
1571         MIME_AUDIO_WAV                                      = 0x2013, /**< Indicates the audio wav type  */
1572         MIME_AUDIO_3GPP                                     = 0x2014, /**< Indicates the audio 3gpp type  */
1573         MIME_AUDIO_MP4                                      = 0x2015, /**< Indicates the audio mp4 type  */
1574         MIME_AUDIO_MP4A_LATM                                = 0x2016, /**< Indicates the audio mp4 latm type  */
1575         MIME_AUDIO_M4A                                      = 0x2017, /**< Indicates the audio m4a type  */
1576         MIME_AUDIO_MPEG4                                    = 0x2018, /**< Indicates the audio mpeg4 type  */
1577         MIME_AUDIO_WMA                                      = 0x2019, /**< Indicates the audio wma type  */
1578         MIME_AUDIO_XMF                                      = 0x201a, /**< Indicates the audio xmf type  */
1579         MIME_AUDIO_IMY                                      = 0x201b, /**< Indicates the audio imy type  */
1580         MIME_AUDIO_MOBILE_XMF                               = 0x201c, /**< Indicates the audio mobile xmf type  */
1581         MIME_AUDIO_OGG                                      = 0x201d, /**< Indicates the audio mobile xmf type  */
1582
1583         /* 86 */
1584         MIME_AUDIO_VND_RN_REALAUDIO                         = 0x2100, /**< Indicates the audio rn real audio type  */
1585
1586         /* 87 */
1587         MIME_AUDIO_X_MPEG                                   = 0x2200, /**< Indicates the audio x mpeg type  */
1588         MIME_AUDIO_X_MP3                                    = 0x2201, /**< Indicates the audio x mp3 type  */
1589         MIME_AUDIO_X_MPEG3                                  = 0x2202, /**< Indicates the audio x mpeg3 type  */
1590         MIME_AUDIO_X_MPG                                    = 0x2203, /**< Indicates the audio x mpg type  */
1591         MIME_AUDIO_X_AMR                                    = 0x2204, /**< Indicates the audio x amr type  */
1592         MIME_AUDIO_X_MMF                                    = 0x2205, /**< Indicates the audio x mmf type  */
1593         MIME_AUDIO_X_SMAF                                   = 0x2206, /**< Indicates the audio x smaf type  */
1594         MIME_AUDIO_X_IMELODY                                = 0x2207, /**< Indicates the audio x imelody type  */
1595         MIME_AUDIO_X_MIDI                                   = 0x2208, /**< Indicates the audio x midi type  */
1596         MIME_AUDIO_X_MPEGAUDIO                              = 0x2209, /**< Indicates the audio x mpeg  type  */
1597         MIME_AUDIO_X_PN_REALAUDIO                           = 0x220a, /**< Indicates the audio x pn real audio type  */
1598         MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO                 = 0x220b, /**< Indicates the audio x pn multirate real audio  type  */
1599         MIME_AUDIO_X_PN_MULTIRATE_REALAUDIO_LIVE            = 0x220c, /**< Indicates the audio x pn multirate real audio live type  */
1600         MIME_AUDIO_X_WAVE                                   = 0x220d, /**< Indicates the audio x wave  type  */
1601         MIME_AUDIO_X_WAV                                    = 0x220e, /**< Indicates the audio x wav  type  */
1602         MIME_AUDIO_X_MS_WMA                                 = 0x220f, /**< Indicates the audio ms wma type  */
1603         MIME_AUDIO_X_MID                                    = 0x2210, /**< Indicates the audio mid type  */
1604         MIME_AUDIO_X_MS_ASF                                 = 0x2211, /**< Indicates the audio ms asf  type  */
1605         MIME_AUDIO_X_XMF                                    = 0x2212, /**< Indicates the audio x xmf  type  */
1606
1607         /* 106 */
1608         MIME_IMAGE_GIF                                      = 0x3000, /**< Indicates the image gif type  */
1609         MIME_IMAGE_JPEG                                     = 0x3001, /**< Indicates the image jpeg type  */
1610         MIME_IMAGE_JPG                                      = 0x3002, /**< Indicates the image jpg type  */
1611         MIME_IMAGE_TIFF                                     = 0x3003, /**< Indicates the image tiff type  */
1612         MIME_IMAGE_TIF                                      = 0x3004, /**< Indicates the image tif type  */
1613         MIME_IMAGE_PNG                                      = 0x3005, /**< Indicates the image png type  */
1614         MIME_IMAGE_WBMP                                     = 0x3006, /**< Indicates the image wbmp type  */
1615         MIME_IMAGE_PJPEG                                    = 0x3007, /**< Indicates the image pjpeg type  */
1616         MIME_IMAGE_BMP                                      = 0x3008, /**< Indicates the image bmp type  */
1617         MIME_IMAGE_SVG                                      = 0x3009, /**< Indicates the image svg type  */
1618         MIME_IMAGE_SVG1                                     = 0x300a, /**< Indicates the image svg1 type  */
1619
1620         /* 117 */
1621         MIME_IMAGE_VND_WAP_WBMP                             = 0x3100, /**< Indicates the image vnd wap wbmp type  */
1622         MIME_IMAGE_VND_TMO_GIF                              = 0x3101, /**< Indicates the image vnd tmo gif type  */
1623         MIME_IMAGE_VND_TMO_JPG                              = 0x3102, /**< Indicates the image vnd tmo jpg type  */
1624
1625         /* 120 */
1626         MIME_IMAGE_X_BMP                                    = 0x3200, /**< Indicates the image x bmp type  */
1627
1628         /* 121 */
1629         MIME_MESSAGE_RFC822                                 = 0x4000, /**< Indicates the message rfc822 type  */
1630
1631         /* 122 */
1632         MIME_MULTIPART_MIXED                                = 0x5000, /**< Indicates the multipart mixed type  */
1633         MIME_MULTIPART_RELATED                              = 0x5001, /**< Indicates the multipart related type  */
1634         MIME_MULTIPART_ALTERNATIVE                          = 0x5002, /**< Indicates the multipart alternative type  */
1635         MIME_MULTIPART_FORM_DATA                            = 0x5003, /**< Indicates the multipart form data type  */
1636         MIME_MULTIPART_BYTERANGE                            = 0x5004, /**< Indicates the multipart byte range type  */
1637         MIME_MULTIPART_REPORT                               = 0x5005, /**< Indicates the multipart report type  */
1638         MIME_MULTIPART_VOICE_MESSAGE                        = 0x5006, /**< Indicates the multipart voice message type  */
1639
1640         /* 129 */
1641         MIME_TEXT_TXT                                       = 0x6000, /**< Indicates the text txt type  */
1642         MIME_TEXT_HTML                                      = 0x6001, /**< Indicates the text html type  */
1643         MIME_TEXT_PLAIN                                     = 0x6002, /**< Indicates the text plain type  */
1644         MIME_TEXT_CSS                                       = 0x6003, /**< Indicates the text css type  */
1645         MIME_TEXT_XML                                       = 0x6004, /**< Indicates the text xml type  */
1646         MIME_TEXT_IMELODY                                   = 0x6005, /**< Indicates the text imelody type  */
1647         MIME_TEXT_CALENDAR                                  = 0x6006, /**< Indicates the text calendar type */
1648
1649         /* 135 */
1650         MIME_TEXT_VND_WAP_WMLSCRIPT                         = 0x6100, /**< Indicates the text wap wmlscript  type  */
1651         MIME_TEXT_VND_WAP_WML                               = 0x6101, /**< Indicates the text wap wml  type  */
1652         MIME_TEXT_VND_WAP_WTA_EVENT                         = 0x6102, /**< Indicates the text wap wta event  type  */
1653         MIME_TEXT_VND_WAP_CONNECTIVITY_XML                  = 0x6103, /**< Indicates the text wap connectivity xml  type  */
1654         MIME_TEXT_VND_WAP_SI                                = 0x6104, /**< Indicates the text wap si  type  */
1655         MIME_TEXT_VND_WAP_SL                                = 0x6105, /**< Indicates the text wap sl  type  */
1656         MIME_TEXT_VND_WAP_CO                                = 0x6106, /**< Indicates the text wap co  type  */
1657         MIME_TEXT_VND_SUN_J2ME_APP_DESCRIPTOR               = 0x6107, /**< Indicates the text sun j2me type  */
1658
1659         /* 143 */
1660         MIME_TEXT_X_HDML                                    = 0x6200, /**< Indicates the x html  type  */
1661         MIME_TEXT_X_VCALENDAR                               = 0x6201, /**< Indicates the x calendar  type  */
1662         MIME_TEXT_X_VCARD                                   = 0x6202, /**< Indicates the x vcard  type  */
1663         MIME_TEXT_X_IMELODY                                 = 0x6203, /**< Indicates the x imelody  type  */
1664         MIME_TEXT_X_IMELODY2                                = 0x6204, /**< Indicates the x imelody2  type  */
1665         MIME_TEXT_X_VNOTE                                   = 0x6205, /**< Indicates the x vnote  type  */
1666         MIME_TEXT_X_VTODO                                   = 0x6206, /**< Indicates the x todo  type  */
1667
1668         /* 150 */
1669         MIME_VIDEO_MPEG4                                    = 0x7000, /**< Indicates the mpeg4  type  */
1670         MIME_VIDEO_MP4                                      = 0x7001, /**< Indicates the mp4  type  */
1671         MIME_VIDEO_H263                                     = 0x7002, /**< Indicates the h263  type  */
1672         MIME_VIDEO_3GPP                                     = 0x7003, /**< Indicates the 3gpp  type  */
1673         MIME_VIDEO_3GP                                      = 0x7004, /**< Indicates the 3gp  type  */
1674         MIME_VIDEO_AVI                                      = 0x7005, /**< Indicates the avi  type  */
1675         MIME_VIDEO_SDP                                      = 0x7006, /**< Indicates the sdp  type  */
1676         MIME_VIDEO_MP4_ES                                   = 0x7007, /**< Indicates the mp4 es  type  */
1677         MIME_VIDEO_MPEG                                     = 0x7008, /**< Indicates the mpeg  type  */
1678         MIME_VIDEO_MOV                                      = 0x7009, /**< Indicates the mov  type  */
1679
1680         /* 159 */
1681         MIME_VIDEO_VND_RN_REALVIDEO                         = 0x7100, /**< Indicates the pn real video type  */
1682         MIME_VIDEO_VND_RN_REALMEDIA                         = 0x7101, /**< Indicates the pn multi rate real media type  */
1683
1684         /* 161 */
1685         MIME_VIDEO_X_MP4                                    = 0x7200, /**< Indicates the video x mp4 type  */
1686         MIME_VIDEO_X_PV_MP4                                 = 0x7201, /**< Indicates the video x pv mp4 type  */
1687         MIME_VIDEO_X_PN_REALVIDEO                           = 0x7202, /**< Indicates the x pn real video type  */
1688         MIME_VIDEO_X_PN_MULTIRATE_REALVIDEO                 = 0x7203, /**< Indicates the x pn multi rate real video type  */
1689         MIME_VIDEO_X_MS_WMV                                 = 0x7204, /**< Indicates the x ms wmv type  */
1690         MIME_VIDEO_X_MS_ASF                                 = 0x7205, /**< Indicates the x ms asf type  */
1691         MIME_VIDEO_X_PV_PVX                                 = 0x7206, /**< Indicates the x pv pvx type  */
1692
1693         MIME_TYPE_VALUE_MAX                                 = 0x7207, /**< Indicates the maximum MIME type  */
1694         MIME_UNKNOWN                                        = 0xffff  /**< Indicates the unknown MIME type  */
1695 } MimeType;
1696
1697 /**
1698  *  @brief  Enumeration for the values of a DRM type.
1699  */
1700 typedef enum {
1701         MSG_DRM_TYPE_NONE       = 0, /**< Indicates the DRM type none */
1702         MSG_DRM_TYPE_FL         = 1, /**< Indicates the forward lock */         /* 2004-07-09: forwardLock type */
1703         MSG_DRM_TYPE_CD         = 2, /**< Indicates the combined delivery */    /* 2004-07-09: combined delivery type */
1704         MSG_DRM_TYPE_SD         = 3, /**< Indicates the separate delivery */    /* 2004-07-09: seperate delivery type */
1705         MSG_DRM_TYPE_SSD                = 4      /**< Indicates the special separate delivery */        /* 2005-02-28: add Special Sperate Delivery */
1706 } MsgDrmType;
1707
1708 /**
1709  *  @brief  Enumeration for the values of a SMIL region type.
1710  */
1711 typedef enum _REGION_FIT_TYPE_T {
1712         MMSUI_IMAGE_REGION_FIT_HIDDEN,   /**< Indicates the hidden fit type */
1713         MMSUI_IMAGE_REGION_FIT_MEET,     /**< Indicates the meet fit type */
1714 } REGION_FIT_TYPE_T;
1715
1716
1717 /**
1718  *  @brief  Enumeration for the values of a SMIL media type.
1719  */
1720 typedef enum {
1721         MMS_SMIL_MEDIA_INVALID = 0,       /**< Indicates the invalid media type */
1722         MMS_SMIL_MEDIA_IMG,               /**< Indicates the image media */
1723         MMS_SMIL_MEDIA_AUDIO,             /**< Indicates the audio media */
1724         MMS_SMIL_MEDIA_VIDEO,             /**< Indicates the video media */
1725         MMS_SMIL_MEDIA_TEXT,              /**< Indicates the text media */
1726         MMS_SMIL_MEDIA_ANIMATE,           /**< Indicates the animation media */
1727         MMS_SMIL_MEDIA_IMG_OR_VIDEO     ,     /**< Indicates the image or video media */
1728         MMS_SMIL_MEDIA_MAX = 0xffffffff,  /**< Indicates the maximum media type */
1729 } MmsSmilMediaType;
1730
1731 /**
1732  *  @brief  Enumeration for the values of a SMIL transition type.
1733  */
1734 typedef enum {
1735         MMS_SMIL_TRANS_NONE = 0,         /**< Indicates the transition type none */                     /* default */
1736         MMS_SMIL_TRANS_SLIDEWIPE = 1,    /**< Indicates the slide wipe transition */
1737         MMS_SMIL_TRANS_BARWIPE = 2,      /**< Indicates the bar wipe transition */
1738         MMS_SMIL_TRANS_BARNDOORWIPE = 3, /**< Indicates the bar and door wipe transition */
1739         MMS_SMIL_TRANS_FADE = 4,         /**< Indicates the fade transition */
1740         MMS_SMIL_TRANS_RANDOMBLOCK = 5,  /**< Indicates the random block transition */
1741         MMS_SMIL_TRANS_ZOOMIN = 6,       /**< Indicates the zoom in transition */
1742         MMS_SMIL_TRANS_IRISWIPE = 7,     /**< Indicates the iris wipe transition */
1743         MMS_SMIL_TRANS_BOXWIPE = 8,      /**< Indicates the box wipe transition */
1744         MMS_SMIL_TRANS_FOURBOXWIPE = 9,  /**< Indicates the four box wipe transition */
1745         MMS_SMIL_TRANS_PUSHWIPE  = 10,   /**< Indicates the push wipe transition */
1746         MMS_SMIL_TRANS_ELLIPSEWIPE  = 11 /**< Indicates the ellipse wipe transition */
1747 } MmsSmilTransType;
1748
1749 /**
1750  *  @brief  Enumeration for the values of a SMIL transition sub type.
1751  */
1752 typedef enum {
1753         MMS_SMIL_TRANS_SUB_NONE = 0,          /**< Indicates the transition sub type none */
1754         MMS_SMIL_TRANS_SUB_FROM_LEFT = 1,     /**< Indicates the from left transition */        /* slideWipe's default */
1755         MMS_SMIL_TRANS_SUB_FROM_TOP = 2,      /**< Indicates the from top transition */
1756         MMS_SMIL_TRANS_SUB_FROM_BOTTOM = 3,   /**< Indicates the from bottom transition */
1757         MMS_SMIL_TRANS_SUB_TOP_TO_BOTTOM = 4, /**< Indicates the from top to bottom transition */                       /* barWipe's default */
1758         MMS_SMIL_TRANS_SUB_BOTTOM_TO_TOP = 5, /**< Indicates the from bottom to top transition */
1759         MMS_SMIL_TRANS_SUB_HORIZONTAL = 6,    /**< Indicates the horizontal transition */               /* barDoorWipe's default */
1760         MMS_SMIL_TRANS_SUB_FROM_RIGHT = 7,    /**< Indicates the from right transition */
1761         MMS_SMIL_TRANS_SUB_VERTICAL = 8       /**< Indicates the vertical transition */
1762 } MmsSmilTransSubType;
1763
1764 /**
1765  *  @brief  Enumeration for the values of a text font type.
1766  */
1767 typedef enum {
1768         MMS_SMIL_FONT_TYPE_NONE = 0,     /**< Indicates the font type none */
1769         MMS_SMIL_FONT_TYPE_NORMAL = 1,   /**< Indicates the font type normal */
1770         MMS_SMIL_FONT_TYPE_ITALIC = 2,   /**< Indicates the font type italic */
1771         MMS_SMIL_FONT_TYPE_BOLD = 3,     /**< Indicates the font type bold */
1772         MMS_SMIL_FONT_TYPE_UNDERLINE = 4 /**< Indicates the font type underline */
1773 } MmsSmilFontType;
1774
1775 /**
1776  *  @brief  Enumeration for the values of a MMS text direction.
1777  */
1778 typedef enum    _MmsTextDir {
1779         MMS_TEXT_DIRECTION_INVALID = -1, /**< Indicates the invalid direction */
1780         MMS_TEXT_DIRECTION_RIGHT = 0,    /**< Indicates the right direction */
1781         MMS_TEXT_DIRECTION_DOWN,         /**< Indicates the down direction */           /* supported to GC */
1782 } MmsTextDirection;
1783
1784 /**
1785  *  @brief  Enumeration for the values of MMS Read Report Sent Status.
1786  */
1787 typedef enum {
1788         MMS_RECEIVE_READ_REPORT_NO_SEND,    /**< Not sent yet */
1789         MMS_RECEIVE_READ_REPORT_MUST_SEND,  /**< Not sent yet, but will be sent */
1790         MMS_RECEIVE_READ_REPORT_SENT,       /**< Sent */
1791         MMS_RECEIVE_READ_REPORT_NO_SENT,    /**< Must be sent, but did not send by user's choice */
1792 } MmsRecvReadReportSendStatus ;
1793
1794
1795 /* setting */
1796
1797 /**
1798  *  @brief  Enumeration for the values of an option type. \n
1799  *              This enum is used as the value of MSG_OPTION_TYPE_T.
1800  */
1801 enum _MSG_OPTION_TYPE_E {
1802         MSG_GENERAL_OPT,            /**< General option */
1803         MSG_SMS_SENDOPT,            /**< SMS send option */
1804         MSG_SMSC_LIST,              /**< SMSC list option */
1805         MSG_MMS_SENDOPT,            /**< MMS send option */
1806         MSG_MMS_RECVOPT,            /**< MMS receive option */
1807         MSG_MMS_CLASSOPT,           /**< MMS class option such as personal, advertisement, and informational */
1808         MSG_MMS_STYLEOPT,           /**< MMS style option */
1809         MSG_PUSHMSG_OPT,            /**< Push message option */
1810         MSG_CBMSG_OPT,              /**< Cell broadcasting message option */
1811         MSG_VOICEMAIL_OPT,          /**< Voice mail option */
1812         MSG_MSGSIZE_OPT,            /**< Message size option */
1813         MSG_OPTION_TYPE_MAX,        /**< Placeholder for max value of this enum*/
1814 };
1815
1816
1817 /**
1818  *  @brief  Enumeration for the values of an SMS network mode. \n
1819  *              This enum is used as the value of MSG_SMS_NETWORK_MODE_T.
1820  */
1821 enum _MSG_SMS_NETWORK_MODE_E {
1822         MSG_SMS_NETWORK_PS_ONLY = 0x01,     /**< Packet switched */
1823         MSG_SMS_NETWORK_CS_ONLY = 0x02,     /**< Circuit switched */
1824         MSG_SMS_NETWORK_PS_FIRST = 0x03,    /**< Packet switching preferred */
1825 };
1826
1827
1828 /**
1829  *  @brief  Enumeration for the value of period of playing alert tone. \n
1830  *              The values for this type SHOULD be in MSG_ALERT_TONE_T.
1831  */
1832 enum _MSG_ALERT_TONE_E {
1833         MSG_ALERT_TONE_ONCE,        /**< Play alert tone once*/
1834         MSG_ALERT_TONE_2MINS,       /**< Repeat alarm in 2 mins*/
1835         MSG_ALERT_TONE_5MINS,       /**< Repeat alarm in 5 mins*/
1836         MSG_ALERT_TONE_10MINS,      /**< Repeat alarm in 10 mins*/
1837 };
1838
1839
1840 /**
1841  *  @brief  Enumeration for the value of a default storage to save SMS. \n
1842  *              The values for this type SHOULD be in MSG_SMS_SAVE_STORAGE_T.
1843  */
1844 enum _MSG_SMS_SAVE_STORAGE_E {
1845         MSG_SMS_SAVE_STORAGE_SIM,           /**< Save SMS to SIM*/
1846         MSG_SMS_SAVE_STORAGE_PHONE,         /**< Save SMS to phone*/
1847 };
1848
1849
1850 /**
1851  *  @brief  Enumeration for the values of the type of number for SMS center address. \n
1852  *              This enum is used as the value of MSG_SMS_TON_T.
1853  */
1854 enum _MSG_SMS_TON_E {
1855         MSG_TON_UNKNOWN = 0,            /**< Unknown */
1856         MSG_TON_INTERNATIONAL,          /**< International */
1857         MSG_TON_NATIONAL,               /**< National */
1858         MSG_TON_NETWORK,                /**< Network */
1859         MSG_TON_SUBSCRIBER,             /**< Subscriber */
1860         MSG_TON_ALPHANUMERIC,           /**< Alpha numeric */
1861         MSG_TON_ABBREVIATED,            /**< Abbreviated */
1862         MSG_TON_RESERVE,                /**< Reserve */
1863 };
1864
1865
1866 /**
1867  *  @brief  Enumeration for the values of the numbering plan ID for SMS center address. \n
1868  *              This enum is used as the value of MSG_SMS_NPI_T.
1869  */
1870 enum _MSG_SMS_NPI_E {
1871         MSG_NPI_UNKNOWN = 0,                        /**< Unknown */
1872         MSG_NPI_ISDN = 1,                           /**< ISDN */
1873         MSG_NPI_DATA = 3,                           /**< Data */
1874         MSG_NPI_TELEX = 4,                          /**< Telex */
1875         MSG_NPI_SMSC = 5,                           /**< SMSC */
1876         MSG_NPI_NATIONAL = 8,                       /**< National */
1877         MSG_NPI_PRIVATE = 9,                        /**< Private */
1878         MSG_NPI_IDENTIFICATION_ERMES = 10,          /**< Identification ermes */
1879         MSG_NPI_IDENTIFICATION_RESERVED = 0xF       /**< Identification reserved */
1880 };
1881
1882
1883 /**
1884  *  @brief  Enumeration for the values of the protocol ID for SMS center address. \n
1885  *              This enum is used as the value of MSG_SMS_PID_T.
1886  */
1887 enum  _MSG_SMS_PID_E {
1888         MSG_PID_NONE,       /**< None */
1889         MSG_PID_TEXT,       /**< Text */
1890         MSG_PID_VOICE,      /**< Voice */
1891         MSG_PID_FAX,        /**< Fax */
1892         MSG_PID_X400,       /**< X400 */
1893         MSG_PID_ERMES,      /**< Ermes */
1894         MSG_PID_EMAIL,      /**< Email */
1895         MSG_PID_MAX         /**< Default */
1896 };
1897
1898
1899 /**
1900  *  @brief  Enumeration for the values of the Validity Period for SMS center. \n
1901  *              This enum is used as the value of MSG_VAL_PERIOD_T.
1902  *
1903  *      0 to 143 : (TP-VP + 1) x 5 minutes (i.e. 5 minutes intervals up to 12 hours)
1904  *      144 to 167 : 12 hours + ((TP-VP -143) x 30 minutes)
1905  *      168 to 196 : (TP-VP - 166) x 1 day
1906  *      197 to 255 : (TP-VP - 192) x 1 week
1907  *
1908  */
1909 enum  _MSG_VAL_PERIOD_E {
1910         MSG_VAL_ZERO = 0,               /**< Validity period is zero */
1911         MSG_VAL_1DAY = 167,             /**< Validity period is 1 day */
1912         MSG_VAL_2DAYS = 168,            /**< Validity period is 2 days */
1913         MSG_VAL_3DAYS = 169,            /**< Validity period is 3 days */
1914         MSG_VAL_4DAYS = 170,            /**< Validity period is 4 days */
1915         MSG_VAL_5DAYS = 171,            /**< Validity period is 5 days */
1916         MSG_VAL_6DAYS = 172,            /**< Validity period is 6 days */
1917         MSG_VAL_1WEEK = 173,            /**< Validity period is 1 week */
1918         MSG_VAL_2WEEKS = 180,           /**< Validity period is 2 weeks */
1919         MSG_VAL_3WEEKS = 187,           /**< Validity period is 3 weeks */
1920         MSG_VAL_MAXIMUM = 255,          /**< Validity period is maximum */
1921 };
1922
1923
1924 /**
1925  *  @brief  Enumeration for the values of the MMS expiry time. \n
1926  *              This enum is used as the value of MSG_MMS_EXPIRY_TIME_T.
1927  */
1928 enum  _MSG_MMS_EXPIRY_TIME_E {
1929         MSG_EXPIRY_TIME_MAXIMUM = 0,            /**< Expiry time is zero */
1930         MSG_EXPIRY_TIME_1DAY = 86400,           /**< Expiry time is 1 day */
1931         MSG_EXPIRY_TIME_2DAYS = 2*86400,        /**< Expiry time is 2 days */
1932         MSG_EXPIRY_TIME_1WEEK = 604800,         /**< Expiry time is 1 week */
1933         MSG_EXPIRY_TIME_2WEEKS = 2*604800,      /**< Expiry time is 2 weeks */
1934 };
1935
1936
1937 /**
1938  *  @brief  Enumeration for the values of the MMS delivery time. \n
1939  *              This enum is used as the value of MSG_MMS_DELIVERY_TIME_T.
1940  */
1941 enum  _MSG_MMS_DELIVERY_TIME_E {
1942         MSG_DELIVERY_TIME_IMMEDIATLY = 0,           /**< Immediate MMS delivery */
1943         MSG_DELIVERY_TIME_1HOUR = 3600,             /**< MMS delivery in 1 hour */
1944         MSG_DELIVERY_TIME_1DAY = 86400,             /**< MMS delivery in 1 day */
1945         MSG_DELIVERY_TIME_1WEEK = 604800,           /**< MMS delivery in 1 week */
1946         MSG_DELIVERY_TIME_CUSTOM                    /**< MMS delivery in custom time */
1947 };
1948
1949
1950 /**
1951  *  @brief  Enumeration for the values of the MMS class type. \n
1952  *              This enum is used as the value of MSG_MMS_MSG_CLASS_TYPE_T.
1953  */
1954 enum _MSG_MMS_MSG_CLASS_TYPE_E {
1955         MSG_CLASS_PERSONAL,             /**<Personal message class*/
1956         MSG_CLASS_ADVERTISEMENT,        /**<Advertisement message class*/
1957         MSG_CLASS_INFORMATIONAL,        /**<Informational message class */
1958         MSG_CLASS_AUTO,                 /**<Automatic */
1959         MSG_CLASS_MAX                   /**< Place-holder to indicate max number of MMS class types*/
1960 };
1961
1962
1963 /**
1964  *  @brief  Enumeration for the values of the MMS reply charging type. \n
1965  *              This enum is used as the value of MSG_MMS_REPLY_CHARGING_TYPE_T.
1966  */
1967 enum _MSG_MMS_REPLY_CHARGING_TYPE_E {
1968         MSG_REPLY_CHARGING_NONE,                    /**<Reply-Charging none */
1969         MSG_REPLY_CHARGING_REQUESTED,               /**<Reply-Charging requested */
1970         MSG_REPLY_CHARGING_REQUESTED_TEXT_ONLY,     /**<Reply-Charging requested text-only */
1971         MSG_REPLY_CHARGING_ACCEPTED,                /**<Reply-Charging accepted */
1972         MSG_REPLY_CHARGING_ACCEPTED_TEXT_ONLY,      /**<Reply-Charging accepted text-only */
1973         MSG_REPLY_CHARGING_MAX                      /**< Place-holder to indicate max number of MMS reply charging types*/
1974 };
1975
1976
1977 /**
1978  *  @brief  Enumeration for the values of the MMS creation mode. \n
1979  *              This enum is used as the value of MSG_MMS_CREATION_MODE_T.
1980  */
1981 enum _MSG_MMS_CREATION_MODE_E {
1982         MSG_CREATION_MODE_RESTRICTED,           /**< MMS created in restricted mode */
1983         MSG_CREATION_MODE_WARNING,              /**< MMS created in warning mode */
1984         MSG_CREATION_MODE_FREE                  /**< MMS created in free mode */
1985 };
1986
1987
1988 /**
1989  *  @brief  Enumeration for the values of the retrieve type for MMS home network. \n
1990  *              This enum is used as the value of MSG_MMS_HOME_RETRIEVE_TYPE_T.
1991  */
1992 enum _MSG_MMS_HOME_RETRIEVE_TYPE_E {
1993         MSG_HOME_AUTO_DOWNLOAD,             /**< Home auto download */
1994         MSG_HOME_MANUAL,                    /**< Home manual */
1995         MSG_HOME_RESTRICTED,                /**< Home restricted */
1996         MSG_HOME_REJECT,                    /**< Home reject */
1997         MSG_HOME_MAX                        /**< Default */
1998 };
1999
2000
2001 /**
2002  *  @brief  Enumeration for the values of the retrieve type for MMS abroad network. \n
2003  *              This enum is used as the value of MSG_MMS_ABROAD_RETRIEVE_TYPE_T.
2004  */
2005 enum _MSG_MMS_ABROAD_RETRIEVE_TYPE_E {
2006         MSG_ABROAD_AUTO_DOWNLOAD,   /**< Abroad auto download */
2007         MSG_ABROAD_MANUAL,          /**< Abroad manual */
2008         MSG_ABROAD_RESTRICTED,      /**< Abroad restricted */
2009         MSG_ABROAD_REJECT,          /**< Abroad reject */
2010         MSG_ABROAD_MAX              /**< Default */
2011 };
2012
2013
2014 /**
2015  *  @brief  Enumeration for the values of the frequency of sending MMS read report. \n
2016  *              This enum is used as the value of MSG_MMS_SEND_READ_REPORT_T.
2017  */
2018 enum _MSG_MMS_SEND_READ_REPORT_E {
2019         MSG_SEND_READ_REPORT_ALWAYS,    /**< Read report always */
2020         MSG_SEND_READ_REPORT_NEVER,     /**< Read report never */
2021         MSG_SEND_READ_REPORT_REQUEST,   /**< Read report request */
2022         MSG_SEND_READ_REPORT_MAX        /**< Default */
2023 };
2024
2025
2026 /**
2027  *  @brief  Enumeration for the values of the service type for a push message. \n
2028  *              This enum is used as the value of MSG_PUSH_SERVICE_TYPE_T.
2029  */
2030 enum _MSG_PUSH_SERVICE_TYPE_E {
2031         MSG_PUSH_SERVICE_ALWAYS,    /**< Push message service always */
2032         MSG_PUSH_SERVICE_PROMPT,    /**< Push message service prompt */
2033         MSG_PUSH_SERVICE_NEVER,     /**< Push message service never */
2034 };
2035
2036
2037 /**
2038  *  @brief  Enumeration for the values of the language type for a cell broadcasting message. \n
2039  *              This enum is used as the value of MSG_CB_LANGUAGE_TYPE_T.
2040  */
2041 enum _MSG_CB_LANGUAGE_TYPE_E {
2042         MSG_CBLANG_TYPE_ALL,            /**< CB check all */
2043         MSG_CBLANG_TYPE_ENG,            /**< CB message English  */
2044         MSG_CBLANG_TYPE_GER,            /**< CB message Germany */
2045         MSG_CBLANG_TYPE_FRE,            /**< CB message France */
2046         MSG_CBLANG_TYPE_ITA,            /**< CB message Italy */
2047         MSG_CBLANG_TYPE_NED,            /**< CB message Netherland */
2048         MSG_CBLANG_TYPE_SPA,            /**< CB message Spain */
2049         MSG_CBLANG_TYPE_POR,            /**< CB message Portugal */
2050         MSG_CBLANG_TYPE_SWE,            /**< CB message Sweden */
2051         MSG_CBLANG_TYPE_TUR,            /**< CB message Turkey */
2052         MSG_CBLANG_TYPE_MAX             /**< Default */
2053 };
2054
2055 /**
2056  *  @brief  Enumeration for the values of SIM status. \n
2057  *              This enum is used as the value of MSG_SIM_STATUS_T.
2058  */
2059 enum _MSG_SIM_STATUS_E {
2060         MSG_SIM_STATUS_NORMAL = 0,          /**< SIM normal */
2061         MSG_SIM_STATUS_CHANGED,             /**< SIM changed */
2062         MSG_SIM_STATUS_NOT_FOUND,           /**< SIM not found */
2063 };
2064
2065 /**
2066  *  @brief  Enumeration for the values of a message ringtone type. \n
2067  *              This enum is used as the value of MSG_RINGTONE_TYPE_T.
2068  */
2069 enum _MSG_RINGTONE_TYPE_E {
2070         MSG_RINGTONE_TYPE_DEFAULT = 0,  /**< Default ringtone type */
2071         MSG_RINGTONE_TYPE_USER,         /**< User defined ringtone type */
2072         MSG_RINGTONE_TYPE_SILENT        /**< Silent type */
2073 };
2074
2075 /**
2076  *  @brief  Enumeration for the values of a SIM index(SIM slot number). \n
2077  *              This enum is used as the value of msg_sim_slot_id_t.
2078  */
2079 enum _MSG_SIM_SLOT_ID_E {
2080         MSG_SIM_SLOT_ID_1 = 1,  /**SIM Slot #1 */
2081         MSG_SIM_SLOT_ID_2,      /**SIM Slot #2 */
2082 };
2083
2084
2085 /**
2086  *  @brief  Enumeration for the values of media informations. \n
2087  *          This enum is used as member of #msg_struct_t for MSG_STRUCT_MEDIA_INFO.
2088  */
2089 enum MSG_MEDIA_INFO_E {
2090         MSG_MEDIA_ITEM_STR = MSG_STRUCT_MEDIA_INFO+1,    /**< Indicates the local path, sticker Id of a media file */
2091         MSG_MEDIA_MIME_TYPE_STR,                         /**< Indicates the mimetype of a media file */
2092         MSG_MEDIA_THUMB_PATH_STR,                        /**< Indicates the thumbnail path of a media file */
2093         MSG_MEDIA_MESSAGE_ID_INT,                        /**< Indicates the message id */
2094 };
2095
2096 /**
2097  * @}
2098  */
2099
2100 #endif /* MSG_TYPES_H_ */