-/* In contrast to GSM_MemoryType, SMS_MemoryType is phone dependant */
-typedef enum {
- GMT_IN = 0x08, /* Inbox in 6210/7110 */
- GMT_OU = 0x10, /* Outbox in 6210/7110 */
- GMT_AR = 0x18, /* Archive in 6210/6110 */
- GMT_TE = 0x20, /* Templates in 6210/7110 */
- GMT_F1 = 0x29, /* 1st CUSTOM FOLDER in 6210/7110*/
- GMT_F2 = 0x31,
- GMT_F3 = 0x39,
- GMT_F4 = 0x41,
- GMT_F5 = 0x49,
- GMT_F6 = 0x51,
- GMT_F7 = 0x59,
- GMT_F8 = 0x61,
- GMT_F9 = 0x69,
- GMT_F10 = 0x71,
- GMT_F11 = 0x79,
- GMT_F12 = 0x81,
- GMT_F13 = 0x89,
- GMT_F14 = 0x91,
- GMT_F15 = 0x99,
- GMT_F16 = 0xA1,
- GMT_F17 = 0xA9,
- GMT_F18 = 0xB1,
- GMT_F19 = 0xB9,
- GMT_F20 = 0xC1 /* 20th CUSTOM FOLDER in 6210/7110 */
-} SMS_MemoryType;
-
-/* Define datatype for SMS messages, describes precisely GSM Spec 03.40 */
-typedef struct {
- /* Specification fields */
- SMS_MessageType Type; /* Message Type Indicator - 2 bits (9.2.3.1) */
- bool MoreMessages; /* More Messages to Send (9.2.3.2) */
- bool ReplyViaSameSMSC; /* Reply Path (9.2.3.17) - `Reply via same centre' in the phone */
- bool RejectDuplicates; /* Reject Duplicates (9.2.3.25) */
- bool Report; /* Status Report (9.2.3.4, 9.2.3.5 & 9.2.3.26) - `Delivery reports' in the phone */
-
- unsigned short Number; /* Message Number - 8 bits (9.2.3.18) */
- unsigned short Reference; /* Message Reference - 8 bit (9.2.3.6) */
- unsigned short PID; /* Protocol Identifier - 8 bit (9.2.3.9) */
- unsigned short ReportStatus; /* Status - 8 bit (9.2.3.15), Failure Cause (9.2.3.22) */
- unsigned short Length; /* User Data Length (9.2.3.16), Command Data Length (9.2.3.20) */
-
- SMS_MessageCenter MessageCenter; /* SMSC Address (9.2.3.7, 9.2.3.8, 9.2.3.14) */
- SMS_Number RemoteNumber; /* Origination, destination, Recipient Address (9.2.3.7, 9.2.3.8, 9.2.3.14) */
- unsigned char MessageText[GSM_MAX_SMS_LENGTH]; /* User Data (9.2.3.24), Command Data (9.2.3.21) */
- SMS_DataCodingScheme DCS; /* Data Coding Scheme (9.2.3.10) */
- SMS_MessageValidity Validity; /* Validity Period Format & Validity Period (9.2.3.3 & 9.2.3.12) - `Message validity' in the phone */
-
- unsigned short UDH_No; /* Number of presend UDHs */
- unsigned int UDH_Length; /* Length of the whole UDH */
- SMS_UDHInfo UDH[SMS_MAX_UDH_NUMBER]; /* User Data Header Indicator & User Data Header (9.2.3.23 & 9.2.3.24) */
-
- SMS_DateTime SMSCTime; /* Service Centre Time Stamp (9.2.3.11) */
- SMS_DateTime Time; /* Discharge Time (9.2.3.13) */
-
- /* Other fields */
- SMS_MemoryType MemoryType; /* memoryType (for 6210/7110: folder indicator */
- SMS_MessageStatus Status; /* Status of the message: sent/read or unsent/unread */
-
-// SMS_CommandType Command; /* Command Type - 8 bits (9.2.3.19); FIXME: use it!!!! */
-// unsigned char Parameter[???]; /* Parameter Indicator (9.2.3.27); FIXME: how to use it??? */
-} GSM_SMSMessage;