4 * Copyright (c) 1999 Andreas Mohr
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
26 #endif /* defined(__cplusplus) */
28 typedef HANDLE HCALL, *LPHCALL;
29 typedef HANDLE HLINE, *LPHLINE;
30 typedef HANDLE HLINEAPP, *LPHLINEAPP;
31 typedef HANDLE HPHONE, *LPHPHONE;
32 typedef HANDLE HPHONEAPP, *LPHPHONEAPP;
34 #define TAPIERR_REQUESTFAILED -16L
35 #define LINEERR_ALLOCATED 0x80000001
36 #define LINEERR_BADDEVICEID 0x80000002
37 #define LINEERR_BEARERMODEUNAVAIL 0x80000003
38 #define LINEERR_CALLUNAVAIL 0x80000005
39 #define LINEERR_COMPLETIONOVERRUN 0x80000006
40 #define LINEERR_CONFERENCEFULL 0x80000007
41 #define LINEERR_DIALBILLING 0x80000008
42 #define LINEERR_DIALDIALTONE 0x80000009
43 #define LINEERR_DIALPROMPT 0x8000000A
44 #define LINEERR_DIALQUIET 0x8000000B
45 #define LINEERR_INCOMPATIBLEAPIVERSION 0x8000000C
46 #define LINEERR_INCOMPATIBLEEXTVERSION 0x8000000D
47 #define LINEERR_INIFILECORRUPT 0x8000000E
48 #define LINEERR_INUSE 0x8000000F
49 #define LINEERR_INVALADDRESS 0x80000010
50 #define LINEERR_INVALADDRESSID 0x80000011
51 #define LINEERR_INVALADDRESSMODE 0x80000012
52 #define LINEERR_INVALADDRESSSTATE 0x80000013
53 #define LINEERR_INVALAPPHANDLE 0x80000014
54 #define LINEERR_INVALAPPNAME 0x80000015
55 #define LINEERR_INVALBEARERMODE 0x80000016
56 #define LINEERR_INVALCALLCOMPLMODE 0x80000017
57 #define LINEERR_INVALCALLHANDLE 0x80000018
58 #define LINEERR_INVALCALLPARAMS 0x80000019
59 #define LINEERR_INVALCALLPRIVILEGE 0x8000001A
60 #define LINEERR_INVALCALLSELECT 0x8000001B
61 #define LINEERR_INVALCALLSTATE 0x8000001C
62 #define LINEERR_INVALCALLSTATELIST 0x8000001D
63 #define LINEERR_INVALCARD 0x8000001E
64 #define LINEERR_INVALCOMPLETIONID 0x8000001F
65 #define LINEERR_INVALCONFCALLHANDLE 0x80000020
66 #define LINEERR_INVALCONSULTCALLHANDLE 0x80000021
67 #define LINEERR_INVALCOUNTRYCODE 0x80000022
68 #define LINEERR_INVALDEVICECLASS 0x80000023
69 #define LINEERR_INVALDEVICEHANDLE 0x80000024
70 #define LINEERR_INVALDIALPARAMS 0x80000025
71 #define LINEERR_INVALDIGITLIST 0x80000026
72 #define LINEERR_INVALDIGITMODE 0x80000027
73 #define LINEERR_INVALDIGITS 0x80000028
74 #define LINEERR_INVALEXTVERSION 0x80000029
75 #define LINEERR_INVALGROUPID 0x8000002A
76 #define LINEERR_INVALLINEHANDLE 0x8000002B
77 #define LINEERR_INVALLINESTATE 0x8000002C
78 #define LINEERR_INVALLOCATION 0x8000002D
79 #define LINEERR_INVALMEDIALIST 0x8000002E
80 #define LINEERR_INVALMEDIAMODE 0x8000002F
81 #define LINEERR_INVALMESSAGEID 0x80000030
82 #define LINEERR_INVALPARAM 0x80000032
83 #define LINEERR_INVALPARKID 0x80000033
84 #define LINEERR_INVALPARKMODE 0x80000034
85 #define LINEERR_INVALPOINTER 0x80000035
86 #define LINEERR_INVALPRIVSELECT 0x80000036
87 #define LINEERR_INVALRATE 0x80000037
88 #define LINEERR_INVALREQUESTMODE 0x80000038
89 #define LINEERR_INVALTERMINALID 0x80000039
90 #define LINEERR_INVALTERMINALMODE 0x8000003A
91 #define LINEERR_INVALTIMEOUT 0x8000003B
92 #define LINEERR_INVALTONE 0x8000003C
93 #define LINEERR_INVALTONELIST 0x8000003D
94 #define LINEERR_INVALTONEMODE 0x8000003E
95 #define LINEERR_INVALTRANSFERMODE 0x8000003F
96 #define LINEERR_LINEMAPPERFAILED 0x80000040
97 #define LINEERR_NOCONFERENCE 0x80000041
98 #define LINEERR_NODEVICE 0x80000042
99 #define LINEERR_NODRIVER 0x80000043
100 #define LINEERR_NOMEM 0x80000044
101 #define LINEERR_NOREQUEST 0x80000045
102 #define LINEERR_NOTOWNER 0x80000046
103 #define LINEERR_NOTREGISTERED 0x80000047
104 #define LINEERR_OPERATIONFAILED 0x80000048
105 #define LINEERR_OPERATIONUNAVAIL 0x80000049
106 #define LINEERR_RATEUNAVAIL 0x8000004A
107 #define LINEERR_RESOURCEUNAVAIL 0x8000004B
108 #define LINEERR_REQUESTOVERRUN 0x8000004C
109 #define LINEERR_STRUCTURETOOSMALL 0x8000004D
110 #define LINEERR_TARGETNOTFOUND 0x8000004E
111 #define LINEERR_TARGETSELF 0x8000004F
112 #define LINEERR_UNINITIALIZED 0x80000050
113 #define LINEERR_USERUSERINFOTOOBIG 0x80000051
114 #define LINEERR_REINIT 0x80000052
115 #define LINEERR_ADDRESSBLOCKED 0x80000053
116 #define LINEERR_BILLINGREJECTED 0x80000054
117 #define LINEERR_INVALFEATURE 0x80000055
118 #define LINEERR_NOMULTIPLEINSTANCE 0x80000056
120 #define STRINGFORMAT_ASCII 0x00000001
121 #define STRINGFORMAT_DBCS 0x00000002
122 #define STRINGFORMAT_UNICODE 0x00000003
123 #define STRINGFORMAT_BINARY 0x00000004
125 #define LINEADDRESSMODE_ADDRESSID 0x00000001
126 #define LINEADDRESSMODE_DIALABLEADDR 0x00000002
128 #define LINEBEARERMODE_VOICE 0x00000001
129 #define LINEBEARERMODE_SPEECH 0x00000002
130 #define LINEBEARERMODE_MULTIUSE 0x00000004
131 #define LINEBEARERMODE_DATA 0x00000008
132 #define LINEBEARERMODE_ALTSPEECHDATA 0x00000010
133 #define LINEBEARERMODE_NONCALLSIGNALING 0x00000020
134 #define LINEBEARERMODE_PASSTHROUGH 0x00000040
136 #define LINEMEDIAMODE_UNKNOWN 0x00000002
137 #define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004
138 #define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008
139 #define LINEMEDIAMODE_DATAMODEM 0x00000010
141 #define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001
142 #define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002
143 #define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004
144 #define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008
145 #define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010
146 #define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020
147 #define LINEDEVCAPFLAGS_DIALBILLING 0x00000040
148 #define LINEDEVCAPFLAGS_DIALQUIET 0x00000080
149 #define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100
151 #define LINEDEVSTATE_OTHER 0x00000001
152 #define LINEDEVSTATE_RINGING 0x00000002
153 #define LINEDEVSTATE_CONNECTED 0x00000004
154 #define LINEDEVSTATE_DISCONNECTED 0x00000008
155 #define LINEDEVSTATE_MSGWAITON 0x00000010
156 #define LINEDEVSTATE_MSGWAITOFF 0x00000020
157 #define LINEDEVSTATE_INSERVICE 0x00000040
158 #define LINEDEVSTATE_OUTOFSERVICE 0x00000080
159 #define LINEDEVSTATE_MAINTENANCE 0x00000100
160 #define LINEDEVSTATE_OPEN 0x00000200
161 #define LINEDEVSTATE_CLOSE 0x00000400
162 #define LINEDEVSTATE_NUMCALLS 0x00000800
163 #define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000
164 #define LINEDEVSTATE_TERMINALS 0x00002000
165 #define LINEDEVSTATE_ROAMMODE 0x00004000
166 #define LINEDEVSTATE_BATTERY 0x00008000
167 #define LINEDEVSTATE_SIGNAL 0x00010000
168 #define LINEDEVSTATE_DEVSPECIFIC 0x00020000
169 #define LINEDEVSTATE_REINIT 0x00040000
170 #define LINEDEVSTATE_LOCK 0x00080000
172 #define LINEDEVSTATE_CAPSCHANGE 0x00100000
173 #define LINEDEVSTATE_CONFIGCHANGE 0x00200000
174 #define LINEDEVSTATE_TRANSLATECHANGE 0x00400000
175 #define LINEDEVSTATE_COMPLCANCEL 0x00800000
176 #define LINEDEVSTATE_REMOVED 0x01000000
178 #define LINELOCATIONOPTION_PULSEDIAL 0x00000001
181 #define LINEFEATURE_DEVSPECIFIC 0x00000001
182 #define LINEFEATURE_DEVSPECIFICFEAT 0x00000002
183 #define LINEFEATURE_FORWARD 0x00000004
184 #define LINEFEATURE_MAKECALL 0x00000008
185 #define LINEFEATURE_SETMEDIACONTROL 0x00000010
186 #define LINEFEATURE_SETTERMINAL 0x00000020
187 #define LINEFEATURE_SETDEVSTATUS 0x00000040
188 #define LINEFEATURE_FORWARDFWD 0x00000080
189 #define LINEFEATURE_FORWARDDND 0x00000100
191 /* tapi callback messages */
193 #define LINE_ADDRESSSTATE 0L
194 #define LINE_CALLINFO 1L
195 #define LINE_CALLSTATE 2L
196 #define LINE_CLOSE 3L
197 #define LINE_DEVSPECIFIC 4L
198 #define LINE_DEVSPECIFICFEATURE 5L
199 #define LINE_GATHERDIGITS 6L
200 #define LINE_GENERATE 7L
201 #define LINE_LINEDEVSTATE 8L
202 #define LINE_MONITORDIGITS 9L
203 #define LINE_MONITORMEDIA 10L
204 #define LINE_MONITORTONE 11L
205 #define LINE_REPLY 12L
206 #define LINE_REQUEST 13L
207 #define PHONE_BUTTON 14L
208 #define PHONE_CLOSE 15L
209 #define PHONE_DEVSPECIFIC 16L
210 #define PHONE_REPLY 17L
211 #define PHONE_STATE 18L
212 #define LINE_CREATE 19L
213 #define PHONE_CREATE 20L
215 #define LINE_AGENTSPECIFIC 21L
216 #define LINE_AGENTSTATUS 22L
217 #define LINE_APPNEWCALL 23L
218 #define LINE_PROXYREQUEST 24L
219 #define LINE_REMOVE 25L
220 #define PHONE_REMOVE 26L
221 /* these are used as Param1 of line_callstate messages */
222 #define LINECALLSTATE_IDLE 0x00000001
223 #define LINECALLSTATE_OFFERING 0x00000002
224 #define LINECALLSTATE_ACCEPTED 0x00000004
225 #define LINECALLSTATE_DIALTONE 0x00000008
226 #define LINECALLSTATE_DIALING 0x00000010
227 #define LINECALLSTATE_RINGBACK 0x00000020
228 #define LINECALLSTATE_BUSY 0x00000040
229 #define LINECALLSTATE_SPECIALINFO 0x00000080
230 #define LINECALLSTATE_CONNECTED 0x00000100
231 #define LINECALLSTATE_PROCEEDING 0x00000200
232 #define LINECALLSTATE_ONHOLD 0x00000400
233 #define LINECALLSTATE_CONFERENCED 0x00000800
234 #define LINECALLSTATE_ONHOLDPENDCONF 0x00001000
235 #define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000
236 #define LINECALLSTATE_DISCONNECTED 0x00004000
237 #define LINECALLSTATE_UNKNOWN 0x00008000
238 #define LINECONNECTEDMODE_ACTIVE 0x00000001
239 #define LINECONNECTEDMODE_INACTIVE 0x00000002
240 #define LINECONNECTEDMODE_ACTIVEHELD 0x00000004
241 #define LINECONNECTEDMODE_INACTIVEHELD 0x00000008
242 #define LINECONNECTEDMODE_CONFIRMED 0x00000010
244 /* these are Param2 values for state_disconnected line_callstate messages */
245 #define LINEDISCONNECTMODE_NORMAL 0x00000001
246 #define LINEDISCONNECTMODE_UNKNOWN 0x00000002
247 #define LINEDISCONNECTMODE_REJECT 0x00000004
248 #define LINEDISCONNECTMODE_PICKUP 0x00000008
249 #define LINEDISCONNECTMODE_FORWARDED 0x00000010
250 #define LINEDISCONNECTMODE_BUSY 0x00000020
251 #define LINEDISCONNECTMODE_NOANSWER 0x00000040
252 #define LINEDISCONNECTMODE_BADADDRESS 0x00000080
253 #define LINEDISCONNECTMODE_UNREACHABLE 0x00000100
254 #define LINEDISCONNECTMODE_CONGESTION 0x00000200
255 #define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400
256 #define LINEDISCONNECTMODE_UNAVAIL 0x00000800
257 #define LINEDISCONNECTMODE_NODIALTONE 0x00001000
258 #define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000
259 #define LINEDISCONNECTMODE_OUTOFORDER 0x00004000
260 #define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000
261 #define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000
262 #define LINEDISCONNECTMODE_BLOCKED 0x00020000
263 #define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000
264 #define LINEDISCONNECTMODE_CANCELLED 0x00080000
266 #define LINECALLSELECT_LINE 0x00000001
267 #define LINECALLSELECT_ADDRESS 0x00000002
268 #define LINECALLSELECT_CALL 0x00000004
269 #define LINECALLSELECT_DEVICEID 0x00000008
271 #define LINECALLPRIVILEGE_NONE 0x00000001
272 #define LINECALLPRIVILEGE_MONITOR 0x00000002
273 #define LINECALLPRIVILEGE_OWNER 0x00000004
274 #define LINECALLFEATURE_ACCEPT 0x00000001
275 #define LINECALLFEATURE_ADDTOCONF 0x00000002
276 #define LINECALLFEATURE_ANSWER 0x00000004
277 #define LINECALLFEATURE_BLINDTRANSFER 0x00000008
278 #define LINECALLFEATURE_COMPLETECALL 0x00000010
279 #define LINECALLFEATURE_COMPLETETRANSF 0x00000020
280 #define LINECALLFEATURE_DIAL 0x00000040
281 #define LINECALLFEATURE_DROP 0x00000080
282 #define LINECALLFEATURE_GATHERDIGITS 0x00000100
283 #define LINECALLFEATURE_GENERATEDIGITS 0x00000200
284 #define LINECALLFEATURE_GENERATETONE 0x00000400
285 #define LINECALLFEATURE_HOLD 0x00000800
286 #define LINECALLFEATURE_MONITORDIGITS 0x00001000
287 #define LINECALLFEATURE_MONITORMEDIA 0x00002000
288 #define LINECALLFEATURE_MONITORTONES 0x00004000
289 #define LINECALLFEATURE_PARK 0x00008000
290 #define LINECALLFEATURE_PREPAREADDCONF 0x00010000
291 #define LINECALLFEATURE_REDIRECT 0x00020000
292 #define LINECALLFEATURE_REMOVEFROMCONF 0x00040000
293 #define LINECALLFEATURE_SECURECALL 0x00080000
294 #define LINECALLFEATURE_SENDUSERUSER 0x00100000
295 #define LINECALLFEATURE_SETCALLPARAMS 0x00200000
296 #define LINECALLFEATURE_SETMEDIACONTROL 0x00400000
297 #define LINECALLFEATURE_SETTERMINAL 0x00800000
298 #define LINECALLFEATURE_SETUPCONF 0x01000000
299 #define LINECALLFEATURE_SETUPTRANSFER 0x02000000
300 #define LINECALLFEATURE_SWAPHOLD 0x04000000
301 #define LINECALLFEATURE_UNHOLD 0x08000000
302 #define LINECALLFEATURE_RELEASEUSERUSERINFO 0x10000000
304 typedef struct lineaddresscaps_tag {
308 DWORD dwLineDeviceID;
310 DWORD dwAddressOffset;
311 DWORD dwDevSpecificSize;
312 DWORD dwDevSpecificOffset;
313 DWORD dwAddressSharing;
314 DWORD dwAddressStates;
315 DWORD dwCallInfoStates;
316 DWORD dwCallerIDFlags;
317 DWORD dwCalledIDFlags;
318 DWORD dwConnectedIDFlags;
319 DWORD dwRedirectionIDFlags;
320 DWORD dwRedirectingIDFlags;
322 DWORD dwDialToneModes;
325 DWORD dwDisconnectModes;
326 DWORD dwMaxNumActiveCalls;
327 DWORD dwMaxNumOnHoldCalls;
328 DWORD dwMaxNumOnHoldPendingCalls;
329 DWORD dwMaxNumConference;
330 DWORD dwMaxNumTransConf;
331 DWORD dwAddrCapFlags;
332 DWORD dwCallFeatures;
333 DWORD dwRemoveFromConfCaps;
334 DWORD dwRemoveFromConfState;
335 DWORD dwTransferModes;
337 DWORD dwForwardModes;
338 DWORD dwMaxForwardEntries;
339 DWORD dwMaxSpecificEntries;
340 DWORD dwMinFwdNumRings;
341 DWORD dwMaxFwdNumRings;
342 DWORD dwMaxCallCompletions;
343 DWORD dwCallCompletionConds;
344 DWORD dwCallCompletionModes;
345 DWORD dwNumCompletionMessages;
346 DWORD dwCompletionMsgTextEntrySize;
347 DWORD dwCompletionMsgTextSize;
348 DWORD dwCompletionMsgTextOffset;
349 DWORD dwAddressFeatures;
350 } LINEADDRESSCAPS, *LPLINEADDRESSCAPS;
352 typedef struct lineaddressstatus_tag {
357 DWORD dwNumActiveCalls;
358 DWORD dwNumOnHoldCalls;
359 DWORD dwNumOnHoldPendCalls;
360 DWORD dwAddressFeatures;
361 DWORD dwNumRingsNoAnswer;
362 DWORD dwForwardNumEntries;
364 DWORD dwForwardOffset;
365 DWORD dwTerminalModesSize;
366 DWORD dwTerminalModesOffset;
367 DWORD dwDevSpecificSize;
368 DWORD dwDevSpecificOffset;
369 } LINEADDRESSSTATUS, *LPLINEADDRESSSTATUS;
371 typedef struct linedialparams_tag {
374 DWORD dwDigitDuration;
375 DWORD dwWaitForDialtone;
376 } LINEDIALPARAMS, *LPLINEDIALPARAMS;
378 typedef struct linecallinfo_tag {
383 DWORD dwLineDeviceID;
390 DWORD dwRelatedCallID;
391 DWORD dwCallParamFlags;
393 DWORD dwMonitorDigitModes;
394 DWORD dwMonitorMediaModes;
395 LINEDIALPARAMS DialParams;
398 DWORD dwCompletionID;
403 DWORD dwCallerIDFlags;
404 DWORD dwCallerIDSize;
405 DWORD dwCallerIDOffset;
406 DWORD dwCallerIDNameSize;
407 DWORD dwCallerIDNameOffset;
408 DWORD dwCalledIDFlags;
409 DWORD dwCalledIDSize;
410 DWORD dwCalledIDOffset;
411 DWORD dwCalledIDNameSize;
412 DWORD dwCalledIDNameOffset;
413 DWORD dwConnectedIDFlags;
414 DWORD dwConnectedIDSize;
415 DWORD dwConnectedIDOffset;
416 DWORD dwConnectedIDNameSize;
417 DWORD dwConnectedIDNameOffset;
418 DWORD dwRedirectionIDFlags;
419 DWORD dwRedirectionIDSize;
420 DWORD dwRedirectionIDOffset;
421 DWORD dwRedirectionIDNameSize;
422 DWORD dwRedirectionIDNameOffset;
423 DWORD dwRedirectingIDFlags;
424 DWORD dwRedirectingIDSize;
425 DWORD dwRedirectingIDOffset;
426 DWORD dwRedirectingIDNameSize;
427 DWORD dwRedirectingIDNameOffset;
429 DWORD dwAppNameOffset;
430 DWORD dwDisplayableAddressSize;
431 DWORD dwDisplayableAddressOffset;
432 DWORD dwCalledPartySize;
433 DWORD dwCalledPartyOffset;
435 DWORD dwCommentOffset;
437 DWORD dwDisplayOffset;
438 DWORD dwUserUserInfoSize;
439 DWORD dwUserUserInfoOffset;
440 DWORD dwHighLevelCompSize;
441 DWORD dwHighLevelCompOffset;
442 DWORD dwLowLevelCompSize;
443 DWORD dwLowLevelCompOffset;
444 DWORD dwChargingInfoSize;
445 DWORD dwChargingInfoOffset;
446 DWORD dwTerminalModesSize;
447 DWORD dwTerminalModesOffset;
448 DWORD dwDevSpecificSize;
449 DWORD dwDevSpecificOffset;
450 } LINECALLINFO, *LPLINECALLINFO;
452 typedef struct linecalllist_tag {
456 DWORD dwCallsNumEntries;
459 } LINECALLLIST, *LPLINECALLLIST;
461 typedef struct linecallparams_tag {
467 DWORD dwCallParamFlags;
470 LINEDIALPARAMS DialParams;
471 DWORD dwOrigAddressSize;
472 DWORD dwOrigAddressOffset;
473 DWORD dwDisplayableAddressSize;
474 DWORD dwDisplayableAddressOffset;
475 DWORD dwCalledPartySize;
476 DWORD dwCalledPartyOffset;
478 DWORD dwCommentOffset;
479 DWORD dwUserUserInfoSize;
480 DWORD dwUserUserInfoOffset;
481 DWORD dwHighLevelCompSize;
482 DWORD dwHighLevelCompOffset;
483 DWORD dwLowLevelCompSize;
484 DWORD dwLowLevelCompOffset;
485 DWORD dwDevSpecificSize;
486 DWORD dwDevSpecificOffset;
487 } LINECALLPARAMS, *LPLINECALLPARAMS;
489 typedef struct linecallstatus_tag {
494 DWORD dwCallStateMode;
495 DWORD dwCallPrivilege;
496 DWORD dwCallFeatures;
497 DWORD dwDevSpecificSize;
498 DWORD dwDevSpecificOffset;
499 } LINECALLSTATUS, *LPLINECALLSTATUS;
501 typedef struct linecountrylist_tag {
505 DWORD dwNumCountries;
506 DWORD dwCountryListSize;
507 DWORD dwCountryListOffset;
508 } LINECOUNTRYLIST, *LPLINECOUNTRYLIST;
510 typedef struct linecountryentry_tag {
513 DWORD dwNextCountryID;
514 DWORD dwCountryNameSize;
515 DWORD dwCountryNameOffset;
516 DWORD dwSameAreaRuleSize;
517 DWORD dwSameAreaRuleOffset;
518 DWORD dwLongDistanceRuleSize;
519 DWORD dwLongDistanceRuleOffset;
520 DWORD dwInternationalRuleSize;
521 DWORD dwInternationalRuleOffset;
522 } LINECOUNTRYENTRY, *LPLINECOUNTRYENTRY;
524 typedef struct linedevcaps_tag {
528 DWORD dwProviderInfoSize;
529 DWORD dwProviderInfoOffset;
530 DWORD dwSwitchInfoSize;
531 DWORD dwSwitchInfoOffset;
532 DWORD dwPermanentLineID;
533 DWORD dwLineNameSize;
534 DWORD dwLineNameOffset;
535 DWORD dwStringFormat;
536 DWORD dwAddressModes;
537 DWORD dwNumAddresses;
541 DWORD dwGenerateToneModes;
542 DWORD dwGenerateToneMaxNumFreq;
543 DWORD dwGenerateDigitModes;
544 DWORD dwMonitorToneMaxNumFreq;
545 DWORD dwMonitorToneMaxNumEntries;
546 DWORD dwMonitorDigitModes;
547 DWORD dwGatherDigitsMinTimeout;
548 DWORD dwGatherDigitsMaxTimeout;
549 DWORD dwMedCtlDigitMaxListSize;
550 DWORD dwMedCtlMediaMaxListSize;
551 DWORD dwMedCtlToneMaxListSize;
552 DWORD dwMedCtlCallStateMaxListSize;
554 DWORD dwMaxNumActiveCalls;
558 DWORD dwUUIAcceptSize;
559 DWORD dwUUIAnswerSize;
560 DWORD dwUUIMakeCallSize;
562 DWORD dwUUISendUserUserInfoSize;
563 DWORD dwUUICallInfoSize;
564 LINEDIALPARAMS MinDialParams;
565 LINEDIALPARAMS MaxDialParams;
566 LINEDIALPARAMS DefaultDialParams;
567 DWORD dwNumTerminals;
568 DWORD dwTerminalCapsSize;
569 DWORD dwTerminalCapsOffset;
570 DWORD dwTerminalTextEntrySize;
571 DWORD dwTerminalTextSize;
572 DWORD dwTerminalTextOffset;
573 DWORD dwDevSpecificSize;
574 DWORD dwDevSpecificOffset;
575 DWORD dwLineFeatures;
576 } LINEDEVCAPS, *LPLINEDEVCAPS;
578 typedef struct linedevstatus_tag {
583 DWORD dwOpenMediaModes;
584 DWORD dwNumActiveCalls;
585 DWORD dwNumOnHoldCalls;
586 DWORD dwNumOnHoldPendingCalls;
587 DWORD dwLineFeatures;
588 DWORD dwNumCallCompletion;
591 DWORD dwBatteryLevel;
593 DWORD dwDevStatusFlags;
594 DWORD dwTerminalModesSize;
595 DWORD dwTerminalModesOffset;
596 DWORD dwDevSpecificSize;
597 DWORD dwDevSpecificOffset;
598 } LINEDEVSTATUS, *LPLINEDEVSTATUS;
600 typedef struct lineextensionid_tag {
601 DWORD dwExtensionID0;
602 DWORD dwExtensionID1;
603 DWORD dwExtensionID2;
604 DWORD dwExtensionID3;
605 } LINEEXTENSIONID, *LPLINEEXTENSIONID;
607 typedef struct lineforward_tag {
609 DWORD dwCallerAddressSize;
610 DWORD dwCallerAddressOffset;
611 DWORD dwDestCountryCode;
612 DWORD dwDestAddressSize;
613 DWORD dwDestAddressOffset;
614 } LINEFORWARD, *LPLINEFORWARD;
616 typedef struct lineforwardlist_tag {
619 LINEFORWARD ForwardList[1];
620 } LINEFORWARDLIST, *LPLINEFORWARDLIST;
622 typedef struct linegeneratetone_tag {
627 } LINEGENERATETONE, *LPLINEGENERATETONE;
629 typedef struct linemediacontrolcallstate_tag {
631 DWORD dwMediaControl;
632 } LINEMEDIACONTROLCALLSTATE, *LPLINEMEDIACONTROLCALLSTATE;
634 typedef struct linemediacontroldigit_tag {
637 DWORD dwMediaControl;
638 } LINEMEDIACONTROLDIGIT, *LPLINEMEDIACONTROLDIGIT;
640 typedef struct linemediacontrolmedia_tag {
643 DWORD dwMediaControl;
644 } LINEMEDIACONTROLMEDIA, *LPLINEMEDIACONTROLMEDIA;
646 typedef struct linemediacontroltone_tag {
652 DWORD dwMediaControl;
653 } LINEMEDIACONTROLTONE, *LPLINEMEDIACONTROLTONE;
655 typedef struct linemonitortone_tag {
661 } LINEMONITORTONE, *LPLINEMONITORTONE;
663 typedef struct lineproviderlist_tag {
667 DWORD dwNumProviders;
668 DWORD dwProviderListSize;
669 DWORD dwProviderListOffset;
670 } LINEPROVIDERLIST, *LPLINEPROVIDERLIST;
672 typedef struct linetranslatecaps_tag {
676 DWORD dwNumLocations;
677 DWORD dwLocationListSize;
678 DWORD dwLocationListOffset;
679 DWORD dwCurrentLocationID;
681 DWORD dwCardListSize;
682 DWORD dwCardListOffset;
683 DWORD dwCurrentPreferredCardID;
684 } LINETRANSLATECAPS, *LPLINETRANSLATECAPS;
686 typedef struct linelocationentry_tag {
687 DWORD dwPermanentLocationID;
688 DWORD dwLocationNameSize;
689 DWORD dwLocationNameOffset;
691 DWORD dwCityCodeSize;
692 DWORD dwCityCodeOffset;
693 DWORD dwPreferredCardID;
694 DWORD dwLocalAccessCodeSize;
695 DWORD dwLocalAccessCodeOffset;
696 DWORD dwLongDistanceAccessCodeSize;
697 DWORD dwLongDistanceAccessCodeOffset;
698 DWORD dwTollPrefixListSize;
699 DWORD dwTollPrefixListOffset;
702 DWORD dwCancelCallWaitingSize;
703 DWORD dwCancelCallWaitingOffset;
704 } LINELOCATIONENTRY, *LPLINELOCATIONENTRY;
706 typedef struct linecardentry_tag {
707 DWORD dwPermanentCardID;
708 DWORD dwCardNameSize;
709 DWORD dwCardNameOffset;
710 DWORD dwCardNumberDigits;
711 DWORD dwSameAreaRuleSize;
712 DWORD dwSameAreaRuleOffset;
713 DWORD dwLongDistanceRuleSize;
714 DWORD dwLongDistanceRuleOffset;
715 DWORD dwInternationalRuleSize;
716 DWORD dwInternationalRuleOffset;
718 } LINECARDENTRY, *LPLINECARDENTRY;
721 typedef struct linetranslateoutput_tag {
725 DWORD dwDialableStringSize;
726 DWORD dwDialableStringOffset;
727 DWORD dwDisplayableStringSize;
728 DWORD dwDisplayableStringOffset;
729 DWORD dwCurrentCountry;
731 DWORD dwTranslateResults;
732 } LINETRANSLATEOUTPUT, *LPLINETRANSLATEOUTPUT;
734 typedef void (CALLBACK *LINECALLBACK)(DWORD, DWORD, DWORD, DWORD, DWORD, DWORD);
736 typedef struct _PHONEAPP {
738 } PHONEAPP, *LPPHONEAPP;
740 typedef struct _PHONE {
745 typedef struct phonebuttoninfo_tag {
750 DWORD dwButtonFunction;
751 DWORD dwButtonTextSize;
752 DWORD dwButtonTextOffset;
753 DWORD dwDevSpecificSize;
754 DWORD dwDevSpecificOffset;
756 } PHONEBUTTONINFO, *LPPHONEBUTTONINFO;
758 typedef struct phonecaps_tag {
762 DWORD dwProviderInfoSize;
763 DWORD dwProviderInfoOffset;
764 DWORD dwPhoneInfoSize;
765 DWORD dwPhoneInfoOffset;
766 DWORD dwPermanentPhoneID;
767 DWORD dwPhoneNameSize;
768 DWORD dwPhoneNameOffset;
769 DWORD dwStringFormat;
771 DWORD dwHookSwitchDevs;
772 DWORD dwHandsetHookSwitchModes;
773 DWORD dwSpeakerHookSwitchModes;
774 DWORD dwHeadsetHookSwitchModes;
777 DWORD dwDisplayNumRows;
778 DWORD dwDisplayNumColumns;
779 DWORD dwNumRingModes;
780 DWORD dwNumButtonLamps;
781 DWORD dwButtonModesSize;
782 DWORD dwButtonModesOffset;
783 DWORD dwButtonFunctionsSize;
784 DWORD dwButtonFunctionsOffset;
785 DWORD dwLampModesSize;
786 DWORD dwLampModesOffset;
789 DWORD dwSetDataOffset;
792 DWORD dwGetDataOffset;
793 DWORD dwDevSpecificSize;
794 DWORD dwDevSpecificOffset;
795 } PHONECAPS, *LPPHONECAPS;
797 typedef struct phoneextensionid_tag {
798 DWORD dwExtensionID0;
799 DWORD dwExtensionID1;
800 DWORD dwExtensionID2;
801 DWORD dwExtensionID3;
802 } PHONEEXTENSIONID, *LPPHONEEXTENSIONID;
804 typedef struct phonestatus_tag {
812 DWORD dwHandsetHookSwitchMode;
813 DWORD dwHandsetVolume;
815 DWORD dwSpeakerHookSwitchMode;
816 DWORD dwSpeakerVolume;
818 DWORD dwHeadsetHookSwitchMode;
819 DWORD dwHeadsetVolume;
822 DWORD dwDisplayOffset;
823 DWORD dwLampModesSize;
824 DWORD dwLampModesOffset;
825 DWORD dwOwnerNameSize;
826 DWORD dwOwnerNameOffset;
827 DWORD dwDevSpecificSize;
828 DWORD dwDevSpecificOffset;
829 } PHONESTATUS, *LPPHONESTATUS;
831 typedef void (CALLBACK *PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD);
833 typedef struct varstring_tag {
837 DWORD dwStringFormat;
839 DWORD dwStringOffset;
840 } VARSTRING, *LPVARSTRING;
843 DWORD WINAPI lineAccept(HCALL,LPCSTR,DWORD);
844 DWORD WINAPI lineAddProvider(LPCSTR,HWND,LPDWORD);
845 DWORD WINAPI lineAddToConference(HCALL,HCALL);
846 DWORD WINAPI lineAnswer(HCALL,LPCSTR,DWORD);
847 DWORD WINAPI lineBlindTransfer(HCALL,LPCSTR,DWORD);
848 DWORD WINAPI lineClose(HLINE);
849 DWORD WINAPI lineCompleteCall(HCALL,LPDWORD,DWORD,DWORD);
850 DWORD WINAPI lineCompleteTransfer(HCALL,HCALL,LPHCALL,DWORD);
851 DWORD WINAPI lineConfigDialog(DWORD,HWND,LPCSTR);
852 DWORD WINAPI lineConfigDialogEdit(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
853 DWORD WINAPI lineConfigProvider(HWND,DWORD);
854 DWORD WINAPI lineDeallocateCall(HCALL);
855 DWORD WINAPI lineDevSpecific(HLINE,DWORD,HCALL,LPVOID,DWORD);
856 DWORD WINAPI lineDevSpecificFeature(HLINE,DWORD,LPVOID,DWORD);
857 DWORD WINAPI lineDial(HCALL,LPCSTR,DWORD);
858 DWORD WINAPI lineDrop(HCALL,LPCSTR,DWORD);
859 DWORD WINAPI lineForward(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
860 DWORD WINAPI lineGatherDigits(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
861 DWORD WINAPI lineGenerateDigits(HCALL,DWORD,LPCSTR,DWORD);
862 DWORD WINAPI lineGenerateTone(HCALL,DWORD,DWORD,DWORD,LPLINEGENERATETONE);
863 DWORD WINAPI lineGetAddressCaps(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
864 DWORD WINAPI lineGetAddressID(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
865 DWORD WINAPI lineGetAddressStatus(HLINE,DWORD,LPLINEADDRESSSTATUS);
866 DWORD WINAPI lineGetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
867 DWORD WINAPI lineGetCallInfo(HCALL,LPLINECALLINFO);
868 DWORD WINAPI lineGetCallStatus(HCALL,LPLINECALLSTATUS);
869 DWORD WINAPI lineGetConfRelatedCalls(HCALL,LPLINECALLLIST);
870 DWORD WINAPI lineGetCountry(DWORD,DWORD,LPLINECOUNTRYLIST);
871 DWORD WINAPI lineGetDevCaps(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
872 DWORD WINAPI lineGetDevConfig(DWORD,LPVARSTRING,LPCSTR);
873 DWORD WINAPI lineGetID(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
874 DWORD WINAPI lineGetIcon(DWORD,LPCSTR,HICON *);
875 DWORD WINAPI lineGetLineDevStatus(HLINE,LPLINEDEVSTATUS);
876 DWORD WINAPI lineGetNewCalls(HLINE,DWORD,DWORD,LPLINECALLLIST);
877 DWORD WINAPI lineGetNumRings(HLINE,DWORD,LPDWORD);
878 DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
879 DWORD WINAPI lineGetRequest(HLINEAPP,DWORD,LPVOID);
880 DWORD WINAPI lineGetStatusMessages(HLINE,LPDWORD,LPDWORD);
881 DWORD WINAPI lineGetTranslateCaps(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
882 DWORD WINAPI lineHandoff(HCALL,LPCSTR,DWORD);
883 DWORD WINAPI lineHold(HCALL);
884 DWORD WINAPI lineInitialize(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD);
885 DWORD WINAPI lineMakeCall(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
886 DWORD WINAPI lineMonitorDigits(HCALL,DWORD);
887 DWORD WINAPI lineMonitorMedia(HCALL,DWORD);
888 DWORD WINAPI lineMonitorTones(HCALL,LPLINEMONITORTONE,DWORD);
889 DWORD WINAPI lineNegotiateAPIVersion(HLINEAPP,DWORD,DWORD,DWORD,LPDWORD,LPLINEEXTENSIONID);
890 DWORD WINAPI lineNegotiateExtVersion(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
891 DWORD WINAPI lineOpen(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
892 DWORD WINAPI linePark(HCALL,DWORD,LPCSTR,LPVARSTRING);
893 DWORD WINAPI linePickup(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
894 DWORD WINAPI linePrepareAddToConference(HCALL,LPHCALL,LPLINECALLPARAMS);
895 DWORD WINAPI lineRedirect(HCALL,LPCSTR,DWORD);
896 DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP,DWORD,DWORD,DWORD);
897 DWORD WINAPI lineReleaseUserUserInfo(HCALL);
898 DWORD WINAPI lineRemoveFromConference(HCALL);
899 DWORD WINAPI lineRemoveProvider(DWORD,HWND);
900 DWORD WINAPI lineSecureCall(HCALL);
901 DWORD WINAPI lineSendUserUserInfo(HCALL,LPCSTR,DWORD);
902 DWORD WINAPI lineSetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
903 DWORD WINAPI lineSetAppSpecific(HCALL,DWORD);
904 DWORD WINAPI lineSetCallParams(HCALL,DWORD,DWORD,DWORD,LPLINEDIALPARAMS);
905 DWORD WINAPI lineSetCallPrivilege(HCALL,DWORD);
906 DWORD WINAPI lineSetCurrentLocation(HLINEAPP,DWORD);
907 DWORD WINAPI lineSetDevConfig(DWORD,LPVOID,DWORD,LPCSTR);
908 DWORD WINAPI lineSetMediaControl(HLINE,DWORD,HCALL,DWORD,LPLINEMEDIACONTROLDIGIT,DWORD,LPLINEMEDIACONTROLMEDIA,DWORD,LPLINEMEDIACONTROLTONE,DWORD,LPLINEMEDIACONTROLCALLSTATE,DWORD);
909 DWORD WINAPI lineSetMediaMode(HCALL,DWORD);
910 DWORD WINAPI lineSetNumRings(HLINE,DWORD,DWORD);
911 DWORD WINAPI lineSetStatusMessages(HLINE,DWORD,DWORD);
912 DWORD WINAPI lineSetTerminal(HLINE,DWORD,HCALL,DWORD,DWORD,DWORD,DWORD);
913 DWORD WINAPI lineSetTollList(HLINEAPP,DWORD,LPCSTR,DWORD);
914 DWORD WINAPI lineSetupConference(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
915 DWORD WINAPI lineSetupTransfer(HCALL,LPHCALL,LPLINECALLPARAMS);
916 DWORD WINAPI lineShutdown(HLINEAPP);
917 DWORD WINAPI lineSwapHold(HCALL,HCALL);
918 DWORD WINAPI lineTranslateAddress(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
919 DWORD WINAPI lineTranslateDialog(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
920 DWORD WINAPI lineUncompleteCall(HLINE,DWORD);
921 DWORD WINAPI lineUnHold(HCALL);
922 DWORD WINAPI lineUnpark(HLINE,DWORD,LPHCALL,LPCSTR);
924 DWORD WINAPI lineAddProviderA(LPCSTR,HWND,LPDWORD);
925 DWORD WINAPI lineBlindTransferA(HCALL,LPCSTR,DWORD);
926 DWORD WINAPI lineConfigDialogA(DWORD,HWND,LPCSTR);
927 DWORD WINAPI lineConfigDialogEditA(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
928 DWORD WINAPI lineDialA(HCALL,LPCSTR,DWORD);
929 DWORD WINAPI lineForwardA(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
930 DWORD WINAPI lineGatherDigitsA(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
931 DWORD WINAPI lineGenerateDigitsA(HCALL,DWORD,LPCSTR,DWORD);
932 DWORD WINAPI lineGetAddressCapsA(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
933 DWORD WINAPI lineGetAddressIDA(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
934 DWORD WINAPI lineGetAddressStatusA(HLINE,DWORD,LPLINEADDRESSSTATUS);
935 DWORD WINAPI lineGetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
936 DWORD WINAPI lineGetCallInfoA(HCALL,LPLINECALLINFO);
937 DWORD WINAPI lineGetCountryA(DWORD,DWORD,LPLINECOUNTRYLIST);
938 DWORD WINAPI lineGetDevCapsA(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
939 DWORD WINAPI lineGetDevConfigA(DWORD,LPVARSTRING,LPCSTR);
940 DWORD WINAPI lineGetIDA(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
941 DWORD WINAPI lineGetIconA(DWORD,LPCSTR,HICON *);
942 DWORD WINAPI lineGetLineDevStatusA(HLINE,LPLINEDEVSTATUS);
943 DWORD WINAPI lineGetProviderListA(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
944 DWORD WINAPI lineGetRequestA(HLINEAPP,DWORD,LPVOID);
945 DWORD WINAPI lineGetTranslateCapsA(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
946 DWORD WINAPI lineHandoffA(HCALL,LPCSTR,DWORD);
947 DWORD WINAPI lineMakeCallA(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
948 DWORD WINAPI lineOpenA(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
949 DWORD WINAPI lineParkA(HCALL,DWORD,LPCSTR,LPVARSTRING);
950 DWORD WINAPI linePickupA(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
951 DWORD WINAPI linePrepareAddToConferenceA(HCALL,LPHCALL,LPLINECALLPARAMS);
952 DWORD WINAPI lineRedirectA(HCALL,LPCSTR,DWORD);
953 DWORD WINAPI lineSetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
954 DWORD WINAPI lineSetDevConfigA(DWORD,LPVOID,DWORD,LPCSTR);
955 DWORD WINAPI lineSetTollListA(HLINEAPP,DWORD,LPCSTR,DWORD);
956 DWORD WINAPI lineSetupConferenceA(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
957 DWORD WINAPI lineSetupTransferA(HCALL,LPHCALL,LPLINECALLPARAMS);
958 DWORD WINAPI lineTranslateAddressA(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
959 DWORD WINAPI lineTranslateDialogA(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
960 DWORD WINAPI lineUnhold(HCALL);
961 DWORD WINAPI lineUnparkA(HLINE,DWORD,LPHCALL,LPCSTR);
963 /* phone functions */
964 DWORD WINAPI phoneClose(HPHONE);
965 DWORD WINAPI phoneConfigDialog(DWORD,HWND,LPCSTR);
966 DWORD WINAPI phoneDevSpecific(HPHONE,LPVOID,DWORD);
967 DWORD WINAPI phoneGetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
968 DWORD WINAPI phoneGetData(HPHONE,DWORD,LPVOID,DWORD);
969 DWORD WINAPI phoneGetDevCaps(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
970 DWORD WINAPI phoneGetDisplay(HPHONE,LPVARSTRING);
971 DWORD WINAPI phoneGetGain(HPHONE,DWORD,LPDWORD);
972 DWORD WINAPI phoneGetHookSwitch(HPHONE,LPDWORD);
973 DWORD WINAPI phoneGetID(HPHONE,LPVARSTRING,LPCSTR);
974 DWORD WINAPI phoneGetIcon(DWORD,LPCSTR,HICON *);
975 DWORD WINAPI phoneGetLamp(HPHONE,DWORD,LPDWORD);
976 DWORD WINAPI phoneGetRing(HPHONE,LPDWORD,LPDWORD);
977 DWORD WINAPI phoneGetStatus(HPHONE,LPPHONESTATUS);
978 DWORD WINAPI phoneGetStatusMessages(HPHONE,LPDWORD,LPDWORD,LPDWORD);
979 DWORD WINAPI phoneGetVolume(HPHONE,DWORD,LPDWORD);
980 DWORD WINAPI phoneInitialize(LPHPHONEAPP,HINSTANCE,PHONECALLBACK,LPCSTR,LPDWORD);
981 DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP,DWORD,DWORD,DWORD,LPDWORD,LPPHONEEXTENSIONID);
982 DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
983 DWORD WINAPI phoneOpen(HPHONEAPP,DWORD,LPHPHONE,DWORD,DWORD,DWORD,DWORD);
984 DWORD WINAPI phoneSetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
985 DWORD WINAPI phoneSetData(HPHONE,DWORD,LPVOID,DWORD);
986 DWORD WINAPI phoneSetDisplay(HPHONE,DWORD,DWORD,LPCSTR,DWORD);
987 DWORD WINAPI phoneSetGain(HPHONE,DWORD,DWORD);
988 DWORD WINAPI phoneSetHookSwitch(HPHONE,DWORD,DWORD);
989 DWORD WINAPI phoneSetLamp(HPHONE,DWORD,DWORD);
990 DWORD WINAPI phoneSetRing(HPHONE,DWORD,DWORD);
991 DWORD WINAPI phoneSetStatusMessages(HPHONE,DWORD,DWORD,DWORD);
992 DWORD WINAPI phoneSetVolume(HPHONE,DWORD,DWORD);
993 DWORD WINAPI phoneShutdown(HPHONEAPP);
995 DWORD WINAPI phoneConfigDialogA(DWORD,HWND,LPCSTR);
996 DWORD WINAPI phoneGetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
997 DWORD WINAPI phoneGetDevCapsA(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
998 DWORD WINAPI phoneGetIDA(HPHONE,LPVARSTRING,LPCSTR);
999 DWORD WINAPI phoneGetIconA(DWORD,LPCSTR,HICON *);
1000 DWORD WINAPI phoneGetStatusA(HPHONE,LPPHONESTATUS);
1001 DWORD WINAPI phoneSetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
1003 /* "assisted" functions */
1004 DWORD WINAPI tapiGetLocationInfo(LPSTR,LPSTR);
1005 DWORD WINAPI tapiRequestMakeCall(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1007 DWORD WINAPI tapiGetLocationInfoA(LPSTR,LPSTR);
1008 DWORD WINAPI tapiRequestMakeCallA(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1012 #endif /* defined(__cplusplus) */
1014 #endif /* __WINE_TAPI_H */