summaryrefslogtreecommitdiff
path: root/manager/inc/msg-manager-notification.h
blob: 8837c7630e3f0886c2b2f984816b8fea382cc265 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
/*
 * Copyright (c) 2016 Samsung Electronics Co., Ltd. All rights reserved
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
*/

#ifndef __MSG_MGR_NOTIFICATION_H__
#define __MSG_MGR_NOTIFICATION_H__

/*==================================================================================================
										INCLUDE FILES
==================================================================================================*/
#include <msg.h>

#include <app_control.h>

/*==================================================================================================
										DEFINES
==================================================================================================*/

#define MSG_NOTI_INTEGRATION

#define MSGFW_MESSAGE_TABLE_NAME				"MSG_MESSAGE_TABLE"
#define MSGFW_FOLDER_TABLE_NAME					"MSG_FOLDER_TABLE"
#define MSGFW_ADDRESS_TABLE_NAME				"MSG_ADDRESS_TABLE"
#define MSGFW_CONVERSATION_TABLE_NAME		"MSG_CONVERSATION_TABLE"
#define MMS_PLUGIN_MESSAGE_TABLE_NAME		"MSG_MMS_MESSAGE_TABLE"
#define MSGFW_SMS_REPORT_TABLE_NAME		"MSG_SMS_REPORT_TABLE"
#define MSGFW_REPORT_TABLE_NAME					"MSG_REPORT_TABLE"

#define MSG_MGR_APP_ID				"org.tizen.msg-manager"
#define MSG_DEFAULT_APP_ID			"org.tizen.message"
#define MSG_QUICKPANEL_APP_ID		"org.tizen.quickpanel"
#define MSG_CALL_APP_ID				"org.tizen.call-ui"
#define MSG_SETTING_APP_ID			"org.tizen.setting"

#define MSG_APP_PACKAGE_NAME	"message"

#define MSG_APP_LOCALEDIR			TZ_SYS_RO_APP_PATH "/" MSG_MGR_APP_ID "/res/locale"

#define MSG_NOTIFICATION_ICON_DIR			"/" MSG_QUICKPANEL_APP_ID "/shared/res/noti_icons"

/* notification icon */
#define MSG_NORMAL_ICON_PATH	TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message.png"
#define MSG_SIM_ICON_PATH	TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_sim-card.png"
#define MSG_OTA_ICON_PATH	TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_OTA.png"
#define MSG_VOICE_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_voice_mail.png"
#define MSG_CB_ICON_PATH			TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_cb-msg.png"
#define MSG_READ_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_read_report.png"
#define MSG_DELIVERY_ICON_PATH	TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_delivery_report.png"
#define MSG_REPLY_ICON_PATH			TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_reply.png"
#define MSG_SMS_SENDING_FAILED_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_failed.png"
#define MSG_MMS_SENDING_FAILED_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_failed.png"
#define MSG_MMS_RETRIVE_FAILED_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Message/noti_message_mms_problem.png"
#define MSG_EMERGENCY_ICON_PATH		TZ_SYS_RO_APP_PATH MSG_DEFAULT_APP_ID "/res/icons/default/small/noti_emergency_mode.png"
#define MSG_NO_CONTACT_PROFILE_ICON_PATH	TZ_SYS_RO_APP_PATH MSG_NOTIFICATION_ICON_DIR "/Contact/noti_contact_default.png"
#define MSG_ACTIVE_PUSH_ICON_PATH		"reserved:push_message"

/* status bar icon */
#define MSG_NORMAL_STATUS_ICON				"reserved://indicator/icons/notify_message"
#define MSG_FAILED_STATUS_ICON				"reserved://indicator/icons/notify_message_failed"
#define MSG_DELIVER_REPORT_STATUS_ICON	"reserved://indicator/icons/delivery_report_message"
#define MSG_READ_REPORT_STATUS_ICON		"reserved://indicator/icons/read_report_message"
#define MSG_VOICE_MSG_STATUS_ICON			"reserved://indicator/icons/notify_voicemail"
#define MSG_SIM_FULL_STATUS_ICON			"reserved://indicator/icons/sim_card_full"

#ifndef TIZEN_I586_ENABLED
/* system string */
#define NEW_MESSAGE			"IDS_MSGF_POP_NEW_MESSAGE"
#define NEW_MESSAGES			"IDS_MSGF_POP_NEW_MESSAGES"
#define MSG_UNKNOWN_SENDER	"IDS_MSGF_BODY_UNKNOWN"
#define MSG_NO_SUBJECT			"IDS_MSGF_BODY_NO_SUBJECT"


/* message app string for ticker noti */
#define SENDING_MULTIMEDIA_MESSAGE_FAILED	"IDS_MSGF_POP_SENDING_MULTIMEDIA_MESSAGE_FAILED"
#define MESSAGE_RETRIEVED								"IDS_MSGF_BODY_MESSAGE_RETRIEVED"
#define SMS_MESSAGE_SENDING_FAIL					"IDS_MSGF_POP_SENDING_MESSAGE_FAILED"
#define SMS_MESSAGE_SIM_MESSAGE_FULL				"IDS_MSGF_BODY_SIM_MEMORY_FULL_DELETE_SOME_ITEMS"
#define SMS_MESSAGE_MEMORY_FULL			"IDS_MSGF_POP_NOT_ENOUGH_MEMORY_DELETE_SOME_ITEMS"
#define SMS_SIM_CARD_FULL				"IDS_MSG_HEADER_SIM_CARD_FULL"

/* message app string for quickpanel noti */
#define MSG_MESSAGE		"IDS_MSG_BODY_MESSAGES_M_APPLICATION_NAME_ABB"
#define VOICE_MAIL					"IDS_MSGF_BODY_VOICEMAIL"
#define NEW_VOICE_MAIL			"IDS_MSGF_BODY_NEW_VOICEMAIL"
#define CB_MESSAGE "IDS_MSGF_BODY_CB_MESSAGES"
#define CP_MESSAGE "IDS_MSGF_BODY_CP_MESSAGES"
#define PUSH_MESSAGE "IDS_MSGF_BODY_PUSH_MESSAGES"
#define DELIVERY_MESSAGE "IDS_MSGF_BODY_DELIVERY_REPORT"
#define READ_REPORT_MESSAGE "IDS_MSGF_POP_READ_REPORT"
#define MESSAGE_DELIVERED	"IDS_MSG_SBODY_MESSAGE_DELIVERED_M_STATUS_ABB"
#define MESSAGE_DELIVERED_POPUP "IDS_MSG_TPOP_MESSAGE_DELIVERED"
#define MESSAGE_EXPIRED "IDS_MSG_SBODY_MESSAGE_EXPIRED_M_STATUS_ABB"
#define MESSAGE_REJECTED "IDS_MSG_SBODY_MESSAGE_REJECTED_M_STATUS_ABB"
#define MESSAGE_DELAYED "IDS_MSG_SBODY_MESSAGE_DELAYED_M_STATUS_ABB"
#define MESSAGE_DELAYED_POPUP "IDS_MSG_TPOP_MESSAGE_DELAYED"
#define RECIPIENT_NOT_AVAILABLE "IDS_MSG_SBODY_RECIPIENT_NOT_AVAILABLE_M_STATUS_ABB"
#define UNABLE_TO_DELIVER_MESSAGE_RECIPIENT_NOT_AVAILABLE "IDS_MSG_TPOP_COULDNT_DELIVER_MESSAGE_RECIPIENT_NOT_AVAILABLE"
#define UNABLE_TO_DELIVER_MESSAGE_MESSAGE_REJECTED "IDS_MSG_TPOP_COULDNT_DELIVER_MESSAGE_MESSAGE_REJECTED_BY_RECIPIENT"
#define UNABLE_TO_DELIVER_MESSAGE_MESSAGE_EXPIRED "IDS_MSG_TPOP_COULDNT_DELIVER_MESSAGE_MESSAGE_EXPIRED"
#define MESSAGE_READ_BY_PS		"IDS_MSG_SBODY_MESSAGE_READ_BY_PS_M_STATUS_ABB"
#define MESSAGE_DELETED_BY_PS	"IDS_MSG_SBODY_MESSAGE_DELETED_BY_PS_M_STATUS_SBODY_ABB"
#define VOICE_1_MESSAGE	"IDS_MSGF_BODY_1_MESSAGE"
#define VOICE_N_MESSAGE	"IDS_MSGF_BODY_PD_MESSAGES"
#define SIM_CARD_MESSAGE		"IDS_MSGF_BODY_SIM_CARD_MESSAGES"
#define READ_REPORT_READ		"IDS_COM_BODY_READ"
#define READ_REPORT_DELETE	"IDS_MSG_OPT_DELETE"
#define FAILED_MSG_EXIST	"IDS_MSG_BODY_FAILED_MESSAGES_EXIST"
#define ENABLE_EMERGENCY_MODE	"IDS_MSG_BODY_ENABLE_EMERGENCY_MODE_JPN_DCM"
#define EMERGENCY_MODE_DESCRIPTION	"IDS_MSG_SBODY_TAP_HERE_TO_ENABLE_EMERGENCY_MODE_TO_SAVE_BATTERY_POWER_JPN_DCM"
#define FAILED_TO_SEND_MESSAGE	"IDS_MSG_HEADER_FAILED_TO_SEND_MESSAGE_ABB"
#define MMS_READ_REPORT_SENT	"IDS_MSG_SBODY_READ_REPORT_SENT_ABB"
#define FAILED_TO_SEND_MMS_READ_REPORT	"IDS_MSG_SBODY_FAILED_TO_SEND_READ_REPORT_ABB"
#define MESSAGE_SIZE_UNIT_KB	"IDS_MSGF_BODY_MSGSIZE_KB"
#define MESSAGE_SIZE_STRING		"IDS_MSGF_BODY_MESSAGE_SIZE"
#define MSG_SUBJECT_COLON	"IDS_MSGF_OPT_SUBJECT_COLON"
#define MSG_SINGLE_ATTACHMENT		"IDS_MSG_SBODY_1_ATTACHMENT"
#define MSG_PD_ATTACHMENTS		"IDS_MSG_SBODY_PD_ATTACHMENTS"
#else
/* system string */
#define NEW_MESSAGE			"New message"
#define NEW_MESSAGES			"New messages"
#define MSG_UNKNOWN_SENDER	"New message from Unknown."
#define MSG_NO_SUBJECT			"No subject"


/* message app string for ticker noti */
#define SMS_MESSAGE_MEMORY_FULL			"Not enough memory. Delete some items."
#define SMS_SIM_CARD_FULL				"SIM card full"

/* message app string for quickpanel noti */
#define MSG_MESSAGE		"Message"
#define VOICE_MAIL					"Voicemail"
#define NEW_VOICE_MAIL			"New voicemail"
#define CB_MESSAGE "CB messages"
#define CP_MESSAGE "CP messages"
#define PUSH_MESSAGE "Push messages"
#define DELIVERY_MESSAGE "Delivery report"
#define READ_REPORT_MESSAGE "Read report"
#define MESSAGE_DELIVERED	"Message delivered"
#define MESSAGE_DELIVERED_POPUP "Message delivered."
#define MESSAGE_EXPIRED "Message expired"
#define MESSAGE_REJECTED "Message rejected"
#define MESSAGE_DELAYED "Message delayed"
#define MESSAGE_DELAYED_POPUP "Message delayed."
#define RECIPIENT_NOT_AVAILABLE "Recipient not available"
#define UNABLE_TO_DELIVER_MESSAGE_RECIPIENT_NOT_AVAILABLE "Couldn't deliver message. Recipient not available."
#define UNABLE_TO_DELIVER_MESSAGE_MESSAGE_REJECTED "Couldn't deliver message. Message rejected by recipient."
#define UNABLE_TO_DELIVER_MESSAGE_MESSAGE_EXPIRED "Couldn't deliver message. Message expired."
#define MESSAGE_READ_BY_PS		"Message read by %s"
#define MESSAGE_DELETED_BY_PS	"Message deleted by %s"
#define VOICE_1_MESSAGE	"1 message"
#define VOICE_N_MESSAGE	"%d messages"
#define SIM_CARD_MESSAGE		"SIM card messages"
#define READ_REPORT_READ		"Read"
#define READ_REPORT_DELETE	"Deleted."
#define FAILED_MSG_EXIST	"Failed messages exist."
#define ENABLE_EMERGENCY_MODE	"Enable Emergency mode"
#define EMERGENCY_MODE_DESCRIPTION	"Tap here to enable Emergency mode to save battery power."
#define FAILED_TO_SEND_MESSAGE	"Failed to send message."
#define MMS_READ_REPORT_SENT	"Read report sent"
#define FAILED_TO_SEND_MMS_READ_REPORT	"Failed to send read report"
#define MESSAGE_SIZE_UNIT_KB	"KB"
#define MESSAGE_SIZE_STRING		"Message Size"
#define MSG_SUBJECT_COLON	"Subject:"
#define MSG_SINGLE_ATTACHMENT		"1 attachment"
#define MSG_PD_ATTACHMENTS		"%d attachments"
#endif


#define NOTIFICATION_PRIV_ID	"db/private/msg-service/notification_priv_id"
#define VOICE_NOTI_ID_1		"db/private/msg-service/voice_noti_id1"
#define VOICE_NOTI_ID_2			"db/private/msg-service/voice_noti_id2"
#define CB_NOTI_PRIV_ID		"db/private/msg-service/cb_noti_priv_id"
#define SIM_MSG_NOTI_PRIV_ID	"db/private/msg-service/sim_msg_noti_priv_id"
#define MSG_SENTFAIL_NOTI_ID		"db/private/msg-service/sentfail_noti_id"
#define SIM_FULL_NOTI_PRIV_ID	"db/private/msg-service/sim_full_noti_id"

#define MSG_SETTING_NOTIFICATION	"db/private/msg-service/general/notification"
#define MSG_SETTING_VIBRATION		"db/private/msg-service/general/vibration"
#define MSG_SETTING_PREVIEW			"db/private/msg-service/general/preview"
#define MSG_SETTING_RINGTONE_PATH			"db/private/msg-service/general/ringtone_path"
#define MSG_SETTING_RINGTONE_TYPE			"db/private/msg-service/general/ringtone_type"

#define VOICEMAIL_NUMBER				"db/private/msg-service/voice_mail/voice_mail_number"
#define VOICEMAIL_COUNT				"db/private/msg-service/voice_mail/voice_mail_count"
#define VOICEMAIL_ALPHA_ID				"db/private/msg-service/voice_mail/voice_mail_alphaid"
#define VOICEMAIL_DEFAULT_NUMBER		"db/private/msg-service/voice_mail/voice_mail_default_number"
#define VOICEMAIL_DEFAULT_ALPHA_ID		""

#define MSG_ALERT_REP_TYPE			"db/setting/sound/noti/msg_alert_rep_type"

#define MSG_TEL_URI_VOICEMAIL		"tel:VOICEMAIL"

#define MSG_NOTI_TEXT_LEN	(512)
#define MSG_NOTI_TEXT_LEN_S	(256)
#define MAX_VCONFKEY_NAME_LEN	128
#define MSG_ACTIVE_NOTI_BUTTON_NUM 3
#define MAX_QUERY_LEN		4096

#define MSG_ACTIVE_NOTI_BUTTON_NUM_NONE 0
#define MSG_ACTIVE_NOTI_BUTTON_NUM_NORMAL_MESSAGE 3
#define MSG_ACTIVE_NOTI_BUTTON_NUM_UNRETRIVED_MESSAGE 1
#define MSG_ACTIVE_NOTI_BUTTON_NUM_UNKNOWN_SENDER 1
#define MSG_ACTIVE_NOTI_BUTTON_NUM_CB_MESSAGE 1
#define MSG_ACTIVE_NOTI_BUTTON_NUM_PUSH_MESSAGE 1
#define MSG_ACTIVE_NOTI_BUTTON_NUM_CLASS0_MESSAGE 1

typedef unsigned char msg_mgr_notification_type_t; /* _msg_notification_type_e */
typedef unsigned char msg_mgr_active_notification_type_t; /* _msg_active_notification_type_e */


/*==================================================================================================
										ENUMS
==================================================================================================*/

enum _msg_mgr_notification_type_e {
	MSG_MGR_NOTI_TYPE_ALL = 0x00,

	/* Refresh single/multiple notification */
	MSG_MGR_NOTI_TYPE_NORMAL,
	MSG_MGR_NOTI_TYPE_CB,
	MSG_MGR_NOTI_TYPE_SIM,
	MSG_MGR_NOTI_TYPE_FAILED,

	/* Add only single notification */
	MSG_MGR_NOTI_TYPE_VOICE_1,
	MSG_MGR_NOTI_TYPE_VOICE_2,
	MSG_MGR_NOTI_TYPE_MWI,
	MSG_MGR_NOTI_TYPE_CLASS0,
	MSG_MGR_NOTI_TYPE_SMS_DELIVERY_REPORT,
	MSG_MGR_NOTI_TYPE_MMS_READ_REPORT,
	MSG_MGR_NOTI_TYPE_MMS_DELIVERY_REPORT,
	MSG_MGR_NOTI_TYPE_MMS_READ_REPORT_SENT,

	MSG_MGR_NOTI_TYPE_SIM_FULL,
};


enum _msg_mgr_active_notification_type_e {
	MSG_MGR_ACTIVE_NOTI_TYPE_NONE,
	MSG_MGR_ACTIVE_NOTI_TYPE_ACTIVE,
	MSG_MGR_ACTIVE_NOTI_TYPE_INSTANT,
};


enum _msg_maintype_e {
	MSG_UNKNOWN_TYPE = 0,		/**< Unknown main type */
	MSG_SMS_TYPE,				/**< SMS */
	MSG_MMS_TYPE,				/**< MMS */
};


enum _msg_subtype_e {
	/* SMS Specific Message Type */
	MSG_NORMAL_SMS = 0,			/**< Text SMS message */
	MSG_CB_SMS,					/**< Cell Broadcasting  message */
	MSG_JAVACB_SMS,				/**< JAVA Cell Broadcasting  message */
	MSG_TYPE0_SMS,					/**< Short Message Type 0 */
	MSG_REPLACE_TYPE1_SMS,		/**< Replace Short Message Type 1 */
	MSG_REPLACE_TYPE2_SMS,		/**< Replace Short Message Type 2 */
	MSG_REPLACE_TYPE3_SMS,		/**< Replace Short Message Type 3 */
	MSG_REPLACE_TYPE4_SMS,		/**< Replace Short Message Type 4 */
	MSG_REPLACE_TYPE5_SMS,		/**< Replace Short Message Type 5 */
	MSG_REPLACE_TYPE6_SMS,		/**< Replace Short Message Type 6 */
	MSG_REPLACE_TYPE7_SMS,		/**< Replace Short Message Type 7 */
	MSG_WAP_SI_SMS,				/**< WAP Push Message SI */
	MSG_WAP_SL_SMS,				/**< WAP Push Message SL */
	MSG_WAP_CO_SMS,				/**< WAP Push Message CO */
	MSG_MWI_VOICE_SMS,			/**< MWI Message Voice */
	MSG_MWI_FAX_SMS,				/**< MWI Message Fax */
	MSG_MWI_EMAIL_SMS,			/**< MWI Message Email */
	MSG_MWI_OTHER_SMS,			/**< MWI Message Other */
	MSG_STATUS_REPORT_SMS,		/**< SMS-STATUS-REPORT */
	MSG_SYNCML_CP,				/**< SyncML Message CP */
	MSG_LBS_SMS,					/**< LBS Message */
	MSG_REJECT_SMS,				/**< Reject Message */
	MSG_CONCAT_SIM_SMS,			/**< Concatenated Message in SIM */

	/* MMS Specific Message Type */
	MSG_SENDREQ_MMS = 24,					/**< MMS Send Request message */
	MSG_SENDCONF_MMS,					/**< MMS Send Confirm message */
	MSG_NOTIFICATIONIND_MMS,			/**< MMS Notification Indication message */
	MSG_GET_MMS,						/**< MMS GET MMS message */
	MSG_NOTIFYRESPIND_MMS,			/**< MMS Notify Response Indication message */
	MSG_RETRIEVE_MMS,					/**< MMS Retrive MMS message */
	MSG_RETRIEVE_AUTOCONF_MMS,		/**< MMS Retrieve Confirm message by auto retrieving*/
	MSG_RETRIEVE_MANUALCONF_MMS,	/**< MMS Retrieve Confirm message by manual retrieving*/
	MSG_ACKNOWLEGEIND_MMS,			/**< MMS Acknowledge Indication message */
	MSG_DELIVERYIND_MMS,				/**< MMS Delivery Indication message */
	MSG_READRECIND_MMS,				/**< MMS Read Receive Indication message */
	MSG_READORGIND_MMS,				/**< MMS Read Origin Indication message */
	MSG_FORWARD_MMS,					/**< MMS Forward message */
	MSG_FORWARDREQ_MMS,				/**< MMS Forward Request message */
	MSG_FORWARDCONF_MMS,				/**< MMS Forward Confirm message */
	MSG_READREPLY_MMS,				/**< MMS Read Reply message */
	MSG_SENDREQ_JAVA_MMS,			/**< MMS Send Request message for JAVA MMS */
};

/*==================================================================================================
										STRUCTURES
==================================================================================================*/
typedef struct _msg_mgr_message_info_s {
	msg_message_id_t msgId;
	int sim_idx;
	time_t displayTime;
	msg_network_status_t networkStatus;
	char displayName[MAX_DISPLAY_NAME_LEN+1];
	char addressVal[MAX_ADDRESS_VAL_LEN+1];
	char msgText[MAX_MSG_TEXT_LEN+1];
} MSG_MGR_MESSAGE_INFO_S;

/*==================================================================================================
										FUNCTION PROTOTYPES
==================================================================================================*/

void MsgMgrInitNoti();
void MsgMgrOnBoot();

int MsgMgrInsertOnlyActiveNotification(msg_mgr_notification_type_t noti_type, MSG_MGR_MESSAGE_INFO_S *msg_info);
int MsgMgrRefreshNotification(msg_mgr_notification_type_t noti_type, bool bFeedback, msg_mgr_active_notification_type_t active_type);
int MsgMgrAddReportNotification(msg_mgr_notification_type_t noti_type, MSG_MGR_MESSAGE_INFO_S *msg_info);
int MsgMgrDeleteReportNotification(const char *addr);
int MsgMgrAddNotification(msg_mgr_notification_type_t noti_type, MSG_MGR_MESSAGE_INFO_S *msg_info);
int MsgMgrDeleteNoti(msg_mgr_notification_type_t noti_type, int simIndex);
int MsgMgrDeleteSentReadReportNotification();

void MsgMgrRefreshAllNotification(bool bWithSimNoti, bool bFeedback, msg_mgr_active_notification_type_t active_type);
int MsgMgrInsertInstantMessage(msg_mgr_notification_type_t noti_type);
bool MsgMgrCheckNotificationSettingEnable();
int MsgMgrInsertTicker(const char* pTickerMsg, const char* pLocaleTickerMsg, bool bPlayFeedback, int msgId);
int MsgMgrInsertBadge(unsigned int unreadMsgCnt);


#endif /*__MSG_MGR_NOTIFICATION_H__ */