2 * Copyright 2012-2013 Samsung Electronics Co., Ltd
4 * Licensed under the Flora License, Version 1.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
8 * http://floralicense.org
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.
17 #ifndef SMS_PLUGIN_TYPES_H
18 #define SMS_PLUGIN_TYPES_H
21 /*==================================================================================================
23 ==================================================================================================*/
24 #include "MsgTextConvert.h"
25 #include "MsgInternalTypes.h"
26 #include "MsgStorageTypes.h"
27 #include "MsgSettingTypes.h"
30 /*==================================================================================================
32 ==================================================================================================*/
33 #define MAX_ADDRESS_LEN 21 // including '+'
34 #define MAX_USER_DATA_LEN 160
35 #define MAX_GSM_7BIT_DATA_LEN 160
36 #define MAX_UCS2_DATA_LEN 140
37 #define MAX_TPDU_DATA_LEN 165
38 #define MAX_SMSC_LEN 20
39 #define MAX_ADD_PARAM_LEN 12
40 #define MAX_ABS_TIME_PARAM_LEN 7
41 #define MAX_REL_TIME_PARAM_LEN 1
42 #define MAX_UD_HEADER_NUM 7
43 #define MAX_SAT_TPDU_LEN 175
44 #define MAX_CBMSG_PAGE_SIZE 93
45 #define MAX_ETWS_SIZE 56
46 #define MAX_CBMSG_PAGE_NUM 15
47 #define MAX_SIM_SMS_NUM 255
48 #define MAX_SIM_XDN_ALPHA_ID_LEN 30
49 #define MAX_SIM_MSP_CNT 2
51 #define SMS_PUSH_XML_HREF_TAG "href"
52 #define SMS_PUSH_XML_SI_ID_TAG "si-id"
53 #define SMS_PUSH_XML_CREATED_TAG "created"
54 #define SMS_PUSH_XML_EXPIRES_TAG "si-expires"
55 #define SMS_PUSH_XML_ACTION_TAG "action"
57 #define SMS_PUSH_XML_INVAL_OBJ "invalidate-object"
58 #define SMS_PUSH_XML_INVAL_SVC "invalidate-service"
59 #define SMS_PUSH_XML_CO_URI "uri"
62 /*==================================================================================================
64 ==================================================================================================*/
67 \brief Represents TPDU Type.
69 typedef unsigned char SMS_TPDU_TYPE_T;
72 \brief Represents TPDU Type.
74 typedef unsigned char SMS_VPF_T;
77 \brief Represents TPDU Type.
79 typedef unsigned char SMS_TON_T;
82 \brief Represents TPDU Type.
84 typedef unsigned char SMS_NPI_T;
87 \brief Represents TPDU Type.
89 typedef unsigned char SMS_PID_T;
93 \brief Represents TPDU Type.
95 typedef unsigned char SMS_MSG_CLASS_T;
99 \brief Represents TPDU Type.
101 typedef unsigned char SMS_CODING_SCHEME_T;
105 \brief Represents TPDU Type.
107 typedef unsigned char SMS_CODING_GROUP_T;
111 \brief Represents TPDU Type.
113 typedef unsigned char SMS_INDICATOR_TYPE_T;
117 \brief Represents TPDU Type.
119 typedef unsigned char SMS_TIME_FORMAT_T;
123 \brief Represents TPDU Type.
125 typedef unsigned char SMS_FAIL_CAUSE_T;
129 \brief Represents TPDU Type.
131 typedef unsigned char SMS_STATUS_T;
135 \brief Represents TPDU Type.
137 typedef unsigned char SMS_REF_NUMBER_T;
141 \brief Represents TPDU Type.
143 typedef unsigned char SMS_REPORT_TYPE_T;
147 \brief Represents TPDU Type.
149 typedef unsigned char SMS_UDH_TYPE_T;
153 \brief Represents WAP Push App Code.
155 typedef unsigned char SMS_WAP_APP_CODE_T;
158 typedef unsigned char SMS_CB_NETWORK_TYPE_T;
161 typedef unsigned char SMS_CBMSG_TYPE_T;
164 typedef unsigned char SMS_CBMSG_LANG_TYPE_T;
167 typedef unsigned char SMS_CBMSG_CODING_GROUP_T;
170 typedef unsigned char SMS_SAT_CMD_TYPE_T;
173 typedef unsigned short SMS_SIM_EFILE_NAME_T;
176 typedef unsigned char SMS_ETWS_NETWORK_TYPE_T;
179 \brief Represents SIM mailbox type. See enum _SMS_SIM_MAILBOX_TYPE_E
181 typedef unsigned char SMS_SIM_MAILBOX_TYPE_T;
183 /*==================================================================================================
185 ==================================================================================================*/
186 enum _SMS_TPDU_TYPE_E
190 SMS_TPDU_DELIVER_REP,
197 SMS_VPF_NOT_PRESENT = 0,
206 SMS_TON_UNKNOWN = 0, /* unknown */
207 SMS_TON_INTERNATIONAL, /* international */
208 SMS_TON_NATIONAL, /* national */
209 SMS_TON_NETWORK, /* network */
210 SMS_TON_SUBSCRIBER, /* subscriber */
211 SMS_TON_ALPHANUMERIC, /* alpha numberic */
212 SMS_TON_ABBREVIATED, /* abbreviated */
213 SMS_TON_RESERVE, /* reserve */
219 SMS_NPI_UNKNOWN = 0, /* unknown */
220 SMS_NPI_ISDN = 1, /* idsn */
221 SMS_NPI_DATA = 3, /* data */
222 SMS_NPI_TELEX = 4, /* telex */
223 SMS_NPI_SMSC = 5, /* smsc */
224 SMS_NPI_NATIONAL = 8, /* national */
225 SMS_NPI_PRIVATE = 9, /* private */
226 SMS_NPI_ERMES = 10, /* ermes */
232 SMS_PID_NORMAL = 0x00,
234 SMS_PID_TELEX = 0x21,
235 SMS_PID_GROUP3_TELEX = 0x22,
236 SMS_PID_GROUP4_TELEX = 0x23,
237 SMS_PID_VOICE = 0x24,
238 SMS_PID_ERMES = 0x25,
240 SMS_PID_VIDEO = 0x27,
241 SMS_PID_TELETEX_UNSPEC = 0x28,
242 SMS_PID_TELETEX_PSPDN = 0x29,
243 SMS_PID_TELETEX_CSPDN = 0x2A,
244 SMS_PID_TELETEX_PSTN = 0x2B,
245 SMS_PID_TELETEX_ISDN = 0x2C,
248 SMS_PID_EMAIL = 0x32,
250 SMS_PID_TYPE0 = 0x40,
251 SMS_PID_REPLACE_TYPE1 = 0x41,
252 SMS_PID_REPLACE_TYPE2 = 0x42,
253 SMS_PID_REPLACE_TYPE3 = 0x43,
254 SMS_PID_REPLACE_TYPE4 = 0x44,
255 SMS_PID_REPLACE_TYPE5 = 0x45,
256 SMS_PID_REPLACE_TYPE6 = 0x46,
257 SMS_PID_REPLACE_TYPE7 = 0x47,
259 SMS_PID_RETURN_CALL = 0x5F,
263 enum _SMS_MSG_CLASS_E
273 enum _SMS_CODING_SCHEME_E
275 SMS_CHARSET_7BIT = 0,
283 enum _SMS_CODING_GROUP_E
285 SMS_GROUP_GENERAL = 0,
286 SMS_GROUP_CODING_CLASS,
294 enum _SMS_INDICATOR_TYPE_E
296 SMS_VOICE_INDICATOR = 0,
303 enum _SMS_TIME_FORMAT_E
305 SMS_TIME_RELATIVE = 0,
310 enum _SMS_FAIL_CAUSE_E
312 SMS_FC_MSG_TYPE0_NOT_SUPPORTED = 0x81,
313 SMS_FC_SM_CANNOT_BE_REPLACED = 0x82,
314 SMS_FC_UNSPEC_PID_ERROR = 0x8F,
315 SMS_FC_MSG_CLASS_NOT_SUPPORTED = 0x91,
316 SMS_FC_UNSPEC_DCS_ERROR = 0x9F,
317 SMS_FC_TPDU_NOT_SUPPORTED = 0xB0,
318 SMS_FC_SIM_STORAGE_FULL = 0xD0,
319 SMS_FC_NO_STORAGE_IN_SIM = 0xD1,
320 SMS_FC_ERROR_IN_MS = 0xD2,
321 SMS_FC_MSG_CAPA_EXCEEDED = 0xD3,
322 SMS_FC_SAT_BUSY = 0xD4,
323 SMS_FC_SIM_DOWNLOAD_ERROR = 0xD5,
324 SMS_FC_UNSPEC_ERROR = 0xFF,
330 SMS_STATUS_RECEIVE_SUCCESS = 0x00,
331 SMS_STATUS_UNABLE_TO_CONFIRM_DELIVER = 0x01,
332 SMS_STATUS_REPLACED = 0x02,
333 SMS_STATUS_SMSC_SPECIFIC_LAST = 0x1F,
335 SMS_STATUS_TRY_CONGESTION = 0x20,
336 SMS_STATUS_TRY_SME_BUSY = 0x21,
337 SMS_STATUS_TRY_NO_RESPONSE = 0x22,
338 SMS_STATUS_TRY_SERVICE_REJECTED = 0x23,
339 SMS_STATUS_TRY_QOS_NOT_AVAILABLE = 0x24,
341 SMS_STATUS_PERM_REMOTE_ERROR = 0x40,
342 SMS_STATUS_PERM_IMCOMPATIBLE_DEST = 0x41,
343 SMS_STATUS_PERM_CONNECTION_REJECTED = 0x42,
344 SMS_STATUS_PERM_NOT_OBTAINABLE = 0x43,
345 SMS_STATUS_PERM_QOS_NOT_AVAILABLE = 0x44,
346 SMS_STATUS_PERM_NO_INTERWORK_AVAILABLE = 0x45,
347 SMS_STATUS_PERM_MSG_VAL_PERIOD_EXPIRED = 0x46,
348 SMS_STATUS_PERM_MSG_DEL_BY_ORIGIN_SME = 0x47,
349 SMS_STATUS_PERM_MSG_DEL_BY_SMSC_ADMIN = 0x48,
350 SMS_STATUS_PERM_MSG_NOT_EXIST = 0x49,
352 SMS_STATUS_TEMP_CONGESTION = 0x60,
353 SMS_STATUS_TEMP_SME_BUSY = 0x61,
354 SMS_STATUS_TEMP_NO_RESPONSE = 0x62,
355 SMS_STATUS_TEMP_SERVICE_REJECTED = 0x63,
356 SMS_STATUS_TEMP_QOS_NOT_AVAILABLE = 0x64,
357 SMS_STATUS_TEMP_ERROR_IN_SME = 0x65,
361 enum _SMS_REF_NUMBER_E
363 SMS_REF_NUM_8BIT = 0,
368 enum _SMS_REPORT_TYPE_E
370 SMS_REPORT_POSITIVE = 0,
377 SMS_UDH_CONCAT_8BIT = 0x00,
378 SMS_UDH_SPECIAL_SMS = 0x01,
379 // 0x02, 0x03 - Reserved
380 SMS_UDH_APP_PORT_8BIT = 0x04,
381 SMS_UDH_APP_PORT_16BIT = 0x05,
382 SMS_UDH_SC_CONTROL = 0x06,
383 SMS_UDH_SRC_IND = 0x07,
384 SMS_UDH_CONCAT_16BIT = 0x08,
386 SMS_UDH_ALTERNATE_REPLY_ADDRESS = 0x22,
387 SMS_UDH_SINGLE_SHIFT = 0x24,
388 SMS_UDH_LOCKING_SHIFT = 0x25,
393 enum _SMS_WAP_APP_CODE_E
395 SMS_WAP_APPLICATION_DEFAULT = 0x00,
397 SMS_WAP_APPLICATION_PUSH_SI,
398 SMS_WAP_APPLICATION_PUSH_SIC,
400 SMS_WAP_APPLICATION_PUSH_SL,
401 SMS_WAP_APPLICATION_PUSH_SLC,
403 SMS_WAP_APPLICATION_PUSH_CO,
404 SMS_WAP_APPLICATION_PUSH_COC,
406 SMS_WAP_APPLICATION_MMS_UA,
408 SMS_WAP_APPLICATION_PUSH_SIA,
410 SMS_WAP_APPLICATION_SYNCML_DM_BOOTSTRAP,
411 SMS_WAP_APPLICATION_SYNCML_DM_BOOTSTRAP_XML,
412 SMS_WAP_APPLICATION_SYNCML_DM_NOTIFICATION,
413 SMS_WAP_APPLICATION_SYNCML_DS_NOTIFICATION,
414 SMS_WAP_APPLICATION_SYNCML_DS_NOTIFICATION_WBXML,
416 SMS_WAP_APPLICATION_LOC_UA_WBXML,
417 SMS_WAP_APPLICATION_LOC_UA_XML,
419 SMS_WAP_APPLICATION_DRM_UA_XML,
420 SMS_WAP_APPLICATION_DRM_UA_MESSAGE,
421 SMS_WAP_APPLICATION_DRM_UA_CONETENT,
422 SMS_WAP_APPLICATION_DRM_UA_RIGHTS_XML,
423 SMS_WAP_APPLICATION_DRM_UA_RIGHTS_WBXML,
424 SMS_WAP_APPLICATION_DRM_V2_RO_XML,
425 SMS_WAP_APPLICATION_DRM_V2_ROAP_PDU_XML,
426 SMS_WAP_APPLICATION_DRM_V2_ROAP_TRIGGER_XML,
427 SMS_WAP_APPLICATION_DRM_V2_ROAP_TRIGGER_WBXML,
429 SMS_WAP_APPLICATION_PUSH_PROVISIONING,
430 SMS_WAP_APPLICATION_PUSH_PROVISIONING_XML,
431 SMS_WAP_APPLICATION_PUSH_PROVISIONING_WBXML,
433 SMS_WAP_APPLICATION_PUSH_BROWSER_SETTINGS,
434 SMS_WAP_APPLICATION_PUSH_BROWSER_BOOKMARKS,
435 SMS_WAP_APPLICATION_PUSH_SYNCSET_WBXML,
436 SMS_WAP_APPLICATION_PUSH_SYNCSET_XML,
438 SMS_WAP_APPLICATION_PUSH_EMAIL_XML,
439 SMS_WAP_APPLICATION_PUSH_EMAIL_WBXML,
441 SMS_WAP_APPLICATION_PUSH_IMPS_CIR,
443 SMS_WAP_APPLICATION_PUSH_WAP_WMLC,
445 SMS_WAP_APPLICATION_WML_UA,
446 SMS_WAP_APPLICATION_WTA_UA,
448 SMS_WAP_APPLICATION_PUSH_SYNCML,
449 SMS_WAP_APPLICATION_LOC_UA,
450 SMS_WAP_APPLICATION_SYNCML_DM,
451 SMS_WAP_APPLICATION_PUSH_EMAIL,
453 SMS_OMA_APPLICATION_ULP_UA,
454 SMS_OMA_APPLICATION_DLOTA_UA,
456 SMS_WAP_APPLICATION_LBS,
460 enum _SMS_CB_NETWORK_TYPE_E
462 SMS_CB_NETWORK_TYPE_2G_GSM = 1,
463 SMS_CB_NETWORK_TYPE_3G_UMTS,
467 enum _SMS_CBMSG_TYPE_E
469 SMS_CBMSG_TYPE_CBS = 1, /**< CBS */
470 SMS_CBMSG_TYPE_SCHEDULE, /**< Schedule */
471 SMS_CBMSG_TYPE_CBS41, /**< CBS41 */
472 SMS_CBMSG_TYPE_JAVACBS, /**< JAVA-CB Message*/
477 enum _SMS_CBMSG_LANG_TYPE_E
479 SMS_CBMSG_LANG_GERMAN = 0x00,
480 SMS_CBMSG_LANG_ENGLISH = 0x01,
481 SMS_CBMSG_LANG_ITALIAN = 0x02,
482 SMS_CBMSG_LANG_FRENCH = 0x03,
483 SMS_CBMSG_LANG_SPANISH = 0x04,
484 SMS_CBMSG_LANG_DUTCH = 0x05,
485 SMS_CBMSG_LANG_SWEDISH = 0x06,
486 SMS_CBMSG_LANG_DANISH = 0x07,
487 SMS_CBMSG_LANG_PORTUGUESE = 0x08,
488 SMS_CBMSG_LANG_FINNISH = 0x09,
489 SMS_CBMSG_LANG_NORWEGIAN = 0x0a,
490 SMS_CBMSG_LANG_GREEK = 0x0b,
491 SMS_CBMSG_LANG_TURKISH = 0x0c,
492 SMS_CBMSG_LANG_HUNGARIAN = 0x0d,
493 SMS_CBMSG_LANG_POLISH = 0x0e,
494 SMS_CBMSG_LANG_UNSPECIFIED = 0x0f,
496 SMS_CBMSG_LANG_ISO639 = 0x10,
498 SMS_CBMSG_LANG_CZECH = 0x20,
499 SMS_CBMSG_LANG_HEBREW = 0x21,
500 SMS_CBMSG_LANG_ARABIC = 0x22,
501 SMS_CBMSG_LANG_RUSSIAN = 0x23,
502 SMS_CBMSG_LANG_ICELANDIC = 0x24,
503 SMS_CBMSG_LANG_RESERVED_25 = 0x25,
504 SMS_CBMSG_LANG_RESERVED_26 = 0x26,
505 SMS_CBMSG_LANG_RESERVED_27 = 0x27,
506 SMS_CBMSG_LANG_RESERVED_28 = 0x28,
507 SMS_CBMSG_LANG_RESERVED_29 = 0x29,
508 SMS_CBMSG_LANG_RESERVED_2A = 0x2a,
509 SMS_CBMSG_LANG_RESERVED_2B = 0x2b,
510 SMS_CBMSG_LANG_RESERVED_2C = 0x2c,
511 SMS_CBMSG_LANG_RESERVED_2D = 0x2d,
512 SMS_CBMSG_LANG_RESERVED_2E = 0x2e,
513 SMS_CBMSG_LANG_RESERVED_2F = 0x2f,
515 SMS_CBMSG_LANG_DUMMY = 0xFF
519 enum _SMS_CBMSG_CODING_GROUP_E
521 SMS_CBMSG_CODGRP_GENERAL_DCS, /**< Bits 7..4 00xx */
522 SMS_CBMSG_CODGRP_WAP, /**< 1110 Cell Broadcast */
523 SMS_CBMSG_CODGRP_CLASS_CODING, /**< 1111 Cell Broadcast */
527 enum _SMS_SAT_CMD_TYPE_E
530 SMS_SAT_CMD_SEND_SMS,
531 SMS_SAT_CMD_SMS_CTRL,
535 enum _SMS_SIM_EFILE_NAME_E
537 SMS_SIM_EFILE_USIM_SMS = 0x6A3C, /** < USIM Short Messages file */
538 SMS_SIM_EFILE_USIM_SMSP = 0x6A42, /** < USIM SMS parameter */
539 SMS_SIM_EFILE_USIM_SMSS = 0x6A43, /** < USIM SMS status */
540 SMS_SIM_EFILE_USIM_CBMI = 0x6A45, /** < USIM Cell Broadcast Message Identifier */
541 SMS_SIM_EFILE_USIM_MBDN = 0x6FC7, /** < USIM Mail Box Dialing Number */
542 SMS_SIM_EFILE_SMS = 0x6F3C, /** < Short Messages file */
543 SMS_SIM_EFILE_SMSP = 0x6F42, /** < SMS Parameter */
544 SMS_SIM_EFILE_SMSS = 0x6F43, /** < SMS Status */
545 SMS_SIM_EFILE_CBMI = 0x6F45, /** < Cell Broadcast Message Identifier */
546 SMS_SIM_EFILE_MBDN = 0x6FC7, /** < Mail Box Dialing Number */
550 enum _SMS_SIM_MAILBOX_TYPE_E {
551 MSG_SIM_MAILBOX_VOICE = 0x01,
552 MSG_SIM_MAILBOX_VOICE2 = 0x02,
553 MSG_SIM_MAILBOX_FAX = 0x03,
554 MSG_SIM_MAILBOX_DATA = 0x04,
555 MSG_SIM_MAILBOX_EMAIL = 0x05,
556 MSG_SIM_MAILBOX_OTHER = 0x06,
560 /*==================================================================================================
562 ==================================================================================================*/
563 typedef struct _SMS_ADDRESS_S
567 char address[MAX_ADDRESS_LEN+1]; /* < null terminated string */
571 typedef struct _SMS_DCS_S
576 SMS_MSG_CLASS_T msgClass;
577 SMS_CODING_SCHEME_T codingScheme;
578 SMS_CODING_GROUP_T codingGroup;
579 SMS_INDICATOR_TYPE_T indType;
583 typedef struct _SMS_TIME_REL_S
589 typedef struct _SMS_TIME_ABS_S
595 unsigned char minute;
596 unsigned char second;
597 unsigned char timeZone;
601 typedef struct _SMS_TIMESTAMP_S
603 SMS_TIME_FORMAT_T format;
607 SMS_TIME_REL_S relative;
608 SMS_TIME_ABS_S absolute;
613 typedef struct _SMS_CONCAT_8BIT_S
615 unsigned char msgRef;
616 unsigned char totalSeg;
617 unsigned char seqNum;
621 typedef struct _SMS_CONCAT_16BIT_S
623 unsigned short msgRef;
624 unsigned char totalSeg;
625 unsigned char seqNum;
626 } SMS_CONCAT_16BIT_S;
629 typedef struct _SMS_APP_PORT_8BIT_S
631 unsigned char destPort;
632 unsigned char originPort;
633 } SMS_APP_PORT_8BIT_S;
636 typedef struct _SMS_APP_PORT_16BIT_S
638 unsigned short destPort;
639 unsigned short originPort;
640 } SMS_APP_PORT_16BIT_S;
643 typedef struct _SMS_SPECIAL_INDICATION_S
646 unsigned short msgInd;
647 unsigned short waitMsgNum;
648 } SMS_SPECIAL_INDICATION_S;
651 typedef struct _SMS_UDH_S
653 SMS_UDH_TYPE_T udhType;
657 SMS_CONCAT_8BIT_S concat8bit;
658 SMS_CONCAT_16BIT_S concat16bit;
659 SMS_APP_PORT_8BIT_S appPort8bit;
660 SMS_APP_PORT_16BIT_S appPort16bit;
661 SMS_SPECIAL_INDICATION_S specialInd;
662 MSG_SINGLE_SHIFT_S singleShift;
663 MSG_LOCKING_SHIFT_S lockingShift;
664 SMS_ADDRESS_S alternateAddress;
669 typedef struct _SMS_USERDATA_S
672 SMS_UDH_S header[MAX_UD_HEADER_NUM];
674 char data[MAX_USER_DATA_LEN+1];
678 typedef struct _SMS_TPUD_S
681 char ud[MAX_USER_DATA_LEN+1];
685 typedef struct _SMS_SUBMIT_S
691 unsigned char msgRef;
693 SMS_ADDRESS_S destAddress;
696 SMS_TIMESTAMP_S validityPeriod;
697 SMS_USERDATA_S userData;
701 typedef struct _SMS_SUBMIT_DATA_S
703 SMS_ADDRESS_S destAddress;
704 unsigned int segCount;
705 SMS_USERDATA_S userData[MAX_SEGMENT_NUM];
709 typedef struct _SMS_DELIVER_S
715 SMS_ADDRESS_S originAddress;
718 SMS_TIMESTAMP_S timeStamp;
719 SMS_USERDATA_S userData;
724 typedef struct _SMS_DELIVER_REPORT_S
726 SMS_REPORT_TYPE_T reportType;
728 SMS_FAIL_CAUSE_T failCause;
729 unsigned char paramInd;
732 SMS_USERDATA_S userData;
733 } SMS_DELIVER_REPORT_S;
736 typedef struct _SMS_STATUS_REPORT_S
741 unsigned char msgRef;
742 SMS_ADDRESS_S recipAddress;
743 SMS_TIMESTAMP_S timeStamp;
744 SMS_TIMESTAMP_S dischargeTime;
746 unsigned char paramInd;
749 SMS_USERDATA_S userData;
750 } SMS_STATUS_REPORT_S;
753 typedef struct _SMS_TPDU_S
755 SMS_TPDU_TYPE_T tpduType;
760 SMS_DELIVER_S deliver;
761 SMS_DELIVER_REPORT_S deliverRep;
762 SMS_STATUS_REPORT_S statusRep;
769 msg_request_id_t reqId; /**< Indicates the request ID, which is unique. When applications submit a request to the framework, this value will be set by the framework. */
770 MSG_MESSAGE_INFO_S msgInfo; /**< Indicates the message structure to be sent by applications. */
771 MSG_SENDINGOPT_INFO_S sendOptInfo;
772 } SMS_REQUEST_INFO_S;
775 typedef struct _SMS_SENT_INFO_S
777 SMS_REQUEST_INFO_S reqInfo; /**< Indicates the corresponding request structure. */
782 typedef struct _SMS_PUSH_APP_INFO_S
786 SMS_WAP_APP_CODE_T appCode;
787 } SMS_PUSH_APP_INFO_S;
790 typedef struct _SMS_CBMSG_SERIAL_NUM_S
792 unsigned char geoScope;
793 unsigned char updateNum;
794 unsigned short msgCode;
795 } SMS_CBMSG_SERIAL_NUM_S;
798 typedef struct _SMS_CBMSG_DCS_S
800 SMS_CBMSG_CODING_GROUP_T codingGroup; /**< Coding group, GSM 03.38 */
801 SMS_MSG_CLASS_T classType; /**< The message class */
802 bool bCompressed; /**< if text is compressed this is TRUE */
803 SMS_CODING_SCHEME_T codingScheme; /**< How to encode a message. */
804 SMS_CBMSG_LANG_TYPE_T langType;
805 unsigned char iso639Lang[3]; /* 2 GSM chars and a CR char */
807 unsigned char rawData;
811 typedef struct _SMS_CBMSG_HEADER_S
813 SMS_CBMSG_SERIAL_NUM_S serialNum; /**< Cell Broadcast Serial number */
814 unsigned short msgId; /**< Message identifier code */
815 MSG_CB_LANGUAGE_TYPE_T langType; /**< Languages in CB Messages */
816 SMS_CBMSG_DCS_S dcs; /**< Data coding scheme */
817 unsigned char page; /**< current page number */
818 unsigned char totalPages; /**< Total number of pages in this messages */
819 time_t recvTime; /**< Msg Recv Time */
820 } SMS_CBMSG_HEADER_S;
823 typedef struct _SMS_CBMSG_PAGE_S
825 SMS_CBMSG_TYPE_T cbMsgType; /*CBS Msg or SCHEDULE Msg or CBS41 Msg */
826 SMS_CBMSG_HEADER_S pageHeader; /**< CB Message Header */
827 int pageLength; /**< message string length */
828 char pageData[MAX_CBMSG_PAGE_SIZE+1]; /**< user data */
832 typedef struct _SMS_CBMSG_S
834 SMS_CBMSG_TYPE_T cbMsgType; /*CBS Msg or SCHEDULE Msg or CBS41 Msg */
835 unsigned short msgId; /**< Message identifier code */
836 SMS_MSG_CLASS_T classType; /**< The message class */
837 SMS_CODING_SCHEME_T codingScheme; /**< How to encode a message. */
838 time_t recvTime; /**< Msg Recv Time */
839 int msgLength; /**< message string length */
840 char msgData[MAX_CBMSG_PAGE_SIZE*MAX_CBMSG_PAGE_NUM+1]; /**< user data */
843 typedef struct _SMS_ETWS_PRIMARY_S
846 SMS_CBMSG_SERIAL_NUM_S serialNum;
847 unsigned short msgId;
848 unsigned short warningType;
849 unsigned char warningSecurityInfo[MAX_ETWS_SIZE-6];
853 typedef struct _SMS_WSP_CONTENTS_TYPE_S
855 char* contentsTypeName;
856 unsigned char contentsTypeCode;
857 } SMS_WSP_CONTENTS_TYPE_S;
860 typedef struct _SMS_WSP_CHARSET_S
863 unsigned short charsetCode;
867 typedef struct _SMS_WAP_UNREGISTER_CONTENTS_TYPE_S
869 char* contentsTypeName;
870 unsigned short contentsTypeCode;
871 } SMS_WAP_UNREGISTER_CONTENTS_TYPE_S;
874 typedef struct _SMS_WSP_LANGUAGE_S
877 unsigned char languageCode;
878 } SMS_WSP_LANGUAGE_S;
881 typedef struct _SMS_WSP_HEADER_PARAMETER_S
883 char* parameterToken;
884 unsigned int parameterCode;
885 } SMS_WSP_HEADER_PARAMETER_S;
888 typedef struct _SMS_WSP_METHOD_TYPE_S
891 unsigned char methodCode;
892 } SMS_WSP_METHOD_TYPE_S;
895 typedef struct _SMS_WSP_SECURITY_TYPE_S
897 char* SecurityTypeName;
898 unsigned char SecurityTypeCode;
899 }SMS_WSP_SECURITY_TYPE_S;
903 * @brief Represents SIM count information.
907 unsigned int totalCount; /**< The total number of SIM */
908 int usedCount; /**< The used number of SIM */
909 int indexList[MAX_SIM_SMS_NUM]; /**< The SIM index list */
914 * @brief Represents Concat SIM Msg information.
918 unsigned int simIdCnt; /**< The total number of SIM Msg ID*/
919 msg_sim_id_t simIdList[MAX_SEGMENT_NUM]; /**< The SIM Msg ID List */
920 char msgData[(MAX_MSG_DATA_LEN*MAX_SEGMENT_NUM)+1]; /**< user data */
921 } SMS_CONCAT_SIM_MSG_S;
925 * @brief Represents Sim Mailbox information
929 int rec_index; /**< index which stands for the location where record is saved in SIM*/
930 int profile_num; /**< SIM profile index*/
931 SMS_SIM_MAILBOX_TYPE_T mb_type;
932 int alpha_id_max_len; /**< alpha max length in SIM - READ ONLY*/
933 char alpha_id[MAX_SIM_XDN_ALPHA_ID_LEN + 1]; /**< Alpha Identifier */
934 MSG_SMS_TON_T ton; /**< Type Of Number */
935 MSG_SMS_NPI_T npi; /**< Number Plan Identity */
936 char num[MAX_PHONE_NUMBER_LEN + 1]; /**< Dialing Number/SSC String */
937 unsigned char cc_id; /**< Capability/Configuration Identifier */
938 unsigned char ext1_id; /**< Extensiion1 Record Identifier */
939 } SMS_SIM_MAILBOX_INFO_S;
943 * @brief Represents Sim Mailbox list
947 SMS_SIM_MAILBOX_INFO_S list[MAX_SIM_MSP_CNT*5]; //max is 10
948 } SMS_SIM_MAILBOX_LIST_S;
952 * @brief Represents Message Waiting Indication
956 unsigned char indicator_status; /**< Indicator Type*/
957 int voice_count; /**< VoiceMail Count*/
958 int fax_count; /**< FAX Count*/
959 int email_count; /**< Email Count*/
960 int other_count; /**< Other Count*/
961 int video_count; /**< VideoMail Count*/
962 } SMS_SIM_MWI_NORMAL_INFO_S;
966 * @brief Represents Message Waiting Indication list
970 SMS_SIM_MWI_NORMAL_INFO_S mw_info[MAX_SIM_MSP_CNT];
971 } SMS_SIM_MWI_LIST_S;
975 * @brief Represents Message Waiting Indication for CPHS
978 int b_voice1; /**< VoiceMsgLine1 message waiting flag */
979 int b_voice2; /**< VoiceMsgLine2 message waiting flag */
980 int b_fax; /**< FAX message waiting flag */
981 int b_data; /**< Data message waiting flag */
982 } SMS_SIM_MWI_CPHS_INFO_S;
986 * @brief Represents Message Waiting Indication Information
990 SMS_SIM_MWI_LIST_S mwi_list;
991 SMS_SIM_MWI_CPHS_INFO_S cphs_mwi;
992 } SMS_SIM_MWI_INFO_S;
995 * @brief Represents Message Data Information from Telephony.
998 unsigned char sca[MAX_ADDRESS_LEN]; /**< Service Center address */
999 int msgLength; /**< Size of array szData (which is actual TPDU message) */
1000 unsigned char szData[MAX_TPDU_DATA_LEN + 1]; /**< SMS TPDU message */
1003 #endif //SMS_PLUGIN_TYPES_H