1/**
2 * This file has no copyright assigned and is placed in the Public Domain.
3 * This file is part of the mingw-w64 runtime package.
4 * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5 */
6#ifndef TAPI_H
7#define TAPI_H
8
9#include <_mingw_unicode.h>
10
11#ifndef TAPI_CURRENT_VERSION
12#define TAPI_CURRENT_VERSION 0x00030001
13#endif
14
15#include <windows.h>
16#include <basetsd.h>
17#include <oaidl.h>
18
19#pragma pack(1)
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
25#define DECLARE_OPAQUE32(name) typedef DWORD name
26
27  DECLARE_OPAQUE32(HCALL);
28  typedef HCALL *LPHCALL;
29
30  DECLARE_OPAQUE32(HCALLHUB);
31  typedef HCALLHUB *LPHCALLHUB;
32
33  DECLARE_OPAQUE32(HLINE);
34  typedef HLINE *LPHLINE;
35
36  DECLARE_OPAQUE32(HPHONE);
37  typedef HPHONE *LPHPHONE;
38
39  DECLARE_OPAQUE32(HLINEAPP);
40  typedef HLINEAPP *LPHLINEAPP;
41
42  DECLARE_OPAQUE32(HPHONEAPP);
43  typedef HPHONEAPP *LPHPHONEAPP;
44
45  DECLARE_OPAQUE32(HAGENTSESSION);
46  typedef HAGENTSESSION *LPHAGENTSESSION;
47
48  DECLARE_OPAQUE32(HAGENT);
49  typedef HAGENT *LPHAGENT;
50
51  DECLARE_OPAQUE32(HPRIVATECHANNEL);
52  typedef HPRIVATECHANNEL *LPHPRIVATECHANNEL;
53
54  typedef HICON *LPHICON;
55
56  typedef void (CALLBACK *LINECALLBACK)(DWORD hDevice,DWORD dwMessage,DWORD_PTR dwInstance,DWORD_PTR dwParam1,DWORD_PTR dwParam2,DWORD_PTR dwParam3);
57  typedef void (CALLBACK *PHONECALLBACK)(DWORD hDevice,DWORD dwMessage,DWORD_PTR dwInstance,DWORD_PTR dwParam1,DWORD_PTR dwParam2,DWORD_PTR dwParam3);
58
59#define LINE_ADDRESSSTATE __MSABI_LONG(0)
60#define LINE_CALLINFO __MSABI_LONG(1)
61#define LINE_CALLSTATE __MSABI_LONG(2)
62#define LINE_CLOSE __MSABI_LONG(3)
63#define LINE_DEVSPECIFIC __MSABI_LONG(4)
64#define LINE_DEVSPECIFICFEATURE __MSABI_LONG(5)
65#define LINE_GATHERDIGITS __MSABI_LONG(6)
66#define LINE_GENERATE __MSABI_LONG(7)
67#define LINE_LINEDEVSTATE __MSABI_LONG(8)
68#define LINE_MONITORDIGITS __MSABI_LONG(9)
69#define LINE_MONITORMEDIA __MSABI_LONG(10)
70#define LINE_MONITORTONE __MSABI_LONG(11)
71#define LINE_REPLY __MSABI_LONG(12)
72#define LINE_REQUEST __MSABI_LONG(13)
73#define PHONE_BUTTON __MSABI_LONG(14)
74#define PHONE_CLOSE __MSABI_LONG(15)
75#define PHONE_DEVSPECIFIC __MSABI_LONG(16)
76#define PHONE_REPLY __MSABI_LONG(17)
77#define PHONE_STATE __MSABI_LONG(18)
78#define LINE_CREATE __MSABI_LONG(19)
79#define PHONE_CREATE __MSABI_LONG(20)
80#define LINE_AGENTSPECIFIC __MSABI_LONG(21)
81#define LINE_AGENTSTATUS __MSABI_LONG(22)
82#define LINE_APPNEWCALL __MSABI_LONG(23)
83#define LINE_PROXYREQUEST __MSABI_LONG(24)
84#define LINE_REMOVE __MSABI_LONG(25)
85#define PHONE_REMOVE __MSABI_LONG(26)
86
87#define LINE_AGENTSESSIONSTATUS __MSABI_LONG(27)
88#define LINE_QUEUESTATUS __MSABI_LONG(28)
89#define LINE_AGENTSTATUSEX __MSABI_LONG(29)
90#define LINE_GROUPSTATUS __MSABI_LONG(30)
91#define LINE_PROXYSTATUS __MSABI_LONG(31)
92
93#define LINE_APPNEWCALLHUB __MSABI_LONG(32)
94#define LINE_CALLHUBCLOSE __MSABI_LONG(33)
95#define LINE_DEVSPECIFICEX __MSABI_LONG(34)
96
97#define INITIALIZE_NEGOTIATION __MSABI_LONG(0xFFFFFFFFU)
98
99#define LINEADDRCAPFLAGS_FWDNUMRINGS 0x00000001
100#define LINEADDRCAPFLAGS_PICKUPGROUPID 0x00000002
101#define LINEADDRCAPFLAGS_SECURE 0x00000004
102#define LINEADDRCAPFLAGS_BLOCKIDDEFAULT 0x00000008
103#define LINEADDRCAPFLAGS_BLOCKIDOVERRIDE 0x00000010
104#define LINEADDRCAPFLAGS_DIALED 0x00000020
105#define LINEADDRCAPFLAGS_ORIGOFFHOOK 0x00000040
106#define LINEADDRCAPFLAGS_DESTOFFHOOK 0x00000080
107#define LINEADDRCAPFLAGS_FWDCONSULT 0x00000100
108#define LINEADDRCAPFLAGS_SETUPCONFNULL 0x00000200
109#define LINEADDRCAPFLAGS_AUTORECONNECT 0x00000400
110#define LINEADDRCAPFLAGS_COMPLETIONID 0x00000800
111#define LINEADDRCAPFLAGS_TRANSFERHELD 0x00001000
112#define LINEADDRCAPFLAGS_TRANSFERMAKE 0x00002000
113#define LINEADDRCAPFLAGS_CONFERENCEHELD 0x00004000
114#define LINEADDRCAPFLAGS_CONFERENCEMAKE 0x00008000
115#define LINEADDRCAPFLAGS_PARTIALDIAL 0x00010000
116#define LINEADDRCAPFLAGS_FWDSTATUSVALID 0x00020000
117#define LINEADDRCAPFLAGS_FWDINTEXTADDR 0x00040000
118#define LINEADDRCAPFLAGS_FWDBUSYNAADDR 0x00080000
119#define LINEADDRCAPFLAGS_ACCEPTTOALERT 0x00100000
120#define LINEADDRCAPFLAGS_CONFDROP 0x00200000
121#define LINEADDRCAPFLAGS_PICKUPCALLWAIT 0x00400000
122#define LINEADDRCAPFLAGS_PREDICTIVEDIALER 0x00800000
123#define LINEADDRCAPFLAGS_QUEUE 0x01000000
124#define LINEADDRCAPFLAGS_ROUTEPOINT 0x02000000
125#define LINEADDRCAPFLAGS_HOLDMAKESNEW 0x04000000
126#define LINEADDRCAPFLAGS_NOINTERNALCALLS 0x08000000
127#define LINEADDRCAPFLAGS_NOEXTERNALCALLS 0x10000000
128#define LINEADDRCAPFLAGS_SETCALLINGID 0x20000000
129#define LINEADDRCAPFLAGS_ACDGROUP 0x40000000
130#define LINEADDRCAPFLAGS_NOPSTNADDRESSTRANSLATION 0x80000000
131
132#define LINEADDRESSMODE_ADDRESSID 0x00000001
133#define LINEADDRESSMODE_DIALABLEADDR 0x00000002
134
135#define LINEADDRESSSHARING_PRIVATE 0x00000001
136#define LINEADDRESSSHARING_BRIDGEDEXCL 0x00000002
137#define LINEADDRESSSHARING_BRIDGEDNEW 0x00000004
138#define LINEADDRESSSHARING_BRIDGEDSHARED 0x00000008
139#define LINEADDRESSSHARING_MONITORED 0x00000010
140
141#define LINEADDRESSSTATE_OTHER 0x00000001
142#define LINEADDRESSSTATE_DEVSPECIFIC 0x00000002
143#define LINEADDRESSSTATE_INUSEZERO 0x00000004
144#define LINEADDRESSSTATE_INUSEONE 0x00000008
145#define LINEADDRESSSTATE_INUSEMANY 0x00000010
146#define LINEADDRESSSTATE_NUMCALLS 0x00000020
147#define LINEADDRESSSTATE_FORWARD 0x00000040
148#define LINEADDRESSSTATE_TERMINALS 0x00000080
149#define LINEADDRESSSTATE_CAPSCHANGE 0x00000100
150
151#define LINEADDRESSTYPE_PHONENUMBER 0x00000001
152#define LINEADDRESSTYPE_SDP 0x00000002
153#define LINEADDRESSTYPE_EMAILNAME 0x00000004
154#define LINEADDRESSTYPE_DOMAINNAME 0x00000008
155#define LINEADDRESSTYPE_IPADDRESS 0x00000010
156
157#define LINEADDRFEATURE_FORWARD 0x00000001
158#define LINEADDRFEATURE_MAKECALL 0x00000002
159#define LINEADDRFEATURE_PICKUP 0x00000004
160#define LINEADDRFEATURE_SETMEDIACONTROL 0x00000008
161#define LINEADDRFEATURE_SETTERMINAL 0x00000010
162#define LINEADDRFEATURE_SETUPCONF 0x00000020
163#define LINEADDRFEATURE_UNCOMPLETECALL 0x00000040
164#define LINEADDRFEATURE_UNPARK 0x00000080
165#define LINEADDRFEATURE_PICKUPHELD 0x00000100
166#define LINEADDRFEATURE_PICKUPGROUP 0x00000200
167#define LINEADDRFEATURE_PICKUPDIRECT 0x00000400
168#define LINEADDRFEATURE_PICKUPWAITING 0x00000800
169#define LINEADDRFEATURE_FORWARDFWD 0x00001000
170#define LINEADDRFEATURE_FORWARDDND 0x00002000
171
172#define LINEAGENTFEATURE_SETAGENTGROUP 0x00000001
173#define LINEAGENTFEATURE_SETAGENTSTATE 0x00000002
174#define LINEAGENTFEATURE_SETAGENTACTIVITY 0x00000004
175#define LINEAGENTFEATURE_AGENTSPECIFIC 0x00000008
176#define LINEAGENTFEATURE_GETAGENTACTIVITYLIST 0x00000010
177#define LINEAGENTFEATURE_GETAGENTGROUP 0x00000020
178
179#define LINEAGENTSTATE_LOGGEDOFF 0x00000001
180#define LINEAGENTSTATE_NOTREADY 0x00000002
181#define LINEAGENTSTATE_READY 0x00000004
182#define LINEAGENTSTATE_BUSYACD 0x00000008
183#define LINEAGENTSTATE_BUSYINCOMING 0x00000010
184#define LINEAGENTSTATE_BUSYOUTBOUND 0x00000020
185#define LINEAGENTSTATE_BUSYOTHER 0x00000040
186#define LINEAGENTSTATE_WORKINGAFTERCALL 0x00000080
187#define LINEAGENTSTATE_UNKNOWN 0x00000100
188#define LINEAGENTSTATE_UNAVAIL 0x00000200
189
190#define LINEAGENTSTATUS_GROUP 0x00000001
191#define LINEAGENTSTATUS_STATE 0x00000002
192#define LINEAGENTSTATUS_NEXTSTATE 0x00000004
193#define LINEAGENTSTATUS_ACTIVITY 0x00000008
194#define LINEAGENTSTATUS_ACTIVITYLIST 0x00000010
195#define LINEAGENTSTATUS_GROUPLIST 0x00000020
196#define LINEAGENTSTATUS_CAPSCHANGE 0x00000040
197#define LINEAGENTSTATUS_VALIDSTATES 0x00000080
198#define LINEAGENTSTATUS_VALIDNEXTSTATES 0x00000100
199
200#define LINEAGENTSTATEEX_NOTREADY 0x00000001
201#define LINEAGENTSTATEEX_READY 0x00000002
202#define LINEAGENTSTATEEX_BUSYACD 0x00000004
203#define LINEAGENTSTATEEX_BUSYINCOMING 0x00000008
204#define LINEAGENTSTATEEX_BUSYOUTGOING 0x00000010
205#define LINEAGENTSTATEEX_UNKNOWN 0x00000020
206#define LINEAGENTSTATEEX_RELEASED 0x00000040
207
208#define LINEAGENTSTATUSEX_NEWAGENT 0x00000001
209#define LINEAGENTSTATUSEX_STATE 0x00000002
210#define LINEAGENTSTATUSEX_UPDATEINFO 0x00000004
211
212#define LINEAGENTSESSIONSTATE_NOTREADY 0x00000001
213#define LINEAGENTSESSIONSTATE_READY 0x00000002
214#define LINEAGENTSESSIONSTATE_BUSYONCALL 0x00000004
215#define LINEAGENTSESSIONSTATE_BUSYWRAPUP 0x00000008
216#define LINEAGENTSESSIONSTATE_ENDED 0x00000010
217#define LINEAGENTSESSIONSTATE_RELEASED 0x00000020
218
219#define LINEAGENTSESSIONSTATUS_NEWSESSION 0x00000001
220#define LINEAGENTSESSIONSTATUS_STATE 0x00000002
221#define LINEAGENTSESSIONSTATUS_UPDATEINFO 0x00000004
222
223#define LINEQUEUESTATUS_UPDATEINFO 0x00000001
224#define LINEQUEUESTATUS_NEWQUEUE 0x00000002
225#define LINEQUEUESTATUS_QUEUEREMOVED 0x00000004
226
227#define LINEGROUPSTATUS_NEWGROUP 0x00000001
228#define LINEGROUPSTATUS_GROUPREMOVED 0x00000002
229
230#define LINEPROXYSTATUS_OPEN 0x00000001
231#define LINEPROXYSTATUS_CLOSE 0x00000002
232#define LINEPROXYSTATUS_ALLOPENFORACD 0x00000004
233
234#define LINEANSWERMODE_NONE 0x00000001
235#define LINEANSWERMODE_DROP 0x00000002
236#define LINEANSWERMODE_HOLD 0x00000004
237
238#define LINEBEARERMODE_VOICE 0x00000001
239#define LINEBEARERMODE_SPEECH 0x00000002
240#define LINEBEARERMODE_MULTIUSE 0x00000004
241#define LINEBEARERMODE_DATA 0x00000008
242#define LINEBEARERMODE_ALTSPEECHDATA 0x00000010
243#define LINEBEARERMODE_NONCALLSIGNALING 0x00000020
244#define LINEBEARERMODE_PASSTHROUGH 0x00000040
245#define LINEBEARERMODE_RESTRICTEDDATA 0x00000080
246
247#define LINEBUSYMODE_STATION 0x00000001
248#define LINEBUSYMODE_TRUNK 0x00000002
249#define LINEBUSYMODE_UNKNOWN 0x00000004
250#define LINEBUSYMODE_UNAVAIL 0x00000008
251
252#define LINECALLCOMPLCOND_BUSY 0x00000001
253#define LINECALLCOMPLCOND_NOANSWER 0x00000002
254
255#define LINECALLCOMPLMODE_CAMPON 0x00000001
256#define LINECALLCOMPLMODE_CALLBACK 0x00000002
257#define LINECALLCOMPLMODE_INTRUDE 0x00000004
258#define LINECALLCOMPLMODE_MESSAGE 0x00000008
259
260#define LINECALLFEATURE_ACCEPT 0x00000001
261#define LINECALLFEATURE_ADDTOCONF 0x00000002
262#define LINECALLFEATURE_ANSWER 0x00000004
263#define LINECALLFEATURE_BLINDTRANSFER 0x00000008
264#define LINECALLFEATURE_COMPLETECALL 0x00000010
265#define LINECALLFEATURE_COMPLETETRANSF 0x00000020
266#define LINECALLFEATURE_DIAL 0x00000040
267#define LINECALLFEATURE_DROP 0x00000080
268#define LINECALLFEATURE_GATHERDIGITS 0x00000100
269#define LINECALLFEATURE_GENERATEDIGITS 0x00000200
270#define LINECALLFEATURE_GENERATETONE 0x00000400
271#define LINECALLFEATURE_HOLD 0x00000800
272#define LINECALLFEATURE_MONITORDIGITS 0x00001000
273#define LINECALLFEATURE_MONITORMEDIA 0x00002000
274#define LINECALLFEATURE_MONITORTONES 0x00004000
275#define LINECALLFEATURE_PARK 0x00008000
276#define LINECALLFEATURE_PREPAREADDCONF 0x00010000
277#define LINECALLFEATURE_REDIRECT 0x00020000
278#define LINECALLFEATURE_REMOVEFROMCONF 0x00040000
279#define LINECALLFEATURE_SECURECALL 0x00080000
280#define LINECALLFEATURE_SENDUSERUSER 0x00100000
281#define LINECALLFEATURE_SETCALLPARAMS 0x00200000
282#define LINECALLFEATURE_SETMEDIACONTROL 0x00400000
283#define LINECALLFEATURE_SETTERMINAL 0x00800000
284#define LINECALLFEATURE_SETUPCONF 0x01000000
285#define LINECALLFEATURE_SETUPTRANSFER 0x02000000
286#define LINECALLFEATURE_SWAPHOLD 0x04000000
287#define LINECALLFEATURE_UNHOLD 0x08000000
288#define LINECALLFEATURE_RELEASEUSERUSERINFO 0x10000000
289#define LINECALLFEATURE_SETTREATMENT 0x20000000
290#define LINECALLFEATURE_SETQOS 0x40000000
291#define LINECALLFEATURE_SETCALLDATA 0x80000000
292#define LINECALLFEATURE2_NOHOLDCONFERENCE 0x00000001
293#define LINECALLFEATURE2_ONESTEPTRANSFER 0x00000002
294#define LINECALLFEATURE2_COMPLCAMPON 0x00000004
295#define LINECALLFEATURE2_COMPLCALLBACK 0x00000008
296#define LINECALLFEATURE2_COMPLINTRUDE 0x00000010
297#define LINECALLFEATURE2_COMPLMESSAGE 0x00000020
298#define LINECALLFEATURE2_TRANSFERNORM 0x00000040
299#define LINECALLFEATURE2_TRANSFERCONF 0x00000080
300#define LINECALLFEATURE2_PARKDIRECT 0x00000100
301#define LINECALLFEATURE2_PARKNONDIRECT 0x00000200
302
303#define LINECALLHUBTRACKING_NONE 0x00000000
304#define LINECALLHUBTRACKING_PROVIDERLEVEL 0x00000001
305#define LINECALLHUBTRACKING_ALLCALLS 0x00000002
306
307#define LINECALLINFOSTATE_OTHER 0x00000001
308#define LINECALLINFOSTATE_DEVSPECIFIC 0x00000002
309#define LINECALLINFOSTATE_BEARERMODE 0x00000004
310#define LINECALLINFOSTATE_RATE 0x00000008
311#define LINECALLINFOSTATE_MEDIAMODE 0x00000010
312#define LINECALLINFOSTATE_APPSPECIFIC 0x00000020
313#define LINECALLINFOSTATE_CALLID 0x00000040
314#define LINECALLINFOSTATE_RELATEDCALLID 0x00000080
315#define LINECALLINFOSTATE_ORIGIN 0x00000100
316#define LINECALLINFOSTATE_REASON 0x00000200
317#define LINECALLINFOSTATE_COMPLETIONID 0x00000400
318#define LINECALLINFOSTATE_NUMOWNERINCR 0x00000800
319#define LINECALLINFOSTATE_NUMOWNERDECR 0x00001000
320#define LINECALLINFOSTATE_NUMMONITORS 0x00002000
321#define LINECALLINFOSTATE_TRUNK 0x00004000
322#define LINECALLINFOSTATE_CALLERID 0x00008000
323#define LINECALLINFOSTATE_CALLEDID 0x00010000
324#define LINECALLINFOSTATE_CONNECTEDID 0x00020000
325#define LINECALLINFOSTATE_REDIRECTIONID 0x00040000
326#define LINECALLINFOSTATE_REDIRECTINGID 0x00080000
327#define LINECALLINFOSTATE_DISPLAY 0x00100000
328#define LINECALLINFOSTATE_USERUSERINFO 0x00200000
329#define LINECALLINFOSTATE_HIGHLEVELCOMP 0x00400000
330#define LINECALLINFOSTATE_LOWLEVELCOMP 0x00800000
331#define LINECALLINFOSTATE_CHARGINGINFO 0x01000000
332#define LINECALLINFOSTATE_TERMINAL 0x02000000
333#define LINECALLINFOSTATE_DIALPARAMS 0x04000000
334#define LINECALLINFOSTATE_MONITORMODES 0x08000000
335#define LINECALLINFOSTATE_TREATMENT 0x10000000
336#define LINECALLINFOSTATE_QOS 0x20000000
337#define LINECALLINFOSTATE_CALLDATA 0x40000000
338
339#define LINECALLORIGIN_OUTBOUND 0x00000001
340#define LINECALLORIGIN_INTERNAL 0x00000002
341#define LINECALLORIGIN_EXTERNAL 0x00000004
342#define LINECALLORIGIN_UNKNOWN 0x00000010
343#define LINECALLORIGIN_UNAVAIL 0x00000020
344#define LINECALLORIGIN_CONFERENCE 0x00000040
345#define LINECALLORIGIN_INBOUND 0x00000080
346
347#define LINECALLPARAMFLAGS_SECURE 0x00000001
348#define LINECALLPARAMFLAGS_IDLE 0x00000002
349#define LINECALLPARAMFLAGS_BLOCKID 0x00000004
350#define LINECALLPARAMFLAGS_ORIGOFFHOOK 0x00000008
351#define LINECALLPARAMFLAGS_DESTOFFHOOK 0x00000010
352#define LINECALLPARAMFLAGS_NOHOLDCONFERENCE 0x00000020
353#define LINECALLPARAMFLAGS_PREDICTIVEDIAL 0x00000040
354#define LINECALLPARAMFLAGS_ONESTEPTRANSFER 0x00000080
355
356#define LINECALLPARTYID_BLOCKED 0x00000001
357#define LINECALLPARTYID_OUTOFAREA 0x00000002
358#define LINECALLPARTYID_NAME 0x00000004
359#define LINECALLPARTYID_ADDRESS 0x00000008
360#define LINECALLPARTYID_PARTIAL 0x00000010
361#define LINECALLPARTYID_UNKNOWN 0x00000020
362#define LINECALLPARTYID_UNAVAIL 0x00000040
363
364#define LINECALLPRIVILEGE_NONE 0x00000001
365#define LINECALLPRIVILEGE_MONITOR 0x00000002
366#define LINECALLPRIVILEGE_OWNER 0x00000004
367
368#define LINECALLREASON_DIRECT 0x00000001
369#define LINECALLREASON_FWDBUSY 0x00000002
370#define LINECALLREASON_FWDNOANSWER 0x00000004
371#define LINECALLREASON_FWDUNCOND 0x00000008
372#define LINECALLREASON_PICKUP 0x00000010
373#define LINECALLREASON_UNPARK 0x00000020
374#define LINECALLREASON_REDIRECT 0x00000040
375#define LINECALLREASON_CALLCOMPLETION 0x00000080
376#define LINECALLREASON_TRANSFER 0x00000100
377#define LINECALLREASON_REMINDER 0x00000200
378#define LINECALLREASON_UNKNOWN 0x00000400
379#define LINECALLREASON_UNAVAIL 0x00000800
380#define LINECALLREASON_INTRUDE 0x00001000
381#define LINECALLREASON_PARKED 0x00002000
382#define LINECALLREASON_CAMPEDON 0x00004000
383#define LINECALLREASON_ROUTEREQUEST 0x00008000
384
385#define LINECALLSELECT_LINE 0x00000001
386#define LINECALLSELECT_ADDRESS 0x00000002
387#define LINECALLSELECT_CALL 0x00000004
388#define LINECALLSELECT_DEVICEID 0x00000008
389#define LINECALLSELECT_CALLID 0x00000010
390
391#define LINECALLSTATE_IDLE 0x00000001
392#define LINECALLSTATE_OFFERING 0x00000002
393#define LINECALLSTATE_ACCEPTED 0x00000004
394#define LINECALLSTATE_DIALTONE 0x00000008
395#define LINECALLSTATE_DIALING 0x00000010
396#define LINECALLSTATE_RINGBACK 0x00000020
397#define LINECALLSTATE_BUSY 0x00000040
398#define LINECALLSTATE_SPECIALINFO 0x00000080
399#define LINECALLSTATE_CONNECTED 0x00000100
400#define LINECALLSTATE_PROCEEDING 0x00000200
401#define LINECALLSTATE_ONHOLD 0x00000400
402#define LINECALLSTATE_CONFERENCED 0x00000800
403#define LINECALLSTATE_ONHOLDPENDCONF 0x00001000
404#define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000
405#define LINECALLSTATE_DISCONNECTED 0x00004000
406#define LINECALLSTATE_UNKNOWN 0x00008000
407
408#define LINECALLTREATMENT_SILENCE 0x00000001
409#define LINECALLTREATMENT_RINGBACK 0x00000002
410#define LINECALLTREATMENT_BUSY 0x00000003
411#define LINECALLTREATMENT_MUSIC 0x00000004
412
413#define LINECARDOPTION_PREDEFINED 0x00000001
414#define LINECARDOPTION_HIDDEN 0x00000002
415
416#define LINECONNECTEDMODE_ACTIVE 0x00000001
417#define LINECONNECTEDMODE_INACTIVE 0x00000002
418#define LINECONNECTEDMODE_ACTIVEHELD 0x00000004
419#define LINECONNECTEDMODE_INACTIVEHELD 0x00000008
420#define LINECONNECTEDMODE_CONFIRMED 0x00000010
421
422#define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001
423#define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002
424#define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004
425#define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008
426#define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010
427#define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020
428#define LINEDEVCAPFLAGS_DIALBILLING 0x00000040
429#define LINEDEVCAPFLAGS_DIALQUIET 0x00000080
430#define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100
431#define LINEDEVCAPFLAGS_MSP 0x00000200
432#define LINEDEVCAPFLAGS_CALLHUB 0x00000400
433#define LINEDEVCAPFLAGS_CALLHUBTRACKING 0x00000800
434#define LINEDEVCAPFLAGS_PRIVATEOBJECTS 0x00001000
435#define LINEDEVCAPFLAGS_LOCAL 0x00002000
436
437#define LINEDEVSTATE_OTHER 0x00000001
438#define LINEDEVSTATE_RINGING 0x00000002
439#define LINEDEVSTATE_CONNECTED 0x00000004
440#define LINEDEVSTATE_DISCONNECTED 0x00000008
441#define LINEDEVSTATE_MSGWAITON 0x00000010
442#define LINEDEVSTATE_MSGWAITOFF 0x00000020
443#define LINEDEVSTATE_INSERVICE 0x00000040
444#define LINEDEVSTATE_OUTOFSERVICE 0x00000080
445#define LINEDEVSTATE_MAINTENANCE 0x00000100
446#define LINEDEVSTATE_OPEN 0x00000200
447#define LINEDEVSTATE_CLOSE 0x00000400
448#define LINEDEVSTATE_NUMCALLS 0x00000800
449#define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000
450#define LINEDEVSTATE_TERMINALS 0x00002000
451#define LINEDEVSTATE_ROAMMODE 0x00004000
452#define LINEDEVSTATE_BATTERY 0x00008000
453#define LINEDEVSTATE_SIGNAL 0x00010000
454#define LINEDEVSTATE_DEVSPECIFIC 0x00020000
455#define LINEDEVSTATE_REINIT 0x00040000
456#define LINEDEVSTATE_LOCK 0x00080000
457#define LINEDEVSTATE_CAPSCHANGE 0x00100000
458#define LINEDEVSTATE_CONFIGCHANGE 0x00200000
459#define LINEDEVSTATE_TRANSLATECHANGE 0x00400000
460#define LINEDEVSTATE_COMPLCANCEL 0x00800000
461#define LINEDEVSTATE_REMOVED 0x01000000
462
463#define LINEDEVSTATUSFLAGS_CONNECTED 0x00000001
464#define LINEDEVSTATUSFLAGS_MSGWAIT 0x00000002
465#define LINEDEVSTATUSFLAGS_INSERVICE 0x00000004
466#define LINEDEVSTATUSFLAGS_LOCKED 0x00000008
467
468#define LINEDIALTONEMODE_NORMAL 0x00000001
469#define LINEDIALTONEMODE_SPECIAL 0x00000002
470#define LINEDIALTONEMODE_INTERNAL 0x00000004
471#define LINEDIALTONEMODE_EXTERNAL 0x00000008
472#define LINEDIALTONEMODE_UNKNOWN 0x00000010
473#define LINEDIALTONEMODE_UNAVAIL 0x00000020
474
475#define LINEDIGITMODE_PULSE 0x00000001
476#define LINEDIGITMODE_DTMF 0x00000002
477#define LINEDIGITMODE_DTMFEND 0x00000004
478
479#define LINEDISCONNECTMODE_NORMAL 0x00000001
480#define LINEDISCONNECTMODE_UNKNOWN 0x00000002
481#define LINEDISCONNECTMODE_REJECT 0x00000004
482#define LINEDISCONNECTMODE_PICKUP 0x00000008
483#define LINEDISCONNECTMODE_FORWARDED 0x00000010
484#define LINEDISCONNECTMODE_BUSY 0x00000020
485#define LINEDISCONNECTMODE_NOANSWER 0x00000040
486#define LINEDISCONNECTMODE_BADADDRESS 0x00000080
487#define LINEDISCONNECTMODE_UNREACHABLE 0x00000100
488#define LINEDISCONNECTMODE_CONGESTION 0x00000200
489#define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400
490#define LINEDISCONNECTMODE_UNAVAIL 0x00000800
491#define LINEDISCONNECTMODE_NODIALTONE 0x00001000
492#define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000
493#define LINEDISCONNECTMODE_OUTOFORDER 0x00004000
494#define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000
495#define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000
496#define LINEDISCONNECTMODE_BLOCKED 0x00020000
497#define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000
498#define LINEDISCONNECTMODE_CANCELLED 0x00080000
499
500#define LINEERR_ALLOCATED 0x80000001
501#define LINEERR_BADDEVICEID 0x80000002
502#define LINEERR_BEARERMODEUNAVAIL 0x80000003
503#define LINEERR_CALLUNAVAIL 0x80000005
504#define LINEERR_COMPLETIONOVERRUN 0x80000006
505#define LINEERR_CONFERENCEFULL 0x80000007
506#define LINEERR_DIALBILLING 0x80000008
507#define LINEERR_DIALDIALTONE 0x80000009
508#define LINEERR_DIALPROMPT 0x8000000A
509#define LINEERR_DIALQUIET 0x8000000B
510#define LINEERR_INCOMPATIBLEAPIVERSION 0x8000000C
511#define LINEERR_INCOMPATIBLEEXTVERSION 0x8000000D
512#define LINEERR_INIFILECORRUPT 0x8000000E
513#define LINEERR_INUSE 0x8000000F
514#define LINEERR_INVALADDRESS 0x80000010
515#define LINEERR_INVALADDRESSID 0x80000011
516#define LINEERR_INVALADDRESSMODE 0x80000012
517#define LINEERR_INVALADDRESSSTATE 0x80000013
518#define LINEERR_INVALAPPHANDLE 0x80000014
519#define LINEERR_INVALAPPNAME 0x80000015
520#define LINEERR_INVALBEARERMODE 0x80000016
521#define LINEERR_INVALCALLCOMPLMODE 0x80000017
522#define LINEERR_INVALCALLHANDLE 0x80000018
523#define LINEERR_INVALCALLPARAMS 0x80000019
524#define LINEERR_INVALCALLPRIVILEGE 0x8000001A
525#define LINEERR_INVALCALLSELECT 0x8000001B
526#define LINEERR_INVALCALLSTATE 0x8000001C
527#define LINEERR_INVALCALLSTATELIST 0x8000001D
528#define LINEERR_INVALCARD 0x8000001E
529#define LINEERR_INVALCOMPLETIONID 0x8000001F
530#define LINEERR_INVALCONFCALLHANDLE 0x80000020
531#define LINEERR_INVALCONSULTCALLHANDLE 0x80000021
532#define LINEERR_INVALCOUNTRYCODE 0x80000022
533#define LINEERR_INVALDEVICECLASS 0x80000023
534#define LINEERR_INVALDEVICEHANDLE 0x80000024
535#define LINEERR_INVALDIALPARAMS 0x80000025
536#define LINEERR_INVALDIGITLIST 0x80000026
537#define LINEERR_INVALDIGITMODE 0x80000027
538#define LINEERR_INVALDIGITS 0x80000028
539#define LINEERR_INVALEXTVERSION 0x80000029
540#define LINEERR_INVALGROUPID 0x8000002A
541#define LINEERR_INVALLINEHANDLE 0x8000002B
542#define LINEERR_INVALLINESTATE 0x8000002C
543#define LINEERR_INVALLOCATION 0x8000002D
544#define LINEERR_INVALMEDIALIST 0x8000002E
545#define LINEERR_INVALMEDIAMODE 0x8000002F
546#define LINEERR_INVALMESSAGEID 0x80000030
547#define LINEERR_INVALPARAM 0x80000032
548#define LINEERR_INVALPARKID 0x80000033
549#define LINEERR_INVALPARKMODE 0x80000034
550#define LINEERR_INVALPOINTER 0x80000035
551#define LINEERR_INVALPRIVSELECT 0x80000036
552#define LINEERR_INVALRATE 0x80000037
553#define LINEERR_INVALREQUESTMODE 0x80000038
554#define LINEERR_INVALTERMINALID 0x80000039
555#define LINEERR_INVALTERMINALMODE 0x8000003A
556#define LINEERR_INVALTIMEOUT 0x8000003B
557#define LINEERR_INVALTONE 0x8000003C
558#define LINEERR_INVALTONELIST 0x8000003D
559#define LINEERR_INVALTONEMODE 0x8000003E
560#define LINEERR_INVALTRANSFERMODE 0x8000003F
561#define LINEERR_LINEMAPPERFAILED 0x80000040
562#define LINEERR_NOCONFERENCE 0x80000041
563#define LINEERR_NODEVICE 0x80000042
564#define LINEERR_NODRIVER 0x80000043
565#define LINEERR_NOMEM 0x80000044
566#define LINEERR_NOREQUEST 0x80000045
567#define LINEERR_NOTOWNER 0x80000046
568#define LINEERR_NOTREGISTERED 0x80000047
569#define LINEERR_OPERATIONFAILED 0x80000048
570#define LINEERR_OPERATIONUNAVAIL 0x80000049
571#define LINEERR_RATEUNAVAIL 0x8000004A
572#define LINEERR_RESOURCEUNAVAIL 0x8000004B
573#define LINEERR_REQUESTOVERRUN 0x8000004C
574#define LINEERR_STRUCTURETOOSMALL 0x8000004D
575#define LINEERR_TARGETNOTFOUND 0x8000004E
576#define LINEERR_TARGETSELF 0x8000004F
577#define LINEERR_UNINITIALIZED 0x80000050
578#define LINEERR_USERUSERINFOTOOBIG 0x80000051
579#define LINEERR_REINIT 0x80000052
580#define LINEERR_ADDRESSBLOCKED 0x80000053
581#define LINEERR_BILLINGREJECTED 0x80000054
582#define LINEERR_INVALFEATURE 0x80000055
583#define LINEERR_NOMULTIPLEINSTANCE 0x80000056
584#define LINEERR_INVALAGENTID 0x80000057
585#define LINEERR_INVALAGENTGROUP 0x80000058
586#define LINEERR_INVALPASSWORD 0x80000059
587#define LINEERR_INVALAGENTSTATE 0x8000005A
588#define LINEERR_INVALAGENTACTIVITY 0x8000005B
589#define LINEERR_DIALVOICEDETECT 0x8000005C
590#define LINEERR_USERCANCELLED 0x8000005D
591#define LINEERR_INVALADDRESSTYPE 0x8000005E
592#define LINEERR_INVALAGENTSESSIONSTATE 0x8000005F
593#define LINEERR_DISCONNECTED 0X80000060
594#define LINEERR_SERVICE_NOT_RUNNING 0x80000061
595
596#define LINEFEATURE_DEVSPECIFIC 0x00000001
597#define LINEFEATURE_DEVSPECIFICFEAT 0x00000002
598#define LINEFEATURE_FORWARD 0x00000004
599#define LINEFEATURE_MAKECALL 0x00000008
600#define LINEFEATURE_SETMEDIACONTROL 0x00000010
601#define LINEFEATURE_SETTERMINAL 0x00000020
602#define LINEFEATURE_SETDEVSTATUS 0x00000040
603#define LINEFEATURE_FORWARDFWD 0x00000080
604#define LINEFEATURE_FORWARDDND 0x00000100
605
606#define LINEFORWARDMODE_UNCOND 0x00000001
607#define LINEFORWARDMODE_UNCONDINTERNAL 0x00000002
608#define LINEFORWARDMODE_UNCONDEXTERNAL 0x00000004
609#define LINEFORWARDMODE_UNCONDSPECIFIC 0x00000008
610#define LINEFORWARDMODE_BUSY 0x00000010
611#define LINEFORWARDMODE_BUSYINTERNAL 0x00000020
612#define LINEFORWARDMODE_BUSYEXTERNAL 0x00000040
613#define LINEFORWARDMODE_BUSYSPECIFIC 0x00000080
614#define LINEFORWARDMODE_NOANSW 0x00000100
615#define LINEFORWARDMODE_NOANSWINTERNAL 0x00000200
616#define LINEFORWARDMODE_NOANSWEXTERNAL 0x00000400
617#define LINEFORWARDMODE_NOANSWSPECIFIC 0x00000800
618#define LINEFORWARDMODE_BUSYNA 0x00001000
619#define LINEFORWARDMODE_BUSYNAINTERNAL 0x00002000
620#define LINEFORWARDMODE_BUSYNAEXTERNAL 0x00004000
621#define LINEFORWARDMODE_BUSYNASPECIFIC 0x00008000
622#define LINEFORWARDMODE_UNKNOWN 0x00010000
623#define LINEFORWARDMODE_UNAVAIL 0x00020000
624
625#define LINEGATHERTERM_BUFFERFULL 0x00000001
626#define LINEGATHERTERM_TERMDIGIT 0x00000002
627#define LINEGATHERTERM_FIRSTTIMEOUT 0x00000004
628#define LINEGATHERTERM_INTERTIMEOUT 0x00000008
629#define LINEGATHERTERM_CANCEL 0x00000010
630
631#define LINEGENERATETERM_DONE 0x00000001
632#define LINEGENERATETERM_CANCEL 0x00000002
633
634#define LINEINITIALIZEEXOPTION_USEHIDDENWINDOW 0x00000001
635#define LINEINITIALIZEEXOPTION_USEEVENT 0x00000002
636#define LINEINITIALIZEEXOPTION_USECOMPLETIONPORT 0x00000003
637#define LINEINITIALIZEEXOPTION_CALLHUBTRACKING 0x80000000
638#define LINELOCATIONOPTION_PULSEDIAL 0x00000001
639
640#define LINEMAPPER 0xFFFFFFFF
641
642#define LINEMEDIACONTROL_NONE 0x00000001
643#define LINEMEDIACONTROL_START 0x00000002
644#define LINEMEDIACONTROL_RESET 0x00000004
645#define LINEMEDIACONTROL_PAUSE 0x00000008
646#define LINEMEDIACONTROL_RESUME 0x00000010
647#define LINEMEDIACONTROL_RATEUP 0x00000020
648#define LINEMEDIACONTROL_RATEDOWN 0x00000040
649#define LINEMEDIACONTROL_RATENORMAL 0x00000080
650#define LINEMEDIACONTROL_VOLUMEUP 0x00000100
651#define LINEMEDIACONTROL_VOLUMEDOWN 0x00000200
652#define LINEMEDIACONTROL_VOLUMENORMAL 0x00000400
653
654#define LINEMEDIAMODE_UNKNOWN 0x00000002
655#define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004
656#define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008
657#define LINEMEDIAMODE_DATAMODEM 0x00000010
658#define LINEMEDIAMODE_G3FAX 0x00000020
659#define LINEMEDIAMODE_TDD 0x00000040
660#define LINEMEDIAMODE_G4FAX 0x00000080
661#define LINEMEDIAMODE_DIGITALDATA 0x00000100
662#define LINEMEDIAMODE_TELETEX 0x00000200
663#define LINEMEDIAMODE_VIDEOTEX 0x00000400
664#define LINEMEDIAMODE_TELEX 0x00000800
665#define LINEMEDIAMODE_MIXED 0x00001000
666#define LINEMEDIAMODE_ADSI 0x00002000
667#define LINEMEDIAMODE_VOICEVIEW 0x00004000
668#define LINEMEDIAMODE_VIDEO 0x00008000
669#define LAST_LINEMEDIAMODE 0x00008000
670
671#define LINEOFFERINGMODE_ACTIVE 0x00000001
672#define LINEOFFERINGMODE_INACTIVE 0x00000002
673
674#define LINEOPENOPTION_SINGLEADDRESS 0x80000000
675#define LINEOPENOPTION_PROXY 0x40000000
676
677#define LINEPARKMODE_DIRECTED 0x00000001
678#define LINEPARKMODE_NONDIRECTED 0x00000002
679
680#define LINEPROXYREQUEST_SETAGENTGROUP 0x00000001
681#define LINEPROXYREQUEST_SETAGENTSTATE 0x00000002
682#define LINEPROXYREQUEST_SETAGENTACTIVITY 0x00000003
683#define LINEPROXYREQUEST_GETAGENTCAPS 0x00000004
684#define LINEPROXYREQUEST_GETAGENTSTATUS 0x00000005
685#define LINEPROXYREQUEST_AGENTSPECIFIC 0x00000006
686#define LINEPROXYREQUEST_GETAGENTACTIVITYLIST 0x00000007
687#define LINEPROXYREQUEST_GETAGENTGROUPLIST 0x00000008
688
689#define LINEPROXYREQUEST_CREATEAGENT 0x00000009
690#define LINEPROXYREQUEST_SETAGENTMEASUREMENTPERIOD 0x0000000A
691#define LINEPROXYREQUEST_GETAGENTINFO 0x0000000B
692#define LINEPROXYREQUEST_CREATEAGENTSESSION 0x0000000C
693#define LINEPROXYREQUEST_GETAGENTSESSIONLIST 0x0000000D
694#define LINEPROXYREQUEST_SETAGENTSESSIONSTATE 0x0000000E
695#define LINEPROXYREQUEST_GETAGENTSESSIONINFO 0x0000000F
696#define LINEPROXYREQUEST_GETQUEUELIST 0x00000010
697#define LINEPROXYREQUEST_SETQUEUEMEASUREMENTPERIOD 0x00000011
698#define LINEPROXYREQUEST_GETQUEUEINFO 0x00000012
699#define LINEPROXYREQUEST_GETGROUPLIST 0x00000013
700#define LINEPROXYREQUEST_SETAGENTSTATEEX 0x00000014
701
702#define LINEREMOVEFROMCONF_NONE 0x00000001
703#define LINEREMOVEFROMCONF_LAST 0x00000002
704#define LINEREMOVEFROMCONF_ANY 0x00000003
705
706#define LINEREQUESTMODE_MAKECALL 0x00000001
707#define LINEREQUESTMODE_MEDIACALL 0x00000002
708#define LINEREQUESTMODE_DROP 0x00000004
709#define LAST_LINEREQUESTMODE LINEREQUESTMODE_MEDIACALL
710
711#define LINEROAMMODE_UNKNOWN 0x00000001
712#define LINEROAMMODE_UNAVAIL 0x00000002
713#define LINEROAMMODE_HOME 0x00000004
714#define LINEROAMMODE_ROAMA 0x00000008
715#define LINEROAMMODE_ROAMB 0x00000010
716
717#define LINESPECIALINFO_NOCIRCUIT 0x00000001
718#define LINESPECIALINFO_CUSTIRREG 0x00000002
719#define LINESPECIALINFO_REORDER 0x00000004
720#define LINESPECIALINFO_UNKNOWN 0x00000008
721#define LINESPECIALINFO_UNAVAIL 0x00000010
722
723#define LINETERMDEV_PHONE 0x00000001
724#define LINETERMDEV_HEADSET 0x00000002
725#define LINETERMDEV_SPEAKER 0x00000004
726
727#define LINETERMMODE_BUTTONS 0x00000001
728#define LINETERMMODE_LAMPS 0x00000002
729#define LINETERMMODE_DISPLAY 0x00000004
730#define LINETERMMODE_RINGER 0x00000008
731#define LINETERMMODE_HOOKSWITCH 0x00000010
732#define LINETERMMODE_MEDIATOLINE 0x00000020
733#define LINETERMMODE_MEDIAFROMLINE 0x00000040
734#define LINETERMMODE_MEDIABIDIRECT 0x00000080
735
736#define LINETERMSHARING_PRIVATE 0x00000001
737#define LINETERMSHARING_SHAREDEXCL 0x00000002
738#define LINETERMSHARING_SHAREDCONF 0x00000004
739
740#define LINETOLLLISTOPTION_ADD 0x00000001
741#define LINETOLLLISTOPTION_REMOVE 0x00000002
742
743#define LINETONEMODE_CUSTOM 0x00000001
744#define LINETONEMODE_RINGBACK 0x00000002
745#define LINETONEMODE_BUSY 0x00000004
746#define LINETONEMODE_BEEP 0x00000008
747#define LINETONEMODE_BILLING 0x00000010
748
749#define LINETRANSFERMODE_TRANSFER 0x00000001
750#define LINETRANSFERMODE_CONFERENCE 0x00000002
751
752#define LINETRANSLATEOPTION_CARDOVERRIDE 0x00000001
753#define LINETRANSLATEOPTION_CANCELCALLWAITING 0x00000002
754#define LINETRANSLATEOPTION_FORCELOCAL 0x00000004
755#define LINETRANSLATEOPTION_FORCELD 0x00000008
756
757#define LINETRANSLATERESULT_CANONICAL 0x00000001
758#define LINETRANSLATERESULT_INTERNATIONAL 0x00000002
759#define LINETRANSLATERESULT_LONGDISTANCE 0x00000004
760#define LINETRANSLATERESULT_LOCAL 0x00000008
761#define LINETRANSLATERESULT_INTOLLLIST 0x00000010
762#define LINETRANSLATERESULT_NOTINTOLLLIST 0x00000020
763#define LINETRANSLATERESULT_DIALBILLING 0x00000040
764#define LINETRANSLATERESULT_DIALQUIET 0x00000080
765#define LINETRANSLATERESULT_DIALDIALTONE 0x00000100
766#define LINETRANSLATERESULT_DIALPROMPT 0x00000200
767#define LINETRANSLATERESULT_VOICEDETECT 0x00000400
768#define LINETRANSLATERESULT_NOTRANSLATION 0x00000800
769
770#define PHONEBUTTONFUNCTION_UNKNOWN 0x00000000
771#define PHONEBUTTONFUNCTION_CONFERENCE 0x00000001
772#define PHONEBUTTONFUNCTION_TRANSFER 0x00000002
773#define PHONEBUTTONFUNCTION_DROP 0x00000003
774#define PHONEBUTTONFUNCTION_HOLD 0x00000004
775#define PHONEBUTTONFUNCTION_RECALL 0x00000005
776#define PHONEBUTTONFUNCTION_DISCONNECT 0x00000006
777#define PHONEBUTTONFUNCTION_CONNECT 0x00000007
778#define PHONEBUTTONFUNCTION_MSGWAITON 0x00000008
779#define PHONEBUTTONFUNCTION_MSGWAITOFF 0x00000009
780#define PHONEBUTTONFUNCTION_SELECTRING 0x0000000A
781#define PHONEBUTTONFUNCTION_ABBREVDIAL 0x0000000B
782#define PHONEBUTTONFUNCTION_FORWARD 0x0000000C
783#define PHONEBUTTONFUNCTION_PICKUP 0x0000000D
784#define PHONEBUTTONFUNCTION_RINGAGAIN 0x0000000E
785#define PHONEBUTTONFUNCTION_PARK 0x0000000F
786#define PHONEBUTTONFUNCTION_REJECT 0x00000010
787#define PHONEBUTTONFUNCTION_REDIRECT 0x00000011
788#define PHONEBUTTONFUNCTION_MUTE 0x00000012
789#define PHONEBUTTONFUNCTION_VOLUMEUP 0x00000013
790#define PHONEBUTTONFUNCTION_VOLUMEDOWN 0x00000014
791#define PHONEBUTTONFUNCTION_SPEAKERON 0x00000015
792#define PHONEBUTTONFUNCTION_SPEAKEROFF 0x00000016
793#define PHONEBUTTONFUNCTION_FLASH 0x00000017
794#define PHONEBUTTONFUNCTION_DATAON 0x00000018
795#define PHONEBUTTONFUNCTION_DATAOFF 0x00000019
796#define PHONEBUTTONFUNCTION_DONOTDISTURB 0x0000001A
797#define PHONEBUTTONFUNCTION_INTERCOM 0x0000001B
798#define PHONEBUTTONFUNCTION_BRIDGEDAPP 0x0000001C
799#define PHONEBUTTONFUNCTION_BUSY 0x0000001D
800#define PHONEBUTTONFUNCTION_CALLAPP 0x0000001E
801#define PHONEBUTTONFUNCTION_DATETIME 0x0000001F
802#define PHONEBUTTONFUNCTION_DIRECTORY 0x00000020
803#define PHONEBUTTONFUNCTION_COVER 0x00000021
804#define PHONEBUTTONFUNCTION_CALLID 0x00000022
805#define PHONEBUTTONFUNCTION_LASTNUM 0x00000023
806#define PHONEBUTTONFUNCTION_NIGHTSRV 0x00000024
807#define PHONEBUTTONFUNCTION_SENDCALLS 0x00000025
808#define PHONEBUTTONFUNCTION_MSGINDICATOR 0x00000026
809#define PHONEBUTTONFUNCTION_REPDIAL 0x00000027
810#define PHONEBUTTONFUNCTION_SETREPDIAL 0x00000028
811#define PHONEBUTTONFUNCTION_SYSTEMSPEED 0x00000029
812#define PHONEBUTTONFUNCTION_STATIONSPEED 0x0000002A
813#define PHONEBUTTONFUNCTION_CAMPON 0x0000002B
814#define PHONEBUTTONFUNCTION_SAVEREPEAT 0x0000002C
815#define PHONEBUTTONFUNCTION_QUEUECALL 0x0000002D
816#define PHONEBUTTONFUNCTION_NONE 0x0000002E
817#define PHONEBUTTONFUNCTION_SEND 0x0000002F
818
819#define PHONEBUTTONMODE_DUMMY 0x00000001
820#define PHONEBUTTONMODE_CALL 0x00000002
821#define PHONEBUTTONMODE_FEATURE 0x00000004
822#define PHONEBUTTONMODE_KEYPAD 0x00000008
823#define PHONEBUTTONMODE_LOCAL 0x00000010
824#define PHONEBUTTONMODE_DISPLAY 0x00000020
825
826#define PHONEBUTTONSTATE_UP 0x00000001
827#define PHONEBUTTONSTATE_DOWN 0x00000002
828#define PHONEBUTTONSTATE_UNKNOWN 0x00000004
829#define PHONEBUTTONSTATE_UNAVAIL 0x00000008
830
831#define PHONEERR_ALLOCATED 0x90000001
832#define PHONEERR_BADDEVICEID 0x90000002
833#define PHONEERR_INCOMPATIBLEAPIVERSION 0x90000003
834#define PHONEERR_INCOMPATIBLEEXTVERSION 0x90000004
835#define PHONEERR_INIFILECORRUPT 0x90000005
836#define PHONEERR_INUSE 0x90000006
837#define PHONEERR_INVALAPPHANDLE 0x90000007
838#define PHONEERR_INVALAPPNAME 0x90000008
839#define PHONEERR_INVALBUTTONLAMPID 0x90000009
840#define PHONEERR_INVALBUTTONMODE 0x9000000A
841#define PHONEERR_INVALBUTTONSTATE 0x9000000B
842#define PHONEERR_INVALDATAID 0x9000000C
843#define PHONEERR_INVALDEVICECLASS 0x9000000D
844#define PHONEERR_INVALEXTVERSION 0x9000000E
845#define PHONEERR_INVALHOOKSWITCHDEV 0x9000000F
846#define PHONEERR_INVALHOOKSWITCHMODE 0x90000010
847#define PHONEERR_INVALLAMPMODE 0x90000011
848#define PHONEERR_INVALPARAM 0x90000012
849#define PHONEERR_INVALPHONEHANDLE 0x90000013
850#define PHONEERR_INVALPHONESTATE 0x90000014
851#define PHONEERR_INVALPOINTER 0x90000015
852#define PHONEERR_INVALPRIVILEGE 0x90000016
853#define PHONEERR_INVALRINGMODE 0x90000017
854#define PHONEERR_NODEVICE 0x90000018
855#define PHONEERR_NODRIVER 0x90000019
856#define PHONEERR_NOMEM 0x9000001A
857#define PHONEERR_NOTOWNER 0x9000001B
858#define PHONEERR_OPERATIONFAILED 0x9000001C
859#define PHONEERR_OPERATIONUNAVAIL 0x9000001D
860#define PHONEERR_RESOURCEUNAVAIL 0x9000001F
861#define PHONEERR_REQUESTOVERRUN 0x90000020
862#define PHONEERR_STRUCTURETOOSMALL 0x90000021
863#define PHONEERR_UNINITIALIZED 0x90000022
864#define PHONEERR_REINIT 0x90000023
865#define PHONEERR_DISCONNECTED 0x90000024
866#define PHONEERR_SERVICE_NOT_RUNNING 0x90000025
867
868#define PHONEFEATURE_GETBUTTONINFO 0x00000001
869#define PHONEFEATURE_GETDATA 0x00000002
870#define PHONEFEATURE_GETDISPLAY 0x00000004
871#define PHONEFEATURE_GETGAINHANDSET 0x00000008
872#define PHONEFEATURE_GETGAINSPEAKER 0x00000010
873#define PHONEFEATURE_GETGAINHEADSET 0x00000020
874#define PHONEFEATURE_GETHOOKSWITCHHANDSET 0x00000040
875#define PHONEFEATURE_GETHOOKSWITCHSPEAKER 0x00000080
876#define PHONEFEATURE_GETHOOKSWITCHHEADSET 0x00000100
877#define PHONEFEATURE_GETLAMP 0x00000200
878#define PHONEFEATURE_GETRING 0x00000400
879#define PHONEFEATURE_GETVOLUMEHANDSET 0x00000800
880#define PHONEFEATURE_GETVOLUMESPEAKER 0x00001000
881#define PHONEFEATURE_GETVOLUMEHEADSET 0x00002000
882#define PHONEFEATURE_SETBUTTONINFO 0x00004000
883#define PHONEFEATURE_SETDATA 0x00008000
884#define PHONEFEATURE_SETDISPLAY 0x00010000
885#define PHONEFEATURE_SETGAINHANDSET 0x00020000
886#define PHONEFEATURE_SETGAINSPEAKER 0x00040000
887#define PHONEFEATURE_SETGAINHEADSET 0x00080000
888#define PHONEFEATURE_SETHOOKSWITCHHANDSET 0x00100000
889#define PHONEFEATURE_SETHOOKSWITCHSPEAKER 0x00200000
890#define PHONEFEATURE_SETHOOKSWITCHHEADSET 0x00400000
891#define PHONEFEATURE_SETLAMP 0x00800000
892#define PHONEFEATURE_SETRING 0x01000000
893#define PHONEFEATURE_SETVOLUMEHANDSET 0x02000000
894#define PHONEFEATURE_SETVOLUMESPEAKER 0x04000000
895#define PHONEFEATURE_SETVOLUMEHEADSET 0x08000000
896#define PHONEFEATURE_GENERICPHONE 0x10000000
897
898#define PHONEHOOKSWITCHDEV_HANDSET 0x00000001
899#define PHONEHOOKSWITCHDEV_SPEAKER 0x00000002
900#define PHONEHOOKSWITCHDEV_HEADSET 0x00000004
901
902#define PHONEHOOKSWITCHMODE_ONHOOK 0x00000001
903#define PHONEHOOKSWITCHMODE_MIC 0x00000002
904#define PHONEHOOKSWITCHMODE_SPEAKER 0x00000004
905#define PHONEHOOKSWITCHMODE_MICSPEAKER 0x00000008
906#define PHONEHOOKSWITCHMODE_UNKNOWN 0x00000010
907
908#define PHONEINITIALIZEEXOPTION_USEHIDDENWINDOW 0x00000001
909#define PHONEINITIALIZEEXOPTION_USEEVENT 0x00000002
910#define PHONEINITIALIZEEXOPTION_USECOMPLETIONPORT 0x00000003
911
912#define PHONELAMPMODE_DUMMY 0x00000001
913#define PHONELAMPMODE_OFF 0x00000002
914#define PHONELAMPMODE_STEADY 0x00000004
915#define PHONELAMPMODE_WINK 0x00000008
916#define PHONELAMPMODE_FLASH 0x00000010
917#define PHONELAMPMODE_FLUTTER 0x00000020
918#define PHONELAMPMODE_BROKENFLUTTER 0x00000040
919#define PHONELAMPMODE_UNKNOWN 0x00000080
920
921#define PHONEPRIVILEGE_MONITOR 0x00000001
922#define PHONEPRIVILEGE_OWNER 0x00000002
923
924#define PHONESTATE_OTHER 0x00000001
925#define PHONESTATE_CONNECTED 0x00000002
926#define PHONESTATE_DISCONNECTED 0x00000004
927#define PHONESTATE_OWNER 0x00000008
928#define PHONESTATE_MONITORS 0x00000010
929#define PHONESTATE_DISPLAY 0x00000020
930#define PHONESTATE_LAMP 0x00000040
931#define PHONESTATE_RINGMODE 0x00000080
932#define PHONESTATE_RINGVOLUME 0x00000100
933#define PHONESTATE_HANDSETHOOKSWITCH 0x00000200
934#define PHONESTATE_HANDSETVOLUME 0x00000400
935#define PHONESTATE_HANDSETGAIN 0x00000800
936#define PHONESTATE_SPEAKERHOOKSWITCH 0x00001000
937#define PHONESTATE_SPEAKERVOLUME 0x00002000
938#define PHONESTATE_SPEAKERGAIN 0x00004000
939#define PHONESTATE_HEADSETHOOKSWITCH 0x00008000
940#define PHONESTATE_HEADSETVOLUME 0x00010000
941#define PHONESTATE_HEADSETGAIN 0x00020000
942#define PHONESTATE_SUSPEND 0x00040000
943#define PHONESTATE_RESUME 0x00080000
944#define PHONESTATE_DEVSPECIFIC 0x00100000
945#define PHONESTATE_REINIT 0x00200000
946#define PHONESTATE_CAPSCHANGE 0x00400000
947#define PHONESTATE_REMOVED 0x00800000
948
949#define PHONESTATUSFLAGS_CONNECTED 0x00000001
950#define PHONESTATUSFLAGS_SUSPENDED 0x00000002
951
952#define STRINGFORMAT_ASCII 0x00000001
953#define STRINGFORMAT_DBCS 0x00000002
954#define STRINGFORMAT_UNICODE 0x00000003
955#define STRINGFORMAT_BINARY 0x00000004
956
957#define TAPI_REPLY WM_USER + 99
958
959#define TAPIERR_CONNECTED __MSABI_LONG(0)
960#define TAPIERR_DROPPED __MSABI_LONG(-1)
961#define TAPIERR_NOREQUESTRECIPIENT __MSABI_LONG(-2)
962#define TAPIERR_REQUESTQUEUEFULL __MSABI_LONG(-3)
963#define TAPIERR_INVALDESTADDRESS __MSABI_LONG(-4)
964#define TAPIERR_INVALWINDOWHANDLE __MSABI_LONG(-5)
965#define TAPIERR_INVALDEVICECLASS __MSABI_LONG(-6)
966#define TAPIERR_INVALDEVICEID __MSABI_LONG(-7)
967#define TAPIERR_DEVICECLASSUNAVAIL __MSABI_LONG(-8)
968#define TAPIERR_DEVICEIDUNAVAIL __MSABI_LONG(-9)
969#define TAPIERR_DEVICEINUSE __MSABI_LONG(-10)
970#define TAPIERR_DESTBUSY __MSABI_LONG(-11)
971#define TAPIERR_DESTNOANSWER __MSABI_LONG(-12)
972#define TAPIERR_DESTUNAVAIL __MSABI_LONG(-13)
973#define TAPIERR_UNKNOWNWINHANDLE __MSABI_LONG(-14)
974#define TAPIERR_UNKNOWNREQUESTID __MSABI_LONG(-15)
975#define TAPIERR_REQUESTFAILED __MSABI_LONG(-16)
976#define TAPIERR_REQUESTCANCELLED __MSABI_LONG(-17)
977#define TAPIERR_INVALPOINTER __MSABI_LONG(-18)
978#define TAPIERR_NOTADMIN __MSABI_LONG(-19)
979#define TAPIERR_MMCWRITELOCKED __MSABI_LONG(-20)
980#define TAPIERR_PROVIDERALREADYINSTALLED __MSABI_LONG(-21)
981#define TAPIERR_SCP_ALREADY_EXISTS __MSABI_LONG(-22)
982#define TAPIERR_SCP_DOES_NOT_EXIST __MSABI_LONG(-23)
983
984#define TAPIMAXDESTADDRESSSIZE __MSABI_LONG(80)
985#define TAPIMAXAPPNAMESIZE __MSABI_LONG(40)
986#define TAPIMAXCALLEDPARTYSIZE __MSABI_LONG(40)
987#define TAPIMAXCOMMENTSIZE __MSABI_LONG(80)
988#define TAPIMAXDEVICECLASSSIZE __MSABI_LONG(40)
989#define TAPIMAXDEVICEIDSIZE __MSABI_LONG(40)
990
991#ifndef GUID_DEFINED
992#define GUID_DEFINED
993  typedef struct _GUID {
994    unsigned __LONG32 Data1;
995    unsigned short Data2;
996    unsigned short Data3;
997    unsigned char Data4[8];
998  } GUID;
999#endif
1000
1001#ifndef __LPGUID_DEFINED__
1002#define __LPGUID_DEFINED__
1003  typedef GUID *LPGUID;
1004#endif
1005
1006  typedef struct lineaddresscaps_tag {
1007    DWORD dwTotalSize;
1008    DWORD dwNeededSize;
1009    DWORD dwUsedSize;
1010    DWORD dwLineDeviceID;
1011    DWORD dwAddressSize;
1012    DWORD dwAddressOffset;
1013    DWORD dwDevSpecificSize;
1014    DWORD dwDevSpecificOffset;
1015    DWORD dwAddressSharing;
1016    DWORD dwAddressStates;
1017    DWORD dwCallInfoStates;
1018    DWORD dwCallerIDFlags;
1019    DWORD dwCalledIDFlags;
1020    DWORD dwConnectedIDFlags;
1021    DWORD dwRedirectionIDFlags;
1022    DWORD dwRedirectingIDFlags;
1023    DWORD dwCallStates;
1024    DWORD dwDialToneModes;
1025    DWORD dwBusyModes;
1026    DWORD dwSpecialInfo;
1027    DWORD dwDisconnectModes;
1028    DWORD dwMaxNumActiveCalls;
1029    DWORD dwMaxNumOnHoldCalls;
1030    DWORD dwMaxNumOnHoldPendingCalls;
1031    DWORD dwMaxNumConference;
1032    DWORD dwMaxNumTransConf;
1033    DWORD dwAddrCapFlags;
1034    DWORD dwCallFeatures;
1035    DWORD dwRemoveFromConfCaps;
1036    DWORD dwRemoveFromConfState;
1037    DWORD dwTransferModes;
1038    DWORD dwParkModes;
1039    DWORD dwForwardModes;
1040    DWORD dwMaxForwardEntries;
1041    DWORD dwMaxSpecificEntries;
1042    DWORD dwMinFwdNumRings;
1043    DWORD dwMaxFwdNumRings;
1044    DWORD dwMaxCallCompletions;
1045    DWORD dwCallCompletionConds;
1046    DWORD dwCallCompletionModes;
1047    DWORD dwNumCompletionMessages;
1048    DWORD dwCompletionMsgTextEntrySize;
1049    DWORD dwCompletionMsgTextSize;
1050    DWORD dwCompletionMsgTextOffset;
1051    DWORD dwAddressFeatures;
1052    DWORD dwPredictiveAutoTransferStates;
1053    DWORD dwNumCallTreatments;
1054    DWORD dwCallTreatmentListSize;
1055    DWORD dwCallTreatmentListOffset;
1056    DWORD dwDeviceClassesSize;
1057    DWORD dwDeviceClassesOffset;
1058    DWORD dwMaxCallDataSize;
1059    DWORD dwCallFeatures2;
1060    DWORD dwMaxNoAnswerTimeout;
1061    DWORD dwConnectedModes;
1062    DWORD dwOfferingModes;
1063    DWORD dwAvailableMediaModes;
1064  } LINEADDRESSCAPS,*LPLINEADDRESSCAPS;
1065
1066  typedef struct lineaddressstatus_tag {
1067    DWORD dwTotalSize;
1068    DWORD dwNeededSize;
1069    DWORD dwUsedSize;
1070    DWORD dwNumInUse;
1071    DWORD dwNumActiveCalls;
1072    DWORD dwNumOnHoldCalls;
1073    DWORD dwNumOnHoldPendCalls;
1074    DWORD dwAddressFeatures;
1075    DWORD dwNumRingsNoAnswer;
1076    DWORD dwForwardNumEntries;
1077    DWORD dwForwardSize;
1078    DWORD dwForwardOffset;
1079    DWORD dwTerminalModesSize;
1080    DWORD dwTerminalModesOffset;
1081    DWORD dwDevSpecificSize;
1082    DWORD dwDevSpecificOffset;
1083  } LINEADDRESSSTATUS,*LPLINEADDRESSSTATUS;
1084
1085  typedef struct lineagentactivityentry_tag {
1086    DWORD dwID;
1087    DWORD dwNameSize;
1088    DWORD dwNameOffset;
1089  } LINEAGENTACTIVITYENTRY,*LPLINEAGENTACTIVITYENTRY;
1090
1091  typedef struct lineagentactivitylist_tag {
1092    DWORD dwTotalSize;
1093    DWORD dwNeededSize;
1094    DWORD dwUsedSize;
1095    DWORD dwNumEntries;
1096    DWORD dwListSize;
1097    DWORD dwListOffset;
1098  } LINEAGENTACTIVITYLIST,*LPLINEAGENTACTIVITYLIST;
1099
1100  typedef struct lineagentcaps_tag {
1101    DWORD dwTotalSize;
1102    DWORD dwNeededSize;
1103    DWORD dwUsedSize;
1104    DWORD dwAgentHandlerInfoSize;
1105    DWORD dwAgentHandlerInfoOffset;
1106    DWORD dwCapsVersion;
1107    DWORD dwFeatures;
1108    DWORD dwStates;
1109    DWORD dwNextStates;
1110    DWORD dwMaxNumGroupEntries;
1111    DWORD dwAgentStatusMessages;
1112    DWORD dwNumAgentExtensionIDs;
1113    DWORD dwAgentExtensionIDListSize;
1114    DWORD dwAgentExtensionIDListOffset;
1115    GUID ProxyGUID;
1116  } LINEAGENTCAPS,*LPLINEAGENTCAPS;
1117
1118  typedef struct lineagentgroupentry_tag {
1119    struct {
1120      DWORD dwGroupID1;
1121      DWORD dwGroupID2;
1122      DWORD dwGroupID3;
1123      DWORD dwGroupID4;
1124    } GroupID;
1125    DWORD dwNameSize;
1126    DWORD dwNameOffset;
1127  } LINEAGENTGROUPENTRY,*LPLINEAGENTGROUPENTRY;
1128
1129  typedef struct lineagentgrouplist_tag {
1130    DWORD dwTotalSize;
1131    DWORD dwNeededSize;
1132    DWORD dwUsedSize;
1133    DWORD dwNumEntries;
1134    DWORD dwListSize;
1135    DWORD dwListOffset;
1136  } LINEAGENTGROUPLIST,*LPLINEAGENTGROUPLIST;
1137
1138  typedef struct lineagentstatus_tag {
1139    DWORD dwTotalSize;
1140    DWORD dwNeededSize;
1141    DWORD dwUsedSize;
1142    DWORD dwNumEntries;
1143    DWORD dwGroupListSize;
1144    DWORD dwGroupListOffset;
1145    DWORD dwState;
1146    DWORD dwNextState;
1147    DWORD dwActivityID;
1148    DWORD dwActivitySize;
1149    DWORD dwActivityOffset;
1150    DWORD dwAgentFeatures;
1151    DWORD dwValidStates;
1152    DWORD dwValidNextStates;
1153  } LINEAGENTSTATUS,*LPLINEAGENTSTATUS;
1154
1155  typedef struct lineappinfo_tag {
1156    DWORD dwMachineNameSize;
1157    DWORD dwMachineNameOffset;
1158    DWORD dwUserNameSize;
1159    DWORD dwUserNameOffset;
1160    DWORD dwModuleFilenameSize;
1161    DWORD dwModuleFilenameOffset;
1162    DWORD dwFriendlyNameSize;
1163    DWORD dwFriendlyNameOffset;
1164    DWORD dwMediaModes;
1165    DWORD dwAddressID;
1166  } LINEAPPINFO,*LPLINEAPPINFO;
1167
1168  typedef struct lineagententry_tag {
1169    HAGENT hAgent;
1170    DWORD dwNameSize;
1171    DWORD dwNameOffset;
1172    DWORD dwIDSize;
1173    DWORD dwIDOffset;
1174    DWORD dwPINSize;
1175    DWORD dwPINOffset;
1176  } LINEAGENTENTRY,*LPLINEAGENTENTRY;
1177
1178  typedef struct lineagentlist_tag {
1179    DWORD dwTotalSize;
1180    DWORD dwNeededSize;
1181    DWORD dwUsedSize;
1182    DWORD dwNumEntries;
1183    DWORD dwListSize;
1184    DWORD dwListOffset;
1185  } LINEAGENTLIST,*LPLINEAGENTLIST;
1186
1187  typedef struct lineagentinfo_tag {
1188    DWORD dwTotalSize;
1189    DWORD dwNeededSize;
1190    DWORD dwUsedSize;
1191    DWORD dwAgentState;
1192    DWORD dwNextAgentState;
1193    DWORD dwMeasurementPeriod;
1194    CURRENCY cyOverallCallRate;
1195    DWORD dwNumberOfACDCalls;
1196    DWORD dwNumberOfIncomingCalls;
1197    DWORD dwNumberOfOutgoingCalls;
1198    DWORD dwTotalACDTalkTime;
1199    DWORD dwTotalACDCallTime;
1200    DWORD dwTotalACDWrapUpTime;
1201  } LINEAGENTINFO,*LPLINEAGENTINFO;
1202
1203  typedef struct lineagentsession_tag {
1204    HAGENTSESSION hAgentSession;
1205    HAGENT hAgent;
1206    GUID GroupID;
1207    DWORD dwWorkingAddressID;
1208  } LINEAGENTSESSIONENTRY ,*LPLINEAGENTSESSIONENTRY;
1209
1210  typedef struct lineagentsessionlist_tag {
1211    DWORD dwTotalSize;
1212    DWORD dwNeededSize;
1213    DWORD dwUsedSize;
1214    DWORD dwNumEntries;
1215    DWORD dwListSize;
1216    DWORD dwListOffset;
1217  } LINEAGENTSESSIONLIST,*LPLINEAGENTSESSIONLIST;
1218
1219  typedef struct lineagentsessioninfo_tag {
1220    DWORD dwTotalSize;
1221    DWORD dwNeededSize;
1222    DWORD dwUsedSize;
1223    DWORD dwAgentSessionState;
1224    DWORD dwNextAgentSessionState;
1225    DATE dateSessionStartTime;
1226    DWORD dwSessionDuration;
1227    DWORD dwNumberOfCalls;
1228    DWORD dwTotalTalkTime;
1229    DWORD dwAverageTalkTime;
1230    DWORD dwTotalCallTime;
1231    DWORD dwAverageCallTime;
1232    DWORD dwTotalWrapUpTime;
1233    DWORD dwAverageWrapUpTime;
1234    CURRENCY cyACDCallRate;
1235    DWORD dwLongestTimeToAnswer;
1236    DWORD dwAverageTimeToAnswer;
1237  } LINEAGENTSESSIONINFO,*LPLINEAGENTSESSIONINFO;
1238
1239  typedef struct linequeueentry_tag {
1240    DWORD dwQueueID;
1241    DWORD dwNameSize;
1242    DWORD dwNameOffset;
1243  } LINEQUEUEENTRY,*LPLINEQUEUEENTRY;
1244
1245  typedef struct linequeuelist_tag {
1246    DWORD dwTotalSize;
1247    DWORD dwNeededSize;
1248    DWORD dwUsedSize;
1249    DWORD dwNumEntries;
1250    DWORD dwListSize;
1251    DWORD dwListOffset;
1252  } LINEQUEUELIST,*LPLINEQUEUELIST;
1253
1254  typedef struct linequeueinfo_tag {
1255    DWORD dwTotalSize;
1256    DWORD dwNeededSize;
1257    DWORD dwUsedSize;
1258    DWORD dwMeasurementPeriod;
1259    DWORD dwTotalCallsQueued;
1260    DWORD dwCurrentCallsQueued;
1261    DWORD dwTotalCallsAbandoned;
1262    DWORD dwTotalCallsFlowedIn;
1263    DWORD dwTotalCallsFlowedOut;
1264    DWORD dwLongestEverWaitTime;
1265    DWORD dwCurrentLongestWaitTime;
1266    DWORD dwAverageWaitTime;
1267    DWORD dwFinalDisposition;
1268  } LINEQUEUEINFO,*LPLINEQUEUEINFO;
1269
1270  typedef struct lineproxyrequestlist_tag {
1271    DWORD dwTotalSize;
1272    DWORD dwNeededSize;
1273    DWORD dwUsedSize;
1274    DWORD dwNumEntries;
1275    DWORD dwListSize;
1276    DWORD dwListOffset;
1277  } LINEPROXYREQUESTLIST,*LPLINEPROXYREQUESTLIST;
1278
1279  typedef struct linecallhubtrackinginfo_tag {
1280    DWORD dwTotalSize;
1281    DWORD dwNeededSize;
1282    DWORD dwUsedSize;
1283    DWORD dwAvailableTracking;
1284    DWORD dwCurrentTracking;
1285  } LINECALLHUBTRACKINGINFO,*LPLINECALLHUBTRACKINGINFO;
1286
1287  typedef struct linedialparams_tag {
1288    DWORD dwDialPause;
1289    DWORD dwDialSpeed;
1290    DWORD dwDigitDuration;
1291    DWORD dwWaitForDialtone;
1292  } LINEDIALPARAMS,*LPLINEDIALPARAMS;
1293
1294  typedef struct linecallinfo_tag {
1295    DWORD dwTotalSize;
1296    DWORD dwNeededSize;
1297    DWORD dwUsedSize;
1298    HLINE hLine;
1299    DWORD dwLineDeviceID;
1300    DWORD dwAddressID;
1301    DWORD dwBearerMode;
1302    DWORD dwRate;
1303    DWORD dwMediaMode;
1304    DWORD dwAppSpecific;
1305    DWORD dwCallID;
1306    DWORD dwRelatedCallID;
1307    DWORD dwCallParamFlags;
1308    DWORD dwCallStates;
1309    DWORD dwMonitorDigitModes;
1310    DWORD dwMonitorMediaModes;
1311    LINEDIALPARAMS DialParams;
1312    DWORD dwOrigin;
1313    DWORD dwReason;
1314    DWORD dwCompletionID;
1315    DWORD dwNumOwners;
1316    DWORD dwNumMonitors;
1317    DWORD dwCountryCode;
1318    DWORD dwTrunk;
1319    DWORD dwCallerIDFlags;
1320    DWORD dwCallerIDSize;
1321    DWORD dwCallerIDOffset;
1322    DWORD dwCallerIDNameSize;
1323    DWORD dwCallerIDNameOffset;
1324    DWORD dwCalledIDFlags;
1325    DWORD dwCalledIDSize;
1326    DWORD dwCalledIDOffset;
1327    DWORD dwCalledIDNameSize;
1328    DWORD dwCalledIDNameOffset;
1329    DWORD dwConnectedIDFlags;
1330    DWORD dwConnectedIDSize;
1331    DWORD dwConnectedIDOffset;
1332    DWORD dwConnectedIDNameSize;
1333    DWORD dwConnectedIDNameOffset;
1334    DWORD dwRedirectionIDFlags;
1335    DWORD dwRedirectionIDSize;
1336    DWORD dwRedirectionIDOffset;
1337    DWORD dwRedirectionIDNameSize;
1338    DWORD dwRedirectionIDNameOffset;
1339    DWORD dwRedirectingIDFlags;
1340    DWORD dwRedirectingIDSize;
1341    DWORD dwRedirectingIDOffset;
1342    DWORD dwRedirectingIDNameSize;
1343    DWORD dwRedirectingIDNameOffset;
1344    DWORD dwAppNameSize;
1345    DWORD dwAppNameOffset;
1346    DWORD dwDisplayableAddressSize;
1347    DWORD dwDisplayableAddressOffset;
1348    DWORD dwCalledPartySize;
1349    DWORD dwCalledPartyOffset;
1350    DWORD dwCommentSize;
1351    DWORD dwCommentOffset;
1352    DWORD dwDisplaySize;
1353    DWORD dwDisplayOffset;
1354    DWORD dwUserUserInfoSize;
1355    DWORD dwUserUserInfoOffset;
1356    DWORD dwHighLevelCompSize;
1357    DWORD dwHighLevelCompOffset;
1358    DWORD dwLowLevelCompSize;
1359    DWORD dwLowLevelCompOffset;
1360    DWORD dwChargingInfoSize;
1361    DWORD dwChargingInfoOffset;
1362    DWORD dwTerminalModesSize;
1363    DWORD dwTerminalModesOffset;
1364    DWORD dwDevSpecificSize;
1365    DWORD dwDevSpecificOffset;
1366    DWORD dwCallTreatment;
1367    DWORD dwCallDataSize;
1368    DWORD dwCallDataOffset;
1369    DWORD dwSendingFlowspecSize;
1370    DWORD dwSendingFlowspecOffset;
1371    DWORD dwReceivingFlowspecSize;
1372    DWORD dwReceivingFlowspecOffset;
1373    DWORD dwCallerIDAddressType;
1374    DWORD dwCalledIDAddressType;
1375    DWORD dwConnectedIDAddressType;
1376    DWORD dwRedirectionIDAddressType;
1377    DWORD dwRedirectingIDAddressType;
1378  } LINECALLINFO,*LPLINECALLINFO;
1379
1380  typedef struct linecalllist_tag {
1381    DWORD dwTotalSize;
1382    DWORD dwNeededSize;
1383    DWORD dwUsedSize;
1384    DWORD dwCallsNumEntries;
1385    DWORD dwCallsSize;
1386    DWORD dwCallsOffset;
1387  } LINECALLLIST,*LPLINECALLLIST;
1388
1389  typedef struct linecallparams_tag {
1390    DWORD dwTotalSize;
1391    DWORD dwBearerMode;
1392    DWORD dwMinRate;
1393    DWORD dwMaxRate;
1394    DWORD dwMediaMode;
1395    DWORD dwCallParamFlags;
1396    DWORD dwAddressMode;
1397    DWORD dwAddressID;
1398    LINEDIALPARAMS DialParams;
1399    DWORD dwOrigAddressSize;
1400    DWORD dwOrigAddressOffset;
1401    DWORD dwDisplayableAddressSize;
1402    DWORD dwDisplayableAddressOffset;
1403    DWORD dwCalledPartySize;
1404    DWORD dwCalledPartyOffset;
1405    DWORD dwCommentSize;
1406    DWORD dwCommentOffset;
1407    DWORD dwUserUserInfoSize;
1408    DWORD dwUserUserInfoOffset;
1409    DWORD dwHighLevelCompSize;
1410    DWORD dwHighLevelCompOffset;
1411    DWORD dwLowLevelCompSize;
1412    DWORD dwLowLevelCompOffset;
1413    DWORD dwDevSpecificSize;
1414    DWORD dwDevSpecificOffset;
1415    DWORD dwPredictiveAutoTransferStates;
1416    DWORD dwTargetAddressSize;
1417    DWORD dwTargetAddressOffset;
1418    DWORD dwSendingFlowspecSize;
1419    DWORD dwSendingFlowspecOffset;
1420    DWORD dwReceivingFlowspecSize;
1421    DWORD dwReceivingFlowspecOffset;
1422    DWORD dwDeviceClassSize;
1423    DWORD dwDeviceClassOffset;
1424    DWORD dwDeviceConfigSize;
1425    DWORD dwDeviceConfigOffset;
1426    DWORD dwCallDataSize;
1427    DWORD dwCallDataOffset;
1428    DWORD dwNoAnswerTimeout;
1429    DWORD dwCallingPartyIDSize;
1430    DWORD dwCallingPartyIDOffset;
1431    DWORD dwAddressType;
1432  } LINECALLPARAMS,*LPLINECALLPARAMS;
1433
1434  typedef struct linecallstatus_tag {
1435    DWORD dwTotalSize;
1436    DWORD dwNeededSize;
1437    DWORD dwUsedSize;
1438    DWORD dwCallState;
1439    DWORD dwCallStateMode;
1440    DWORD dwCallPrivilege;
1441    DWORD dwCallFeatures;
1442    DWORD dwDevSpecificSize;
1443    DWORD dwDevSpecificOffset;
1444    DWORD dwCallFeatures2;
1445    SYSTEMTIME tStateEntryTime;
1446  } LINECALLSTATUS,*LPLINECALLSTATUS;
1447
1448  typedef struct linecalltreatmententry_tag {
1449    DWORD dwCallTreatmentID;
1450    DWORD dwCallTreatmentNameSize;
1451    DWORD dwCallTreatmentNameOffset;
1452  } LINECALLTREATMENTENTRY,*LPLINECALLTREATMENTENTRY;
1453
1454  typedef struct linecardentry_tag {
1455    DWORD dwPermanentCardID;
1456    DWORD dwCardNameSize;
1457    DWORD dwCardNameOffset;
1458    DWORD dwCardNumberDigits;
1459    DWORD dwSameAreaRuleSize;
1460    DWORD dwSameAreaRuleOffset;
1461    DWORD dwLongDistanceRuleSize;
1462    DWORD dwLongDistanceRuleOffset;
1463    DWORD dwInternationalRuleSize;
1464    DWORD dwInternationalRuleOffset;
1465    DWORD dwOptions;
1466  } LINECARDENTRY,*LPLINECARDENTRY;
1467
1468  typedef struct linecountryentry_tag {
1469    DWORD dwCountryID;
1470    DWORD dwCountryCode;
1471    DWORD dwNextCountryID;
1472    DWORD dwCountryNameSize;
1473    DWORD dwCountryNameOffset;
1474    DWORD dwSameAreaRuleSize;
1475    DWORD dwSameAreaRuleOffset;
1476    DWORD dwLongDistanceRuleSize;
1477    DWORD dwLongDistanceRuleOffset;
1478    DWORD dwInternationalRuleSize;
1479    DWORD dwInternationalRuleOffset;
1480  } LINECOUNTRYENTRY,*LPLINECOUNTRYENTRY;
1481
1482  typedef struct linecountrylist_tag {
1483    DWORD dwTotalSize;
1484    DWORD dwNeededSize;
1485    DWORD dwUsedSize;
1486    DWORD dwNumCountries;
1487    DWORD dwCountryListSize;
1488    DWORD dwCountryListOffset;
1489  } LINECOUNTRYLIST,*LPLINECOUNTRYLIST;
1490
1491  typedef struct linedevcaps_tag {
1492    DWORD dwTotalSize;
1493    DWORD dwNeededSize;
1494    DWORD dwUsedSize;
1495    DWORD dwProviderInfoSize;
1496    DWORD dwProviderInfoOffset;
1497    DWORD dwSwitchInfoSize;
1498    DWORD dwSwitchInfoOffset;
1499    DWORD dwPermanentLineID;
1500    DWORD dwLineNameSize;
1501    DWORD dwLineNameOffset;
1502    DWORD dwStringFormat;
1503    DWORD dwAddressModes;
1504    DWORD dwNumAddresses;
1505    DWORD dwBearerModes;
1506    DWORD dwMaxRate;
1507    DWORD dwMediaModes;
1508    DWORD dwGenerateToneModes;
1509    DWORD dwGenerateToneMaxNumFreq;
1510    DWORD dwGenerateDigitModes;
1511    DWORD dwMonitorToneMaxNumFreq;
1512    DWORD dwMonitorToneMaxNumEntries;
1513    DWORD dwMonitorDigitModes;
1514    DWORD dwGatherDigitsMinTimeout;
1515    DWORD dwGatherDigitsMaxTimeout;
1516    DWORD dwMedCtlDigitMaxListSize;
1517    DWORD dwMedCtlMediaMaxListSize;
1518    DWORD dwMedCtlToneMaxListSize;
1519    DWORD dwMedCtlCallStateMaxListSize;
1520    DWORD dwDevCapFlags;
1521    DWORD dwMaxNumActiveCalls;
1522    DWORD dwAnswerMode;
1523    DWORD dwRingModes;
1524    DWORD dwLineStates;
1525    DWORD dwUUIAcceptSize;
1526    DWORD dwUUIAnswerSize;
1527    DWORD dwUUIMakeCallSize;
1528    DWORD dwUUIDropSize;
1529    DWORD dwUUISendUserUserInfoSize;
1530    DWORD dwUUICallInfoSize;
1531    LINEDIALPARAMS MinDialParams;
1532    LINEDIALPARAMS MaxDialParams;
1533    LINEDIALPARAMS DefaultDialParams;
1534    DWORD dwNumTerminals;
1535    DWORD dwTerminalCapsSize;
1536    DWORD dwTerminalCapsOffset;
1537    DWORD dwTerminalTextEntrySize;
1538    DWORD dwTerminalTextSize;
1539    DWORD dwTerminalTextOffset;
1540    DWORD dwDevSpecificSize;
1541    DWORD dwDevSpecificOffset;
1542    DWORD dwLineFeatures;
1543    DWORD dwSettableDevStatus;
1544    DWORD dwDeviceClassesSize;
1545    DWORD dwDeviceClassesOffset;
1546    GUID PermanentLineGuid;
1547    DWORD dwAddressTypes;
1548    GUID ProtocolGuid;
1549    DWORD dwAvailableTracking;
1550  } LINEDEVCAPS,*LPLINEDEVCAPS;
1551
1552  typedef struct linedevstatus_tag {
1553    DWORD dwTotalSize;
1554    DWORD dwNeededSize;
1555    DWORD dwUsedSize;
1556    DWORD dwNumOpens;
1557    DWORD dwOpenMediaModes;
1558    DWORD dwNumActiveCalls;
1559    DWORD dwNumOnHoldCalls;
1560    DWORD dwNumOnHoldPendCalls;
1561    DWORD dwLineFeatures;
1562    DWORD dwNumCallCompletions;
1563    DWORD dwRingMode;
1564    DWORD dwSignalLevel;
1565    DWORD dwBatteryLevel;
1566    DWORD dwRoamMode;
1567    DWORD dwDevStatusFlags;
1568    DWORD dwTerminalModesSize;
1569    DWORD dwTerminalModesOffset;
1570    DWORD dwDevSpecificSize;
1571    DWORD dwDevSpecificOffset;
1572    DWORD dwAvailableMediaModes;
1573    DWORD dwAppInfoSize;
1574    DWORD dwAppInfoOffset;
1575  } LINEDEVSTATUS,*LPLINEDEVSTATUS;
1576
1577  typedef struct lineextensionid_tag {
1578    DWORD dwExtensionID0;
1579    DWORD dwExtensionID1;
1580    DWORD dwExtensionID2;
1581    DWORD dwExtensionID3;
1582  } LINEEXTENSIONID,*LPLINEEXTENSIONID;
1583
1584  typedef struct lineforward_tag {
1585    DWORD dwForwardMode;
1586    DWORD dwCallerAddressSize;
1587    DWORD dwCallerAddressOffset;
1588    DWORD dwDestCountryCode;
1589    DWORD dwDestAddressSize;
1590    DWORD dwDestAddressOffset;
1591    DWORD dwCallerAddressType;
1592    DWORD dwDestAddressType;
1593  } LINEFORWARD,*LPLINEFORWARD;
1594
1595  typedef struct lineforwardlist_tag {
1596    DWORD dwTotalSize;
1597    DWORD dwNumEntries;
1598    LINEFORWARD ForwardList[1];
1599  } LINEFORWARDLIST,*LPLINEFORWARDLIST;
1600
1601  typedef struct linegeneratetone_tag {
1602    DWORD dwFrequency;
1603    DWORD dwCadenceOn;
1604    DWORD dwCadenceOff;
1605    DWORD dwVolume;
1606  } LINEGENERATETONE,*LPLINEGENERATETONE;
1607
1608  typedef struct lineinitializeexparams_tag {
1609    DWORD dwTotalSize;
1610    DWORD dwNeededSize;
1611    DWORD dwUsedSize;
1612    DWORD dwOptions;
1613    union {
1614      HANDLE hEvent;
1615      HANDLE hCompletionPort;
1616    } Handles;
1617    DWORD dwCompletionKey;
1618  } LINEINITIALIZEEXPARAMS,*LPLINEINITIALIZEEXPARAMS;
1619
1620  typedef struct linelocationentry_tag {
1621    DWORD dwPermanentLocationID;
1622    DWORD dwLocationNameSize;
1623    DWORD dwLocationNameOffset;
1624    DWORD dwCountryCode;
1625    DWORD dwCityCodeSize;
1626    DWORD dwCityCodeOffset;
1627    DWORD dwPreferredCardID;
1628    DWORD dwLocalAccessCodeSize;
1629    DWORD dwLocalAccessCodeOffset;
1630    DWORD dwLongDistanceAccessCodeSize;
1631    DWORD dwLongDistanceAccessCodeOffset;
1632    DWORD dwTollPrefixListSize;
1633    DWORD dwTollPrefixListOffset;
1634    DWORD dwCountryID;
1635    DWORD dwOptions;
1636    DWORD dwCancelCallWaitingSize;
1637    DWORD dwCancelCallWaitingOffset;
1638  } LINELOCATIONENTRY,*LPLINELOCATIONENTRY;
1639
1640  typedef struct linemediacontrolcallstate_tag {
1641    DWORD dwCallStates;
1642    DWORD dwMediaControl;
1643  } LINEMEDIACONTROLCALLSTATE,*LPLINEMEDIACONTROLCALLSTATE;
1644
1645  typedef struct linemediacontroldigit_tag {
1646    DWORD dwDigit;
1647    DWORD dwDigitModes;
1648    DWORD dwMediaControl;
1649  } LINEMEDIACONTROLDIGIT,*LPLINEMEDIACONTROLDIGIT;
1650
1651  typedef struct linemediacontrolmedia_tag {
1652    DWORD dwMediaModes;
1653    DWORD dwDuration;
1654    DWORD dwMediaControl;
1655  } LINEMEDIACONTROLMEDIA,*LPLINEMEDIACONTROLMEDIA;
1656
1657  typedef struct linemediacontroltone_tag {
1658    DWORD dwAppSpecific;
1659    DWORD dwDuration;
1660    DWORD dwFrequency1;
1661    DWORD dwFrequency2;
1662    DWORD dwFrequency3;
1663    DWORD dwMediaControl;
1664  } LINEMEDIACONTROLTONE,*LPLINEMEDIACONTROLTONE;
1665
1666  typedef struct linemessage_tag {
1667    DWORD hDevice;
1668    DWORD dwMessageID;
1669    DWORD_PTR dwCallbackInstance;
1670    DWORD_PTR dwParam1;
1671    DWORD_PTR dwParam2;
1672    DWORD_PTR dwParam3;
1673  } LINEMESSAGE,*LPLINEMESSAGE;
1674
1675  typedef struct linemonitortone_tag {
1676    DWORD dwAppSpecific;
1677    DWORD dwDuration;
1678    DWORD dwFrequency1;
1679    DWORD dwFrequency2;
1680    DWORD dwFrequency3;
1681  } LINEMONITORTONE,*LPLINEMONITORTONE;
1682
1683  typedef struct lineproviderentry_tag {
1684    DWORD dwPermanentProviderID;
1685    DWORD dwProviderFilenameSize;
1686    DWORD dwProviderFilenameOffset;
1687  } LINEPROVIDERENTRY,*LPLINEPROVIDERENTRY;
1688
1689  typedef struct lineproviderlist_tag {
1690    DWORD dwTotalSize;
1691    DWORD dwNeededSize;
1692    DWORD dwUsedSize;
1693    DWORD dwNumProviders;
1694    DWORD dwProviderListSize;
1695    DWORD dwProviderListOffset;
1696  } LINEPROVIDERLIST,*LPLINEPROVIDERLIST;
1697
1698  typedef struct lineproxyrequest_tag {
1699    DWORD dwSize;
1700    DWORD dwClientMachineNameSize;
1701    DWORD dwClientMachineNameOffset;
1702    DWORD dwClientUserNameSize;
1703    DWORD dwClientUserNameOffset;
1704    DWORD dwClientAppAPIVersion;
1705    DWORD dwRequestType;
1706    __C89_NAMELESS union {
1707      struct {
1708	DWORD dwAddressID;
1709	LINEAGENTGROUPLIST GroupList;
1710      } SetAgentGroup;
1711      struct {
1712	DWORD dwAddressID;
1713	DWORD dwAgentState;
1714	DWORD dwNextAgentState;
1715      } SetAgentState;
1716      struct {
1717	DWORD dwAddressID;
1718	DWORD dwActivityID;
1719      } SetAgentActivity;
1720      struct {
1721	DWORD dwAddressID;
1722	LINEAGENTCAPS AgentCaps;
1723      } GetAgentCaps;
1724      struct {
1725	DWORD dwAddressID;
1726	LINEAGENTSTATUS AgentStatus;
1727      } GetAgentStatus;
1728      struct {
1729	DWORD dwAddressID;
1730	DWORD dwAgentExtensionIDIndex;
1731	DWORD dwSize;
1732	BYTE Params[1];
1733      } AgentSpecific;
1734      struct {
1735	DWORD dwAddressID;
1736	LINEAGENTACTIVITYLIST ActivityList;
1737      } GetAgentActivityList;
1738      struct {
1739	DWORD dwAddressID;
1740	LINEAGENTGROUPLIST GroupList;
1741      } GetAgentGroupList;
1742      struct {
1743	HAGENT hAgent;
1744	DWORD dwAgentIDSize;
1745	DWORD dwAgentIDOffset;
1746	DWORD dwAgentPINSize;
1747	DWORD dwAgentPINOffset;
1748      } CreateAgent;
1749      struct {
1750	HAGENT hAgent;
1751	DWORD dwAgentState;
1752	DWORD dwNextAgentState;
1753      } SetAgentStateEx;
1754      struct {
1755	HAGENT hAgent;
1756	DWORD dwMeasurementPeriod;
1757      } SetAgentMeasurementPeriod;
1758      struct {
1759	HAGENT hAgent;
1760	LINEAGENTINFO AgentInfo;
1761      } GetAgentInfo;
1762      struct {
1763	HAGENTSESSION hAgentSession;
1764	DWORD dwAgentPINSize;
1765	DWORD dwAgentPINOffset;
1766	HAGENT hAgent;
1767	GUID GroupID;
1768	DWORD dwWorkingAddressID;
1769      } CreateAgentSession;
1770      struct {
1771	HAGENT hAgent;
1772	LINEAGENTSESSIONLIST SessionList;
1773      } GetAgentSessionList;
1774      struct {
1775	HAGENTSESSION hAgentSession;
1776	LINEAGENTSESSIONINFO SessionInfo;
1777      } GetAgentSessionInfo;
1778      struct {
1779	HAGENTSESSION hAgentSession;
1780	DWORD dwAgentSessionState;
1781	DWORD dwNextAgentSessionState;
1782      } SetAgentSessionState;
1783      struct {
1784	GUID GroupID;
1785	LINEQUEUELIST QueueList;
1786      } GetQueueList;
1787      struct {
1788	DWORD dwQueueID;
1789	DWORD dwMeasurementPeriod;
1790      } SetQueueMeasurementPeriod;
1791      struct {
1792	DWORD dwQueueID;
1793	LINEQUEUEINFO QueueInfo;
1794      } GetQueueInfo;
1795      struct {
1796	LINEAGENTGROUPLIST GroupList;
1797      } GetGroupList;
1798    };
1799  } LINEPROXYREQUEST,*LPLINEPROXYREQUEST;
1800
1801  typedef struct linereqmakecall_tag {
1802    char szDestAddress[TAPIMAXDESTADDRESSSIZE];
1803    char szAppName[TAPIMAXAPPNAMESIZE];
1804    char szCalledParty[TAPIMAXCALLEDPARTYSIZE];
1805    char szComment[TAPIMAXCOMMENTSIZE];
1806  } LINEREQMAKECALL,*LPLINEREQMAKECALL;
1807
1808  typedef struct linereqmakecallW_tag {
1809    WCHAR szDestAddress[TAPIMAXDESTADDRESSSIZE];
1810    WCHAR szAppName[TAPIMAXAPPNAMESIZE];
1811    WCHAR szCalledParty[TAPIMAXCALLEDPARTYSIZE];
1812    WCHAR szComment[TAPIMAXCOMMENTSIZE];
1813  } LINEREQMAKECALLW,*LPLINEREQMAKECALLW;
1814
1815#if defined(UNICODE)
1816#define LINEREQMAKECALL LINEREQMAKECALLW
1817#endif
1818
1819  typedef struct linereqmediacall_tag {
1820    HWND hWnd;
1821    WPARAM wRequestID;
1822    char szDeviceClass[TAPIMAXDEVICECLASSSIZE];
1823    unsigned char ucDeviceID[TAPIMAXDEVICEIDSIZE];
1824    DWORD dwSize;
1825    DWORD dwSecure;
1826    char szDestAddress[TAPIMAXDESTADDRESSSIZE];
1827    char szAppName[TAPIMAXAPPNAMESIZE];
1828    char szCalledParty[TAPIMAXCALLEDPARTYSIZE];
1829    char szComment[TAPIMAXCOMMENTSIZE];
1830  } LINEREQMEDIACALL,*LPLINEREQMEDIACALL;
1831
1832  typedef struct linereqmediacallW_tag {
1833    HWND hWnd;
1834    WPARAM wRequestID;
1835    WCHAR szDeviceClass[TAPIMAXDEVICECLASSSIZE];
1836    unsigned char ucDeviceID[TAPIMAXDEVICEIDSIZE];
1837    DWORD dwSize;
1838    DWORD dwSecure;
1839    WCHAR szDestAddress[TAPIMAXDESTADDRESSSIZE];
1840    WCHAR szAppName[TAPIMAXAPPNAMESIZE];
1841    WCHAR szCalledParty[TAPIMAXCALLEDPARTYSIZE];
1842    WCHAR szComment[TAPIMAXCOMMENTSIZE];
1843  } LINEREQMEDIACALLW,*LPLINEREQMEDIACALLW;
1844
1845#if defined(UNICODE)
1846#define LINEREQMEDIACALL LINEREQMEDIACALLW
1847#endif
1848
1849  typedef struct linetermcaps_tag {
1850    DWORD dwTermDev;
1851    DWORD dwTermModes;
1852    DWORD dwTermSharing;
1853  } LINETERMCAPS,*LPLINETERMCAPS;
1854
1855  typedef struct linetranslatecaps_tag {
1856    DWORD dwTotalSize;
1857    DWORD dwNeededSize;
1858    DWORD dwUsedSize;
1859    DWORD dwNumLocations;
1860    DWORD dwLocationListSize;
1861    DWORD dwLocationListOffset;
1862    DWORD dwCurrentLocationID;
1863    DWORD dwNumCards;
1864    DWORD dwCardListSize;
1865    DWORD dwCardListOffset;
1866    DWORD dwCurrentPreferredCardID;
1867  } LINETRANSLATECAPS,*LPLINETRANSLATECAPS;
1868
1869  typedef struct linetranslateoutput_tag {
1870    DWORD dwTotalSize;
1871    DWORD dwNeededSize;
1872    DWORD dwUsedSize;
1873    DWORD dwDialableStringSize;
1874    DWORD dwDialableStringOffset;
1875    DWORD dwDisplayableStringSize;
1876    DWORD dwDisplayableStringOffset;
1877    DWORD dwCurrentCountry;
1878    DWORD dwDestCountry;
1879    DWORD dwTranslateResults;
1880  } LINETRANSLATEOUTPUT,*LPLINETRANSLATEOUTPUT;
1881
1882  typedef struct phonebuttoninfo_tag {
1883    DWORD dwTotalSize;
1884    DWORD dwNeededSize;
1885    DWORD dwUsedSize;
1886    DWORD dwButtonMode;
1887    DWORD dwButtonFunction;
1888    DWORD dwButtonTextSize;
1889    DWORD dwButtonTextOffset;
1890    DWORD dwDevSpecificSize;
1891    DWORD dwDevSpecificOffset;
1892    DWORD dwButtonState;
1893  } PHONEBUTTONINFO,*LPPHONEBUTTONINFO;
1894
1895  typedef struct phonecaps_tag {
1896    DWORD dwTotalSize;
1897    DWORD dwNeededSize;
1898    DWORD dwUsedSize;
1899    DWORD dwProviderInfoSize;
1900    DWORD dwProviderInfoOffset;
1901    DWORD dwPhoneInfoSize;
1902    DWORD dwPhoneInfoOffset;
1903    DWORD dwPermanentPhoneID;
1904    DWORD dwPhoneNameSize;
1905    DWORD dwPhoneNameOffset;
1906    DWORD dwStringFormat;
1907    DWORD dwPhoneStates;
1908    DWORD dwHookSwitchDevs;
1909    DWORD dwHandsetHookSwitchModes;
1910    DWORD dwSpeakerHookSwitchModes;
1911    DWORD dwHeadsetHookSwitchModes;
1912    DWORD dwVolumeFlags;
1913    DWORD dwGainFlags;
1914    DWORD dwDisplayNumRows;
1915    DWORD dwDisplayNumColumns;
1916    DWORD dwNumRingModes;
1917    DWORD dwNumButtonLamps;
1918    DWORD dwButtonModesSize;
1919    DWORD dwButtonModesOffset;
1920    DWORD dwButtonFunctionsSize;
1921    DWORD dwButtonFunctionsOffset;
1922    DWORD dwLampModesSize;
1923    DWORD dwLampModesOffset;
1924    DWORD dwNumSetData;
1925    DWORD dwSetDataSize;
1926    DWORD dwSetDataOffset;
1927    DWORD dwNumGetData;
1928    DWORD dwGetDataSize;
1929    DWORD dwGetDataOffset;
1930    DWORD dwDevSpecificSize;
1931    DWORD dwDevSpecificOffset;
1932    DWORD dwDeviceClassesSize;
1933    DWORD dwDeviceClassesOffset;
1934    DWORD dwPhoneFeatures;
1935    DWORD dwSettableHandsetHookSwitchModes;
1936    DWORD dwSettableSpeakerHookSwitchModes;
1937    DWORD dwSettableHeadsetHookSwitchModes;
1938    DWORD dwMonitoredHandsetHookSwitchModes;
1939    DWORD dwMonitoredSpeakerHookSwitchModes;
1940    DWORD dwMonitoredHeadsetHookSwitchModes;
1941    GUID PermanentPhoneGuid;
1942  } PHONECAPS,*LPPHONECAPS;
1943
1944  typedef struct phoneextensionid_tag {
1945    DWORD dwExtensionID0;
1946    DWORD dwExtensionID1;
1947    DWORD dwExtensionID2;
1948    DWORD dwExtensionID3;
1949  } PHONEEXTENSIONID,*LPPHONEEXTENSIONID;
1950
1951  typedef struct phoneinitializeexparams_tag {
1952    DWORD dwTotalSize;
1953    DWORD dwNeededSize;
1954    DWORD dwUsedSize;
1955    DWORD dwOptions;
1956    union {
1957      HANDLE hEvent;
1958      HANDLE hCompletionPort;
1959    } Handles;
1960    DWORD dwCompletionKey;
1961  } PHONEINITIALIZEEXPARAMS,*LPPHONEINITIALIZEEXPARAMS;
1962
1963  typedef struct phonemessage_tag {
1964    DWORD hDevice;
1965    DWORD dwMessageID;
1966    DWORD_PTR dwCallbackInstance;
1967    DWORD_PTR dwParam1;
1968    DWORD_PTR dwParam2;
1969    DWORD_PTR dwParam3;
1970  } PHONEMESSAGE,*LPPHONEMESSAGE;
1971
1972  typedef struct phonestatus_tag {
1973    DWORD dwTotalSize;
1974    DWORD dwNeededSize;
1975    DWORD dwUsedSize;
1976    DWORD dwStatusFlags;
1977    DWORD dwNumOwners;
1978    DWORD dwNumMonitors;
1979    DWORD dwRingMode;
1980    DWORD dwRingVolume;
1981    DWORD dwHandsetHookSwitchMode;
1982    DWORD dwHandsetVolume;
1983    DWORD dwHandsetGain;
1984    DWORD dwSpeakerHookSwitchMode;
1985    DWORD dwSpeakerVolume;
1986    DWORD dwSpeakerGain;
1987    DWORD dwHeadsetHookSwitchMode;
1988    DWORD dwHeadsetVolume;
1989    DWORD dwHeadsetGain;
1990    DWORD dwDisplaySize;
1991    DWORD dwDisplayOffset;
1992    DWORD dwLampModesSize;
1993    DWORD dwLampModesOffset;
1994    DWORD dwOwnerNameSize;
1995    DWORD dwOwnerNameOffset;
1996    DWORD dwDevSpecificSize;
1997    DWORD dwDevSpecificOffset;
1998    DWORD dwPhoneFeatures;
1999  } PHONESTATUS,*LPPHONESTATUS;
2000
2001  typedef struct varstring_tag {
2002    DWORD dwTotalSize;
2003    DWORD dwNeededSize;
2004    DWORD dwUsedSize;
2005    DWORD dwStringFormat;
2006    DWORD dwStringSize;
2007    DWORD dwStringOffset;
2008  } VARSTRING,*LPVARSTRING;
2009
2010  LONG WINAPI lineAccept(HCALL hCall,LPCSTR lpsUserUserInfo,DWORD dwSize);
2011  LONG WINAPI lineAddProvider(LPCSTR lpszProviderFilename,HWND hwndOwner,LPDWORD lpdwPermanentProviderID);
2012  LONG WINAPI lineAddProviderA(LPCSTR lpszProviderFilename,HWND hwndOwner,LPDWORD lpdwPermanentProviderID);
2013  LONG WINAPI lineAddProviderW(LPCWSTR lpszProviderFilename,HWND hwndOwner,LPDWORD lpdwPermanentProviderID);
2014  LONG WINAPI lineAddToConference(HCALL hConfCall,HCALL hConsultCall);
2015  LONG WINAPI lineAgentSpecific(HLINE hLine,DWORD dwAddressID,DWORD dwAgentExtensionIDIndex,LPVOID lpParams,DWORD dwSize);
2016  LONG WINAPI lineAnswer(HCALL hCall,LPCSTR lpsUserUserInfo,DWORD dwSize);
2017  LONG WINAPI lineBlindTransfer(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2018  LONG WINAPI lineBlindTransferA(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2019  LONG WINAPI lineBlindTransferW(HCALL hCall,LPCWSTR lpszDestAddressW,DWORD dwCountryCode);
2020  LONG WINAPI lineClose(HLINE hLine);
2021  LONG WINAPI lineCompleteCall(HCALL hCall,LPDWORD lpdwCompletionID,DWORD dwCompletionMode,DWORD dwMessageID);
2022  LONG WINAPI lineCompleteTransfer(HCALL hCall,HCALL hConsultCall,LPHCALL lphConfCall,DWORD dwTransferMode);
2023  LONG WINAPI lineConfigDialog(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass);
2024  LONG WINAPI lineConfigDialogA(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass);
2025  LONG WINAPI lineConfigDialogW(DWORD dwDeviceID,HWND hwndOwner,LPCWSTR lpszDeviceClass);
2026  LONG WINAPI lineConfigDialogEdit(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass,LPVOID const lpDeviceConfigIn,DWORD dwSize,LPVARSTRING lpDeviceConfigOut);
2027  LONG WINAPI lineConfigDialogEditA(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass,LPVOID const lpDeviceConfigIn,DWORD dwSize,LPVARSTRING lpDeviceConfigOut);
2028  LONG WINAPI lineConfigDialogEditW(DWORD dwDeviceID,HWND hwndOwner,LPCWSTR lpszDeviceClass,LPVOID const lpDeviceConfigIn,DWORD dwSize,LPVARSTRING lpDeviceConfigOut);
2029  LONG WINAPI lineConfigProvider(HWND hwndOwner,DWORD dwPermanentProviderID);
2030  LONG WINAPI lineCreateAgentW(HLINE hLine,LPWSTR lpszAgentID,LPWSTR lpszAgentPIN,LPHAGENT lphAgent);
2031  LONG WINAPI lineCreateAgentA(HLINE hLine,LPSTR lpszAgentID,LPSTR lpszAgentPIN,LPHAGENT lphAgent);
2032  LONG WINAPI lineCreateAgentSessionW(HLINE hLine,HAGENT hAgent,LPWSTR lpszAgentPIN,DWORD dwWorkingAddressID,LPGUID lpGroupID,LPHAGENTSESSION lphAgentSession);
2033  LONG WINAPI lineCreateAgentSessionA(HLINE hLine,HAGENT hAgent,LPSTR lpszAgentPIN,DWORD dwWorkingAddressID,LPGUID lpGroupID,LPHAGENTSESSION lphAgentSession);
2034  LONG WINAPI lineDeallocateCall(HCALL hCall);
2035  LONG WINAPI lineDevSpecific(HLINE hLine,DWORD dwAddressID,HCALL hCall,LPVOID lpParams,DWORD dwSize);
2036  LONG WINAPI lineDevSpecificFeature(HLINE hLine,DWORD dwFeature,LPVOID lpParams,DWORD dwSize);
2037  LONG WINAPI lineDial(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2038  LONG WINAPI lineDialA(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2039  LONG WINAPI lineDialW(HCALL hCall,LPCWSTR lpszDestAddress,DWORD dwCountryCode);
2040  LONG WINAPI lineDrop(HCALL hCall,LPCSTR lpsUserUserInfo,DWORD dwSize);
2041  LONG WINAPI lineForward(HLINE hLine,DWORD bAllAddresses,DWORD dwAddressID,LPLINEFORWARDLIST const lpForwardList,DWORD dwNumRingsNoAnswer,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2042  LONG WINAPI lineForwardA(HLINE hLine,DWORD bAllAddresses,DWORD dwAddressID,LPLINEFORWARDLIST const lpForwardList,DWORD dwNumRingsNoAnswer,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2043  LONG WINAPI lineForwardW(HLINE hLine,DWORD bAllAddresses,DWORD dwAddressID,LPLINEFORWARDLIST const lpForwardList,DWORD dwNumRingsNoAnswer,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2044  LONG WINAPI lineGatherDigits(HCALL hCall,DWORD dwDigitModes,LPSTR lpsDigits,DWORD dwNumDigits,LPCSTR lpszTerminationDigits,DWORD dwFirstDigitTimeout,DWORD dwInterDigitTimeout);
2045  LONG WINAPI lineGatherDigitsA(HCALL hCall,DWORD dwDigitModes,LPSTR lpsDigits,DWORD dwNumDigits,LPCSTR lpszTerminationDigits,DWORD dwFirstDigitTimeout,DWORD dwInterDigitTimeout);
2046  LONG WINAPI lineGatherDigitsW(HCALL hCall,DWORD dwDigitModes,LPWSTR lpsDigits,DWORD dwNumDigits,LPCWSTR lpszTerminationDigits,DWORD dwFirstDigitTimeout,DWORD dwInterDigitTimeout);
2047  LONG WINAPI lineGenerateDigits(HCALL hCall,DWORD dwDigitMode,LPCSTR lpszDigits,DWORD dwDuration);
2048  LONG WINAPI lineGenerateDigitsA(HCALL hCall,DWORD dwDigitMode,LPCSTR lpszDigits,DWORD dwDuration);
2049  LONG WINAPI lineGenerateDigitsW(HCALL hCall,DWORD dwDigitMode,LPCWSTR lpszDigits,DWORD dwDuration);
2050  LONG WINAPI lineGenerateTone(HCALL hCall,DWORD dwToneMode,DWORD dwDuration,DWORD dwNumTones,LPLINEGENERATETONE const lpTones);
2051  LONG WINAPI lineGetAddressCaps(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAddressID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEADDRESSCAPS lpAddressCaps);
2052  LONG WINAPI lineGetAddressCapsA(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAddressID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEADDRESSCAPS lpAddressCaps);
2053  LONG WINAPI lineGetAddressCapsW(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAddressID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEADDRESSCAPS lpAddressCaps);
2054  LONG WINAPI lineGetAddressID(HLINE hLine,LPDWORD lpdwAddressID,DWORD dwAddressMode,LPCSTR lpsAddress,DWORD dwSize);
2055  LONG WINAPI lineGetAddressIDA(HLINE hLine,LPDWORD lpdwAddressID,DWORD dwAddressMode,LPCSTR lpsAddress,DWORD dwSize);
2056  LONG WINAPI lineGetAddressIDW(HLINE hLine,LPDWORD lpdwAddressID,DWORD dwAddressMode,LPCWSTR lpsAddress,DWORD dwSize);
2057  LONG WINAPI lineGetAddressStatus(HLINE hLine,DWORD dwAddressID,LPLINEADDRESSSTATUS lpAddressStatus);
2058  LONG WINAPI lineGetAddressStatusA(HLINE hLine,DWORD dwAddressID,LPLINEADDRESSSTATUS lpAddressStatus);
2059  LONG WINAPI lineGetAddressStatusW(HLINE hLine,DWORD dwAddressID,LPLINEADDRESSSTATUS lpAddressStatus);
2060  LONG WINAPI lineGetAgentActivityListA(HLINE hLine,DWORD dwAddressID,LPLINEAGENTACTIVITYLIST lpAgentActivityList);
2061  LONG WINAPI lineGetAgentActivityListW(HLINE hLine,DWORD dwAddressID,LPLINEAGENTACTIVITYLIST lpAgentActivityList);
2062  LONG WINAPI lineGetAgentCapsA(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAddressID,DWORD dwAppAPIVersion,LPLINEAGENTCAPS lpAgentCaps);
2063  LONG WINAPI lineGetAgentCapsW(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAddressID,DWORD dwAppAPIVersion,LPLINEAGENTCAPS lpAgentCaps);
2064  LONG WINAPI lineGetAgentGroupListA(HLINE hLine,DWORD dwAddressID,LPLINEAGENTGROUPLIST lpAgentGroupList);
2065  LONG WINAPI lineGetAgentGroupListW(HLINE hLine,DWORD dwAddressID,LPLINEAGENTGROUPLIST lpAgentGroupList);
2066  LONG WINAPI lineGetAgentInfo(HLINE hLine,HAGENT hAgent,LPLINEAGENTINFO lpAgentInfo);
2067  LONG WINAPI lineGetAgentSessionInfo(HLINE hLine,HAGENTSESSION hAgentSession,LPLINEAGENTSESSIONINFO lpAgentSessionInfo);
2068  LONG WINAPI lineGetAgentSessionList(HLINE hLine,HAGENT hAgent,LPLINEAGENTSESSIONLIST lpAgentSessionList);
2069  LONG WINAPI lineGetAgentStatusA(HLINE hLine,DWORD dwAddressID,LPLINEAGENTSTATUS lpAgentStatus);
2070  LONG WINAPI lineGetAgentStatusW(HLINE hLine,DWORD dwAddressID,LPLINEAGENTSTATUS lpAgentStatus);
2071  LONG WINAPI lineGetAppPriority(LPCSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPVARSTRING lpExtensionName,LPDWORD lpdwPriority);
2072  LONG WINAPI lineGetAppPriorityA(LPCSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPVARSTRING lpExtensionName,LPDWORD lpdwPriority);
2073  LONG WINAPI lineGetAppPriorityW(LPCWSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPVARSTRING lpExtensionName,LPDWORD lpdwPriority);
2074  LONG WINAPI lineGetCallInfo(HCALL hCall,LPLINECALLINFO lpCallInfo);
2075  LONG WINAPI lineGetCallInfoA(HCALL hCall,LPLINECALLINFO lpCallInfo);
2076  LONG WINAPI lineGetCallInfoW(HCALL hCall,LPLINECALLINFO lpCallInfo);
2077  LONG WINAPI lineGetCallStatus(HCALL hCall,LPLINECALLSTATUS lpCallStatus);
2078  LONG WINAPI lineGetConfRelatedCalls(HCALL hCall,LPLINECALLLIST lpCallList);
2079  LONG WINAPI lineGetCountry(DWORD dwCountryID,DWORD dwAPIVersion,LPLINECOUNTRYLIST lpLineCountryList);
2080  LONG WINAPI lineGetCountryA(DWORD dwCountryID,DWORD dwAPIVersion,LPLINECOUNTRYLIST lpLineCountryList);
2081  LONG WINAPI lineGetCountryW(DWORD dwCountryID,DWORD dwAPIVersion,LPLINECOUNTRYLIST lpLineCountryList);
2082  LONG WINAPI lineGetDevCaps(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEDEVCAPS lpLineDevCaps);
2083  LONG WINAPI lineGetDevCapsA(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEDEVCAPS lpLineDevCaps);
2084  LONG WINAPI lineGetDevCapsW(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPLINEDEVCAPS lpLineDevCaps);
2085  LONG WINAPI lineGetDevConfig(DWORD dwDeviceID,LPVARSTRING lpDeviceConfig,LPCSTR lpszDeviceClass);
2086  LONG WINAPI lineGetDevConfigA(DWORD dwDeviceID,LPVARSTRING lpDeviceConfig,LPCSTR lpszDeviceClass);
2087  LONG WINAPI lineGetDevConfigW(DWORD dwDeviceID,LPVARSTRING lpDeviceConfig,LPCWSTR lpszDeviceClass);
2088  LONG WINAPI lineGetGroupListA(HLINE hLine,LPLINEAGENTGROUPLIST lpGroupList);
2089  LONG WINAPI lineGetGroupListW(HLINE hLine,LPLINEAGENTGROUPLIST lpGroupList);
2090  LONG WINAPI lineGetIcon(DWORD dwDeviceID,LPCSTR lpszDeviceClass,LPHICON lphIcon);
2091  LONG WINAPI lineGetIconA(DWORD dwDeviceID,LPCSTR lpszDeviceClass,LPHICON lphIcon);
2092  LONG WINAPI lineGetIconW(DWORD dwDeviceID,LPCWSTR lpszDeviceClass,LPHICON lphIcon);
2093  LONG WINAPI lineGetID(HLINE hLine,DWORD dwAddressID,HCALL hCall,DWORD dwSelect,LPVARSTRING lpDeviceID,LPCSTR lpszDeviceClass);
2094  LONG WINAPI lineGetIDA(HLINE hLine,DWORD dwAddressID,HCALL hCall,DWORD dwSelect,LPVARSTRING lpDeviceID,LPCSTR lpszDeviceClass);
2095  LONG WINAPI lineGetIDW(HLINE hLine,DWORD dwAddressID,HCALL hCall,DWORD dwSelect,LPVARSTRING lpDeviceID,LPCWSTR lpszDeviceClass);
2096  LONG WINAPI lineGetLineDevStatus(HLINE hLine,LPLINEDEVSTATUS lpLineDevStatus);
2097  LONG WINAPI lineGetLineDevStatusA(HLINE hLine,LPLINEDEVSTATUS lpLineDevStatus);
2098  LONG WINAPI lineGetLineDevStatusW(HLINE hLine,LPLINEDEVSTATUS lpLineDevStatus);
2099  LONG WINAPI lineGetMessage(HLINEAPP hLineApp,LPLINEMESSAGE lpMessage,DWORD dwTimeout);
2100  LONG WINAPI lineGetNewCalls(HLINE hLine,DWORD dwAddressID,DWORD dwSelect,LPLINECALLLIST lpCallList);
2101  LONG WINAPI lineGetNumRings(HLINE hLine,DWORD dwAddressID,LPDWORD lpdwNumRings);
2102  LONG WINAPI lineGetProviderList(DWORD dwAPIVersion,LPLINEPROVIDERLIST lpProviderList);
2103  LONG WINAPI lineGetProviderListA(DWORD dwAPIVersion,LPLINEPROVIDERLIST lpProviderList);
2104  LONG WINAPI lineGetProviderListW(DWORD dwAPIVersion,LPLINEPROVIDERLIST lpProviderList);
2105  LONG WINAPI lineGetProxyStatus(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAppAPIVersion,LPLINEPROXYREQUESTLIST lpLineProxyReqestList);
2106  LONG WINAPI lineGetQueueInfo(HLINE hLine,DWORD dwQueueID,LPLINEQUEUEINFO lpLineQueueInfo);
2107  LONG WINAPI lineGetQueueListA(HLINE hLine,LPGUID lpGroupID,LPLINEQUEUELIST lpQueueList);
2108  LONG WINAPI lineGetQueueListW(HLINE hLine,LPGUID lpGroupID,LPLINEQUEUELIST lpQueueList);
2109  LONG WINAPI lineGetRequest(HLINEAPP hLineApp,DWORD dwRequestMode,LPVOID lpRequestBuffer);
2110  LONG WINAPI lineGetRequestA(HLINEAPP hLineApp,DWORD dwRequestMode,LPVOID lpRequestBuffer);
2111  LONG WINAPI lineGetRequestW(HLINEAPP hLineApp,DWORD dwRequestMode,LPVOID lpRequestBuffer);
2112  LONG WINAPI lineGetStatusMessages(HLINE hLine,LPDWORD lpdwLineStates,LPDWORD lpdwAddressStates);
2113  LONG WINAPI lineGetTranslateCaps(HLINEAPP hLineApp,DWORD dwAPIVersion,LPLINETRANSLATECAPS lpTranslateCaps);
2114  LONG WINAPI lineGetTranslateCapsA(HLINEAPP hLineApp,DWORD dwAPIVersion,LPLINETRANSLATECAPS lpTranslateCaps);
2115  LONG WINAPI lineGetTranslateCapsW(HLINEAPP hLineApp,DWORD dwAPIVersion,LPLINETRANSLATECAPS lpTranslateCaps);
2116  LONG WINAPI lineHandoff(HCALL hCall,LPCSTR lpszFileName,DWORD dwMediaMode);
2117  LONG WINAPI lineHandoffA(HCALL hCall,LPCSTR lpszFileName,DWORD dwMediaMode);
2118  LONG WINAPI lineHandoffW(HCALL hCall,LPCWSTR lpszFileName,DWORD dwMediaMode);
2119  LONG WINAPI lineHold(HCALL hCall);
2120  LONG WINAPI lineInitialize(LPHLINEAPP lphLineApp,HINSTANCE hInstance,LINECALLBACK lpfnCallback,LPCSTR lpszAppName,LPDWORD lpdwNumDevs);
2121  LONG WINAPI lineInitializeExA(LPHLINEAPP lphLineApp,HINSTANCE hInstance,LINECALLBACK lpfnCallback,LPCSTR lpszFriendlyAppName,LPDWORD lpdwNumDevs,LPDWORD lpdwAPIVersion,LPLINEINITIALIZEEXPARAMS lpLineInitializeExParams);
2122  LONG WINAPI lineInitializeExW(LPHLINEAPP lphLineApp,HINSTANCE hInstance,LINECALLBACK lpfnCallback,LPCWSTR lpszFriendlyAppName,LPDWORD lpdwNumDevs,LPDWORD lpdwAPIVersion,LPLINEINITIALIZEEXPARAMS lpLineInitializeExParams);
2123  LONG WINAPI lineMakeCall(HLINE hLine,LPHCALL lphCall,LPCSTR lpszDestAddress,DWORD dwCountryCode,LPLINECALLPARAMS const lpCallParams);
2124  LONG WINAPI lineMakeCallA(HLINE hLine,LPHCALL lphCall,LPCSTR lpszDestAddress,DWORD dwCountryCode,LPLINECALLPARAMS const lpCallParams);
2125  LONG WINAPI lineMakeCallW(HLINE hLine,LPHCALL lphCall,LPCWSTR lpszDestAddress,DWORD dwCountryCode,LPLINECALLPARAMS const lpCallParams);
2126  LONG WINAPI lineMonitorDigits(HCALL hCall,DWORD dwDigitModes);
2127  LONG WINAPI lineMonitorMedia(HCALL hCall,DWORD dwMediaModes);
2128  LONG WINAPI lineMonitorTones(HCALL hCall,LPLINEMONITORTONE const lpToneList,DWORD dwNumEntries);
2129  LONG WINAPI lineNegotiateAPIVersion(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPILowVersion,DWORD dwAPIHighVersion,LPDWORD lpdwAPIVersion,LPLINEEXTENSIONID lpExtensionID);
2130  LONG WINAPI lineNegotiateExtVersion(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtLowVersion,DWORD dwExtHighVersion,LPDWORD lpdwExtVersion);
2131  LONG WINAPI lineOpen(HLINEAPP hLineApp,DWORD dwDeviceID,LPHLINE lphLine,DWORD dwAPIVersion,DWORD dwExtVersion,DWORD_PTR dwCallbackInstance,DWORD dwPrivileges,DWORD dwMediaModes,LPLINECALLPARAMS const lpCallParams);
2132  LONG WINAPI lineOpenA(HLINEAPP hLineApp,DWORD dwDeviceID,LPHLINE lphLine,DWORD dwAPIVersion,DWORD dwExtVersion,DWORD_PTR dwCallbackInstance,DWORD dwPrivileges,DWORD dwMediaModes,LPLINECALLPARAMS const lpCallParams);
2133  LONG WINAPI lineOpenW(HLINEAPP hLineApp,DWORD dwDeviceID,LPHLINE lphLine,DWORD dwAPIVersion,DWORD dwExtVersion,DWORD_PTR dwCallbackInstance,DWORD dwPrivileges,DWORD dwMediaModes,LPLINECALLPARAMS const lpCallParams);
2134  LONG WINAPI linePark(HCALL hCall,DWORD dwParkMode,LPCSTR lpszDirAddress,LPVARSTRING lpNonDirAddress);
2135  LONG WINAPI lineParkA(HCALL hCall,DWORD dwParkMode,LPCSTR lpszDirAddress,LPVARSTRING lpNonDirAddress);
2136  LONG WINAPI lineParkW(HCALL hCall,DWORD dwParkMode,LPCWSTR lpszDirAddress,LPVARSTRING lpNonDirAddress);
2137  LONG WINAPI linePickup(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCSTR lpszDestAddress,LPCSTR lpszGroupID);
2138  LONG WINAPI linePickupA(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCSTR lpszDestAddress,LPCSTR lpszGroupID);
2139  LONG WINAPI linePickupW(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCWSTR lpszDestAddress,LPCWSTR lpszGroupID);
2140  LONG WINAPI linePrepareAddToConference(HCALL hConfCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2141  LONG WINAPI linePrepareAddToConferenceA(HCALL hConfCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2142  LONG WINAPI linePrepareAddToConferenceW(HCALL hConfCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2143  LONG WINAPI lineProxyMessage(HLINE hLine,HCALL hCall,DWORD dwMsg,DWORD dwParam1,DWORD dwParam2,DWORD dwParam3);
2144  LONG WINAPI lineProxyResponse(HLINE hLine,LPLINEPROXYREQUEST lpProxyRequest,DWORD dwResult);
2145  LONG WINAPI lineRedirect(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2146  LONG WINAPI lineRedirectA(HCALL hCall,LPCSTR lpszDestAddress,DWORD dwCountryCode);
2147  LONG WINAPI lineRedirectW(HCALL hCall,LPCWSTR lpszDestAddress,DWORD dwCountryCode);
2148  LONG WINAPI lineRegisterRequestRecipient(HLINEAPP hLineApp,DWORD dwRegistrationInstance,DWORD dwRequestMode,DWORD bEnable);
2149  LONG WINAPI lineReleaseUserUserInfo(HCALL hCall);
2150  LONG WINAPI lineRemoveFromConference(HCALL hCall);
2151  LONG WINAPI lineRemoveProvider(DWORD dwPermanentProviderID,HWND hwndOwner);
2152  LONG WINAPI lineSecureCall(HCALL hCall);
2153  LONG WINAPI lineSendUserUserInfo(HCALL hCall,LPCSTR lpsUserUserInfo,DWORD dwSize);
2154  LONG WINAPI lineSetAgentActivity(HLINE hLine,DWORD dwAddressID,DWORD dwActivityID);
2155  LONG WINAPI lineSetAgentGroup(HLINE hLine,DWORD dwAddressID,LPLINEAGENTGROUPLIST lpAgentGroupList);
2156  LONG WINAPI lineSetAgentMeasurementPeriod(HLINE hLine,HAGENT hAgent,DWORD dwMeasurementPeriod);
2157  LONG WINAPI lineSetAgentSessionState(HLINE hLine,HAGENTSESSION hAgentSession,DWORD dwAgentSessionState,DWORD dwNextAgentSessionState);
2158  LONG WINAPI lineSetAgentStateEx(HLINE hLine,HAGENT hAgent,DWORD dwAgentState,DWORD dwNextAgentState);
2159  LONG WINAPI lineSetAgentState(HLINE hLine,DWORD dwAddressID,DWORD dwAgentState,DWORD dwNextAgentState);
2160  LONG WINAPI lineSetAppPriority(LPCSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPCSTR lpszExtensionName,DWORD dwPriority);
2161  LONG WINAPI lineSetAppPriorityA(LPCSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPCSTR lpszExtensionName,DWORD dwPriority);
2162  LONG WINAPI lineSetAppPriorityW(LPCWSTR lpszAppFilename,DWORD dwMediaMode,LPLINEEXTENSIONID lpExtensionID,DWORD dwRequestMode,LPCWSTR lpszExtensionName,DWORD dwPriority);
2163  LONG WINAPI lineSetAppSpecific(HCALL hCall,DWORD dwAppSpecific);
2164  LONG WINAPI lineSetCallData(HCALL hCall,LPVOID lpCallData,DWORD dwSize);
2165  LONG WINAPI lineSetCallParams(HCALL hCall,DWORD dwBearerMode,DWORD dwMinRate,DWORD dwMaxRate,LPLINEDIALPARAMS const lpDialParams);
2166  LONG WINAPI lineSetCallPrivilege(HCALL hCall,DWORD dwCallPrivilege);
2167  LONG WINAPI lineSetCallQualityOfService(HCALL hCall,LPVOID lpSendingFlowspec,DWORD dwSendingFlowspecSize,LPVOID lpReceivingFlowspec,DWORD dwReceivingFlowspecSize);
2168  LONG WINAPI lineSetCallTreatment(HCALL hCall,DWORD dwTreatment);
2169  LONG WINAPI lineSetCurrentLocation(HLINEAPP hLineApp,DWORD dwLocation);
2170  LONG WINAPI lineSetDevConfig(DWORD dwDeviceID,LPVOID const lpDeviceConfig,DWORD dwSize,LPCSTR lpszDeviceClass);
2171  LONG WINAPI lineSetDevConfigA(DWORD dwDeviceID,LPVOID const lpDeviceConfig,DWORD dwSize,LPCSTR lpszDeviceClass);
2172  LONG WINAPI lineSetDevConfigW(DWORD dwDeviceID,LPVOID const lpDeviceConfig,DWORD dwSize,LPCWSTR lpszDeviceClass);
2173  LONG WINAPI lineSetLineDevStatus(HLINE hLine,DWORD dwStatusToChange,DWORD fStatus);
2174  LONG WINAPI lineSetMediaControl(HLINE hLine,DWORD dwAddressID,HCALL hCall,DWORD dwSelect,LPLINEMEDIACONTROLDIGIT const lpDigitList,DWORD dwDigitNumEntries,LPLINEMEDIACONTROLMEDIA const lpMediaList,DWORD dwMediaNumEntries,LPLINEMEDIACONTROLTONE const lpToneList,DWORD dwToneNumEntries,LPLINEMEDIACONTROLCALLSTATE const lpCallStateList,DWORD dwCallStateNumEntries);
2175  LONG WINAPI lineSetMediaMode(HCALL hCall,DWORD dwMediaModes);
2176  LONG WINAPI lineSetQueueMeasurementPeriod(HLINE hLine,DWORD dwQueueID,DWORD dwMeasurementPeriod);
2177  LONG WINAPI lineSetNumRings(HLINE hLine,DWORD dwAddressID,DWORD dwNumRings);
2178  LONG WINAPI lineSetStatusMessages(HLINE hLine,DWORD dwLineStates,DWORD dwAddressStates);
2179  LONG WINAPI lineSetTerminal(HLINE hLine,DWORD dwAddressID,HCALL hCall,DWORD dwSelect,DWORD dwTerminalModes,DWORD dwTerminalID,DWORD bEnable);
2180  LONG WINAPI lineSetTollList(HLINEAPP hLineApp,DWORD dwDeviceID,LPCSTR lpszAddressIn,DWORD dwTollListOption);
2181  LONG WINAPI lineSetTollListA(HLINEAPP hLineApp,DWORD dwDeviceID,LPCSTR lpszAddressIn,DWORD dwTollListOption);
2182  LONG WINAPI lineSetTollListW(HLINEAPP hLineApp,DWORD dwDeviceID,LPCWSTR lpszAddressInW,DWORD dwTollListOption);
2183  LONG WINAPI lineSetupConference(HCALL hCall,HLINE hLine,LPHCALL lphConfCall,LPHCALL lphConsultCall,DWORD dwNumParties,LPLINECALLPARAMS const lpCallParams);
2184  LONG WINAPI lineSetupConferenceA(HCALL hCall,HLINE hLine,LPHCALL lphConfCall,LPHCALL lphConsultCall,DWORD dwNumParties,LPLINECALLPARAMS const lpCallParams);
2185  LONG WINAPI lineSetupConferenceW(HCALL hCall,HLINE hLine,LPHCALL lphConfCall,LPHCALL lphConsultCall,DWORD dwNumParties,LPLINECALLPARAMS const lpCallParams);
2186  LONG WINAPI lineSetupTransfer(HCALL hCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2187  LONG WINAPI lineSetupTransferA(HCALL hCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2188  LONG WINAPI lineSetupTransferW(HCALL hCall,LPHCALL lphConsultCall,LPLINECALLPARAMS const lpCallParams);
2189  LONG WINAPI lineShutdown(HLINEAPP hLineApp);
2190  LONG WINAPI lineSwapHold(HCALL hActiveCall,HCALL hHeldCall);
2191  LONG WINAPI lineTranslateAddress(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,LPCSTR lpszAddressIn,DWORD dwCard,DWORD dwTranslateOptions,LPLINETRANSLATEOUTPUT lpTranslateOutput);
2192  LONG WINAPI lineTranslateAddressA(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,LPCSTR lpszAddressIn,DWORD dwCard,DWORD dwTranslateOptions,LPLINETRANSLATEOUTPUT lpTranslateOutput);
2193  LONG WINAPI lineTranslateAddressW(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,LPCWSTR lpszAddressIn,DWORD dwCard,DWORD dwTranslateOptions,LPLINETRANSLATEOUTPUT lpTranslateOutput);
2194  LONG WINAPI lineTranslateDialog(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,HWND hwndOwner,LPCSTR lpszAddressIn);
2195  LONG WINAPI lineTranslateDialogA(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,HWND hwndOwner,LPCSTR lpszAddressIn);
2196  LONG WINAPI lineTranslateDialogW(HLINEAPP hLineApp,DWORD dwDeviceID,DWORD dwAPIVersion,HWND hwndOwner,LPCWSTR lpszAddressIn);
2197  LONG WINAPI lineUncompleteCall(HLINE hLine,DWORD dwCompletionID);
2198  LONG WINAPI lineUnhold(HCALL hCall);
2199  LONG WINAPI lineUnpark(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCSTR lpszDestAddress);
2200  LONG WINAPI lineUnparkA(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCSTR lpszDestAddress);
2201  LONG WINAPI lineUnparkW(HLINE hLine,DWORD dwAddressID,LPHCALL lphCall,LPCWSTR lpszDestAddress);
2202  LONG WINAPI phoneClose(HPHONE hPhone);
2203  LONG WINAPI phoneConfigDialog(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass);
2204  LONG WINAPI phoneConfigDialogA(DWORD dwDeviceID,HWND hwndOwner,LPCSTR lpszDeviceClass);
2205  LONG WINAPI phoneConfigDialogW(DWORD dwDeviceID,HWND hwndOwner,LPCWSTR lpszDeviceClass);
2206  LONG WINAPI phoneDevSpecific(HPHONE hPhone,LPVOID lpParams,DWORD dwSize);
2207  LONG WINAPI phoneGetButtonInfo(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO lpButtonInfo);
2208  LONG WINAPI phoneGetButtonInfoA(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO lpButtonInfo);
2209  LONG WINAPI phoneGetButtonInfoW(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO lpButtonInfo);
2210  LONG WINAPI phoneGetData(HPHONE hPhone,DWORD dwDataID,LPVOID lpData,DWORD dwSize);
2211  LONG WINAPI phoneGetDevCaps(HPHONEAPP hPhoneApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPPHONECAPS lpPhoneCaps);
2212  LONG WINAPI phoneGetDevCapsA(HPHONEAPP hPhoneApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPPHONECAPS lpPhoneCaps);
2213  LONG WINAPI phoneGetDevCapsW(HPHONEAPP hPhoneApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtVersion,LPPHONECAPS lpPhoneCaps);
2214  LONG WINAPI phoneGetDisplay(HPHONE hPhone,LPVARSTRING lpDisplay);
2215  LONG WINAPI phoneGetGain(HPHONE hPhone,DWORD dwHookSwitchDev,LPDWORD lpdwGain);
2216  LONG WINAPI phoneGetHookSwitch(HPHONE hPhone,LPDWORD lpdwHookSwitchDevs);
2217  LONG WINAPI phoneGetIcon(DWORD dwDeviceID,LPCSTR lpszDeviceClass,LPHICON lphIcon);
2218  LONG WINAPI phoneGetIconA(DWORD dwDeviceID,LPCSTR lpszDeviceClass,LPHICON lphIcon);
2219  LONG WINAPI phoneGetIconW(DWORD dwDeviceID,LPCWSTR lpszDeviceClass,LPHICON lphIcon);
2220  LONG WINAPI phoneGetID(HPHONE hPhone,LPVARSTRING lpDeviceID,LPCSTR lpszDeviceClass);
2221  LONG WINAPI phoneGetIDA(HPHONE hPhone,LPVARSTRING lpDeviceID,LPCSTR lpszDeviceClass);
2222  LONG WINAPI phoneGetIDW(HPHONE hPhone,LPVARSTRING lpDeviceID,LPCWSTR lpszDeviceClass);
2223  LONG WINAPI phoneGetLamp(HPHONE hPhone,DWORD dwButtonLampID,LPDWORD lpdwLampMode);
2224  LONG WINAPI phoneGetMessage(HPHONEAPP hPhoneApp,LPPHONEMESSAGE lpMessage,DWORD dwTimeout);
2225  LONG WINAPI phoneGetRing(HPHONE hPhone,LPDWORD lpdwRingMode,LPDWORD lpdwVolume);
2226  LONG WINAPI phoneGetStatus(HPHONE hPhone,LPPHONESTATUS lpPhoneStatus);
2227  LONG WINAPI phoneGetStatusA(HPHONE hPhone,LPPHONESTATUS lpPhoneStatus);
2228  LONG WINAPI phoneGetStatusW(HPHONE hPhone,LPPHONESTATUS lpPhoneStatus);
2229  LONG WINAPI phoneGetStatusMessages(HPHONE hPhone,LPDWORD lpdwPhoneStates,LPDWORD lpdwButtonModes,LPDWORD lpdwButtonStates);
2230  LONG WINAPI phoneGetVolume(HPHONE hPhone,DWORD dwHookSwitchDev,LPDWORD lpdwVolume);
2231  LONG WINAPI phoneInitialize(LPHPHONEAPP lphPhoneApp,HINSTANCE hInstance,PHONECALLBACK lpfnCallback,LPCSTR lpszAppName,LPDWORD lpdwNumDevs);
2232  LONG WINAPI phoneInitializeExA(LPHPHONEAPP lphPhoneApp,HINSTANCE hInstance,PHONECALLBACK lpfnCallback,LPCSTR lpszFriendlyAppName,LPDWORD lpdwNumDevs,LPDWORD lpdwAPIVersion,LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams);
2233  LONG WINAPI phoneInitializeExW(LPHPHONEAPP lphPhoneApp,HINSTANCE hInstance,PHONECALLBACK lpfnCallback,LPCWSTR lpszFriendlyAppName,LPDWORD lpdwNumDevs,LPDWORD lpdwAPIVersion,LPPHONEINITIALIZEEXPARAMS lpPhoneInitializeExParams);
2234  LONG WINAPI phoneNegotiateAPIVersion(HPHONEAPP hPhoneApp,DWORD dwDeviceID,DWORD dwAPILowVersion,DWORD dwAPIHighVersion,LPDWORD lpdwAPIVersion,LPPHONEEXTENSIONID lpExtensionID);
2235  LONG WINAPI phoneNegotiateExtVersion(HPHONEAPP hPhoneApp,DWORD dwDeviceID,DWORD dwAPIVersion,DWORD dwExtLowVersion,DWORD dwExtHighVersion,LPDWORD lpdwExtVersion);
2236  LONG WINAPI phoneOpen(HPHONEAPP hPhoneApp,DWORD dwDeviceID,LPHPHONE lphPhone,DWORD dwAPIVersion,DWORD dwExtVersion,DWORD_PTR dwCallbackInstance,DWORD dwPrivilege);
2237  LONG WINAPI phoneSetButtonInfo(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO const lpButtonInfo);
2238  LONG WINAPI phoneSetButtonInfoA(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO const lpButtonInfo);
2239  LONG WINAPI phoneSetButtonInfoW(HPHONE hPhone,DWORD dwButtonLampID,LPPHONEBUTTONINFO const lpButtonInfo);
2240  LONG WINAPI phoneSetData(HPHONE hPhone,DWORD dwDataID,LPVOID const lpData,DWORD dwSize);
2241  LONG WINAPI phoneSetDisplay(HPHONE hPhone,DWORD dwRow,DWORD dwColumn,LPCSTR lpsDisplay,DWORD dwSize);
2242  LONG WINAPI phoneSetGain(HPHONE hPhone,DWORD dwHookSwitchDev,DWORD dwGain);
2243  LONG WINAPI phoneSetHookSwitch(HPHONE hPhone,DWORD dwHookSwitchDevs,DWORD dwHookSwitchMode);
2244  LONG WINAPI phoneSetLamp(HPHONE hPhone,DWORD dwButtonLampID,DWORD dwLampMode);
2245  LONG WINAPI phoneSetRing(HPHONE hPhone,DWORD dwRingMode,DWORD dwVolume);
2246  LONG WINAPI phoneSetStatusMessages(HPHONE hPhone,DWORD dwPhoneStates,DWORD dwButtonModes,DWORD dwButtonStates);
2247  LONG WINAPI phoneSetVolume(HPHONE hPhone,DWORD dwHookSwitchDev,DWORD dwVolume);
2248  LONG WINAPI phoneShutdown(HPHONEAPP hPhoneApp);
2249  LONG WINAPI tapiGetLocationInfo(LPSTR lpszCountryCode,LPSTR lpszCityCode);
2250  LONG WINAPI tapiGetLocationInfoA(LPSTR lpszCountryCode,LPSTR lpszCityCode);
2251  LONG WINAPI tapiGetLocationInfoW(LPWSTR lpszCountryCodeW,LPWSTR lpszCityCodeW);
2252  LONG WINAPI tapiRequestDrop(HWND hwnd,WPARAM wRequestID);
2253  LONG WINAPI tapiRequestMakeCall(LPCSTR lpszDestAddress,LPCSTR lpszAppName,LPCSTR lpszCalledParty,LPCSTR lpszComment);
2254  LONG WINAPI tapiRequestMakeCallA(LPCSTR lpszDestAddress,LPCSTR lpszAppName,LPCSTR lpszCalledParty,LPCSTR lpszComment);
2255  LONG WINAPI tapiRequestMakeCallW(LPCWSTR lpszDestAddress,LPCWSTR lpszAppName,LPCWSTR lpszCalledParty,LPCWSTR lpszComment);
2256  LONG WINAPI tapiRequestMediaCall(HWND hwnd,WPARAM wRequestID,LPCSTR lpszDeviceClass,LPCSTR lpDeviceID,DWORD dwSize,DWORD dwSecure,LPCSTR lpszDestAddress,LPCSTR lpszAppName,LPCSTR lpszCalledParty,LPCSTR lpszComment);
2257  LONG WINAPI tapiRequestMediaCallA(HWND hwnd,WPARAM wRequestID,LPCSTR lpszDeviceClass,LPCSTR lpDeviceID,DWORD dwSize,DWORD dwSecure,LPCSTR lpszDestAddress,LPCSTR lpszAppName,LPCSTR lpszCalledParty,LPCSTR lpszComment);
2258  LONG WINAPI tapiRequestMediaCallW(HWND hwnd,WPARAM wRequestID,LPCWSTR lpszDeviceClass,LPCWSTR lpDeviceID,DWORD dwSize,DWORD dwSecure,LPCWSTR lpszDestAddress,LPCWSTR lpszAppName,LPCWSTR lpszCalledParty,LPCWSTR lpszComment);
2259
2260#if defined(UNICODE) || (TAPI_CURRENT_VERSION >= 0x00020000)
2261#define lineAddProvider __MINGW_NAME_AW(lineAddProvider)
2262#define lineBlindTransfer __MINGW_NAME_AW(lineBlindTransfer)
2263#define lineConfigDialog __MINGW_NAME_AW(lineConfigDialog)
2264#define lineConfigDialogEdit __MINGW_NAME_AW(lineConfigDialogEdit)
2265#define lineDial __MINGW_NAME_AW(lineDial)
2266#define lineGatherDigits __MINGW_NAME_AW(lineGatherDigits)
2267#define lineGenerateDigits __MINGW_NAME_AW(lineGenerateDigits)
2268#define lineGetAddressID __MINGW_NAME_AW(lineGetAddressID)
2269#define lineGetAppPriority __MINGW_NAME_AW(lineGetAppPriority)
2270#define lineGetDevConfig __MINGW_NAME_AW(lineGetDevConfig)
2271#define lineGetIcon __MINGW_NAME_AW(lineGetIcon)
2272#define lineGetID __MINGW_NAME_AW(lineGetID)
2273#define lineHandoff __MINGW_NAME_AW(lineHandoff)
2274#define lineMakeCall __MINGW_NAME_AW(lineMakeCall)
2275#define linePark __MINGW_NAME_AW(linePark)
2276#define linePickup __MINGW_NAME_AW(linePickup)
2277#define lineRedirect __MINGW_NAME_AW(lineRedirect)
2278#define lineSetAppPriority __MINGW_NAME_AW(lineSetAppPriority)
2279#define lineSetDevConfig __MINGW_NAME_AW(lineSetDevConfig)
2280#define lineSetTollList __MINGW_NAME_AW(lineSetTollList)
2281#define lineTranslateAddress __MINGW_NAME_AW(lineTranslateAddress)
2282#define lineTranslateDialog __MINGW_NAME_AW(lineTranslateDialog)
2283#define lineUnpark __MINGW_NAME_AW(lineUnpark)
2284
2285#define phoneConfigDialog __MINGW_NAME_AW(phoneConfigDialog)
2286#define phoneGetIcon __MINGW_NAME_AW(phoneGetIcon)
2287#define phoneGetID __MINGW_NAME_AW(phoneGetID)
2288
2289#define tapiGetLocationInfo __MINGW_NAME_AW(tapiGetLocationInfo)
2290#define tapiRequestMakeCall __MINGW_NAME_AW(tapiRequestMakeCall)
2291#define tapiRequestMediaCall __MINGW_NAME_AW(tapiRequestMediaCall)
2292#endif /* UNICODE || TAPI2 */
2293
2294#define lineCreateAgent __MINGW_NAME_AW(lineCreateAgent)
2295#define lineCreateAgent __MINGW_NAME_AW(lineCreateAgent)
2296#define lineForward __MINGW_NAME_AW(lineForward)
2297#define lineGetAddressCaps __MINGW_NAME_AW(lineGetAddressCaps)
2298#define lineGetAddressStatus __MINGW_NAME_AW(lineGetAddressStatus)
2299#define lineGetAgentActivityList __MINGW_NAME_AW(lineGetAgentActivityList)
2300#define lineGetAgentCaps __MINGW_NAME_AW(lineGetAgentCaps)
2301#define lineGetAgentGroupList __MINGW_NAME_AW(lineGetAgentGroupList)
2302#define lineGetAgentStatus __MINGW_NAME_AW(lineGetAgentStatus)
2303#define lineGetCallInfo __MINGW_NAME_AW(lineGetCallInfo)
2304#define lineGetCountry __MINGW_NAME_AW(lineGetCountry)
2305#define lineGetDevCaps __MINGW_NAME_AW(lineGetDevCaps)
2306#define lineGetGroupList __MINGW_NAME_AW(lineGetGroupList)
2307#define lineGetDevStatus __MINGW_NAME_AW(lineGetDevStatus)
2308#define lineGetProviderList __MINGW_NAME_AW(lineGetProviderList)
2309#define lineGetQueueList __MINGW_NAME_AW(lineGetQueueList)
2310#define lineGetRequest __MINGW_NAME_AW(lineGetRequest)
2311#define lineGetTranslateCaps __MINGW_NAME_AW(lineGetTranslateCaps)
2312#define lineInitializeEx __MINGW_NAME_AW(lineInitializeEx)
2313#define lineOpen __MINGW_NAME_AW(lineOpen)
2314#define linePrepareAddToConference __MINGW_NAME_AW(linePrepareAddToConference)
2315#define lineSetupConference __MINGW_NAME_AW(lineSetupConference)
2316#define lineSetupTransfer __MINGW_NAME_AW(lineSetupTransfer)
2317
2318#define phoneGetButtonInfo __MINGW_NAME_AW(phoneGetButtonInfo)
2319#define phoneGetDevCaps __MINGW_NAME_AW(phoneGetDevCaps)
2320#define phoneGetStatus __MINGW_NAME_AW(phoneGetStatus)
2321#define phoneInitializeEx __MINGW_NAME_AW(phoneInitializeEx)
2322#define phoneSetButtonInfo __MINGW_NAME_AW(phoneSetButtonInfo)
2323
2324#define TAPIERROR_FORMATMESSAGE(__ErrCode__) (((__ErrCode__) > 0xFFFF0000) ? ((__ErrCode__) & 0x0000FFFF) : (((__ErrCode__) & 0x10000000) ? ((__ErrCode__) - 0x90000000 + 0xF000) : ((__ErrCode__) - 0x80000000 + 0xE000)))
2325
2326#ifdef __cplusplus
2327}
2328#endif
2329
2330#pragma pack()
2331#endif
2332