2 #ifndef __gsm_multisms_h
3 #define __gsm_multisms_h
5 #include "../../gsmcomon.h"
6 #include "../gsmlogo.h"
10 #include "../gsmring.h"
13 /* ---------------------- multi SMS --------------------------------------- */
15 /* Identifiers for Smart Messaging 3.0 multipart SMS */
17 #define SM30_ISOTEXT 0 /* ISO 8859-1 text */
18 #define SM30_UNICODETEXT 1
20 #define SM30_RINGTONE 3
21 #define SM30_PROFILENAME 4
22 #define SM30_SCREENSAVER 6
24 void GSM_SMSCounter(int MessageLength
,
25 unsigned char *MessageBuffer
,
27 GSM_Coding_Type Coding
,
31 #define MAX_MULTI_SMS 10
34 * Multiple SMS messages, used for Smart Messaging 3.0/EMS.
38 * Sender or recipient number.
44 GSM_SMSMessage SMS
[MAX_MULTI_SMS
];
45 } GSM_MultiSMSMessage
;
47 GSM_Error
GSM_AddSMS_Text_UDH(GSM_MultiSMSMessage
*SMS
,
48 GSM_Coding_Type Coding
,
56 void GSM_MakeMultiPartSMS(GSM_MultiSMSMessage
*SMS
,
57 unsigned char *MessageBuffer
,
60 GSM_Coding_Type Coding
,
62 unsigned char RejectDuplicates
);
64 void GSM_Find_Free_Used_SMS2(GSM_Coding_Type Coding
,GSM_SMSMessage SMS
, int *UsedText
, int *FreeText
, int *FreeBytes
);
66 unsigned char GSM_MakeSMSIDFromTime();
69 * ID during packing SMS for Smart Messaging 3.0, EMS and other
77 * Contacenated SMS, when longer than 1 SMS.
79 SMS_ConcatenatedTextLong
,
81 * Contacenated SMS, auto Default/Unicode coding.
83 SMS_ConcatenatedAutoTextLong
,
84 SMS_ConcatenatedTextLong16bit
,
85 SMS_ConcatenatedAutoTextLong16bit
,
87 * Nokia profile = Name, Ringtone, ScreenSaver
91 * Nokia Picture Image + (text)
93 SMS_NokiaPictureImageLong
,
95 * Nokia screen saver + (text)
97 SMS_NokiaScreenSaverLong
,
99 * Nokia ringtone - old SM2.0 format, 1 SMS
103 * Nokia ringtone contacenated, when very long
105 SMS_NokiaRingtoneLong
,
107 * Nokia 72x14 operator logo, 1 SMS
109 SMS_NokiaOperatorLogo
,
111 * Nokia 72x14 op logo or 78x21 in 2 SMS
113 SMS_NokiaOperatorLogoLong
,
115 * Nokia 72x14 caller logo, 1 SMS
119 * Nokia WAP bookmark in 1 or 2 SMS
121 SMS_NokiaWAPBookmarkLong
,
123 * Nokia WAP settings in 2 SMS
125 SMS_NokiaWAPSettingsLong
,
127 * Nokia MMS settings in 2 SMS
129 SMS_NokiaMMSSettingsLong
,
131 * Nokia VCARD 1.0 - only name and default number
133 SMS_NokiaVCARD10Long
,
135 * Nokia VCARD 2.1 - all numbers + text
137 SMS_NokiaVCARD21Long
,
139 * Nokia VCALENDAR 1.0 - can be in few sms
141 SMS_NokiaVCALENDAR10Long
,
161 * IMelody without header - SonyEricsson extension
163 SMS_EMSSonyEricssonSound
,
165 * IMelody 1.0 with UPI.
169 * IMelody 1.2 with UPI.
173 * IMelody without header with UPI.
175 SMS_EMSSonyEricssonSoundLong
,
176 SMS_EMSPredefinedSound
,
177 SMS_EMSPredefinedAnimation
,
180 * Fixed bitmap of size 16x16 or 32x32.
183 SMS_EMSVariableBitmap
,
184 SMS_EMSVariableBitmapLong
,
186 } EncodeMultiPartSMSID
;
189 EncodeMultiPartSMSID ID
;
192 GSM_Ringtone
*Ringtone
;
193 GSM_MultiBitmap
*Bitmap
;
194 GSM_WAPBookmark
*Bookmark
;
195 GSM_WAPSettings
*Settings
;
196 GSM_MMSIndicator
*MMSIndicator
;
197 GSM_MemoryEntry
*Phonebook
;
198 GSM_CalendarEntry
*Calendar
;
202 unsigned char *Buffer
;
215 } EncodeMultiPartSMSEntry
;
219 EncodeMultiPartSMSEntry Entries
[MAX_MULTI_SMS
];
223 unsigned char ReplaceMessage
;
226 } GSM_EncodeMultiPartSMSInfo
;
228 GSM_Error
GSM_EncodeMultiPartSMS (GSM_EncodeMultiPartSMSInfo
*Info
, GSM_MultiSMSMessage
*SMS
);
229 bool GSM_DecodeMultiPartSMS (GSM_EncodeMultiPartSMSInfo
*Info
, GSM_MultiSMSMessage
*SMS
, bool ems
);
230 void GSM_ClearMultiPartSMSInfo (GSM_EncodeMultiPartSMSInfo
*Info
);
232 GSM_Error
GSM_LinkSMS(GSM_MultiSMSMessage
*INPUT
[200], GSM_MultiSMSMessage
*OUTPUT
[200], bool ems
);
236 /* How should editor hadle tabs in this file? Add editor commands here.
237 * vim: noexpandtab sw=8 ts=8 sts=8: