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
22 extern "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