1 // This is header file for gnokiiapi.dll
\r
2 // Latest version: http://marcin-wiacek.topnet.pl
\r
8 uses Classes,Forms,SysUtils;
\r
47 GSM_StartupLogo=1; //size 84*48
\r
48 GSM_OperatorLogo=2; //size 72*14
\r
49 GSM_CallerLogo=3; //size 72*14
\r
50 GSM_PictureImage=4; //size 72*28
\r
51 GSM_7110OperatorLogo=5; //size 78*21
\r
52 GSM_7110StartupLogo=6; //size 96*65
\r
53 GSM_6210StartupLogo=7; //size 96*60
\r
54 GSM_WelcomeNoteText=8;
\r
55 GSM_DealerNoteText=9;
\r
78 GSMV_24_Hours = 167;
\r
79 GSMV_72_Hours = 169;
\r
81 GSMV_Max_Time = 255;
\r
86 GSM_Coding_Unicode = 1;
\r
87 GSM_Coding_Default = 2;
\r
89 GSCT_SecurityCode = 1;
\r
104 F_CAL61=0; //Calendar in 6110 style - 4 types,...
\r
105 F_CAL33=1; //Calendar in 3310 style - 10 reminders, Unicode, 3 coding types
\r
106 F_CAL71=2; //Calendar in 7110 style - 4 types, recurrance, etc.
\r
107 F_PBK33SIM=3;//Phonebook in Unicode(3310 style).Name and number.No internal
\r
108 F_PBK33INT=4;//Phonebook in Unicode(3310 style).Name and number.Internal available
\r
109 F_PBK71INT=5;//Extended phonebook-multiple numbers,Unicode(7110 style).Internal available
\r
110 F_PBK61INT=6;//Name and number,no Unicode(6110 style).Internal available
\r
111 F_SMS =9; //SMS with Inbox, Outbox
\r
112 F_SMS71=10; //SMS with SMS folders like in 7110
\r
113 F_STANIM=20; //Startup logo animated or static
\r
114 F_STA=21; //Startup logo static
\r
115 F_STA62=22; //Startup logo static size 6210
\r
116 F_STA71=23; //Startup logo static size 7110
\r
117 F_PROF61=24; //Profiles numbered like in N6110
\r
118 F_PROF51=25; //Profiles numbered like in N5110
\r
119 F_PROF33=26; //Profiles numbered like in N3310.Unicode names
\r
120 F_RING_SM=27;//Binary ringtone in Smart Messaging
\r
121 F_RINGBIN=28;//Binary ringtone in binary format
\r
127 PROFILE_MESSAGE_NOTONE=0;
\r
128 PROFILE_MESSAGE_STANDARD=1;
\r
129 PROFILE_MESSAGE_SPECIAL=2;
\r
130 PROFILE_MESSAGE_BEEPONCE=3;
\r
131 PROFILE_MESSAGE_ASCENDING=4;
\r
133 PROFILE_WARNING_OFF=255;
\r
134 PROFILE_WARNING_ON =4;
\r
136 PROFILE_CALLALERT_RINGING=1;
\r
137 PROFILE_CALLALERT_BEEPONCE=2;
\r
138 PROFILE_CALLALERT_OFF=4;
\r
139 PROFILE_CALLALERT_RINGONCE=5;
\r
140 PROFILE_CALLALERT_ASCENDING=6;
\r
141 PROFILE_CALLALERT_CALLERGROUPS=7;
\r
143 PROFILE_KEYPAD_OFF=255;
\r
144 PROFILE_KEYPAD_LEVEL1=0;
\r
145 PROFILE_KEYPAD_LEVEL2=1;
\r
146 PROFILE_KEYPAD_LEVEL3=2;
\r
148 PROFILE_VOLUME_LEVEL1=6;
\r
149 PROFILE_VOLUME_LEVEL2=7;
\r
150 PROFILE_VOLUME_LEVEL3=8;
\r
151 PROFILE_VOLUME_LEVEL4=9;
\r
152 PROFILE_VOLUME_LEVEL5=10;
\r
154 PROFILE_CALLERGROUPS_ALL=255;
\r
155 PROFILE_CALLERGROUPS_FAMILY=1;
\r
156 PROFILE_CALLERGROUPS_VIP=2;
\r
157 PROFILE_CALLERGROUPS_FRIENDS=4;
\r
158 PROFILE_CALLERGROUPS_COLLEAGUES=8;
\r
159 PROFILE_CALLERGROUPS_OTHERS=16;
\r
161 PROFILE_VIBRATION_OFF=0;
\r
162 PROFILE_VIBRATION_ON=1;
\r
163 PROFILE_VIBRATION_FIRST=2;
\r
166 GSM_NetworkInfo= record
\r
167 NetworkCode: array[1..10] of char; // GSM network code
\r
168 CellID: array[1..10] of char; // CellID
\r
169 LAC: array[1..10] of char; // LAC
\r
171 PGSM_NetworkInfo=^GSM_NetworkInfo;
\r
173 GSM_DateTime=record
\r
183 PGSM_DateTime=^GSM_DateTime;
\r
185 GSM_SubPhonebookEntry= record
\r
187 NumberType:integer;
\r
188 Number:array[1..61] of char;
\r
190 BlockNumber:integer;
\r
193 GSM_PhonebookEntry= record
\r
195 Name:array[1..51] of char;
\r
196 Number:array[1..49] of char;
\r
197 MemoryType:integer;
\r
200 SubEntries:array[1..8] of GSM_SubPhonebookEntry;
\r
201 SubEntriesCount:integer;
\r
203 PGSM_PhonebookEntry=^GSM_PhonebookEntry;
\r
205 GSM_MemoryStatus=record
\r
206 MemoryType:integer;
\r
210 PGSM_memoryStatus=^GSM_MemoryStatus;
\r
212 GSM_RingtoneNote=record
\r
219 GSM_Ringtone=record
\r
220 name:array[1..20] of char;
\r
223 notes:array[1..256] of GSM_RingtoneNote;
\r
224 allnotesscale:integer;
\r
227 PGSM_Ringtone=^GSM_Ringtone;
\r
229 GSM_BinRingtone=record
\r
230 name:array[1..20] of char;
\r
231 frame:array[1..1000] of char;
\r
235 PGSM_BinRingtone=^GSM_BinRingtone;
\r
242 netcode:array[1..7] of char;
\r
243 text:array[1..256] of char;
\r
244 bitmap:array[1..864] of char;
\r
248 Sender:array[1..41] of char;
\r
250 PGSM_Bitmap=^GSM_Bitmap;
\r
252 GSM_SpeedDial=record
\r
254 MemoryType:integer;
\r
257 PGSM_SpeedDial=^GSM_SpeedDial;
\r
259 GSM_CalendarNote=record
\r
263 Alarm:GSM_DateTime;
\r
264 Text:array[1..59] of char;
\r
265 Phone:array[1..37] of char;
\r
267 Recurrance:integer;
\r
268 YearOfBirth:integer;
\r
270 ReadNotesInfo:integer;
\r
272 PGSM_CalendarNote=^GSM_CalendarNote;
\r
274 GSM_MessageCenter=record
\r
276 Name:array[1..20] of char;
\r
279 Number:array[1..40] of char;
\r
280 DefaultRecipient:array[1..40] of char;
\r
282 PGSM_MessageCenter=^GSM_MessageCenter;
\r
286 Name:array[1..40] of char;
\r
287 DefaultName:integer;
\r
288 KeypadTone:integer;
\r
293 MessageTone:integer;
\r
294 WarningTone:integer;
\r
296 CallerGroups:integer;
\r
297 ScreenSaver:integer;
\r
298 AutomaticAnswer:integer;
\r
300 PGSM_Profile=^GSM_Profile;
\r
302 GSM_OneSimlock=record
\r
303 data:array[1..11] of char;
\r
309 GSM_AllSimlocks=record
\r
310 simlocks:array[1..4] of GSM_OneSimlock;
\r
312 PGSM_AllSimlocks=^GSM_AllSimlocks;
\r
314 GSM_OneSMSFolder=record
\r
315 Name:array[1..15] of char;
\r
316 locations:array[1..160] of byte;
\r
320 GSM_SMSFolders=record
\r
321 Folder: array[1..24] of GSM_OneSMSFolder;
\r
322 FoldersID: array[1..24] of byte;
\r
325 PGSM_SMSFolders=^GSM_SMSFolders;
\r
327 GSM_SMSMessage=record
\r
330 SMSCTime:GSM_DateTime;
\r
334 UDH:array[1..140] of char;
\r
335 MessageText:array[1..161] of char;
\r
336 MessageCenter:GSM_MessageCenter;
\r
337 Sender:array[1..41] of char;
\r
338 Destination:array[1..41] of char;
\r
339 MessageNumber:integer;
\r
340 MemoryType:integer;
\r
344 Compression:integer;
\r
346 ReplyViaSameSMSC:integer;
\r
349 Name:array[1..26] of char;
\r
351 PGSM_SMSMessage=^GSM_SMSMessage;
\r
353 GSM_MultiSMSMessage=record
\r
355 SMS:array[1..6] of GSM_SMSMessage;
\r
357 PGSM_MultiSMSMessage=^GSM_MultiSMSMessage;
\r
359 GSM_SMS2Foldertable=record
\r
365 GSM_SMSStatus=record
\r
368 foldertable:array[1..255] of GSM_SMS2FolderTable;
\r
370 PGSM_SMSStatus=^GSM_SMSStatus;
\r
372 GSM_SecurityCode=record
\r
374 Code:array[1..10] of char;
\r
376 PGSM_SecurityCode=^GSM_SecurityCode;
\r
378 GSM_WAPBookmark=record
\r
379 adress:array[1..256] of char;
\r
380 title:array[1..51] of char;
\r
383 PGSM_WAPBookmark=^GSM_WAPBookmark;
\r
385 GSM_WAPSettings=record
\r
387 homepage:array[1..101] of char;
\r
388 title:array[1..21] of char;
\r
390 issecurity:integer;
\r
391 iscontinuous:integer;
\r
394 ipaddress:array[1..21] of char;
\r
395 dialup:array[1..21] of char;
\r
396 user:array[1..51] of char;
\r
397 password:array[1..51] of char;
\r
398 isspeed14400:integer;
\r
399 isISDNcall:integer;
\r
400 isnormalauthentication:integer;
\r
403 server:array[1..22] of char;
\r
405 //for sms or ussd bearer
\r
406 service:array[1..21] of char;
\r
410 code:array[1..11] of char;
\r
412 PGSM_WAPSettings=^GSM_WAPSettings;
\r
415 WAPSETTINGS_BEARER_SMS=0;
\r
416 WAPSETTINGS_BEARER_DATA=1;
\r
417 WAPSETTINGS_BEARER_USSD=2;
\r
420 GSM_CDV_Busy = 1; // Divert when busy
\r
421 GSM_CDV_NoAnswer = 2; // Divert when not answered
\r
422 GSM_CDV_OutOfReach = 3; // Divert when phone off or no coverage
\r
423 GSM_CDV_AllTypes = 4; // Divert all calls without ringing
\r
425 GSM_CDV_VoiceCalls = 1;
\r
426 GSM_CDV_FaxCalls = 2;
\r
427 GSM_CDV_DataCalls = 3;
\r
428 GSM_CDV_AllCalls = 4;
\r
430 GSM_CDV_Disable = 0;
\r
431 GSM_CDV_Enable = 1;
\r
432 GSM_CDV_Query = 2; // Is concrete divert enabled ?
\r
433 GSM_CDV_Register = 3; // Sets divert
\r
434 GSM_CDV_Erasure = 4; // Erase concrete divert
\r
437 GSM_CallDivert=record
\r
441 Number:array[1..41] of char;
\r
445 PGSM_CallDivert=^GSM_CallDivert;
\r
448 SIMPhonebookUsed:integer;
\r
449 SIMPhonebookSize:integer;
\r
450 SIMPhonebook:array[1..250] of GSM_PhonebookEntry;
\r
452 PhonePhonebookUsed:integer;
\r
453 PhonePhonebookSize:integer;
\r
454 PhonePhonebook:array[1..500] of GSM_PhonebookEntry;
\r
456 CallerAvailable:integer;
\r
457 CallerGroups:array[1..5] of GSM_Bitmap;
\r
459 SpeedAvailable:integer;
\r
460 SpeedDials:array[1..8] of GSM_SpeedDial;
\r
462 OperatorLogoAvailable:integer;
\r
463 OperatorLogo:GSM_Bitmap;
\r
465 StartupLogoAvailable:integer;
\r
466 StartupLogo:GSM_Bitmap;
\r
468 StartupText:GSM_Bitmap;
\r
470 PGSM_Backup=^GSM_Backup;
\r
473 GSMPhoneConnected: boolean=false;
\r
474 GSMNetworkInfo: GSM_NetworkInfo;
\r
476 GSMPort: array[1..256] of Char;
\r
477 GSMModel: array[1..256] of Char;
\r
478 GSMInitLength: Array[1..256] of char;
\r
479 GSMSynchronizeTime: array[1..256] of char;
\r
480 GSMConnection: integer=GCT_FBUS;
\r
483 TSparkyThread = class(TThread)
\r
485 procedure Execute; override;
\r
489 SparkyThread: TSparkyThread;
\r
491 function GSM_Initialize(Port:Pchar;Model:Pchar;connectiontype:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myinitialize';
\r
492 function GSM_Terminate(): integer; stdcall; external 'gnokiiapi.dll' name 'myterminate';
\r
494 function GSM_GetNetworkInfo(NetworkInfo:PGSM_NetworkInfo): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkinfo';
\r
495 function GSM_GetNetworkName(NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkname';
\r
496 function GSM_GetNetworkCode(NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkcode';
\r
497 function GSM_GetNetworkData(number:integer; NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkdata';
\r
499 function GSM_Netmonitor(mode:integer;Screen:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mynetmonitor';
\r
501 function GSM_GetMemoryLocation(entry:PGSM_Phonebookentry): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmemorylocation';
\r
502 function GSM_WritePhonebookLocation(entry:PGSM_Phonebookentry): integer; stdcall; external 'gnokiiapi.dll' name 'mywritephonebooklocation';
\r
503 function GSM_GetMemoryStatus(status:PGSM_MemoryStatus): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmemorystatus';
\r
505 function GSM_ReadRingtoneFile(filename:Pchar;ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'myreadringtonefile';
\r
506 function GSM_SetRingtone(ringtone:PGSM_Ringtone;notes:Pinteger): integer; stdcall; external 'gnokiiapi.dll' name 'mysetringtone';
\r
507 function GSM_ReadBinRingtoneFile(filename:Pchar;ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbinringtonefile';
\r
508 function GSM_SetBinRingtone(ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysetbinringtone';
\r
509 function GSM_GetPhoneRingtone(ringtone:PGSM_BinRingtone;SMringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'mygetphoneringtone';
\r
510 function GSM_PlayRingtone(ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'myplayringtone';
\r
511 function GSM_SaveRingtoneFile(filename:Pchar;ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysaveringtonefile';
\r
512 function GSM_SaveBinRingtoneFile(filename:Pchar;ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebinringtonefile';
\r
513 function GSM_PlayNote(note:GSM_RingtoneNote): integer; stdcall; external 'gnokiiapi.dll' name 'myplaynote';
\r
514 function GSM_PlayTone(herz:integer;volume:byte): integer; stdcall; external 'gnokiiapi.dll' name 'myplaytone';
\r
515 function GSM_GetTempo(beats:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mygettempo';
\r
517 function GSM_ReadBitmapFile(filename:Pchar;bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbitmapfile';
\r
518 function GSM_SaveBitmapFile(filename:Pchar;bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebitmapfile';
\r
519 function GSM_IsPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myispointbitmap';
\r
520 function GSM_SetPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysetpointbitmap';
\r
521 function GSM_ClearPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myclearpointbitmap';
\r
522 function GSM_ClearBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'myclearbitmap';
\r
523 function GSM_GetBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mygetbitmap';
\r
524 function GSM_SetBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mysetbitmap';
\r
525 function GSM_ResizeBitmap(bitmap:PGSM_Bitmap;bitmaptype:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myresizebitmap';
\r
527 function GSM_GetImei(IMEI:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetimei';
\r
528 function GSM_GetRevision(revision:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetrevision';
\r
529 function GSM_GetModel(model:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodel';
\r
530 function GSM_GetModelNumber(model:Pchar;model2:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodelnumber';
\r
532 function GSM_GetDLLVersion(version:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetdllversion';
\r
534 function GSM_GetSpeedDial(entry:PGSM_SpeedDial): integer; stdcall; external 'gnokiiapi.dll' name 'mygetspeeddial';
\r
536 function GSM_Reset(mode:byte): integer; stdcall; external 'gnokiiapi.dll' name 'myreset';
\r
538 function GSM_GetCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mygetcalendarnote';
\r
539 function GSM_WriteCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mywritecalendarnote';
\r
540 function GSM_DeleteCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mydeletecalendarnote';
\r
542 function GSM_GetAlarm(alarmnumber:integer;alarm:PGSM_DateTime): integer; stdcall; external 'gnokiiapi.dll' name 'mygetalarm';
\r
544 function GSM_GetSMSCenter(center:PGSM_MessageCenter): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmscenter';
\r
545 function GSM_SetSMSCenter(center:PGSM_MessageCenter): integer; stdcall; external 'gnokiiapi.dll' name 'mysetsmscenter';
\r
547 function GSM_GetProfile(profile:PGSM_Profile): integer; stdcall; external 'gnokiiapi.dll' name 'mygetprofile';
\r
549 function GSM_GetSimlock(simlock:PGSM_AllSimlocks): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsimlock';
\r
551 function GSM_GetSMSFolders(folders:PGSM_SMSFolders): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsfolders';
\r
552 function GSM_GetSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsmessage';
\r
553 function GSM_SaveSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mysavesmsmessage';
\r
554 function GSM_SendSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mysendsmsmessage';
\r
555 function GSM_DeleteSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mydeletesmsmessage';
\r
556 function GSM_GetSMSStatus(folders:PGSM_SMSStatus): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsstatus';
\r
557 function GSM_MakeMultiPartSMS2(SMS:PGSM_MultiSMSMessage;MessageBuffer:PByte;MessageLength:Integer;UDHType:integer;Coding:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mymakemultipartsms2';
\r
559 function GSM_SaveRingtoneToSMS(SMS:PGSM_MultiSMSMessage;ringtone:PGSM_Ringtone;profilestyle:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysaveringtonetosms';
\r
560 function GSM_SaveCalendarNoteToSMS(SMS:PGSM_MultiSMSMessage;note:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mysavecalendarnotetosms';
\r
561 function GSM_SaveBitmapToSMS(SMS:PGSM_MultiSMSMessage;bitmap:PGSM_Bitmap;ScreenSaver:integer;Unicode:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebitmaptosms';
\r
562 function GSM_SavePhonebookEntryToSMS(SMS:PGSM_MultiSMSMessage;entry:PGSM_PhonebookEntry;version:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysavephonebookentrytosms';
\r
563 function GSM_SaveWAPBookmarkToSMS(SMS:PGSM_MultiSMSMessage;bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mysavewapbookmarktosms';
\r
564 function GSM_SaveWAPSettingsToSMS(SMS:PGSM_MultiSMSMessage;settings:PGSM_WAPSettings): integer; stdcall; external 'gnokiiapi.dll' name 'mysavewapsettingstosms';
\r
566 function GSM_ReadConfig(model:Pchar;port:Pchar;initlength:Pchar;connection:Pinteger;synchronizetime:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'myreadconfig';
\r
568 function GSM_SetLocale(locale:pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mysetlocale';
\r
570 function GSM_GetSecurityCode(code:PGSM_SecurityCode): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsecuritycode';
\r
572 function GSM_GetModelFeature(featurenumber:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodelfeature';
\r
574 function GSM_GetWAPBookmark(bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mygetwapbookmark';
\r
575 function GSM_SetWAPBookmark(bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mysetwapbookmark';
\r
577 function GSM_GetWAPSettings(settings:PGSM_WAPSettings): integer; stdcall; external 'gnokiiapi.dll' name 'mygetwapsettings';
\r
579 function GSM_CallDivertOperation(divert:PGSM_CallDivert): integer; stdcall; external 'gnokiiapi.dll' name 'mycalldivert';
\r
581 function GSM_SaveBackupFile(filename:Pchar;backup:PGSM_Backup): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebackupfile';
\r
582 function GSM_ReadBackupFile(filename:Pchar;backup:PGSM_Backup): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbackupfile';
\r
584 function GSM_DialVoice(Number:PChar): integer; stdcall; external 'gnokiiapi.dll' name 'mydialvoice';
\r
588 procedure TSparkyThread.Execute;
\r
590 while not Terminated do
\r
592 if GSMPhoneConnected then
\r
594 if GSM_GetNetworkInfo(@GSMNetworkInfo)<>0 then
\r
596 GSMPhoneConnected:=false;
\r
600 if not SparkyThread.Suspended then SparkyThread.Suspend;
\r
604 if GSM_Initialize(@GSMPort,@GSMModel,GSMConnection)=0 then
\r
606 GSMPhoneConnected:=true;
\r
611 GSMPhoneConnected:=false;
\r
615 GSM_ReadConfig(@GSMmodel,@GSMport,@GSMinitlength,@GSMconnection,@GSMsynchronizetime);
\r
616 GSM_SetLocale('.1250');
\r
617 GSMPhoneConnected:=false;
\r
618 SparkyThread:=TSparkyThread.Create(True);
\r
619 SparkyThread.Priority:=tpIdle;
\r
620 // SparkyThread.Priority:=tpLowest;
\r
621 SparkyThread.Resume;
\r