Reactos
1/*
2 * TAPI definitions
3 *
4 * Copyright (c) 1999 Andreas Mohr
5 *
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.
10 *
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.
15 *
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
19 */
20
21#ifndef __WINE_TAPI_H
22#define __WINE_TAPI_H
23
24#ifndef __WINESRC__
25# include <windows.h>
26#endif
27#include <basetsd.h>
28#include <oaidl.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif /* defined(__cplusplus) */
33
34typedef HANDLE HCALL, *LPHCALL;
35typedef HANDLE HLINE, *LPHLINE;
36typedef HANDLE HLINEAPP, *LPHLINEAPP;
37typedef HANDLE HPHONE, *LPHPHONE;
38typedef HANDLE HPHONEAPP, *LPHPHONEAPP;
39
40#define TAPIERR_REQUESTFAILED -16L
41#define LINEERR_ALLOCATED 0x80000001
42#define LINEERR_BADDEVICEID 0x80000002
43#define LINEERR_BEARERMODEUNAVAIL 0x80000003
44#define LINEERR_CALLUNAVAIL 0x80000005
45#define LINEERR_COMPLETIONOVERRUN 0x80000006
46#define LINEERR_CONFERENCEFULL 0x80000007
47#define LINEERR_DIALBILLING 0x80000008
48#define LINEERR_DIALDIALTONE 0x80000009
49#define LINEERR_DIALPROMPT 0x8000000A
50#define LINEERR_DIALQUIET 0x8000000B
51#define LINEERR_INCOMPATIBLEAPIVERSION 0x8000000C
52#define LINEERR_INCOMPATIBLEEXTVERSION 0x8000000D
53#define LINEERR_INIFILECORRUPT 0x8000000E
54#define LINEERR_INUSE 0x8000000F
55#define LINEERR_INVALADDRESS 0x80000010
56#define LINEERR_INVALADDRESSID 0x80000011
57#define LINEERR_INVALADDRESSMODE 0x80000012
58#define LINEERR_INVALADDRESSSTATE 0x80000013
59#define LINEERR_INVALAPPHANDLE 0x80000014
60#define LINEERR_INVALAPPNAME 0x80000015
61#define LINEERR_INVALBEARERMODE 0x80000016
62#define LINEERR_INVALCALLCOMPLMODE 0x80000017
63#define LINEERR_INVALCALLHANDLE 0x80000018
64#define LINEERR_INVALCALLPARAMS 0x80000019
65#define LINEERR_INVALCALLPRIVILEGE 0x8000001A
66#define LINEERR_INVALCALLSELECT 0x8000001B
67#define LINEERR_INVALCALLSTATE 0x8000001C
68#define LINEERR_INVALCALLSTATELIST 0x8000001D
69#define LINEERR_INVALCARD 0x8000001E
70#define LINEERR_INVALCOMPLETIONID 0x8000001F
71#define LINEERR_INVALCONFCALLHANDLE 0x80000020
72#define LINEERR_INVALCONSULTCALLHANDLE 0x80000021
73#define LINEERR_INVALCOUNTRYCODE 0x80000022
74#define LINEERR_INVALDEVICECLASS 0x80000023
75#define LINEERR_INVALDEVICEHANDLE 0x80000024
76#define LINEERR_INVALDIALPARAMS 0x80000025
77#define LINEERR_INVALDIGITLIST 0x80000026
78#define LINEERR_INVALDIGITMODE 0x80000027
79#define LINEERR_INVALDIGITS 0x80000028
80#define LINEERR_INVALEXTVERSION 0x80000029
81#define LINEERR_INVALGROUPID 0x8000002A
82#define LINEERR_INVALLINEHANDLE 0x8000002B
83#define LINEERR_INVALLINESTATE 0x8000002C
84#define LINEERR_INVALLOCATION 0x8000002D
85#define LINEERR_INVALMEDIALIST 0x8000002E
86#define LINEERR_INVALMEDIAMODE 0x8000002F
87#define LINEERR_INVALMESSAGEID 0x80000030
88#define LINEERR_INVALPARAM 0x80000032
89#define LINEERR_INVALPARKID 0x80000033
90#define LINEERR_INVALPARKMODE 0x80000034
91#define LINEERR_INVALPOINTER 0x80000035
92#define LINEERR_INVALPRIVSELECT 0x80000036
93#define LINEERR_INVALRATE 0x80000037
94#define LINEERR_INVALREQUESTMODE 0x80000038
95#define LINEERR_INVALTERMINALID 0x80000039
96#define LINEERR_INVALTERMINALMODE 0x8000003A
97#define LINEERR_INVALTIMEOUT 0x8000003B
98#define LINEERR_INVALTONE 0x8000003C
99#define LINEERR_INVALTONELIST 0x8000003D
100#define LINEERR_INVALTONEMODE 0x8000003E
101#define LINEERR_INVALTRANSFERMODE 0x8000003F
102#define LINEERR_LINEMAPPERFAILED 0x80000040
103#define LINEERR_NOCONFERENCE 0x80000041
104#define LINEERR_NODEVICE 0x80000042
105#define LINEERR_NODRIVER 0x80000043
106#define LINEERR_NOMEM 0x80000044
107#define LINEERR_NOREQUEST 0x80000045
108#define LINEERR_NOTOWNER 0x80000046
109#define LINEERR_NOTREGISTERED 0x80000047
110#define LINEERR_OPERATIONFAILED 0x80000048
111#define LINEERR_OPERATIONUNAVAIL 0x80000049
112#define LINEERR_RATEUNAVAIL 0x8000004A
113#define LINEERR_RESOURCEUNAVAIL 0x8000004B
114#define LINEERR_REQUESTOVERRUN 0x8000004C
115#define LINEERR_STRUCTURETOOSMALL 0x8000004D
116#define LINEERR_TARGETNOTFOUND 0x8000004E
117#define LINEERR_TARGETSELF 0x8000004F
118#define LINEERR_UNINITIALIZED 0x80000050
119#define LINEERR_USERUSERINFOTOOBIG 0x80000051
120#define LINEERR_REINIT 0x80000052
121#define LINEERR_ADDRESSBLOCKED 0x80000053
122#define LINEERR_BILLINGREJECTED 0x80000054
123#define LINEERR_INVALFEATURE 0x80000055
124#define LINEERR_NOMULTIPLEINSTANCE 0x80000056
125
126#define STRINGFORMAT_ASCII 0x00000001
127#define STRINGFORMAT_DBCS 0x00000002
128#define STRINGFORMAT_UNICODE 0x00000003
129#define STRINGFORMAT_BINARY 0x00000004
130
131#define LINEADDRESSMODE_ADDRESSID 0x00000001
132#define LINEADDRESSMODE_DIALABLEADDR 0x00000002
133
134#define LINEBEARERMODE_VOICE 0x00000001
135#define LINEBEARERMODE_SPEECH 0x00000002
136#define LINEBEARERMODE_MULTIUSE 0x00000004
137#define LINEBEARERMODE_DATA 0x00000008
138#define LINEBEARERMODE_ALTSPEECHDATA 0x00000010
139#define LINEBEARERMODE_NONCALLSIGNALING 0x00000020
140#define LINEBEARERMODE_PASSTHROUGH 0x00000040
141
142#define LINEMEDIAMODE_UNKNOWN 0x00000002
143#define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004
144#define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008
145#define LINEMEDIAMODE_DATAMODEM 0x00000010
146
147#define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001
148#define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002
149#define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004
150#define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008
151#define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010
152#define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020
153#define LINEDEVCAPFLAGS_DIALBILLING 0x00000040
154#define LINEDEVCAPFLAGS_DIALQUIET 0x00000080
155#define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100
156
157#define LINEDEVSTATE_OTHER 0x00000001
158#define LINEDEVSTATE_RINGING 0x00000002
159#define LINEDEVSTATE_CONNECTED 0x00000004
160#define LINEDEVSTATE_DISCONNECTED 0x00000008
161#define LINEDEVSTATE_MSGWAITON 0x00000010
162#define LINEDEVSTATE_MSGWAITOFF 0x00000020
163#define LINEDEVSTATE_INSERVICE 0x00000040
164#define LINEDEVSTATE_OUTOFSERVICE 0x00000080
165#define LINEDEVSTATE_MAINTENANCE 0x00000100
166#define LINEDEVSTATE_OPEN 0x00000200
167#define LINEDEVSTATE_CLOSE 0x00000400
168#define LINEDEVSTATE_NUMCALLS 0x00000800
169#define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000
170#define LINEDEVSTATE_TERMINALS 0x00002000
171#define LINEDEVSTATE_ROAMMODE 0x00004000
172#define LINEDEVSTATE_BATTERY 0x00008000
173#define LINEDEVSTATE_SIGNAL 0x00010000
174#define LINEDEVSTATE_DEVSPECIFIC 0x00020000
175#define LINEDEVSTATE_REINIT 0x00040000
176#define LINEDEVSTATE_LOCK 0x00080000
177
178#define LINEDEVSTATE_CAPSCHANGE 0x00100000
179#define LINEDEVSTATE_CONFIGCHANGE 0x00200000
180#define LINEDEVSTATE_TRANSLATECHANGE 0x00400000
181#define LINEDEVSTATE_COMPLCANCEL 0x00800000
182#define LINEDEVSTATE_REMOVED 0x01000000
183
184#define LINELOCATIONOPTION_PULSEDIAL 0x00000001
185
186
187#define LINEFEATURE_DEVSPECIFIC 0x00000001
188#define LINEFEATURE_DEVSPECIFICFEAT 0x00000002
189#define LINEFEATURE_FORWARD 0x00000004
190#define LINEFEATURE_MAKECALL 0x00000008
191#define LINEFEATURE_SETMEDIACONTROL 0x00000010
192#define LINEFEATURE_SETTERMINAL 0x00000020
193#define LINEFEATURE_SETDEVSTATUS 0x00000040
194#define LINEFEATURE_FORWARDFWD 0x00000080
195#define LINEFEATURE_FORWARDDND 0x00000100
196
197/* tapi callback messages */
198
199#define LINE_ADDRESSSTATE 0L
200#define LINE_CALLINFO 1L
201#define LINE_CALLSTATE 2L
202#define LINE_CLOSE 3L
203#define LINE_DEVSPECIFIC 4L
204#define LINE_DEVSPECIFICFEATURE 5L
205#define LINE_GATHERDIGITS 6L
206#define LINE_GENERATE 7L
207#define LINE_LINEDEVSTATE 8L
208#define LINE_MONITORDIGITS 9L
209#define LINE_MONITORMEDIA 10L
210#define LINE_MONITORTONE 11L
211#define LINE_REPLY 12L
212#define LINE_REQUEST 13L
213#define PHONE_BUTTON 14L
214#define PHONE_CLOSE 15L
215#define PHONE_DEVSPECIFIC 16L
216#define PHONE_REPLY 17L
217#define PHONE_STATE 18L
218#define LINE_CREATE 19L
219#define PHONE_CREATE 20L
220
221#define LINE_AGENTSPECIFIC 21L
222#define LINE_AGENTSTATUS 22L
223#define LINE_APPNEWCALL 23L
224#define LINE_PROXYREQUEST 24L
225#define LINE_REMOVE 25L
226#define PHONE_REMOVE 26L
227/* these are used as Param1 of line_callstate messages */
228#define LINECALLSTATE_IDLE 0x00000001
229#define LINECALLSTATE_OFFERING 0x00000002
230#define LINECALLSTATE_ACCEPTED 0x00000004
231#define LINECALLSTATE_DIALTONE 0x00000008
232#define LINECALLSTATE_DIALING 0x00000010
233#define LINECALLSTATE_RINGBACK 0x00000020
234#define LINECALLSTATE_BUSY 0x00000040
235#define LINECALLSTATE_SPECIALINFO 0x00000080
236#define LINECALLSTATE_CONNECTED 0x00000100
237#define LINECALLSTATE_PROCEEDING 0x00000200
238#define LINECALLSTATE_ONHOLD 0x00000400
239#define LINECALLSTATE_CONFERENCED 0x00000800
240#define LINECALLSTATE_ONHOLDPENDCONF 0x00001000
241#define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000
242#define LINECALLSTATE_DISCONNECTED 0x00004000
243#define LINECALLSTATE_UNKNOWN 0x00008000
244#define LINECONNECTEDMODE_ACTIVE 0x00000001
245#define LINECONNECTEDMODE_INACTIVE 0x00000002
246#define LINECONNECTEDMODE_ACTIVEHELD 0x00000004
247#define LINECONNECTEDMODE_INACTIVEHELD 0x00000008
248#define LINECONNECTEDMODE_CONFIRMED 0x00000010
249
250/* these are Param2 values for state_disconnected line_callstate messages */
251#define LINEDISCONNECTMODE_NORMAL 0x00000001
252#define LINEDISCONNECTMODE_UNKNOWN 0x00000002
253#define LINEDISCONNECTMODE_REJECT 0x00000004
254#define LINEDISCONNECTMODE_PICKUP 0x00000008
255#define LINEDISCONNECTMODE_FORWARDED 0x00000010
256#define LINEDISCONNECTMODE_BUSY 0x00000020
257#define LINEDISCONNECTMODE_NOANSWER 0x00000040
258#define LINEDISCONNECTMODE_BADADDRESS 0x00000080
259#define LINEDISCONNECTMODE_UNREACHABLE 0x00000100
260#define LINEDISCONNECTMODE_CONGESTION 0x00000200
261#define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400
262#define LINEDISCONNECTMODE_UNAVAIL 0x00000800
263#define LINEDISCONNECTMODE_NODIALTONE 0x00001000
264#define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000
265#define LINEDISCONNECTMODE_OUTOFORDER 0x00004000
266#define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000
267#define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000
268#define LINEDISCONNECTMODE_BLOCKED 0x00020000
269#define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000
270#define LINEDISCONNECTMODE_CANCELLED 0x00080000
271
272#define LINECALLSELECT_LINE 0x00000001
273#define LINECALLSELECT_ADDRESS 0x00000002
274#define LINECALLSELECT_CALL 0x00000004
275#define LINECALLSELECT_DEVICEID 0x00000008
276
277#define LINECALLPRIVILEGE_NONE 0x00000001
278#define LINECALLPRIVILEGE_MONITOR 0x00000002
279#define LINECALLPRIVILEGE_OWNER 0x00000004
280#define LINECALLFEATURE_ACCEPT 0x00000001
281#define LINECALLFEATURE_ADDTOCONF 0x00000002
282#define LINECALLFEATURE_ANSWER 0x00000004
283#define LINECALLFEATURE_BLINDTRANSFER 0x00000008
284#define LINECALLFEATURE_COMPLETECALL 0x00000010
285#define LINECALLFEATURE_COMPLETETRANSF 0x00000020
286#define LINECALLFEATURE_DIAL 0x00000040
287#define LINECALLFEATURE_DROP 0x00000080
288#define LINECALLFEATURE_GATHERDIGITS 0x00000100
289#define LINECALLFEATURE_GENERATEDIGITS 0x00000200
290#define LINECALLFEATURE_GENERATETONE 0x00000400
291#define LINECALLFEATURE_HOLD 0x00000800
292#define LINECALLFEATURE_MONITORDIGITS 0x00001000
293#define LINECALLFEATURE_MONITORMEDIA 0x00002000
294#define LINECALLFEATURE_MONITORTONES 0x00004000
295#define LINECALLFEATURE_PARK 0x00008000
296#define LINECALLFEATURE_PREPAREADDCONF 0x00010000
297#define LINECALLFEATURE_REDIRECT 0x00020000
298#define LINECALLFEATURE_REMOVEFROMCONF 0x00040000
299#define LINECALLFEATURE_SECURECALL 0x00080000
300#define LINECALLFEATURE_SENDUSERUSER 0x00100000
301#define LINECALLFEATURE_SETCALLPARAMS 0x00200000
302#define LINECALLFEATURE_SETMEDIACONTROL 0x00400000
303#define LINECALLFEATURE_SETTERMINAL 0x00800000
304#define LINECALLFEATURE_SETUPCONF 0x01000000
305#define LINECALLFEATURE_SETUPTRANSFER 0x02000000
306#define LINECALLFEATURE_SWAPHOLD 0x04000000
307#define LINECALLFEATURE_UNHOLD 0x08000000
308#define LINECALLFEATURE_RELEASEUSERUSERINFO 0x10000000
309
310typedef struct lineaddresscaps_tag {
311 DWORD dwTotalSize;
312 DWORD dwNeededSize;
313 DWORD dwUsedSize;
314 DWORD dwLineDeviceID;
315 DWORD dwAddressSize;
316 DWORD dwAddressOffset;
317 DWORD dwDevSpecificSize;
318 DWORD dwDevSpecificOffset;
319 DWORD dwAddressSharing;
320 DWORD dwAddressStates;
321 DWORD dwCallInfoStates;
322 DWORD dwCallerIDFlags;
323 DWORD dwCalledIDFlags;
324 DWORD dwConnectedIDFlags;
325 DWORD dwRedirectionIDFlags;
326 DWORD dwRedirectingIDFlags;
327 DWORD dwCallStates;
328 DWORD dwDialToneModes;
329 DWORD dwBusyModes;
330 DWORD dwSpecialInfo;
331 DWORD dwDisconnectModes;
332 DWORD dwMaxNumActiveCalls;
333 DWORD dwMaxNumOnHoldCalls;
334 DWORD dwMaxNumOnHoldPendingCalls;
335 DWORD dwMaxNumConference;
336 DWORD dwMaxNumTransConf;
337 DWORD dwAddrCapFlags;
338 DWORD dwCallFeatures;
339 DWORD dwRemoveFromConfCaps;
340 DWORD dwRemoveFromConfState;
341 DWORD dwTransferModes;
342 DWORD dwParkModes;
343 DWORD dwForwardModes;
344 DWORD dwMaxForwardEntries;
345 DWORD dwMaxSpecificEntries;
346 DWORD dwMinFwdNumRings;
347 DWORD dwMaxFwdNumRings;
348 DWORD dwMaxCallCompletions;
349 DWORD dwCallCompletionConds;
350 DWORD dwCallCompletionModes;
351 DWORD dwNumCompletionMessages;
352 DWORD dwCompletionMsgTextEntrySize;
353 DWORD dwCompletionMsgTextSize;
354 DWORD dwCompletionMsgTextOffset;
355 DWORD dwAddressFeatures;
356} LINEADDRESSCAPS, *LPLINEADDRESSCAPS;
357
358typedef struct lineaddressstatus_tag {
359 DWORD dwTotalSize;
360 DWORD dwNeededSize;
361 DWORD dwUsedSize;
362 DWORD dwNumInUse;
363 DWORD dwNumActiveCalls;
364 DWORD dwNumOnHoldCalls;
365 DWORD dwNumOnHoldPendCalls;
366 DWORD dwAddressFeatures;
367 DWORD dwNumRingsNoAnswer;
368 DWORD dwForwardNumEntries;
369 DWORD dwForwardSize;
370 DWORD dwForwardOffset;
371 DWORD dwTerminalModesSize;
372 DWORD dwTerminalModesOffset;
373 DWORD dwDevSpecificSize;
374 DWORD dwDevSpecificOffset;
375} LINEADDRESSSTATUS, *LPLINEADDRESSSTATUS;
376
377typedef struct linedialparams_tag {
378 DWORD dwDialPause;
379 DWORD dwDialSpeed;
380 DWORD dwDigitDuration;
381 DWORD dwWaitForDialtone;
382} LINEDIALPARAMS, *LPLINEDIALPARAMS;
383
384typedef struct linecallinfo_tag {
385 DWORD dwTotalSize;
386 DWORD dwNeededSize;
387 DWORD dwUsedSize;
388 HLINE hLine;
389 DWORD dwLineDeviceID;
390 DWORD dwAddressID;
391 DWORD dwBearerMode;
392 DWORD dwRate;
393 DWORD dwMediaMode;
394 DWORD dwAppSpecific;
395 DWORD dwCallID;
396 DWORD dwRelatedCallID;
397 DWORD dwCallParamFlags;
398 DWORD dwCallStates;
399 DWORD dwMonitorDigitModes;
400 DWORD dwMonitorMediaModes;
401 LINEDIALPARAMS DialParams;
402 DWORD dwOrigin;
403 DWORD dwReason;
404 DWORD dwCompletionID;
405 DWORD dwNumOwners;
406 DWORD dwNumMonitors;
407 DWORD dwCountryCode;
408 DWORD dwTrunk;
409 DWORD dwCallerIDFlags;
410 DWORD dwCallerIDSize;
411 DWORD dwCallerIDOffset;
412 DWORD dwCallerIDNameSize;
413 DWORD dwCallerIDNameOffset;
414 DWORD dwCalledIDFlags;
415 DWORD dwCalledIDSize;
416 DWORD dwCalledIDOffset;
417 DWORD dwCalledIDNameSize;
418 DWORD dwCalledIDNameOffset;
419 DWORD dwConnectedIDFlags;
420 DWORD dwConnectedIDSize;
421 DWORD dwConnectedIDOffset;
422 DWORD dwConnectedIDNameSize;
423 DWORD dwConnectedIDNameOffset;
424 DWORD dwRedirectionIDFlags;
425 DWORD dwRedirectionIDSize;
426 DWORD dwRedirectionIDOffset;
427 DWORD dwRedirectionIDNameSize;
428 DWORD dwRedirectionIDNameOffset;
429 DWORD dwRedirectingIDFlags;
430 DWORD dwRedirectingIDSize;
431 DWORD dwRedirectingIDOffset;
432 DWORD dwRedirectingIDNameSize;
433 DWORD dwRedirectingIDNameOffset;
434 DWORD dwAppNameSize;
435 DWORD dwAppNameOffset;
436 DWORD dwDisplayableAddressSize;
437 DWORD dwDisplayableAddressOffset;
438 DWORD dwCalledPartySize;
439 DWORD dwCalledPartyOffset;
440 DWORD dwCommentSize;
441 DWORD dwCommentOffset;
442 DWORD dwDisplaySize;
443 DWORD dwDisplayOffset;
444 DWORD dwUserUserInfoSize;
445 DWORD dwUserUserInfoOffset;
446 DWORD dwHighLevelCompSize;
447 DWORD dwHighLevelCompOffset;
448 DWORD dwLowLevelCompSize;
449 DWORD dwLowLevelCompOffset;
450 DWORD dwChargingInfoSize;
451 DWORD dwChargingInfoOffset;
452 DWORD dwTerminalModesSize;
453 DWORD dwTerminalModesOffset;
454 DWORD dwDevSpecificSize;
455 DWORD dwDevSpecificOffset;
456} LINECALLINFO, *LPLINECALLINFO;
457
458typedef struct linecalllist_tag {
459 DWORD dwTotalSize;
460 DWORD dwNeededSize;
461 DWORD dwUsedSize;
462 DWORD dwCallsNumEntries;
463 DWORD dwCallsSize;
464 DWORD dwCallsOffset;
465} LINECALLLIST, *LPLINECALLLIST;
466
467typedef struct linecallparams_tag {
468 DWORD dwTotalSize;
469 DWORD dwBearerMode;
470 DWORD dwMinRate;
471 DWORD dwMaxRate;
472 DWORD dwMediaMode;
473 DWORD dwCallParamFlags;
474 DWORD dwAddressMode;
475 DWORD dwAddressID;
476 LINEDIALPARAMS DialParams;
477 DWORD dwOrigAddressSize;
478 DWORD dwOrigAddressOffset;
479 DWORD dwDisplayableAddressSize;
480 DWORD dwDisplayableAddressOffset;
481 DWORD dwCalledPartySize;
482 DWORD dwCalledPartyOffset;
483 DWORD dwCommentSize;
484 DWORD dwCommentOffset;
485 DWORD dwUserUserInfoSize;
486 DWORD dwUserUserInfoOffset;
487 DWORD dwHighLevelCompSize;
488 DWORD dwHighLevelCompOffset;
489 DWORD dwLowLevelCompSize;
490 DWORD dwLowLevelCompOffset;
491 DWORD dwDevSpecificSize;
492 DWORD dwDevSpecificOffset;
493} LINECALLPARAMS, *LPLINECALLPARAMS;
494
495typedef struct linecallstatus_tag {
496 DWORD dwTotalSize;
497 DWORD dwNeededSize;
498 DWORD dwUsedSize;
499 DWORD dwCallState;
500 DWORD dwCallStateMode;
501 DWORD dwCallPrivilege;
502 DWORD dwCallFeatures;
503 DWORD dwDevSpecificSize;
504 DWORD dwDevSpecificOffset;
505} LINECALLSTATUS, *LPLINECALLSTATUS;
506
507typedef struct linecountrylist_tag {
508 DWORD dwTotalSize;
509 DWORD dwNeededSize;
510 DWORD dwUsedSize;
511 DWORD dwNumCountries;
512 DWORD dwCountryListSize;
513 DWORD dwCountryListOffset;
514} LINECOUNTRYLIST, *LPLINECOUNTRYLIST;
515
516typedef struct linecountryentry_tag {
517 DWORD dwCountryID;
518 DWORD dwCountryCode;
519 DWORD dwNextCountryID;
520 DWORD dwCountryNameSize;
521 DWORD dwCountryNameOffset;
522 DWORD dwSameAreaRuleSize;
523 DWORD dwSameAreaRuleOffset;
524 DWORD dwLongDistanceRuleSize;
525 DWORD dwLongDistanceRuleOffset;
526 DWORD dwInternationalRuleSize;
527 DWORD dwInternationalRuleOffset;
528} LINECOUNTRYENTRY, *LPLINECOUNTRYENTRY;
529
530typedef struct linedevcaps_tag {
531 DWORD dwTotalSize;
532 DWORD dwNeededSize;
533 DWORD dwUsedSize;
534 DWORD dwProviderInfoSize;
535 DWORD dwProviderInfoOffset;
536 DWORD dwSwitchInfoSize;
537 DWORD dwSwitchInfoOffset;
538 DWORD dwPermanentLineID;
539 DWORD dwLineNameSize;
540 DWORD dwLineNameOffset;
541 DWORD dwStringFormat;
542 DWORD dwAddressModes;
543 DWORD dwNumAddresses;
544 DWORD dwBearerModes;
545 DWORD dwMaxRate;
546 DWORD dwMediaModes;
547 DWORD dwGenerateToneModes;
548 DWORD dwGenerateToneMaxNumFreq;
549 DWORD dwGenerateDigitModes;
550 DWORD dwMonitorToneMaxNumFreq;
551 DWORD dwMonitorToneMaxNumEntries;
552 DWORD dwMonitorDigitModes;
553 DWORD dwGatherDigitsMinTimeout;
554 DWORD dwGatherDigitsMaxTimeout;
555 DWORD dwMedCtlDigitMaxListSize;
556 DWORD dwMedCtlMediaMaxListSize;
557 DWORD dwMedCtlToneMaxListSize;
558 DWORD dwMedCtlCallStateMaxListSize;
559 DWORD dwDevCapFlags;
560 DWORD dwMaxNumActiveCalls;
561 DWORD dwAnswerMode;
562 DWORD dwRingModes;
563 DWORD dwLineStates;
564 DWORD dwUUIAcceptSize;
565 DWORD dwUUIAnswerSize;
566 DWORD dwUUIMakeCallSize;
567 DWORD dwUUIDropSize;
568 DWORD dwUUISendUserUserInfoSize;
569 DWORD dwUUICallInfoSize;
570 LINEDIALPARAMS MinDialParams;
571 LINEDIALPARAMS MaxDialParams;
572 LINEDIALPARAMS DefaultDialParams;
573 DWORD dwNumTerminals;
574 DWORD dwTerminalCapsSize;
575 DWORD dwTerminalCapsOffset;
576 DWORD dwTerminalTextEntrySize;
577 DWORD dwTerminalTextSize;
578 DWORD dwTerminalTextOffset;
579 DWORD dwDevSpecificSize;
580 DWORD dwDevSpecificOffset;
581 DWORD dwLineFeatures;
582} LINEDEVCAPS, *LPLINEDEVCAPS;
583
584typedef struct linedevstatus_tag {
585 DWORD dwTotalSize;
586 DWORD dwNeededSize;
587 DWORD dwUsedSize;
588 DWORD dwNumOpens;
589 DWORD dwOpenMediaModes;
590 DWORD dwNumActiveCalls;
591 DWORD dwNumOnHoldCalls;
592 DWORD dwNumOnHoldPendCalls;
593 DWORD dwLineFeatures;
594 DWORD dwNumCallCompletions;
595 DWORD dwRingMode;
596 DWORD dwSignalLevel;
597 DWORD dwBatteryLevel;
598 DWORD dwRoamMode;
599 DWORD dwDevStatusFlags;
600 DWORD dwTerminalModesSize;
601 DWORD dwTerminalModesOffset;
602 DWORD dwDevSpecificSize;
603 DWORD dwDevSpecificOffset;
604} LINEDEVSTATUS, *LPLINEDEVSTATUS;
605
606typedef struct lineextensionid_tag {
607 DWORD dwExtensionID0;
608 DWORD dwExtensionID1;
609 DWORD dwExtensionID2;
610 DWORD dwExtensionID3;
611} LINEEXTENSIONID, *LPLINEEXTENSIONID;
612
613typedef struct lineforward_tag {
614 DWORD dwForwardMode;
615 DWORD dwCallerAddressSize;
616 DWORD dwCallerAddressOffset;
617 DWORD dwDestCountryCode;
618 DWORD dwDestAddressSize;
619 DWORD dwDestAddressOffset;
620} LINEFORWARD, *LPLINEFORWARD;
621
622typedef struct lineforwardlist_tag {
623 DWORD dwTotalSize;
624 DWORD dwNumEntries;
625 LINEFORWARD ForwardList[1];
626} LINEFORWARDLIST, *LPLINEFORWARDLIST;
627
628typedef struct linegeneratetone_tag {
629 DWORD dwFrequency;
630 DWORD dwCadenceOn;
631 DWORD dwCadenceOff;
632 DWORD dwVolume;
633} LINEGENERATETONE, *LPLINEGENERATETONE;
634
635typedef struct lineinitializeexparams_tag {
636 DWORD dwTotalSize;
637 DWORD dwNeededSize;
638 DWORD dwUsedSize;
639 DWORD dwOptions;
640 union {
641 HANDLE hEvent;
642 HANDLE hCompletionPort;
643 } Handles;
644 DWORD dwCompletionKey;
645} LINEINITIALIZEEXPARAMS, *LPLINEINITIALIZEEXPARAMS;
646
647typedef struct linemediacontrolcallstate_tag {
648 DWORD dwCallStates;
649 DWORD dwMediaControl;
650} LINEMEDIACONTROLCALLSTATE, *LPLINEMEDIACONTROLCALLSTATE;
651
652typedef struct linemediacontroldigit_tag {
653 DWORD dwDigit;
654 DWORD dwDigitModes;
655 DWORD dwMediaControl;
656} LINEMEDIACONTROLDIGIT, *LPLINEMEDIACONTROLDIGIT;
657
658typedef struct linemediacontrolmedia_tag {
659 DWORD dwMediaModes;
660 DWORD dwDuration;
661 DWORD dwMediaControl;
662} LINEMEDIACONTROLMEDIA, *LPLINEMEDIACONTROLMEDIA;
663
664typedef struct linemediacontroltone_tag {
665 DWORD dwAppSpecific;
666 DWORD dwDuration;
667 DWORD dwFrequency1;
668 DWORD dwFrequency2;
669 DWORD dwFrequency3;
670 DWORD dwMediaControl;
671} LINEMEDIACONTROLTONE, *LPLINEMEDIACONTROLTONE;
672
673typedef struct linemonitortone_tag {
674 DWORD dwAppSpecific;
675 DWORD dwDuration;
676 DWORD dwFrequency1;
677 DWORD dwFrequency2;
678 DWORD dwFrequency3;
679} LINEMONITORTONE, *LPLINEMONITORTONE;
680
681typedef struct lineproviderlist_tag {
682 DWORD dwTotalSize;
683 DWORD dwNeededSize;
684 DWORD dwUsedSize;
685 DWORD dwNumProviders;
686 DWORD dwProviderListSize;
687 DWORD dwProviderListOffset;
688} LINEPROVIDERLIST, *LPLINEPROVIDERLIST;
689
690typedef struct linetranslatecaps_tag {
691 DWORD dwTotalSize;
692 DWORD dwNeededSize;
693 DWORD dwUsedSize;
694 DWORD dwNumLocations;
695 DWORD dwLocationListSize;
696 DWORD dwLocationListOffset;
697 DWORD dwCurrentLocationID;
698 DWORD dwNumCards;
699 DWORD dwCardListSize;
700 DWORD dwCardListOffset;
701 DWORD dwCurrentPreferredCardID;
702} LINETRANSLATECAPS, *LPLINETRANSLATECAPS;
703
704typedef struct linelocationentry_tag {
705 DWORD dwPermanentLocationID;
706 DWORD dwLocationNameSize;
707 DWORD dwLocationNameOffset;
708 DWORD dwCountryCode;
709 DWORD dwCityCodeSize;
710 DWORD dwCityCodeOffset;
711 DWORD dwPreferredCardID;
712 DWORD dwLocalAccessCodeSize;
713 DWORD dwLocalAccessCodeOffset;
714 DWORD dwLongDistanceAccessCodeSize;
715 DWORD dwLongDistanceAccessCodeOffset;
716 DWORD dwTollPrefixListSize;
717 DWORD dwTollPrefixListOffset;
718 DWORD dwCountryID;
719 DWORD dwOptions;
720 DWORD dwCancelCallWaitingSize;
721 DWORD dwCancelCallWaitingOffset;
722} LINELOCATIONENTRY, *LPLINELOCATIONENTRY;
723
724typedef struct linecardentry_tag {
725 DWORD dwPermanentCardID;
726 DWORD dwCardNameSize;
727 DWORD dwCardNameOffset;
728 DWORD dwCardNumberDigits;
729 DWORD dwSameAreaRuleSize;
730 DWORD dwSameAreaRuleOffset;
731 DWORD dwLongDistanceRuleSize;
732 DWORD dwLongDistanceRuleOffset;
733 DWORD dwInternationalRuleSize;
734 DWORD dwInternationalRuleOffset;
735 DWORD dwOptions;
736} LINECARDENTRY, *LPLINECARDENTRY;
737
738
739typedef struct linetranslateoutput_tag {
740 DWORD dwTotalSize;
741 DWORD dwNeededSize;
742 DWORD dwUsedSize;
743 DWORD dwDialableStringSize;
744 DWORD dwDialableStringOffset;
745 DWORD dwDisplayableStringSize;
746 DWORD dwDisplayableStringOffset;
747 DWORD dwCurrentCountry;
748 DWORD dwDestCountry;
749 DWORD dwTranslateResults;
750} LINETRANSLATEOUTPUT, *LPLINETRANSLATEOUTPUT;
751
752typedef struct linemessage_tag {
753 DWORD hDevice;
754 DWORD dwMessageID;
755 DWORD_PTR dwCallbackInstance;
756 DWORD_PTR dwParam1;
757 DWORD_PTR dwParam2;
758 DWORD_PTR dwParam3;
759} LINEMESSAGE, *LPLINEMESSAGE;
760
761typedef void (CALLBACK *LINECALLBACK)(DWORD, DWORD, DWORD, DWORD, DWORD, DWORD);
762
763typedef struct _PHONEAPP {
764 int dummy;
765} PHONEAPP, *LPPHONEAPP;
766
767typedef struct _PHONE {
768 DWORD dwRingMode;
769 DWORD dwVolume;
770} PHONE, *LPPHONE;
771
772typedef struct phonebuttoninfo_tag {
773 DWORD dwTotalSize;
774 DWORD dwNeededSize;
775 DWORD dwUsedSize;
776 DWORD dwButtonMode;
777 DWORD dwButtonFunction;
778 DWORD dwButtonTextSize;
779 DWORD dwButtonTextOffset;
780 DWORD dwDevSpecificSize;
781 DWORD dwDevSpecificOffset;
782 DWORD dwButtonState;
783} PHONEBUTTONINFO, *LPPHONEBUTTONINFO;
784
785typedef struct phonecaps_tag {
786 DWORD dwTotalSize;
787 DWORD dwNeededSize;
788 DWORD dwUsedSize;
789 DWORD dwProviderInfoSize;
790 DWORD dwProviderInfoOffset;
791 DWORD dwPhoneInfoSize;
792 DWORD dwPhoneInfoOffset;
793 DWORD dwPermanentPhoneID;
794 DWORD dwPhoneNameSize;
795 DWORD dwPhoneNameOffset;
796 DWORD dwStringFormat;
797 DWORD dwPhoneStates;
798 DWORD dwHookSwitchDevs;
799 DWORD dwHandsetHookSwitchModes;
800 DWORD dwSpeakerHookSwitchModes;
801 DWORD dwHeadsetHookSwitchModes;
802 DWORD dwVolumeFlags;
803 DWORD dwGainFlags;
804 DWORD dwDisplayNumRows;
805 DWORD dwDisplayNumColumns;
806 DWORD dwNumRingModes;
807 DWORD dwNumButtonLamps;
808 DWORD dwButtonModesSize;
809 DWORD dwButtonModesOffset;
810 DWORD dwButtonFunctionsSize;
811 DWORD dwButtonFunctionsOffset;
812 DWORD dwLampModesSize;
813 DWORD dwLampModesOffset;
814 DWORD dwNumSetData;
815 DWORD dwSetDataSize;
816 DWORD dwSetDataOffset;
817 DWORD dwNumGetData;
818 DWORD dwGetDataSize;
819 DWORD dwGetDataOffset;
820 DWORD dwDevSpecificSize;
821 DWORD dwDevSpecificOffset;
822} PHONECAPS, *LPPHONECAPS;
823
824typedef struct phoneextensionid_tag {
825 DWORD dwExtensionID0;
826 DWORD dwExtensionID1;
827 DWORD dwExtensionID2;
828 DWORD dwExtensionID3;
829} PHONEEXTENSIONID, *LPPHONEEXTENSIONID;
830
831typedef struct phoneinitializeexparams_tag {
832 DWORD dwTotalSize;
833 DWORD dwNeededSize;
834 DWORD dwUsedSize;
835 DWORD dwOptions;
836 union {
837 HANDLE hEvent;
838 HANDLE hCompletionPort;
839 } Handles;
840 DWORD dwCompletionKey;
841} PHONEINITIALIZEEXPARAMS, *LPPHONEINITIALIZEEXPARAMS;
842
843typedef struct phonemessage_tag {
844 DWORD hDevice;
845 DWORD dwMessageID;
846 DWORD_PTR dwCallbackInstance;
847 DWORD_PTR dwParam1;
848 DWORD_PTR dwParam2;
849 DWORD_PTR dwParam3;
850} PHONEMESSAGE, *LPPHONEMESSAGE;
851
852typedef struct phonestatus_tag {
853 DWORD dwTotalSize;
854 DWORD dwNeededSize;
855 DWORD dwUsedSize;
856 DWORD dwStatusFlags;
857 DWORD dwNumOwners;
858 DWORD dwRingMOde;
859 DWORD dwRingVolume;
860 DWORD dwHandsetHookSwitchMode;
861 DWORD dwHandsetVolume;
862 DWORD dwHandsetGain;
863 DWORD dwSpeakerHookSwitchMode;
864 DWORD dwSpeakerVolume;
865 DWORD dwSpeakerGain;
866 DWORD dwHeadsetHookSwitchMode;
867 DWORD dwHeadsetVolume;
868 DWORD dwHeadsetGain;
869 DWORD dwDisplaySize;
870 DWORD dwDisplayOffset;
871 DWORD dwLampModesSize;
872 DWORD dwLampModesOffset;
873 DWORD dwOwnerNameSize;
874 DWORD dwOwnerNameOffset;
875 DWORD dwDevSpecificSize;
876 DWORD dwDevSpecificOffset;
877} PHONESTATUS, *LPPHONESTATUS;
878
879typedef void (CALLBACK *PHONECALLBACK)(HANDLE, DWORD, DWORD, DWORD, DWORD, DWORD);
880
881typedef struct varstring_tag {
882 DWORD dwTotalSize;
883 DWORD dwNeededSize;
884 DWORD dwUsedSize;
885 DWORD dwStringFormat;
886 DWORD dwStringSize;
887 DWORD dwStringOffset;
888} VARSTRING, *LPVARSTRING;
889
890/* line functions */
891DWORD WINAPI lineAccept(HCALL,LPCSTR,DWORD);
892DWORD WINAPI lineAddProvider(LPCSTR,HWND,LPDWORD);
893DWORD WINAPI lineAddToConference(HCALL,HCALL);
894DWORD WINAPI lineAnswer(HCALL,LPCSTR,DWORD);
895DWORD WINAPI lineBlindTransfer(HCALL,LPCSTR,DWORD);
896DWORD WINAPI lineClose(HLINE);
897DWORD WINAPI lineCompleteCall(HCALL,LPDWORD,DWORD,DWORD);
898DWORD WINAPI lineCompleteTransfer(HCALL,HCALL,LPHCALL,DWORD);
899DWORD WINAPI lineConfigDialog(DWORD,HWND,LPCSTR);
900DWORD WINAPI lineConfigDialogEdit(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
901DWORD WINAPI lineConfigProvider(HWND,DWORD);
902DWORD WINAPI lineDeallocateCall(HCALL);
903DWORD WINAPI lineDevSpecific(HLINE,DWORD,HCALL,LPVOID,DWORD);
904DWORD WINAPI lineDevSpecificFeature(HLINE,DWORD,LPVOID,DWORD);
905DWORD WINAPI lineDial(HCALL,LPCSTR,DWORD);
906DWORD WINAPI lineDrop(HCALL,LPCSTR,DWORD);
907DWORD WINAPI lineForward(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
908DWORD WINAPI lineGatherDigits(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
909DWORD WINAPI lineGenerateDigits(HCALL,DWORD,LPCSTR,DWORD);
910DWORD WINAPI lineGenerateTone(HCALL,DWORD,DWORD,DWORD,LPLINEGENERATETONE);
911DWORD WINAPI lineGetAddressCaps(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
912DWORD WINAPI lineGetAddressID(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
913DWORD WINAPI lineGetAddressStatus(HLINE,DWORD,LPLINEADDRESSSTATUS);
914DWORD WINAPI lineGetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
915DWORD WINAPI lineGetCallInfo(HCALL,LPLINECALLINFO);
916DWORD WINAPI lineGetCallStatus(HCALL,LPLINECALLSTATUS);
917DWORD WINAPI lineGetConfRelatedCalls(HCALL,LPLINECALLLIST);
918DWORD WINAPI lineGetCountry(DWORD,DWORD,LPLINECOUNTRYLIST);
919DWORD WINAPI lineGetDevCaps(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
920DWORD WINAPI lineGetDevConfig(DWORD,LPVARSTRING,LPCSTR);
921DWORD WINAPI lineGetID(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
922DWORD WINAPI lineGetIcon(DWORD,LPCSTR,HICON *);
923DWORD WINAPI lineGetLineDevStatus(HLINE,LPLINEDEVSTATUS);
924DWORD WINAPI lineGetNewCalls(HLINE,DWORD,DWORD,LPLINECALLLIST);
925DWORD WINAPI lineGetNumRings(HLINE,DWORD,LPDWORD);
926DWORD WINAPI lineGetProviderList(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
927DWORD WINAPI lineGetRequest(HLINEAPP,DWORD,LPVOID);
928DWORD WINAPI lineGetStatusMessages(HLINE,LPDWORD,LPDWORD);
929DWORD WINAPI lineGetTranslateCaps(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
930DWORD WINAPI lineHandoff(HCALL,LPCSTR,DWORD);
931DWORD WINAPI lineHold(HCALL);
932DWORD WINAPI lineInitialize(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD);
933LONG WINAPI lineInitializeExA(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCSTR,LPDWORD,LPDWORD,LPLINEINITIALIZEEXPARAMS);
934LONG WINAPI lineInitializeExW(LPHLINEAPP,HINSTANCE,LINECALLBACK,LPCWSTR,LPDWORD,LPDWORD,LPLINEINITIALIZEEXPARAMS);
935#define lineInitializeEx WINELIB_NAME_AW(lineInitializeEx)
936DWORD WINAPI lineMakeCall(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
937DWORD WINAPI lineMonitorDigits(HCALL,DWORD);
938DWORD WINAPI lineMonitorMedia(HCALL,DWORD);
939DWORD WINAPI lineMonitorTones(HCALL,LPLINEMONITORTONE,DWORD);
940DWORD WINAPI lineNegotiateAPIVersion(HLINEAPP,DWORD,DWORD,DWORD,LPDWORD,LPLINEEXTENSIONID);
941DWORD WINAPI lineNegotiateExtVersion(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
942DWORD WINAPI lineOpen(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
943DWORD WINAPI linePark(HCALL,DWORD,LPCSTR,LPVARSTRING);
944DWORD WINAPI linePickup(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
945DWORD WINAPI linePrepareAddToConference(HCALL,LPHCALL,LPLINECALLPARAMS);
946DWORD WINAPI lineRedirect(HCALL,LPCSTR,DWORD);
947DWORD WINAPI lineRegisterRequestRecipient(HLINEAPP,DWORD,DWORD,DWORD);
948DWORD WINAPI lineReleaseUserUserInfo(HCALL);
949DWORD WINAPI lineRemoveFromConference(HCALL);
950DWORD WINAPI lineRemoveProvider(DWORD,HWND);
951DWORD WINAPI lineSecureCall(HCALL);
952DWORD WINAPI lineSendUserUserInfo(HCALL,LPCSTR,DWORD);
953DWORD WINAPI lineSetAppPriority(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
954DWORD WINAPI lineSetAppSpecific(HCALL,DWORD);
955DWORD WINAPI lineSetCallParams(HCALL,DWORD,DWORD,DWORD,LPLINEDIALPARAMS);
956DWORD WINAPI lineSetCallPrivilege(HCALL,DWORD);
957DWORD WINAPI lineSetCurrentLocation(HLINEAPP,DWORD);
958DWORD WINAPI lineSetDevConfig(DWORD,LPVOID,DWORD,LPCSTR);
959DWORD WINAPI lineSetMediaControl(HLINE,DWORD,HCALL,DWORD,LPLINEMEDIACONTROLDIGIT const,DWORD,LPLINEMEDIACONTROLMEDIA const,DWORD,LPLINEMEDIACONTROLTONE const,DWORD,LPLINEMEDIACONTROLCALLSTATE const,DWORD);
960DWORD WINAPI lineSetMediaMode(HCALL,DWORD);
961DWORD WINAPI lineSetNumRings(HLINE,DWORD,DWORD);
962DWORD WINAPI lineSetStatusMessages(HLINE,DWORD,DWORD);
963DWORD WINAPI lineSetTerminal(HLINE,DWORD,HCALL,DWORD,DWORD,DWORD,DWORD);
964DWORD WINAPI lineSetTollList(HLINEAPP,DWORD,LPCSTR,DWORD);
965DWORD WINAPI lineSetupConference(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
966DWORD WINAPI lineSetupTransfer(HCALL,LPHCALL,LPLINECALLPARAMS);
967DWORD WINAPI lineShutdown(HLINEAPP);
968DWORD WINAPI lineSwapHold(HCALL,HCALL);
969DWORD WINAPI lineTranslateAddress(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
970DWORD WINAPI lineTranslateDialog(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
971DWORD WINAPI lineUncompleteCall(HLINE,DWORD);
972DWORD WINAPI lineUnHold(HCALL);
973DWORD WINAPI lineUnpark(HLINE,DWORD,LPHCALL,LPCSTR);
974
975DWORD WINAPI lineAddProviderA(LPCSTR,HWND,LPDWORD);
976DWORD WINAPI lineBlindTransferA(HCALL,LPCSTR,DWORD);
977DWORD WINAPI lineConfigDialogA(DWORD,HWND,LPCSTR);
978DWORD WINAPI lineConfigDialogEditA(DWORD,HWND,LPCSTR,LPVOID const,DWORD,LPVARSTRING);
979DWORD WINAPI lineDialA(HCALL,LPCSTR,DWORD);
980DWORD WINAPI lineForwardA(HLINE,DWORD,DWORD,LPLINEFORWARDLIST,DWORD,LPHCALL,LPLINECALLPARAMS);
981DWORD WINAPI lineGatherDigitsA(HCALL,DWORD,LPSTR,DWORD,LPCSTR,DWORD,DWORD);
982DWORD WINAPI lineGenerateDigitsA(HCALL,DWORD,LPCSTR,DWORD);
983DWORD WINAPI lineGetAddressCapsA(HLINEAPP,DWORD,DWORD,DWORD,DWORD,LPLINEADDRESSCAPS);
984DWORD WINAPI lineGetAddressIDA(HLINE,LPDWORD,DWORD,LPCSTR,DWORD);
985DWORD WINAPI lineGetAddressStatusA(HLINE,DWORD,LPLINEADDRESSSTATUS);
986DWORD WINAPI lineGetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPVARSTRING,LPDWORD);
987DWORD WINAPI lineGetCallInfoA(HCALL,LPLINECALLINFO);
988DWORD WINAPI lineGetCountryA(DWORD,DWORD,LPLINECOUNTRYLIST);
989DWORD WINAPI lineGetDevCapsA(HLINEAPP,DWORD,DWORD,DWORD,LPLINEDEVCAPS);
990DWORD WINAPI lineGetDevConfigA(DWORD,LPVARSTRING,LPCSTR);
991DWORD WINAPI lineGetIDA(HLINE,DWORD,HCALL,DWORD,LPVARSTRING,LPCSTR);
992DWORD WINAPI lineGetIconA(DWORD,LPCSTR,HICON *);
993DWORD WINAPI lineGetLineDevStatusA(HLINE,LPLINEDEVSTATUS);
994DWORD WINAPI lineGetProviderListA(DWORD dwAPIVersion,LPLINEPROVIDERLIST);
995DWORD WINAPI lineGetRequestA(HLINEAPP,DWORD,LPVOID);
996DWORD WINAPI lineGetTranslateCapsA(HLINEAPP,DWORD,LPLINETRANSLATECAPS);
997DWORD WINAPI lineHandoffA(HCALL,LPCSTR,DWORD);
998DWORD WINAPI lineMakeCallA(HLINE,LPHCALL,LPCSTR,DWORD,LPLINECALLPARAMS);
999DWORD WINAPI lineOpenA(HLINEAPP,DWORD,LPHLINE,DWORD,DWORD,DWORD,DWORD,DWORD,LPLINECALLPARAMS);
1000DWORD WINAPI lineParkA(HCALL,DWORD,LPCSTR,LPVARSTRING);
1001DWORD WINAPI linePickupA(HLINE,DWORD,LPHCALL,LPCSTR,LPCSTR);
1002DWORD WINAPI linePrepareAddToConferenceA(HCALL,LPHCALL,LPLINECALLPARAMS);
1003DWORD WINAPI lineRedirectA(HCALL,LPCSTR,DWORD);
1004DWORD WINAPI lineSetAppPriorityA(LPCSTR,DWORD,LPLINEEXTENSIONID const,DWORD,LPCSTR,DWORD);
1005DWORD WINAPI lineSetDevConfigA(DWORD,LPVOID,DWORD,LPCSTR);
1006DWORD WINAPI lineSetTollListA(HLINEAPP,DWORD,LPCSTR,DWORD);
1007DWORD WINAPI lineSetupConferenceA(HCALL,HLINE,LPHCALL,LPHCALL,DWORD,LPLINECALLPARAMS);
1008DWORD WINAPI lineSetupTransferA(HCALL,LPHCALL,LPLINECALLPARAMS);
1009DWORD WINAPI lineTranslateAddressA(HLINEAPP,DWORD,DWORD,LPCSTR,DWORD,DWORD,LPLINETRANSLATEOUTPUT);
1010DWORD WINAPI lineTranslateDialogA(HLINEAPP,DWORD,DWORD,HWND,LPCSTR);
1011DWORD WINAPI lineUnhold(HCALL);
1012DWORD WINAPI lineUnparkA(HLINE,DWORD,LPHCALL,LPCSTR);
1013
1014/* phone functions */
1015DWORD WINAPI phoneClose(HPHONE);
1016DWORD WINAPI phoneConfigDialog(DWORD,HWND,LPCSTR);
1017DWORD WINAPI phoneDevSpecific(HPHONE,LPVOID,DWORD);
1018DWORD WINAPI phoneGetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
1019DWORD WINAPI phoneGetData(HPHONE,DWORD,LPVOID,DWORD);
1020DWORD WINAPI phoneGetDevCaps(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
1021DWORD WINAPI phoneGetDisplay(HPHONE,LPVARSTRING);
1022DWORD WINAPI phoneGetGain(HPHONE,DWORD,LPDWORD);
1023DWORD WINAPI phoneGetHookSwitch(HPHONE,LPDWORD);
1024DWORD WINAPI phoneGetID(HPHONE,LPVARSTRING,LPCSTR);
1025DWORD WINAPI phoneGetIcon(DWORD,LPCSTR,HICON *);
1026DWORD WINAPI phoneGetLamp(HPHONE,DWORD,LPDWORD);
1027DWORD WINAPI phoneGetRing(HPHONE,LPDWORD,LPDWORD);
1028DWORD WINAPI phoneGetStatus(HPHONE,LPPHONESTATUS);
1029DWORD WINAPI phoneGetStatusMessages(HPHONE,LPDWORD,LPDWORD,LPDWORD);
1030DWORD WINAPI phoneGetVolume(HPHONE,DWORD,LPDWORD);
1031DWORD WINAPI phoneInitialize(LPHPHONEAPP,HINSTANCE,PHONECALLBACK,LPCSTR,LPDWORD);
1032DWORD WINAPI phoneNegotiateAPIVersion(HPHONEAPP,DWORD,DWORD,DWORD,LPDWORD,LPPHONEEXTENSIONID);
1033DWORD WINAPI phoneNegotiateExtVersion(HPHONEAPP,DWORD,DWORD,DWORD,DWORD,LPDWORD);
1034DWORD WINAPI phoneOpen(HPHONEAPP,DWORD,LPHPHONE,DWORD,DWORD,DWORD,DWORD);
1035DWORD WINAPI phoneSetButtonInfo(HPHONE,DWORD,LPPHONEBUTTONINFO);
1036DWORD WINAPI phoneSetData(HPHONE,DWORD,LPVOID,DWORD);
1037DWORD WINAPI phoneSetDisplay(HPHONE,DWORD,DWORD,LPCSTR,DWORD);
1038DWORD WINAPI phoneSetGain(HPHONE,DWORD,DWORD);
1039DWORD WINAPI phoneSetHookSwitch(HPHONE,DWORD,DWORD);
1040DWORD WINAPI phoneSetLamp(HPHONE,DWORD,DWORD);
1041DWORD WINAPI phoneSetRing(HPHONE,DWORD,DWORD);
1042DWORD WINAPI phoneSetStatusMessages(HPHONE,DWORD,DWORD,DWORD);
1043DWORD WINAPI phoneSetVolume(HPHONE,DWORD,DWORD);
1044DWORD WINAPI phoneShutdown(HPHONEAPP);
1045
1046DWORD WINAPI phoneConfigDialogA(DWORD,HWND,LPCSTR);
1047DWORD WINAPI phoneGetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
1048DWORD WINAPI phoneGetDevCapsA(HPHONEAPP,DWORD,DWORD,DWORD,LPPHONECAPS);
1049DWORD WINAPI phoneGetIDA(HPHONE,LPVARSTRING,LPCSTR);
1050DWORD WINAPI phoneGetIconA(DWORD,LPCSTR,HICON *);
1051DWORD WINAPI phoneGetStatusA(HPHONE,LPPHONESTATUS);
1052DWORD WINAPI phoneSetButtonInfoA(HPHONE,DWORD,LPPHONEBUTTONINFO);
1053
1054/* "assisted" functions */
1055DWORD WINAPI tapiGetLocationInfo(LPSTR,LPSTR);
1056DWORD WINAPI tapiRequestMakeCall(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1057
1058DWORD WINAPI tapiGetLocationInfoA(LPSTR,LPSTR);
1059DWORD WINAPI tapiRequestMakeCallA(LPCSTR,LPCSTR,LPCSTR,LPCSTR);
1060
1061#ifdef __cplusplus
1062} /* extern "C" */
1063#endif /* defined(__cplusplus) */
1064
1065#endif /* __WINE_TAPI_H */