line source
+ − /*
+ − +--------------------------------------------------------------------+
+ − | PROJECT: MMI-Framework (8417) $Workfile:: mfw_sms.h $|
+ − | $Author:: Vo $Revision:: 1 $|
+ − | CREATED: 21.12.98 $Modtime:: 21.03.00 10:48 $|
+ − | STATE : code |
+ − +--------------------------------------------------------------------+
+ −
+ − MODULE : MFW_SMS
+ −
+ − PURPOSE : This modul contains the definition for SMS management.
+ −
+ −
+ − $History:: mfw_sms.h $
+ −
+ − Feb 28, 2007 OMAPS00109953 a0393213(R.Prabakar)
+ − Description : Need to be able to store SMS in SIM/ME
+ − Solution : Earlier, index alone was sufficient to identify messages. Now memory should also be taken care of.
+ −
+ − Feb 07, 2006 DR: OMAPS00059261 x0pleela
+ − Description: SMS is not forwarding STATUS reports that are read from SIM storage to ACI
+ − Solution: Renamed "MFW_SMS_STATRPT_PENDG" to MFW_SMS_STATRPT in T_MFW_SMS_STAT
+ − Removed T_MFW_SMS_MT_TYPE enumeration added earlier
+ −
+ − Feb 01, 2006 DR: OMAPS00059261 x0pleela
+ − Description: SMS is not forwarding STATUS reports that are read from SIM storage to ACI
+ − Solution: Added new enumeration T_MFW_SMS_MSG_TYPE to suport message type MT, MO or STATUS REPORT.
+ − Changed the name from T_MFW_SMS_MSG_TYPE to T_MFW_SMS_MT_TYPE
+ − Changed the type of new field sms_msg_type ( of type T_MFW_SMS_MT_TYPE) in the structure T_MFW_SMS_MT.
+ − Added new enumeration type "MFW_SMS_STATRPT_PENDG" into T_MFW_SMS_STAT
+ −
+ − Jan 30, 2006 DR: OMAPS00059261 x0pleela
+ − Description: SMS is not forwarding STATUS reports that are read from SIM storage to ACI
+ − Solution: Added new enumeration T_MFW_SMS_MSG_TYPE to suport message type either TEXT or STATUS REPORT.
+ − Added new field sms_msg_type to the structure T_MFW_SMS_MT.
+ −
+ − Jan 20, 2006 REF: DRT OMAPS00053377 xdeepadh
+ − Description: SMS Validity Period - using MMI - Failure, MS not able to set SMS validity
+ − Solution: Store the first octet too while querying.
+ −
+ − Dec 15, 2005 REF: MMI-FIX-OMAPS00058684 x0035544
+ − Description: OMAPS00045726 / MMI-FIX-30439 Follow-Up : ifdef for FF Home Zone forgotten.
+ − Solution: Added Feature flag FF_HOMEZONE for the function sms_homezoneCBToggle(U8 Activate_CB)
+ − in this file as it has got the prototype for this function
+ −
+ − Jun 14, 2005 REF: MMI-FIX-30439 x0018858
+ − Description: The homezone/cityzone tags were not being displayed properly.
+ − Solution: Modified to save the tags properly in caches and also made the
+ − appropriate modifications to update the same properly during mobility.
+ −
+ − x0018858 24 Mar, 2005 MMI-FIX-11321
+ − Issue Description :- If the inbox is full and a new message is receivd, no indication is received.
+ − Fix: Added support for handling indication when message box is full and
+ − there is a pending message.
+ −
+ − Feb 16, 2005 REF: CRR MMI-SPR-27900 xnkulkar
+ − Issue description: BMI: using the tool nowSMS the voicemail indication via sms does not work
+ − Solution: Instead of identifying voice using addr[0] and pid, we use dcs. Also, messages belonging
+ − to group "1100" are deleted when voicemail icon is displayed.
+ −
+ − Oct 04, 2004 REF: CRR 25519 Deepa M.D
+ − Bug:Re-align structure members in MFW
+ − Fix:Structure elements have been realigned to avoid the structure padding
+ −
+ − * ***************** Version 27 *****************
+ − SPR 2260: Merged in bugfixes 1833, and 1830
+ − fom the 1.6.3 branch into this file.
+ − *
+ − * ***************** Version 26 *****************
+ − * User: Vo Date: 22.03.00 Time: 17:44
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − * check voice mail status
+ − *
+ − * ***************** Version 24 *****************
+ − * User: Vo Date: 14.01.00 Time: 20:15
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − * Bug fix: Constant define: MAX_CBMSG_LEN
+ − * New:change parameter "data" to "data + len" in function
+ − * sms_submit(), sms_store() and sms_change()
+ − *
+ − * ***************** Version 23 *****************
+ − * User: Vo Date: 2.12.99 Time: 13:15
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − *
+ − * ***************** Version 22 *****************
+ − * User: Vo Date: 17.11.99 Time: 12:17
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − * change define NON_STRING_CHARACTER to NO_ASCIIZ
+ − *
+ − * ***************** Version 21 *****************
+ − * User: Vo Date: 17.11.99 Time: 11:00
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − * 1. Change constants: T_MFW_SMS_MEM
+ − * 2. New constants: T_MFW_SMS_MO_TYPE for submit message type
+ − * 3. New constants: T_MFW_SMS_CMD_IND for command indication
+ − * 4. #ifdef NON_STRING_CHARACTER - alpha uses data + len
+ − * 5. Change interface: sms_submit()
+ − * 6. New interface: sms_change_read_status()
+ − *
+ − * ***************** Version 20 *****************
+ − * User: Vo Date: 21.10.99 Time: 13:35
+ − * Updated in $/GSM/Condat/MS/SRC/MFW
+ − * change constant define
+ − *
+ − * ***************** Version 19 *****************
+ − * User: Es Date: 16.09.99 Time: 17:23
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − * added TON/NPI fields to T_MFW_SMS_ADDR
+ − *
+ − * ***************** Version 18 *****************
+ − * User: Vo Date: 12.09.99 Time: 12:40
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − * change parameter 'dcs' in T_MFW_SMS_CB_INFO (adaptation to ACI)
+ − *
+ − * ***************** Version 17 *****************
+ − * User: Vo Date: 10.09.99 Time: 19:53
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − * move sms_save_pref_lang() to sim_save_pref_lang()
+ − *
+ − * ***************** Version 16 *****************
+ − * User: Vo Date: 30.08.99 Time: 15:19
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − * new events
+ − *
+ − * ***************** Version 15 *****************
+ − * User: Vo Date: 26.07.99 Time: 14:32
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − * Add new definitions
+ − *
+ − * ***************** Version 14 *****************
+ − * User: Vo Date: 16.07.99 Time: 13:50
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 13 *****************
+ − * User: Vo Date: 16.07.99 Time: 10:39
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 12 *****************
+ − * User: Vo Date: 22.06.99 Time: 8:54
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 11 *****************
+ − * User: Vo Date: 1.06.99 Time: 14:47
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 10 *****************
+ − * User: Vo Date: 28.05.99 Time: 9:52
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 9 *****************
+ − * User: Vo Date: 21.05.99 Time: 13:51
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 8 *****************
+ − * User: Vo Date: 18.05.99 Time: 14:35
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 7 *****************
+ − * User: Vo Date: 25.03.99 Time: 16:34
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 6 *****************
+ − * User: Vo Date: 25.02.99 Time: 16:47
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 5 *****************
+ − * User: Vo Date: 17.02.99 Time: 20:00
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 4 *****************
+ − * User: Vo Date: 11.02.99 Time: 15:43
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 3 *****************
+ − * User: Vo Date: 11.02.99 Time: 12:54
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 2 *****************
+ − * User: Vo Date: 7.01.99 Time: 12:38
+ − * Updated in $/GSM/DEV/MS/SRC/MFW
+ − *
+ − * ***************** Version 1 *****************
+ − * User: Vo Date: 30.12.98 Time: 11:49
+ − * Created in $/GSM/DEV/MS/SRC/MFW
+ −
+ − */
+ −
+ − #ifndef DEF_MFW_SMS_HEADER
+ − #define DEF_MFW_SMS_HEADER
+ −
+ − #include "mfw_cm.h"
+ − #include "aci_lst.h"
+ − #include "conc_sms.h"
+ −
+ − #ifndef NEPTUNE_BOARD
+ − //#define MAX_IDENTS 0x14
+ − #else
+ − #define MAX_IDENTS 0x14 /* NEPTUNE Integration: Uncommented.*/
+ − #endif
+ −
+ − #define MAX_SCTP_DIGITS 2
+ − #define BASIC_MAX_MSG_LEN 160
+ − #define MAX_CBMSG_LEN 94
+ − //1227 - API - 05/10/02 - Create new Define for Single SMS and increase original for Conc_SMS
+ − #define MAX_MSG_LEN_SGL 161 //Max message length for disabled Conc SMS API
+ −
+ − /*JVJ-SPR-1298. Provisional until a new option in the .inf file is inserted.*/
+ −
+ − #ifdef MMI_LITE
+ − /*SPR 2350, concat messagse of up to 500 chars should be allowed*/
+ − #define MAX_MSG_LEN_LITE (MAX_MSG_LEN_SGL*3)
+ − #define MAX_MSG_LEN MAX_MSG_LEN_LITE
+ − #else
+ − #define MAX_MSG_LEN 1601 //Max size for a SMS
+ − #endif
+ −
+ − #define MAX_MSG_LEN_ARRAY (MAX_MSG_LEN+1) //Array size for SMS
+ −
+ −
+ − /*MC, chinese message lengths*/
+ − #define MAX_MSG_LEN_SGL_CHI 140 //Max message length for single chinese message
+ − #define MAX_MSG_LEN_CHI (MAX_MSG_LEN_SGL_CHI*10)
+ −
+ −
+ − /*
+ − * events are organised as bitmaps
+ − */
+ − #define E_SMS_MO_AVAIL 0x0001
+ − #define E_SMS_CMD_AVAIL 0x0002
+ − #define E_SMS_SAVE_AVAIL 0x0004
+ − #define E_SMS_MT 0x0008
+ − #define E_SMS_MO 0x0010
+ − #define E_SMS_CB 0x0020
+ − #define E_SMS_CB_RECEIVED 0x0040
+ − #define E_SMS_MT_RECEIVED 0x0080
+ − #define E_SMS_STATUS 0x0100
+ − #define E_SMS_MEM 0x0200
+ − #define E_SMS_OK 0x0400
+ − #define E_SMS_ERR 0x0800
+ − #define E_SMS_BUSY 0x1000
+ − #define E_SMS_READY 0x2000
+ − #define E_SMS_MEM_FULL 0x4000
+ − #define E_SMS_MEM_FREE 0x8000
+ −
+ − #define E_SMS_RECEIVED 0x0600
+ − #define E_SMS_ALL_SERVICE 0xffff
+ −
+ − #if defined (FF_WAP) && defined (FF_GPF_TCPIP)
+ − //liuyu
+ − /* SPR#2086 */
+ − #define E_SMS_WAP_MT_RECEIVED 0x10000
+ − #define E_SMS_WAP_MO_SENT 0x20000
+ − #define E_SMS_WAP_ERR 0x40000
+ − #endif
+ −
+ − /* definition for validity period mode */
+ − #define SMS_VPF_NOTPRESENT 0
+ − #define SMS_VPF_NUMERICAL 2 // Corresponds to relative period
+ − #define SMS_VPF_STRING 3 // Corresponds to absolute period
+ −
+ − /* definition for reply path */
+ − #define SMS_UNSET_RP 0
+ − #define SMS_SET_RP 1
+ −
+ − /* definition for reject duplicates */
+ − #define SMS_ACCEPT_RD 0
+ − #define SMS_REJECT_RD 1
+ −
+ − /* definition for status report request */
+ − #define SMS_NOT_REQUESTED_SRR 0
+ − #define SMS_REQUESTED_SRR 1
+ −
+ − /* SMS management functional return codes */
+ − typedef enum
+ − {
+ − MFW_SMS_FAIL = -1, /* execution of command failed */
+ − MFW_SMS_OK /* execution of command completed */
+ − } T_MFW_SMS_RETURN;
+ −
+ − /* definition for message type */
+ − typedef enum
+ − {
+ − MFW_NO_MESSAGE,
+ − MFW_SMS_MESSAGE, /* SMS message */
+ − MFW_CB_MESSAGE /* cell broadcast message */
+ − } T_MFW_SMS_TYPE;
+ −
+ − /* definition for submit message type */
+ − typedef enum
+ − {
+ − MFW_SMS_SUBMIT,
+ − MFW_SMS_REPLY,
+ − MFW_SMS_SUBMIT_SENT,
+ − MFW_SMS_REPLY_SENT
+ − } T_MFW_SMS_MO_TYPE;
+ −
+ − /* Memory which messages are stored */
+ − typedef enum
+ − {
+ − MFW_MEM_NOTPRESENT=-1, /*a0393213 OMAPS00109953*/
+ − MFW_MEM_ME,
+ − MFW_MEM_SIM
+ − } T_MFW_SMS_MEM;
+ −
+ − // Feb 16, 2005 REF: CRR MMI-SPR-27900 xnkulkar
+ − // Added MFW_SMS_VOICEMSG_DELETE to enum T_MFW_SMS_STAT
+ −
+ − /* Memory which messages are stored */
+ − typedef enum
+ − {
+ − MFW_SMS_UNKNOWN,
+ − MFW_SMS_UNREAD, /* received unread message */
+ − MFW_SMS_READ, /* received read message */
+ − MFW_SMS_STOR_UNSENT, /* stored unsent messgae */
+ − MFW_SMS_STOR_SENT, /* stored sent message */
+ − MFW_SMS_MO, /* MO SMS message */
+ − MFW_SMS_MT, /* MT SMS message */
+ − MFW_SMS_ALL,
+ − MFW_SMS_NotVOICE,
+ − MFW_SMS_VOICE, /* voice mail message */
+ − MFW_SMS_VOICEMSG_DELETE, // To mark the voice mail sms for deletion (group 1100)
+ − MFW_SMS_STATRPT, ////x0pleela 01 Feb, 2006 DR: OMAPS00059261 /* Status report status*/ //x0pleela 06 Feb, 2006 DR: OMAPS00059261 Removed pending from name
+ − MFW_SMS_INVALID /*SPR2260*/
+ − } T_MFW_SMS_STAT;
+ −
+ − /*SPR 2260, eneumerated type for concat status of message in list*/
+ − typedef enum
+ − {
+ − MFW_SMS_NO_CONC,
+ − MFW_SMS_CONC_PART,
+ − MFW_SMS_CONC_WHOLE
+ − }
+ − T_MFW_SMS_CONC_STAT ;
+ −
+ − typedef struct
+ − {
+ − UBYTE year [MAX_SCTP_DIGITS];
+ − UBYTE month [MAX_SCTP_DIGITS];
+ − UBYTE day [MAX_SCTP_DIGITS];
+ − UBYTE hour [MAX_SCTP_DIGITS];
+ − UBYTE minute [MAX_SCTP_DIGITS];
+ − UBYTE second [MAX_SCTP_DIGITS];
+ − SHORT timezone;
+ − } T_MFW_SMS_SCTP;
+ −
+ − /* SMS command */
+ − typedef enum
+ − {
+ − SMS_ENQ_PREV_SMS, /* Starts an enquiry to previously sended short message */
+ − SMS_CAN_STAT_REQ, /* Cancels status report request */
+ − SMS_DEL_PREV_SMS, /* Deletion of previous sended short message */
+ − SMS_REQ_STAT_REP /* Requests status report for SMS message */
+ − } T_MFW_SMS_COMMAND;
+ −
+ − typedef enum
+ − {
+ − MT_IND_IDX, /* message will be stored to memory and index will
+ − be indicated (E_SMS_MT_RECEIVED) */
+ − MT_IND_NO_IDX, /* message will be stored to memory and index will
+ − not be indicated */
+ − MT_IND_MSG, /* message will be indicated to mmi (E_SMS_MT)
+ − but not stored to memory */
+ − MT_CB_IDX, /* CB message will be stored to memory and index will
+ − be indicated (E_SMS_CB_RECEIVED) */
+ − MT_CB_NO_IDX, /* CB message will be stored to memory and index will
+ − not be indicated */
+ − MT_CB_MSG, /* CB message will be indicated to mmi (E_SMS_CB)
+ − but not stored to memory */
+ − /* Marcus: Issue 1170: 07/10/2002: Start */
+ − MT_IND_SRR_ON, /* Status reports are to be notified */
+ − MT_IND_SRR_OFF /* Status reports are not to be notified */
+ − /* Marcus: Issue 1170: 07/10/2002: End */
+ −
+ − } T_MFW_SMS_MT_IND;
+ −
+ − typedef enum
+ − {
+ − CMD_SMS_NO_CMD,
+ − CMD_SMS_SUBMIT, /* send message */
+ − CMD_SMS_MEMORY, /* set/get preferred message store */
+ − CMD_SMS_READ, /* read message */
+ − CMD_SMS_STORE, /* save message */
+ − CMD_SMS_DELETE, /* delete message */
+ − CMD_SMS_COMMAND, /* send command */
+ − CMD_SMS_SET_PARA, /* set SMS parameter */
+ − CMD_SMS_SET_CB_PARA, /* set cell broadcast parameter */
+ − CMD_SMS_SET_IND /* set new message indication */
+ − } T_MFW_SMS_CMD_IND;
+ −
+ − //x0pleela 01 Feb, 2006 DR: OMAPS00059261
+ − /* SMS type: MT, MO, STAT RPT */
+ −
+ − typedef enum
+ − {
+ − MFW_MSG_DELIVER,
+ − MFW_MSG_SUBMIT,
+ − MFW_MSG_STATUS_REPORT
+ − }T_MFW_SMS_MSG_TYPE;
+ −
+ − typedef struct
+ − {
+ − UBYTE mem;
+ − UBYTE used;
+ − UBYTE total;
+ − UBYTE dummy;
+ − } T_MFW_SMS_MEM_INFO;
+ −
+ − /* SMS parameters */
+ − typedef struct
+ − {
+ − CHAR sc_addr[MAX_LEN]; /* service centre address */
+ − SHORT prot_id; /* protocol identifier */
+ − SHORT dcs; /* data coding scheme */
+ − UBYTE srr; /* status report request */
+ − UBYTE rp; /* reply path */
+ − UBYTE rd; /* reject duplicates */
+ − UBYTE vp_mode; /* validity period mode */
+ − UBYTE vp_rel; /* validity period relative */
+ − T_MFW_SMS_SCTP vp_abs; /* validity period absolute */
+ − SHORT first_oct; /* First Octet*/
+ − } T_MFW_SMS_INFO;
+ −
+ − /* Identification to incomming message */
+ − typedef struct
+ − {
+ − UBYTE mem; /* indicate the memory for stored message */
+ − UBYTE index; /* index of message */
+ − UBYTE concat_status; /* status of concatenated */
+ − UBYTE received_sms_type; /* type of sms */
+ − } T_MFW_SMS_ID;
+ −
+ − /* Information about mobile terminated short message */
+ − typedef struct
+ − {
+ − CHAR tag[MFW_TAG_LEN];
+ − #ifdef NO_ASCIIZ
+ − UBYTE len; /* length of name */
+ − UBYTE dummy1;
+ − UBYTE dummy2;
+ − UBYTE dummy3;
+ − #endif
+ − CHAR number[MFW_NUM_LEN];
+ − T_MFW_PHB_TON ton;
+ − T_MFW_PHB_NPI npi;
+ − } T_MFW_SMS_ADDR;
+ −
+ −
+ − typedef struct
+ − {
+ − UBYTE index; /* index of message */
+ − T_MFW_SMS_ADDR orig_addr; /* call party address */
+ − CHAR sc_addr[MAX_LEN]; /* service centre address */
+ − UBYTE prot_id; /* protocol identifier */
+ − SHORT dcs; /* data coding scheme */
+ − UBYTE rp; /* reply path */
+ − UBYTE ti; /* type indicator */
+ − T_MFW_SMS_SCTP sctp; /* service centre timestamp */
+ − USHORT/*UBYTE*/ msg_len; /* length of short message */
+ − CHAR sms_msg[MAX_MSG_LEN_ARRAY]; /* short message */
+ − UBYTE udh_len; /* length of user data header */
+ − UBYTE udh[BASIC_MAX_MSG_LEN]; /* user data header */
+ − T_MFW_SMS_STAT sms_msg_type; //x0pleela 01 Feb, 2006 DR: OMAPS00059261 /* sms message type: MT text or MT status report*/
+ − BOOL voicemail;/*SPR#1408 - DS - TRUE if a voicemail message. Port of 1669*/
+ − T_MFW_SMS_MEM memory; /*a0393213 OMAPS00109953 - memory (SIM/ME) where the message is stored*/
+ − } T_MFW_SMS_MT;
+ −
+ − /* Incomming call broadcast message */
+ − typedef struct
+ − {
+ − SHORT sn; /* serial number in integer format */
+ − USHORT msg_id; /* message identification */
+ − UBYTE dcs; /* data coding scheme */
+ − UBYTE page; /* number of this page */
+ − UBYTE pages; /* number of total pages */
+ − UBYTE msg_len; /* length of short message */
+ − CHAR cb_msg[MAX_CBMSG_LEN]; /* cell broadcast message */
+ − } T_MFW_SMS_CB;
+ −
+ − /* Parameter for cell broadcast message */
+ − typedef struct
+ − {
+ − UBYTE mode; /* acception mode: 0 - accept, 1 - not accept */
+ − #ifdef FF_2TO1_PS
+ − USHORT msg_id[CBM_MAX_RANGE_NUMBER]; /* message identifier */
+ − UBYTE dcs[CBM_MAX_RANGE_NUMBER]; /* data coding schemes */
+ − #else
+ − USHORT msg_id[MAX_IDENTS]; /* message identifier */
+ − UBYTE dcs[MAX_IDENTS]; /* data coding schemes */
+ − #endif
+ − UBYTE dummy;
+ − } T_MFW_SMS_CB_INFO;
+ −
+ − /* Information for mobile originated short message */
+ − typedef struct
+ − {
+ − T_MFW_SMS_ADDR dest_addr; /* called party address */
+ − CHAR sc_addr[MAX_LEN]; /* service centre address */
+ − UBYTE prot_id; /* protocol identifier */
+ − SHORT dcs; /* data coding scheme */
+ − UBYTE status; /* status of sms message */
+ − UBYTE vp_mode; /* validity period mode */
+ − UBYTE vp_rel; /* validity period relative */
+ − T_MFW_SMS_SCTP vp_abs; /* validity period absolute */
+ − CHAR sms_msg[MAX_MSG_LEN_ARRAY]; /* short message */
+ − USHORT msg_len; /* length of short message */
+ − UBYTE msg_ref; /* message reference */
+ − T_MFW_SMS_MEM memory; /*a0393213 OMAPS00109953 - memory(SIM/ME) where the message is saved*/
+ − } T_MFW_SMS_MO;
+ −
+ − /* Status report for short message */
+ − typedef struct
+ − {
+ − SHORT msg_id; /* message type */
+ − UBYTE msg_ref; /* message Reference */
+ − T_MFW_SMS_ADDR addr; /* called party address */
+ − UBYTE status; /* status of sms message */
+ − T_MFW_SMS_SCTP rctp; /* received sms timestamp */
+ − } T_MFW_SMS_STATUS;
+ − /***************************Go-lite Optimization changes Start***********************/
+ − //Oct 04, 2004 REF: CRR 25519 Deepa M.D
+ − //Structure elements (T_MFW_SMS_MSG)are realigned to avoid the structure padding
+ − typedef struct
+ − {
+ − T_MFW_SMS_STAT stat;
+ − T_MFW_SMS_STAT msg_type; /* voice mail status */
+ − T_MFW_SMS_CONC_STAT concat_status;/*2260*/
+ − T_MFW_SMS_ADDR addr;
+ − T_MFW_SMS_SCTP rctp;
+ − SHORT index;
+ − SHORT first_index;/*index of first sms in concat assembly SPR 2260*/
+ − USHORT msg_ref;
+ − T_MFW_SMS_MEM mem; /*a0393213 OMAPS00109953 - memory where the sms is stored (SIM or ME)*/
+ − T_MFW_SMS_MEM first_mem; /*a0393213 OMAPS00109953 - memory where the first segment in cSMS is stored (SIM or ME)*/
+ − } T_MFW_SMS_MSG;/*structure used in message list*/
+ − /***************************Go-lite Optimization changes end***********************/
+ − // PATCH JPS 29.09: new structure used in mfw_index_list
+ − typedef struct
+ − {
+ − SHORT index;
+ − T_MFW_SMS_STAT stat;
+ − T_MFW_SMS_STAT msg_type;
+ − T_MFW_SMS_CONC_STAT concat_status;/*SPR 2260*/
+ − T_MFW_SMS_MEM memory; /*a0393213 OMAPS00109953 - memory where the sms is stored (SIM or ME)*/
+ − } T_MFW_SMS_IDX;/*structure passed in sms_copy_idx() function,used externally*/
+ − // PATCH JPS 29.09 END
+ −
+ − /*
+ − * SMS event Parameter
+ − */
+ − typedef union
+ − {
+ − T_MFW_SMS_ID sms_id;
+ − T_MFW_SMS_MT sms_mt;
+ − T_MFW_SMS_MO sms_mo;
+ − T_MFW_SMS_CB sms_cb;
+ − T_MFW_SMS_STATUS sms_status;
+ − T_MFW_SMS_MEM_INFO sms_mem;
+ − UBYTE index;
+ − UBYTE cmd_ind;
+ − } T_MFW_SMS_PARA;
+ −
+ − /*a0393213 OMAPS00109953 - SMS indexes are retrieved during bootup.
+ − This enum shall be used to maintain the state machine during that process*/
+ − typedef enum
+ − {
+ − MFW_SMS_INDEX_NOT_RETRIEVED=0,
+ − MFW_SMS_SIM_INDEX_RETRIEVING,
+ − MFW_SMS_FFS_INDEX_RETRIEVING,
+ − MFW_SMS_INDEX_RETRIEVED
+ − } T_MFW_SMS_INDEX_RETRIEVE_STATE;
+ −
+ − /*a0393213 OMAPS00109953 - this function updates the SMS memory details of SIM/ME*/
+ − static void sms_update_memory();
+ −
+ − EXTERN void sms_init (void);
+ − EXTERN void sms_exit (void);
+ − EXTERN T_MFW_HND sms_create (T_MFW_HND hWin,
+ − T_MFW_EVENT event,
+ − T_MFW_CB cbfunc);
+ − EXTERN T_MFW_RES sms_delete (T_MFW_HND h);
+ −
+ − #ifdef NO_ASCIIZ
+ −
+ − #if defined (FF_WAP) && defined (FF_GPF_TCPIP)
+ − EXTERN T_MFW sms_submit (T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − CHAR *sca);
+ − //Dec 14, 2005 REF: MMI-FIX-OMAPS00058684 x0035544
+ − #ifdef FF_HOMEZONE
+ − //Jun 14, 2005 REF: MMI-FIX-30439 x0018858
+ − EXTERN void sms_homezoneCBToggle(U8 Activate);
+ − #endif
+ − EXTERN T_MFW sms_submit_wap_sms(T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − T_MFW_PHB_TON addr_type,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − CHAR *sca,
+ − T_MFW_PHB_TON sc_type); /* SPR#2086 - SH - Added */
+ − #else
+ −
+ − EXTERN T_MFW sms_submit (T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − CHAR *sca);
+ − #endif
+ − EXTERN T_MFW sms_store (T_MFW_SMS_MO_TYPE type,
+ − CHAR *addr,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − CHAR *sca);
+ − EXTERN T_MFW sms_change (CHAR *addr,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − UBYTE index,
+ − T_MFW_SMS_MEM sms_memory /*a0393213 OMAPS00109953 - memory added as parameter*/
+ − );
+ − #else
+ −
+ − #if defined (FF_WAP) && defined (FF_GPF_TCPIP)
+ −
+ − EXTERN T_MFW sms_submit (T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − T_MFW_PHB_TON addr_type,
+ − UBYTE *msg, USHORT msg_len,
+ − CHAR *sca,
+ − T_MFW_PHB_TON sc_type); // sbh added length, see function itself
+ − EXTERN T_MFW sms_submit_wap_sms(T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − T_MFW_PHB_TON addr_type,
+ − UBYTE *msg,
+ − USHORT msg_len,
+ − CHAR *sca,
+ − T_MFW_PHB_TON sc_type); /* SPR#2086 - SH - Added */
+ − #else
+ − EXTERN T_MFW sms_submit (T_MFW_SMS_MO_TYPE type,
+ − CHAR *dest_addr,
+ − UBYTE *msg, USHORT msg_len,
+ − CHAR *sca); // sbh added length, see function itself
+ − #endif
+ −
+ − EXTERN T_MFW sms_store (T_MFW_SMS_MO_TYPE type,
+ − CHAR *addr,
+ − UBYTE *msg, USHORT msg_len,
+ − CHAR *sca); // sbh added length, see function itself
+ − EXTERN T_MFW sms_change (CHAR *addr,
+ − UBYTE *msg, USHORT msg_len,
+ − UBYTE index,
+ − T_MFW_SMS_MEM sms_memory /*a0393213 OMAPS00109953 - memory added as parameter*/
+ − ); // sbh added length, see function itself
+ − #endif
+ − EXTERN T_MFW sms_stored_submit (CHAR *dest_addr,
+ − UBYTE index);
+ − /*SPR 2260, added concatenated status parameter*/
+ − EXTERN T_MFW sms_store_new_msg_info(UBYTE index, T_ACI_CMGL_SM* sm, UBYTE update_mem, T_CONC_ASSEMBLY_RETURN conc_stat
+ − ,T_SMS_TYPE received_sms_type, T_MFW_SMS_MEM mem); /*a0393213 OMAPS00109953 - memory added as parameter*/
+ −
+ −
+ − EXTERN T_MFW sms_send_new_msg_ind(T_ACI_CMGL_SM* sm,UBYTE index, UBYTE mem, UBYTE received_sms_type, UBYTE concatenated_status);
+ −
+ − EXTERN T_MFW sms_set_pref_memory (UBYTE mem);
+ − EXTERN T_MFW sms_read (UBYTE type, UBYTE index
+ − ,T_MFW_SMS_MEM mem); /*a0393213 OMAPS00109953 - memory added as parameter*/
+ −
+ − EXTERN T_MFW sms_mt_store (T_MFW_SMS_MT *mt_msg,
+ − T_MFW_SMS_STAT stat);
+ − EXTERN T_MFW sms_msg_delete (UBYTE index
+ − , T_MFW_SMS_MEM sms_memory); /*a0393213 OMAPS00109953 - memory added as parameter*/
+ −
+ − EXTERN T_MFW sms_get_memset (void);
+ − EXTERN T_MFW sms_command (CHAR *dest_addr,
+ − UBYTE command,
+ − UBYTE msg_ref);
+ − EXTERN T_MFW sms_parameter (T_MFW_SMS_INFO *sms_info, BOOL fGet);
+ − EXTERN T_MFW sms_set_SrvCntr_number (T_MFW_SMS_INFO *sms_info);
+ − EXTERN T_MFW sms_set_dcs_number (T_MFW_SMS_INFO *sms_info);//GW Added
+ − EXTERN T_MFW sms_set_val_period (T_MFW_SMS_INFO *sms_info);//GW Added
+ − EXTERN T_MFW sms_set_cell_broadcast_info (UBYTE mode,
+ − T_MFW_SMS_CB_INFO *sms_cb_info);
+ − EXTERN T_MFW sms_get_cell_broadcast_info (T_MFW_SMS_CB_INFO *sms_cb_info);
+ − EXTERN void sms_set_mt_ind (T_MFW_SMS_MT_IND sms_ind);
+ − EXTERN SHORT sms_message_count (T_MFW_SMS_STAT stat);
+ − EXTERN SHORT sms_message_list (T_MFW_SMS_STAT stat,
+ − T_MFW_SMS_MSG * msg_list,
+ − int max_entries);
+ − // PATCH JPS 29.09: add function equivalent of sms_message_list bu more economic
+ − EXTERN SHORT sms_index_list (T_MFW_SMS_STAT stat,
+ − T_MFW_SMS_IDX * msg_list,
+ − int max_entries);
+ − // PATCH JPS 29.09 END
+ − /*a0393213 OMAPS00109953 - memory added as parameter*/
+ − EXTERN T_MFW sms_change_read_status (SHORT index
+ − , T_MFW_SMS_MEM sms_memory);
+ −
+ − //x0018858 24 Mar, 2005 MMI-FIX-11321
+ − //begin -MMI-FIX-11321
+ − EXTERN T_MFW sms_set_cind_values(T_ACI_MM_CIND_VAL_TYPE *cindSettings);
+ − EXTERN T_MFW sms_set_cmer_values(T_ACI_MM_CMER_VAL_TYPE *cmerSettings);
+ − //end -MMI-FIX-11321
+ −
+ − /* Added to remove warning */
+ − EXTERN UBYTE dspl_Enable (UBYTE in_Enable);
+ −
+ − #endif