6 * This file is part of the w32api package.
9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net>
11 * THIS SOFTWARE IS NOT COPYRIGHTED
13 * This source code is offered for use in the public domain. You may
14 * use, modify or distribute it freely.
16 * This code is distributed in the hope that it will be useful but
17 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
18 * DISCLAIMED. This includes but is not limited to warranties of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
32 #ifndef NDIS_TAPI_CURRENT_VERSION
33 #define NDIS_TAPI_CURRENT_VERSION 0x00010003
36 typedef ULONG_PTR HTAPI_LINE
;
37 typedef ULONG_PTR HDRV_LINE
;
38 typedef ULONG_PTR HTAPI_CALL
;
39 typedef ULONG_PTR HDRV_CALL
;
41 #define NDIS_STATUS_TAPI_ADDRESSBLOCKED ((NDIS_STATUS)0xC0012000L)
42 #define NDIS_STATUS_TAPI_BEARERMODEUNAVAIL ((NDIS_STATUS)0xC0012001L)
43 #define NDIS_STATUS_TAPI_CALLUNAVAIL ((NDIS_STATUS)0xC0012002L)
44 #define NDIS_STATUS_TAPI_DIALBILLING ((NDIS_STATUS)0xC0012003L)
45 #define NDIS_STATUS_TAPI_DIALDIALTONE ((NDIS_STATUS)0xC0012004L)
46 #define NDIS_STATUS_TAPI_DIALPROMPT ((NDIS_STATUS)0xC0012005L)
47 #define NDIS_STATUS_TAPI_DIALQUIET ((NDIS_STATUS)0xC0012006L)
48 #define NDIS_STATUS_TAPI_INCOMPATIBLEEXTVERSION ((NDIS_STATUS)0xC0012007L)
49 #define NDIS_STATUS_TAPI_INUSE ((NDIS_STATUS)0xC0012008L)
50 #define NDIS_STATUS_TAPI_INVALADDRESS ((NDIS_STATUS)0xC0012009L)
51 #define NDIS_STATUS_TAPI_INVALADDRESSID ((NDIS_STATUS)0xC001200AL)
52 #define NDIS_STATUS_TAPI_INVALADDRESSMODE ((NDIS_STATUS)0xC001200BL)
53 #define NDIS_STATUS_TAPI_INVALBEARERMODE ((NDIS_STATUS)0xC001200CL)
54 #define NDIS_STATUS_TAPI_INVALCALLHANDLE ((NDIS_STATUS)0xC001200DL)
55 #define NDIS_STATUS_TAPI_INVALCALLPARAMS ((NDIS_STATUS)0xC001200EL)
56 #define NDIS_STATUS_TAPI_INVALCALLSTATE ((NDIS_STATUS)0xC001200FL)
57 #define NDIS_STATUS_TAPI_INVALDEVICECLASS ((NDIS_STATUS)0xC0012010L)
58 #define NDIS_STATUS_TAPI_INVALLINEHANDLE ((NDIS_STATUS)0xC0012011L)
59 #define NDIS_STATUS_TAPI_INVALLINESTATE ((NDIS_STATUS)0xC0012012L)
60 #define NDIS_STATUS_TAPI_INVALMEDIAMODE ((NDIS_STATUS)0xC0012013L)
61 #define NDIS_STATUS_TAPI_INVALRATE ((NDIS_STATUS)0xC0012014L)
62 #define NDIS_STATUS_TAPI_NODRIVER ((NDIS_STATUS)0xC0012015L)
63 #define NDIS_STATUS_TAPI_OPERATIONUNAVAIL ((NDIS_STATUS)0xC0012016L)
64 #define NDIS_STATUS_TAPI_RATEUNAVAIL ((NDIS_STATUS)0xC0012017L)
65 #define NDIS_STATUS_TAPI_RESOURCEUNAVAIL ((NDIS_STATUS)0xC0012018L)
66 #define NDIS_STATUS_TAPI_STRUCTURETOOSMALL ((NDIS_STATUS)0xC0012019L)
67 #define NDIS_STATUS_TAPI_USERUSERINFOTOOBIG ((NDIS_STATUS)0xC001201AL)
68 #define NDIS_STATUS_TAPI_ALLOCATED ((NDIS_STATUS)0xC001201BL)
69 #define NDIS_STATUS_TAPI_INVALADDRESSSTATE ((NDIS_STATUS)0xC001201CL)
70 #define NDIS_STATUS_TAPI_INVALPARAM ((NDIS_STATUS)0xC001201DL)
71 #define NDIS_STATUS_TAPI_NODEVICE ((NDIS_STATUS)0xC001201EL)
72 #define NDIS_STATUS_TAPI_DISCONNECTMODE_NORMAL ((NDIS_STATUS)0xC0012020L)
73 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNKNOWN ((NDIS_STATUS)0xC0012021L)
74 #define NDIS_STATUS_TAPI_DISCONNECTMODE_REJECT ((NDIS_STATUS)0xC0012022L)
75 #define NDIS_STATUS_TAPI_DISCONNECTMODE_PICKUP ((NDIS_STATUS)0xC0012023L)
76 #define NDIS_STATUS_TAPI_DISCONNECTMODE_FORWARDED ((NDIS_STATUS)0xC0012024L)
77 #define NDIS_STATUS_TAPI_DISCONNECTMODE_BUSY ((NDIS_STATUS)0xC0012025L)
78 #define NDIS_STATUS_TAPI_DISCONNECTMODE_NOANSWER ((NDIS_STATUS)0xC0012026L)
79 #define NDIS_STATUS_TAPI_DISCONNECTMODE_BADADDRESS ((NDIS_STATUS)0xC0012027L)
80 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNREACHABLE ((NDIS_STATUS)0xC0012028L)
81 #define NDIS_STATUS_TAPI_DISCONNECTMODE_CONGESTION ((NDIS_STATUS)0xC0012029L)
82 #define NDIS_STATUS_TAPI_DISCONNECTMODE_INCOMPATIBLE ((NDIS_STATUS)0xC001202AL)
83 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNAVAIL ((NDIS_STATUS)0xC001202BL)
84 #define NDIS_STATUS_TAPI_RECV_DIGIT ((NDIS_STATUS)0x40010020L)
86 #define LINE_ADDRESSSTATE 0L
87 #define LINE_CALLINFO 1L
88 #define LINE_CALLSTATE 2L
90 #define LINE_DEVSPECIFIC 4L
91 #define LINE_DEVSPECIFICFEATURE 5L
92 #define LINE_GATHERDIGITS 6L
93 #define LINE_GENERATE 7L
94 #define LINE_LINEDEVSTATE 8L
95 #define LINE_MONITORDIGITS 9L
96 #define LINE_MONITORMEDIA 10L
97 #define LINE_MONITORTONE 11L
98 #define LINE_REPLY 12L
99 #define LINE_REQUEST 13L
100 #define LINE_CREATE 19L
101 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
102 #define LINE_AGENTSPECIFIC 21L
103 #define LINE_AGENTSTATUS 22L
104 #define LINE_APPNEWCALL 23L
105 #define LINE_PROXYREQUEST 24L
106 #define LINE_REMOVE 25L
108 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020002)
109 #define LINE_AGENTSESSIONSTATUS 27L
110 #define LINE_QUEUESTATUS 28L
111 #define LINE_AGENTSTATUSEX 29L
112 #define LINE_GROUPSTATUS 30L
113 #define LINE_PROXYSTATUS 31L
115 #if (TAPI_CURRENT_VERSION >= 0x00030000)
116 #define LINE_APPNEWCALLHUB 32L
117 #define LINE_CALLHUBCLOSE 33L
118 #define LINE_DEVSPECIFICEX 34L
121 #define TSPI_MESSAGE_BASE 500L
122 #define LINE_NEWCALL TSPI_MESSAGE_BASE
123 #define LINE_CALLDEVSPECIFIC (TSPI_MESSAGE_BASE + 1L)
124 #define STRINGFORMAT_ASCII 0x00000001
125 #define STRINGFORMAT_DBCS 0x00000002
126 #define STRINGFORMAT_UNICODE 0x00000003
127 #define STRINGFORMAT_BINARY 0x00000004
129 #define LINEADDRCAPFLAGS_FWDNUMRINGS 0x00000001
130 #define LINEADDRCAPFLAGS_PICKUPGROUPID 0x00000002
131 #define LINEADDRCAPFLAGS_SECURE 0x00000004
132 #define LINEADDRCAPFLAGS_BLOCKIDDEFAULT 0x00000008
133 #define LINEADDRCAPFLAGS_BLOCKIDOVERRIDE 0x00000010
134 #define LINEADDRCAPFLAGS_DIALED 0x00000020
135 #define LINEADDRCAPFLAGS_ORIGOFFHOOK 0x00000040
136 #define LINEADDRCAPFLAGS_DESTOFFHOOK 0x00000080
137 #define LINEADDRCAPFLAGS_FWDCONSULT 0x00000100
138 #define LINEADDRCAPFLAGS_SETUPCONFNULL 0x00000200
139 #define LINEADDRCAPFLAGS_AUTORECONNECT 0x00000400
140 #define LINEADDRCAPFLAGS_COMPLETIONID 0x00000800
141 #define LINEADDRCAPFLAGS_TRANSFERHELD 0x00001000
142 #define LINEADDRCAPFLAGS_TRANSFERMAKE 0x00002000
143 #define LINEADDRCAPFLAGS_CONFERENCEHELD 0x00004000
144 #define LINEADDRCAPFLAGS_CONFERENCEMAKE 0x00008000
145 #define LINEADDRCAPFLAGS_PARTIALDIAL 0x00010000
146 #define LINEADDRCAPFLAGS_FWDSTATUSVALID 0x00020000
147 #define LINEADDRCAPFLAGS_FWDINTEXTADDR 0x00040000
148 #define LINEADDRCAPFLAGS_FWDBUSYNAADDR 0x00080000
149 #define LINEADDRCAPFLAGS_ACCEPTTOALERT 0x00100000
150 #define LINEADDRCAPFLAGS_CONFDROP 0x00200000
151 #define LINEADDRCAPFLAGS_PICKUPCALLWAIT 0x00400000
152 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
153 #define LINEADDRCAPFLAGS_PREDICTIVEDIALER 0x00800000
154 #define LINEADDRCAPFLAGS_QUEUE 0x01000000
155 #define LINEADDRCAPFLAGS_ROUTEPOINT 0x02000000
156 #define LINEADDRCAPFLAGS_HOLDMAKESNEW 0x04000000
157 #define LINEADDRCAPFLAGS_NOINTERNALCALLS 0x08000000
158 #define LINEADDRCAPFLAGS_NOEXTERNALCALLS 0x10000000
159 #define LINEADDRCAPFLAGS_SETCALLINGID 0x20000000
161 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
162 #define LINEADDRCAPFLAGS_ACDGROUP 0x40000000
163 #define LINEADDRCAPFLAGS_NOPSTNADDRESSTRANSLATION \
167 #define LINEADDRESSMODE_ADDRESSID 0x00000001
168 #define LINEADDRESSMODE_DIALABLEADDR 0x00000002
169 #define LINEADDRESSSHARING_PRIVATE 0x00000001
170 #define LINEADDRESSSHARING_BRIDGEDEXCL 0x00000002
171 #define LINEADDRESSSHARING_BRIDGEDNEW 0x00000004
172 #define LINEADDRESSSHARING_BRIDGEDSHARED 0x00000008
173 #define LINEADDRESSSHARING_MONITORED 0x00000010
174 #define LINEADDRESSSTATE_OTHER 0x00000001
175 #define LINEADDRESSSTATE_DEVSPECIFIC 0x00000002
176 #define LINEADDRESSSTATE_INUSEZERO 0x00000004
177 #define LINEADDRESSSTATE_INUSEONE 0x00000008
178 #define LINEADDRESSSTATE_INUSEMANY 0x00000010
179 #define LINEADDRESSSTATE_NUMCALLS 0x00000020
180 #define LINEADDRESSSTATE_FORWARD 0x00000040
181 #define LINEADDRESSSTATE_TERMINALS 0x00000080
183 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
184 #define LINEADDRESSTYPE_PHONENUMBER 0x00000001
185 #define LINEADDRESSTYPE_SDP 0x00000002
186 #define LINEADDRESSTYPE_EMAILNAME 0x00000004
187 #define LINEADDRESSTYPE_DOMAINNAME 0x00000008
188 #define LINEADDRESSTYPE_IPADDRESS 0x00000010
191 #define LINEADDRFEATURE_FORWARD 0x00000001
192 #define LINEADDRFEATURE_MAKECALL 0x00000002
193 #define LINEADDRFEATURE_PICKUP 0x00000004
194 #define LINEADDRFEATURE_SETMEDIACONTROL 0x00000008
195 #define LINEADDRFEATURE_SETTERMINAL 0x00000010
196 #define LINEADDRFEATURE_SETUPCONF 0x00000020
197 #define LINEADDRFEATURE_UNCOMPLETECALL 0x00000040
198 #define LINEADDRFEATURE_UNPARK 0x00000080
199 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
200 #define LINEADDRFEATURE_PICKUPHELD 0x00000100
201 #define LINEADDRFEATURE_PICKUPGROUP 0x00000200
202 #define LINEADDRFEATURE_PICKUPDIRECT 0x00000400
203 #define LINEADDRFEATURE_PICKUPWAITING 0x00000800
204 #define LINEADDRFEATURE_FORWARDFWD 0x00001000
205 #define LINEADDRFEATURE_FORWARDDND 0x00002000
208 #define LINEANSWERMODE_NONE 0x00000001
209 #define LINEANSWERMODE_DROP 0x00000002
210 #define LINEANSWERMODE_HOLD 0x00000004
212 #define LINEBEARERMODE_VOICE 0x00000001
213 #define LINEBEARERMODE_SPEECH 0x00000002
214 #define LINEBEARERMODE_MULTIUSE 0x00000004
215 #define LINEBEARERMODE_DATA 0x00000008
216 #define LINEBEARERMODE_ALTSPEECHDATA 0x00000010
217 #define LINEBEARERMODE_NONCALLSIGNALING 0x00000020
218 #define LINEBEARERMODE_PASSTHROUGH 0x00000040
219 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
220 #define LINEBEARERMODE_RESTRICTEDDATA 0x00000080
223 #define LINEBUSYMODE_STATION 0x00000001
224 #define LINEBUSYMODE_TRUNK 0x00000002
225 #define LINEBUSYMODE_UNKNOWN 0x00000004
226 #define LINEBUSYMODE_UNAVAIL 0x00000008
228 #define LINECALLCOMPLCOND_BUSY 0x00000001
229 #define LINECALLCOMPLCOND_NOANSWER 0x00000002
231 #define LINECALLCOMPLMODE_CAMPON 0x00000001
232 #define LINECALLCOMPLMODE_CALLBACK 0x00000002
233 #define LINECALLCOMPLMODE_INTRUDE 0x00000004
234 #define LINECALLCOMPLMODE_MESSAGE 0x00000008
236 #define LINECALLFEATURE_ACCEPT 0x00000001
237 #define LINECALLFEATURE_ADDTOCONF 0x00000002
238 #define LINECALLFEATURE_ANSWER 0x00000004
239 #define LINECALLFEATURE_BLINDTRANSFER 0x00000008
240 #define LINECALLFEATURE_COMPLETECALL 0x00000010
241 #define LINECALLFEATURE_COMPLETETRANSF 0x00000020
242 #define LINECALLFEATURE_DIAL 0x00000040
243 #define LINECALLFEATURE_DROP 0x00000080
244 #define LINECALLFEATURE_GATHERDIGITS 0x00000100
245 #define LINECALLFEATURE_GENERATEDIGITS 0x00000200
246 #define LINECALLFEATURE_GENERATETONE 0x00000400
247 #define LINECALLFEATURE_HOLD 0x00000800
248 #define LINECALLFEATURE_MONITORDIGITS 0x00001000
249 #define LINECALLFEATURE_MONITORMEDIA 0x00002000
250 #define LINECALLFEATURE_MONITORTONES 0x00004000
251 #define LINECALLFEATURE_PARK 0x00008000
252 #define LINECALLFEATURE_PREPAREADDCONF 0x00010000
253 #define LINECALLFEATURE_REDIRECT 0x00020000
254 #define LINECALLFEATURE_REMOVEFROMCONF 0x00040000
255 #define LINECALLFEATURE_SECURECALL 0x00080000
256 #define LINECALLFEATURE_SENDUSERUSER 0x00100000
257 #define LINECALLFEATURE_SETCALLPARAMS 0x00200000
258 #define LINECALLFEATURE_SETMEDIACONTROL 0x00400000
259 #define LINECALLFEATURE_SETTERMINAL 0x00800000
260 #define LINECALLFEATURE_SETUPCONF 0x01000000
261 #define LINECALLFEATURE_SETUPTRANSFER 0x02000000
262 #define LINECALLFEATURE_SWAPHOLD 0x04000000
263 #define LINECALLFEATURE_UNHOLD 0x08000000
264 #define LINECALLFEATURE_RELEASEUSERUSERINFO \
266 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
267 #define LINECALLFEATURE_SETTREATMENT 0x20000000
268 #define LINECALLFEATURE_SETQOS 0x40000000
269 #define LINECALLFEATURE_SETCALLDATA 0x80000000
272 #define LINECALLINFOSTATE_OTHER 0x00000001
273 #define LINECALLINFOSTATE_DEVSPECIFIC 0x00000002
274 #define LINECALLINFOSTATE_BEARERMODE 0x00000004
275 #define LINECALLINFOSTATE_RATE 0x00000008
276 #define LINECALLINFOSTATE_MEDIAMODE 0x00000010
277 #define LINECALLINFOSTATE_APPSPECIFIC 0x00000020
278 #define LINECALLINFOSTATE_CALLID 0x00000040
279 #define LINECALLINFOSTATE_RELATEDCALLID 0x00000080
280 #define LINECALLINFOSTATE_ORIGIN 0x00000100
281 #define LINECALLINFOSTATE_REASON 0x00000200
282 #define LINECALLINFOSTATE_COMPLETIONID 0x00000400
283 #define LINECALLINFOSTATE_NUMOWNERINCR 0x00000800
284 #define LINECALLINFOSTATE_NUMOWNERDECR 0x00001000
285 #define LINECALLINFOSTATE_NUMMONITORS 0x00002000
286 #define LINECALLINFOSTATE_TRUNK 0x00004000
287 #define LINECALLINFOSTATE_CALLERID 0x00008000
288 #define LINECALLINFOSTATE_CALLEDID 0x00010000
289 #define LINECALLINFOSTATE_CONNECTEDID 0x00020000
290 #define LINECALLINFOSTATE_REDIRECTIONID 0x00040000
291 #define LINECALLINFOSTATE_REDIRECTINGID 0x00080000
292 #define LINECALLINFOSTATE_DISPLAY 0x00100000
293 #define LINECALLINFOSTATE_USERUSERINFO 0x00200000
294 #define LINECALLINFOSTATE_HIGHLEVELCOMP 0x00400000
295 #define LINECALLINFOSTATE_LOWLEVELCOMP 0x00800000
296 #define LINECALLINFOSTATE_CHARGINGINFO 0x01000000
297 #define LINECALLINFOSTATE_TERMINAL 0x02000000
298 #define LINECALLINFOSTATE_DIALPARAMS 0x04000000
299 #define LINECALLINFOSTATE_MONITORMODES 0x08000000
300 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
301 #define LINECALLINFOSTATE_TREATMENT 0x10000000
302 #define LINECALLINFOSTATE_QOS 0x20000000
303 #define LINECALLINFOSTATE_CALLDATA 0x40000000
306 #define LINECALLORIGIN_OUTBOUND 0x00000001
307 #define LINECALLORIGIN_INTERNAL 0x00000002
308 #define LINECALLORIGIN_EXTERNAL 0x00000004
309 #define LINECALLORIGIN_UNKNOWN 0x00000010
310 #define LINECALLORIGIN_UNAVAIL 0x00000020
311 #define LINECALLORIGIN_CONFERENCE 0x00000040
312 #define LINECALLORIGIN_INBOUND 0x00000080
314 #define LINECALLPARAMFLAGS_SECURE 0x00000001
315 #define LINECALLPARAMFLAGS_IDLE 0x00000002
316 #define LINECALLPARAMFLAGS_BLOCKID 0x00000004
317 #define LINECALLPARAMFLAGS_ORIGOFFHOOK 0x00000008
318 #define LINECALLPARAMFLAGS_DESTOFFHOOK 0x00000010
319 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
320 #define LINECALLPARAMFLAGS_NOHOLDCONFERENCE \
322 #define LINECALLPARAMFLAGS_PREDICTIVEDIAL 0x00000040
323 #define LINECALLPARAMFLAGS_ONESTEPTRANSFER \
327 #define LINECALLPARTYID_BLOCKED 0x00000001
328 #define LINECALLPARTYID_OUTOFAREA 0x00000002
329 #define LINECALLPARTYID_NAME 0x00000004
330 #define LINECALLPARTYID_ADDRESS 0x00000008
331 #define LINECALLPARTYID_PARTIAL 0x00000010
332 #define LINECALLPARTYID_UNKNOWN 0x00000020
333 #define LINECALLPARTYID_UNAVAIL 0x00000040
335 #define LINECALLPRIVILEGE_NONE 0x00000001
336 #define LINECALLPRIVILEGE_MONITOR 0x00000002
337 #define LINECALLPRIVILEGE_OWNER 0x00000004
339 #define LINECALLREASON_DIRECT 0x00000001
340 #define LINECALLREASON_FWDBUSY 0x00000002
341 #define LINECALLREASON_FWDNOANSWER 0x00000004
342 #define LINECALLREASON_FWDUNCOND 0x00000008
343 #define LINECALLREASON_PICKUP 0x00000010
344 #define LINECALLREASON_UNPARK 0x00000020
345 #define LINECALLREASON_REDIRECT 0x00000040
346 #define LINECALLREASON_CALLCOMPLETION 0x00000080
347 #define LINECALLREASON_TRANSFER 0x00000100
348 #define LINECALLREASON_REMINDER 0x00000200
349 #define LINECALLREASON_UNKNOWN 0x00000400
350 #define LINECALLREASON_UNAVAIL 0x00000800
351 #define LINECALLREASON_INTRUDE 0x00001000
352 #define LINECALLREASON_PARKED 0x00002000
353 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
354 #define LINECALLREASON_CAMPEDON 0x00004000
355 #define LINECALLREASON_ROUTEREQUEST 0x00008000
358 #define LINECALLSELECT_LINE 0x00000001
359 #define LINECALLSELECT_ADDRESS 0x00000002
360 #define LINECALLSELECT_CALL 0x00000004
361 #if (NDIS_TAPI_CURRENT_VERSION > 0x00020000)
362 #define LINECALLSELECT_DEVICEID 0x00000008
364 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
365 #define LINECALLSELECT_CALLID 0x00000010
368 #define LINECALLSTATE_IDLE 0x00000001
369 #define LINECALLSTATE_OFFERING 0x00000002
370 #define LINECALLSTATE_ACCEPTED 0x00000004
371 #define LINECALLSTATE_DIALTONE 0x00000008
372 #define LINECALLSTATE_DIALING 0x00000010
373 #define LINECALLSTATE_RINGBACK 0x00000020
374 #define LINECALLSTATE_BUSY 0x00000040
375 #define LINECALLSTATE_SPECIALINFO 0x00000080
376 #define LINECALLSTATE_CONNECTED 0x00000100
377 #define LINECALLSTATE_PROCEEDING 0x00000200
378 #define LINECALLSTATE_ONHOLD 0x00000400
379 #define LINECALLSTATE_CONFERENCED 0x00000800
380 #define LINECALLSTATE_ONHOLDPENDCONF 0x00001000
381 #define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000
382 #define LINECALLSTATE_DISCONNECTED 0x00004000
383 #define LINECALLSTATE_UNKNOWN 0x00008000
385 #define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001
386 #define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002
387 #define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004
388 #define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008
389 #define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010
390 #define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020
391 #define LINEDEVCAPFLAGS_DIALBILLING 0x00000040
392 #define LINEDEVCAPFLAGS_DIALQUIET 0x00000080
393 #define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100
394 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
395 #define LINEDEVCAPFLAGS_MSP 0x00000200
396 #define LINEDEVCAPFLAGS_CALLHUB 0x00000400
397 #define LINEDEVCAPFLAGS_CALLHUBTRACKING 0x00000800
398 #define LINEDEVCAPFLAGS_PRIVATEOBJECTS 0x00001000
401 #define LINEDEVSTATE_OTHER 0x00000001
402 #define LINEDEVSTATE_RINGING 0x00000002
403 #define LINEDEVSTATE_CONNECTED 0x00000004
404 #define LINEDEVSTATE_DISCONNECTED 0x00000008
405 #define LINEDEVSTATE_MSGWAITON 0x00000010
406 #define LINEDEVSTATE_MSGWAITOFF 0x00000020
407 #define LINEDEVSTATE_INSERVICE 0x00000040
408 #define LINEDEVSTATE_OUTOFSERVICE 0x00000080
409 #define LINEDEVSTATE_MAINTENANCE 0x00000100
410 #define LINEDEVSTATE_OPEN 0x00000200
411 #define LINEDEVSTATE_CLOSE 0x00000400
412 #define LINEDEVSTATE_NUMCALLS 0x00000800
413 #define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000
414 #define LINEDEVSTATE_TERMINALS 0x00002000
415 #define LINEDEVSTATE_ROAMMODE 0x00004000
416 #define LINEDEVSTATE_BATTERY 0x00008000
417 #define LINEDEVSTATE_SIGNAL 0x00010000
418 #define LINEDEVSTATE_DEVSPECIFIC 0x00020000
419 #define LINEDEVSTATE_REINIT 0x00040000
420 #define LINEDEVSTATE_LOCK 0x00080000
422 #define LINEDEVSTATUSFLAGS_CONNECTED 0x00000001
423 #define LINEDEVSTATUSFLAGS_MSGWAIT 0x00000002
424 #define LINEDEVSTATUSFLAGS_INSERVICE 0x00000004
425 #define LINEDEVSTATUSFLAGS_LOCKED 0x00000008
427 #define LINEDIALTONEMODE_NORMAL 0x00000001
428 #define LINEDIALTONEMODE_SPECIAL 0x00000002
429 #define LINEDIALTONEMODE_INTERNAL 0x00000004
430 #define LINEDIALTONEMODE_EXTERNAL 0x00000008
431 #define LINEDIALTONEMODE_UNKNOWN 0x00000010
432 #define LINEDIALTONEMODE_UNAVAIL 0x00000020
434 #define LINEDIGITMODE_PULSE 0x00000001
435 #define LINEDIGITMODE_DTMF 0x00000002
436 #define LINEDIGITMODE_DTMFEND 0x00000004
438 #define LINEDISCONNECTMODE_NORMAL 0x00000001
439 #define LINEDISCONNECTMODE_UNKNOWN 0x00000002
440 #define LINEDISCONNECTMODE_REJECT 0x00000004
441 #define LINEDISCONNECTMODE_PICKUP 0x00000008
442 #define LINEDISCONNECTMODE_FORWARDED 0x00000010
443 #define LINEDISCONNECTMODE_BUSY 0x00000020
444 #define LINEDISCONNECTMODE_NOANSWER 0x00000040
445 #define LINEDISCONNECTMODE_BADADDRESS 0x00000080
446 #define LINEDISCONNECTMODE_UNREACHABLE 0x00000100
447 #define LINEDISCONNECTMODE_CONGESTION 0x00000200
448 #define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400
449 #define LINEDISCONNECTMODE_UNAVAIL 0x00000800
450 #define LINEDISCONNECTMODE_NODIALTONE 0x00001000
451 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
452 #define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000
453 #define LINEDISCONNECTMODE_OUTOFORDER 0x00004000
454 #define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000
455 #define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000
456 #define LINEDISCONNECTMODE_BLOCKED 0x00020000
457 #define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000
458 #define LINEDISCONNECTMODE_CANCELLED 0x00080000
461 #define LINEFEATURE_DEVSPECIFIC 0x00000001
462 #define LINEFEATURE_DEVSPECIFICFEAT 0x00000002
463 #define LINEFEATURE_FORWARD 0x00000004
464 #define LINEFEATURE_MAKECALL 0x00000008
465 #define LINEFEATURE_SETMEDIACONTROL 0x00000010
466 #define LINEFEATURE_SETTERMINAL 0x00000020
467 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
468 #define LINEFEATURE_SETDEVSTATUS 0x00000040
469 #define LINEFEATURE_FORWARDFWD 0x00000080
470 #define LINEFEATURE_FORWARDDND 0x00000100
473 #define LINEFORWARDMODE_UNCOND 0x00000001
474 #define LINEFORWARDMODE_UNCONDINTERNAL 0x00000002
475 #define LINEFORWARDMODE_UNCONDEXTERNAL 0x00000004
476 #define LINEFORWARDMODE_UNCONDSPECIFIC 0x00000008
477 #define LINEFORWARDMODE_BUSY 0x00000010
478 #define LINEFORWARDMODE_BUSYINTERNAL 0x00000020
479 #define LINEFORWARDMODE_BUSYEXTERNAL 0x00000040
480 #define LINEFORWARDMODE_BUSYSPECIFIC 0x00000080
481 #define LINEFORWARDMODE_NOANSW 0x00000100
482 #define LINEFORWARDMODE_NOANSWINTERNAL 0x00000200
483 #define LINEFORWARDMODE_NOANSWEXTERNAL 0x00000400
484 #define LINEFORWARDMODE_NOANSWSPECIFIC 0x00000800
485 #define LINEFORWARDMODE_BUSYNA 0x00001000
486 #define LINEFORWARDMODE_BUSYNAINTERNAL 0x00002000
487 #define LINEFORWARDMODE_BUSYNAEXTERNAL 0x00004000
488 #define LINEFORWARDMODE_BUSYNASPECIFIC 0x00008000
490 #define LINEGATHERTERM_BUFFERFULL 0x00000001
491 #define LINEGATHERTERM_TERMDIGIT 0x00000002
492 #define LINEGATHERTERM_FIRSTTIMEOUT 0x00000004
493 #define LINEGATHERTERM_INTERTIMEOUT 0x00000008
494 #define LINEGATHERTERM_CANCEL 0x00000010
496 #define LINEGENERATETERM_DONE 0x00000001
497 #define LINEGENERATETERM_CANCEL 0x00000002
499 #define LINEMEDIACONTROL_NONE 0x00000001
500 #define LINEMEDIACONTROL_START 0x00000002
501 #define LINEMEDIACONTROL_RESET 0x00000004
502 #define LINEMEDIACONTROL_PAUSE 0x00000008
503 #define LINEMEDIACONTROL_RESUME 0x00000010
504 #define LINEMEDIACONTROL_RATEUP 0x00000020
505 #define LINEMEDIACONTROL_RATEDOWN 0x00000040
506 #define LINEMEDIACONTROL_RATENORMAL 0x00000080
507 #define LINEMEDIACONTROL_VOLUMEUP 0x00000100
508 #define LINEMEDIACONTROL_VOLUMEDOWN 0x00000200
509 #define LINEMEDIACONTROL_VOLUMENORMAL 0x00000400
511 #define LINEMEDIAMODE_UNKNOWN 0x00000002
512 #define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004
513 #define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008
514 #define LINEMEDIAMODE_DATAMODEM 0x00000010
515 #define LINEMEDIAMODE_G3FAX 0x00000020
516 #define LINEMEDIAMODE_TDD 0x00000040
517 #define LINEMEDIAMODE_G4FAX 0x00000080
518 #define LINEMEDIAMODE_DIGITALDATA 0x00000100
519 #define LINEMEDIAMODE_TELETEX 0x00000200
520 #define LINEMEDIAMODE_VIDEOTEX 0x00000400
521 #define LINEMEDIAMODE_TELEX 0x00000800
522 #define LINEMEDIAMODE_MIXED 0x00001000
523 #define LINEMEDIAMODE_ADSI 0x00002000
525 #define LINEMEDIAMODE_VOICEVIEW 0x00004000
526 #define LAST_LINEMEDIAMODE 0x00004000
527 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020001)
528 #define LINEMEDIAMODE_VIDEO 0x00008000
529 #define LAST_LINEMEDIAMODE 0x00008000
532 #define LINEPARKMODE_DIRECTED 0x00000001
533 #define LINEPARKMODE_NONDIRECTED 0x00000002
535 #define LINEREMOVEFROMCONF_NONE 0x00000001
536 #define LINEREMOVEFROMCONF_LAST 0x00000002
537 #define LINEREMOVEFROMCONF_ANY 0x00000003
539 #define LINEREQUESTMODE_MAKECALL 0x00000001
540 #define LINEREQUESTMODE_MEDIACALL 0x00000002
541 #define LINEREQUESTMODE_DROP 0x00000004
543 #define LAST_LINEREQUESTMODE LINEREQUESTMODE_MEDIACALL
545 #define LINEROAMMODE_UNKNOWN 0x00000001
546 #define LINEROAMMODE_UNAVAIL 0x00000002
547 #define LINEROAMMODE_HOME 0x00000004
548 #define LINEROAMMODE_ROAMA 0x00000008
549 #define LINEROAMMODE_ROAMB 0x00000010
551 #define LINESPECIALINFO_NOCIRCUIT 0x00000001
552 #define LINESPECIALINFO_CUSTIRREG 0x00000002
553 #define LINESPECIALINFO_REORDER 0x00000004
554 #define LINESPECIALINFO_UNKNOWN 0x00000008
555 #define LINESPECIALINFO_UNAVAIL 0x00000010
557 #define LINETERMDEV_PHONE 0x00000001
558 #define LINETERMDEV_HEADSET 0x00000002
559 #define LINETERMDEV_SPEAKER 0x00000004
561 #define LINETERMMODE_BUTTONS 0x00000001
562 #define LINETERMMODE_LAMPS 0x00000002
563 #define LINETERMMODE_DISPLAY 0x00000004
564 #define LINETERMMODE_RINGER 0x00000008
565 #define LINETERMMODE_HOOKSWITCH 0x00000010
566 #define LINETERMMODE_MEDIATOLINE 0x00000020
567 #define LINETERMMODE_MEDIAFROMLINE 0x00000040
568 #define LINETERMMODE_MEDIABIDIRECT 0x00000080
570 #define LINETERMSHARING_PRIVATE 0x00000001
571 #define LINETERMSHARING_SHAREDEXCL 0x00000002
572 #define LINETERMSHARING_SHAREDCONF 0x00000004
574 #define LINETONEMODE_CUSTOM 0x00000001
575 #define LINETONEMODE_RINGBACK 0x00000002
576 #define LINETONEMODE_BUSY 0x00000004
577 #define LINETONEMODE_BEEP 0x00000008
578 #define LINETONEMODE_BILLING 0x00000010
580 #define LINETRANSFERMODE_TRANSFER 0x00000001
581 #define LINETRANSFERMODE_CONFERENCE 0x00000002
583 #define LINETOLLLISTOPTION_ADD 0x00000001
584 #define LINETOLLLISTOPTION_REMOVE 0x00000002
586 #define LINETRANSLATEOPTION_CARDOVERRIDE 0x00000001
588 #define LINETRANSLATERESULT_CANONICAL 0x00000001
589 #define LINETRANSLATERESULT_INTERNATIONAL 0x00000002
590 #define LINETRANSLATERESULT_LONGDISTANCE 0x00000004
591 #define LINETRANSLATERESULT_LOCAL 0x00000008
592 #define LINETRANSLATERESULT_INTOLLLIST 0x00000010
593 #define LINETRANSLATERESULT_NOTINTOLLLIST 0x00000020
594 #define LINETRANSLATERESULT_DIALBILLING 0x00000040
595 #define LINETRANSLATERESULT_DIALQUIET 0x00000080
596 #define LINETRANSLATERESULT_DIALDIALTONE 0x00000100
597 #define LINETRANSLATERESULT_DIALPROMPT 0x00000200
598 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
599 #define LINETRANSLATERESULT_VOICEDETECT 0x00000400
602 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
603 #define LINETRANSLATERESULT_NOTRANSLATION 0x00000800
607 typedef struct _NDIS_VAR_DATA_DESC
{
609 USHORT MaximumLength
;
611 } NDIS_VAR_DATA_DESC
, *PNDIS_VAR_DATA_DESC
;
613 typedef struct _LINE_DIAL_PARAMS
{
616 ULONG ulDigitDuration
;
617 ULONG ulWaitForDialtone
;
618 } LINE_DIAL_PARAMS
, *PLINE_DIAL_PARAMS
;
620 typedef struct _LINE_ADDRESS_CAPS
{
624 ULONG ulLineDeviceID
;
626 ULONG ulAddressOffset
;
627 ULONG ulDevSpecificSize
;
628 ULONG ulDevSpecificOffset
;
629 ULONG ulAddressSharing
;
630 ULONG ulAddressStates
;
631 ULONG ulCallInfoStates
;
632 ULONG ulCallerIDFlags
;
633 ULONG ulCalledIDFlags
;
634 ULONG ulConnectedIDFlags
;
635 ULONG ulRedirectionIDFlags
;
636 ULONG ulRedirectingIDFlags
;
638 ULONG ulDialToneModes
;
641 ULONG ulDisconnectModes
;
642 ULONG ulMaxNumActiveCalls
;
643 ULONG ulMaxNumOnHoldCalls
;
644 ULONG ulMaxNumOnHoldPendingCalls
;
645 ULONG ulMaxNumConference
;
646 ULONG ulMaxNumTransConf
;
647 ULONG ulAddrCapFlags
;
648 ULONG ulCallFeatures
;
649 ULONG ulRemoveFromConfCaps
;
650 ULONG ulRemoveFromConfState
;
651 ULONG ulTransferModes
;
653 ULONG ulForwardModes
;
654 ULONG ulMaxForwardEntries
;
655 ULONG ulMaxSpecificEntries
;
656 ULONG ulMinFwdNumRings
;
657 ULONG ulMaxFwdNumRings
;
658 ULONG ulMaxCallCompletions
;
659 ULONG ulCallCompletionConds
;
660 ULONG ulCallCompletionModes
;
661 ULONG ulNumCompletionMessages
;
662 ULONG ulCompletionMsgTextEntrySize
;
663 ULONG ulCompletionMsgTextSize
;
664 ULONG ulCompletionMsgTextOffset
;
665 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00010004)
666 ULONG ulAddressFeatures
;
667 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
668 ULONG ulPredictiveAutoTransferStates
;
669 ULONG ulNumCallTreatments
;
670 ULONG ulCallTreatmentListSize
;
671 ULONG ulCallTreatmentListOffset
;
672 ULONG ulDeviceClassesSize
;
673 ULONG ulDeviceClassesOffset
;
674 ULONG ulMaxCallDataSize
;
675 ULONG ulCallFeatures2
;
676 ULONG ulMaxNoAnswerTimeout
;
677 ULONG ulConnectedModes
;
678 ULONG ulOfferingModes
;
679 ULONG ulAvailableMediaModes
;
682 } LINE_ADDRESS_CAPS
, *PLINE_ADDRESS_CAPS
;
684 typedef struct _LINE_ADDRESS_STATUS
{
689 ULONG ulNumActiveCalls
;
690 ULONG ulNumOnHoldCalls
;
691 ULONG ulNumOnHoldPendCalls
;
692 ULONG ulAddressFeatures
;
693 ULONG ulNumRingsNoAnswer
;
694 ULONG ulForwardNumEntries
;
696 ULONG ulForwardOffset
;
697 ULONG ulTerminalModesSize
;
698 ULONG ulTerminalModesOffset
;
699 ULONG ulDevSpecificSize
;
700 ULONG ulDevSpecificOffset
;
701 } LINE_ADDRESS_STATUS
, *PLINE_ADDRESS_STATUS
;
703 typedef struct _LINE_CALL_INFO
{
708 ULONG ulLineDeviceID
;
715 ULONG ulRelatedCallID
;
716 ULONG ulCallParamFlags
;
718 ULONG ulMonitorDigitModes
;
719 ULONG ulMonitorMediaModes
;
720 LINE_DIAL_PARAMS DialParams
;
723 ULONG ulCompletionID
;
728 ULONG ulCallerIDFlags
;
729 ULONG ulCallerIDSize
;
730 ULONG ulCallerIDOffset
;
731 ULONG ulCallerIDNameSize
;
732 ULONG ulCallerIDNameOffset
;
733 ULONG ulCalledIDFlags
;
734 ULONG ulCalledIDSize
;
735 ULONG ulCalledIDOffset
;
736 ULONG ulCalledIDNameSize
;
737 ULONG ulCalledIDNameOffset
;
738 ULONG ulConnectedIDFlags
;
739 ULONG ulConnectedIDSize
;
740 ULONG ulConnectedIDOffset
;
741 ULONG ulConnectedIDNameSize
;
742 ULONG ulConnectedIDNameOffset
;
743 ULONG ulRedirectionIDFlags
;
744 ULONG ulRedirectionIDSize
;
745 ULONG ulRedirectionIDOffset
;
746 ULONG ulRedirectionIDNameSize
;
747 ULONG ulRedirectionIDNameOffset
;
748 ULONG ulRedirectingIDFlags
;
749 ULONG ulRedirectingIDSize
;
750 ULONG ulRedirectingIDOffset
;
751 ULONG ulRedirectingIDNameSize
;
752 ULONG ulRedirectingIDNameOffset
;
754 ULONG ulAppNameOffset
;
755 ULONG ulDisplayableAddressSize
;
756 ULONG ulDisplayableAddressOffset
;
757 ULONG ulCalledPartySize
;
758 ULONG ulCalledPartyOffset
;
760 ULONG ulCommentOffset
;
762 ULONG ulDisplayOffset
;
763 ULONG ulUserUserInfoSize
;
764 ULONG ulUserUserInfoOffset
;
765 ULONG ulHighLevelCompSize
;
766 ULONG ulHighLevelCompOffset
;
767 ULONG ulLowLevelCompSize
;
768 ULONG ulLowLevelCompOffset
;
769 ULONG ulChargingInfoSize
;
770 ULONG ulChargingInfoOffset
;
771 ULONG ulTerminalModesSize
;
772 ULONG ulTerminalModesOffset
;
773 ULONG ulDevSpecificSize
;
774 ULONG ulDevSpecificOffset
;
775 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
776 ULONG ulCallTreatment
;
777 ULONG ulCallDataSize
;
778 ULONG ulCallDataOffset
;
779 ULONG ulSendingFlowspecSize
;
780 ULONG ulSendingFlowspecOffset
;
781 ULONG ulReceivingFlowspecSize
;
782 ULONG ulReceivingFlowspecOffset
;
784 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
785 ULONG ulCallerIDAddressType
;
786 ULONG ulCalledIDAddressType
;
787 ULONG ulConnectedIDAddressType
;
788 ULONG ulRedirectionIDAddressType
;
789 ULONG ulRedirectingIDAddressType
;
791 } LINE_CALL_INFO
, *PLINE_CALL_INFO
;
793 typedef struct _LINE_CALL_PARAMS
{
799 ULONG ulCallParamFlags
;
802 LINE_DIAL_PARAMS DialParams
;
803 ULONG ulOrigAddressSize
;
804 ULONG ulOrigAddressOffset
;
805 ULONG ulDisplayableAddressSize
;
806 ULONG ulDisplayableAddressOffset
;
807 ULONG ulCalledPartySize
;
808 ULONG ulCalledPartyOffset
;
810 ULONG ulCommentOffset
;
811 ULONG ulUserUserInfoSize
;
812 ULONG ulUserUserInfoOffset
;
813 ULONG ulHighLevelCompSize
;
814 ULONG ulHighLevelCompOffset
;
815 ULONG ulLowLevelCompSize
;
816 ULONG ulLowLevelCompOffset
;
817 ULONG ulDevSpecificSize
;
818 ULONG ulDevSpecificOffset
;
819 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
820 ULONG ulPredictiveAutoTransferStates
;
821 ULONG ulTargetAddressSize
;
822 ULONG ulTargetAddressOffset
;
823 ULONG ulSendingFlowspecSize
;
824 ULONG ulSendingFlowspecOffset
;
825 ULONG ulReceivingFlowspecSize
;
826 ULONG ulReceivingFlowspecOffset
;
827 ULONG ulDeviceClassSize
;
828 ULONG ulDeviceClassOffset
;
829 ULONG ulDeviceConfigSize
;
830 ULONG ulDeviceConfigOffset
;
831 ULONG ulCallDataSize
;
832 ULONG ulCallDataOffset
;
833 ULONG ulNoAnswerTimeout
;
834 ULONG ulCallingPartyIDSize
;
835 ULONG ulCallingPartyIDOffset
;
837 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
840 } LINE_CALL_PARAMS
, *PLINE_CALL_PARAMS
;
842 typedef struct _LINE_CALL_STATUS
{
847 ULONG ulCallStateMode
;
848 ULONG ulCallPrivilege
;
849 ULONG ulCallFeatures
;
850 ULONG ulDevSpecificSize
;
851 ULONG ulDevSpecificOffset
;
852 } LINE_CALL_STATUS
, *PLINE_CALL_STATUS
;
854 typedef struct _LINE_DEV_CAPS
{
858 ULONG ulProviderInfoSize
;
859 ULONG ulProviderInfoOffset
;
860 ULONG ulSwitchInfoSize
;
861 ULONG ulSwitchInfoOffset
;
862 ULONG ulPermanentLineID
;
863 ULONG ulLineNameSize
;
864 ULONG ulLineNameOffset
;
865 ULONG ulStringFormat
;
866 ULONG ulAddressModes
;
867 ULONG ulNumAddresses
;
871 ULONG ulGenerateToneModes
;
872 ULONG ulGenerateToneMaxNumFreq
;
873 ULONG ulGenerateDigitModes
;
874 ULONG ulMonitorToneMaxNumFreq
;
875 ULONG ulMonitorToneMaxNumEntries
;
876 ULONG ulMonitorDigitModes
;
877 ULONG ulGatherDigitsMinTimeout
;
878 ULONG ulGatherDigitsMaxTimeout
;
879 ULONG ulMedCtlDigitMaxListSize
;
880 ULONG ulMedCtlMediaMaxListSize
;
881 ULONG ulMedCtlToneMaxListSize
;
882 ULONG ulMedCtlCallStateMaxListSize
;
884 ULONG ulMaxNumActiveCalls
;
888 ULONG ulUUIAcceptSize
;
889 ULONG ulUUIAnswerSize
;
890 ULONG ulUUIMakeCallSize
;
892 ULONG ulUUISendUserUserInfoSize
;
893 ULONG ulUUICallInfoSize
;
894 LINE_DIAL_PARAMS MinDialParams
;
895 LINE_DIAL_PARAMS MaxDialParams
;
896 LINE_DIAL_PARAMS DefaultDialParams
;
897 ULONG ulNumTerminals
;
898 ULONG ulTerminalCapsSize
;
899 ULONG ulTerminalCapsOffset
;
900 ULONG ulTerminalTextEntrySize
;
901 ULONG ulTerminalTextSize
;
902 ULONG ulTerminalTextOffset
;
903 ULONG ulDevSpecificSize
;
904 ULONG ulDevSpecificOffset
;
905 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00010004)
906 ULONG ulLineFeatures
;
908 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000)
909 ULONG ulSettableDevStatus
;
910 ULONG ulDeviceClassesSize
;
911 ULONG ulDeviceClassesOffset
;
913 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020002)
914 GUID PermanentLineGuid
;
916 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000)
917 ULONG ulAddressTypes
;
919 ULONG ulAvailableTracking
;
921 } LINE_DEV_CAPS
, *PLINE_DEV_CAPS
;
923 typedef struct _LINE_DEV_STATUS
{
928 ULONG ulOpenMediaModes
;
929 ULONG ulNumActiveCalls
;
930 ULONG ulNumOnHoldCalls
;
931 ULONG ulNumOnHoldPendCalls
;
932 ULONG ulLineFeatures
;
933 ULONG ulNumCallCompletions
;
936 ULONG ulBatteryLevel
;
938 ULONG ulDevStatusFlags
;
939 ULONG ulTerminalModesSize
;
940 ULONG ulTerminalModesOffset
;
941 ULONG ulDevSpecificSize
;
942 ULONG ulDevSpecificOffset
;
943 } LINE_DEV_STATUS
, *PLINE_DEV_STATUS
;
945 typedef struct _LINE_EXTENSION_ID
{
946 ULONG ulExtensionID0
;
947 ULONG ulExtensionID1
;
948 ULONG ulExtensionID2
;
949 ULONG ulExtensionID3
;
950 } LINE_EXTENSION_ID
, *PLINE_EXTENSION_ID
;
952 typedef struct _VAR_STRING
{
956 ULONG ulStringFormat
;
958 ULONG ulStringOffset
;
959 } VAR_STRING
, *PVAR_STRING
;
961 typedef struct _NDIS_TAPI_ANSWER
{
962 IN ULONG ulRequestID
;
964 IN ULONG ulUserUserInfoSize
;
965 IN UCHAR UserUserInfo
[1];
966 } NDIS_TAPI_ANSWER
, *PNDIS_TAPI_ANSWER
;
968 typedef struct _NDIS_TAPI_CLOSE
{
969 IN ULONG ulRequestID
;
971 } NDIS_TAPI_CLOSE
, *PNDIS_TAPI_CLOSE
;
973 typedef struct _NDIS_TAPI_CLOSE_CALL
{
974 IN ULONG ulRequestID
;
976 } NDIS_TAPI_CLOSE_CALL
, *PNDIS_TAPI_CLOSE_CALL
;
978 typedef struct _NDIS_TAPI_CONDITIONAL_MEDIA_DETECTION
{
979 IN ULONG ulRequestID
;
981 IN ULONG ulMediaModes
;
982 IN LINE_CALL_PARAMS LineCallParams
;
983 } NDIS_TAPI_CONDITIONAL_MEDIA_DETECTION
, *PNDIS_TAPI_CONDITIONAL_MEDIA_DETECTION
;
985 typedef struct _NDIS_TAPI_DROP
{
986 IN ULONG ulRequestID
;
988 IN ULONG ulUserUserInfoSize
;
989 IN UCHAR UserUserInfo
[1];
990 } NDIS_TAPI_DROP
, *PNDIS_TAPI_DROP
;
992 typedef struct _NDIS_TAPI_PROVIDER_SHUTDOWN
{
993 IN ULONG ulRequestID
;
994 } NDIS_TAPI_PROVIDER_SHUTDOWN
, *PNDIS_TAPI_PROVIDER_SHUTDOWN
;
996 typedef struct _NDIS_TAPI_SET_APP_SPECIFIC
{
997 IN ULONG ulRequestID
;
999 IN ULONG ulAppSpecific
;
1000 } NDIS_TAPI_SET_APP_SPECIFIC
, *PNDIS_TAPI_SET_APP_SPECIFIC
;
1002 typedef struct _NDIS_TAPI_SET_CALL_PARAMS
{
1003 IN ULONG ulRequestID
;
1004 IN HDRV_CALL hdCall
;
1005 IN ULONG ulBearerMode
;
1008 IN BOOLEAN bSetLineDialParams
;
1009 IN LINE_DIAL_PARAMS LineDialParams
;
1010 } NDIS_TAPI_SET_CALL_PARAMS
, *PNDIS_TAPI_SET_CALL_PARAMS
;
1012 typedef struct _NDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION
{
1013 IN ULONG ulRequestID
;
1014 IN HDRV_LINE hdLine
;
1015 IN ULONG ulMediaModes
;
1016 } NDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION
, *PNDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION
;
1018 typedef struct _NDIS_TAPI_SET_DEV_CONFIG
{
1019 IN ULONG ulRequestID
;
1020 IN ULONG ulDeviceID
;
1021 IN ULONG ulDeviceClassSize
;
1022 IN ULONG ulDeviceClassOffset
;
1023 IN ULONG ulDeviceConfigSize
;
1024 IN UCHAR DeviceConfig
[1];
1025 } NDIS_TAPI_SET_DEV_CONFIG
, *PNDIS_TAPI_SET_DEV_CONFIG
;
1027 typedef struct _NDIS_TAPI_SET_MEDIA_MODE
{
1028 IN ULONG ulRequestID
;
1029 IN HDRV_CALL hdCall
;
1030 IN ULONG ulMediaMode
;
1031 } NDIS_TAPI_SET_MEDIA_MODE
, *PNDIS_TAPI_SET_MEDIA_MODE
;
1033 typedef struct _NDIS_TAPI_SET_STATUS_MESSAGES
{
1034 IN ULONG ulRequestID
;
1035 IN HDRV_LINE hdLine
;
1036 IN ULONG ulLineStates
;
1037 IN ULONG ulAddressStates
;
1038 } NDIS_TAPI_SET_STATUS_MESSAGES
, *PNDIS_TAPI_SET_STATUS_MESSAGES
;
1040 typedef struct _NDIS_TAPI_ACCEPT
{
1041 IN ULONG ulRequestID
;
1042 IN HDRV_CALL hdCall
;
1043 IN ULONG ulUserUserInfoSize
;
1044 IN UCHAR UserUserInfo
[1];
1045 } NDIS_TAPI_ACCEPT
, *PNDIS_TAPI_ACCEPT
;
1047 typedef struct _NDIS_TAPI_DIAL
{
1048 IN ULONG ulRequestID
;
1049 IN HDRV_CALL hdCall
;
1050 IN ULONG ulDestAddressSize
;
1051 IN CHAR szDestAddress
[1];
1052 } NDIS_TAPI_DIAL
, *PNDIS_TAPI_DIAL
;
1054 typedef struct _NDIS_TAPI_EVENT
{
1055 IN HTAPI_LINE htLine
;
1056 IN HTAPI_CALL htCall
;
1061 } NDIS_TAPI_EVENT
, *PNDIS_TAPI_EVENT
;
1063 typedef struct _NDIS_TAPI_OPEN
{
1064 IN ULONG ulRequestID
;
1065 IN ULONG ulDeviceID
;
1066 IN HTAPI_LINE htLine
;
1067 OUT HDRV_LINE hdLine
;
1068 } NDIS_TAPI_OPEN
, *PNDIS_TAPI_OPEN
;
1070 typedef struct _NDIS_TAPI_SECURE_CALL
{
1071 IN ULONG ulRequestID
;
1072 IN HDRV_CALL hdCall
;
1073 } NDIS_TAPI_SECURE_CALL
, *PNDIS_TAPI_SECURE_CALL
;
1075 typedef struct _NDIS_TAPI_SELECT_EXT_VERSION
{
1076 IN ULONG ulRequestID
;
1077 IN HDRV_LINE hdLine
;
1078 IN ULONG ulExtVersion
;
1079 } NDIS_TAPI_SELECT_EXT_VERSION
, *PNDIS_TAPI_SELECT_EXT_VERSION
;
1081 typedef struct _NDIS_TAPI_SEND_USER_USER_INFO
{
1082 IN ULONG ulRequestID
;
1083 IN HDRV_CALL hdCall
;
1084 IN ULONG ulUserUserInfoSize
;
1085 IN UCHAR UserUserInfo
[1];
1086 } NDIS_TAPI_SEND_USER_USER_INFO
, *PNDIS_TAPI_SEND_USER_USER_INFO
;
1089 typedef struct _NDIS_TAPI_CONFIG_DIALOG
{
1090 IN ULONG ulRequestID
;
1091 IN ULONG ulDeviceID
;
1092 IN ULONG ulDeviceClassSize
;
1093 IN ULONG ulDeviceClassOffset
;
1094 IN ULONG ulLibraryNameTotalSize
;
1095 OUT ULONG ulLibraryNameNeededSize
;
1096 OUT CHAR szLibraryName
[1];
1097 } NDIS_TAPI_CONFIG_DIALOG
, *PNDIS_TAPI_CONFIG_DIALOG
;
1099 typedef struct _NDIS_TAPI_DEV_SPECIFIC
{
1100 IN ULONG ulRequestID
;
1101 IN HDRV_LINE hdLine
;
1102 IN ULONG ulAddressID
;
1103 IN HDRV_CALL hdCall
;
1104 IN OUT ULONG ulParamsSize
;
1105 IN OUT UCHAR Params
[1];
1106 } NDIS_TAPI_DEV_SPECIFIC
, *PNDIS_TAPI_DEV_SPECIFIC
;
1108 typedef struct _NDIS_TAPI_GET_ADDRESS_CAPS
{
1109 IN ULONG ulRequestID
;
1110 IN ULONG ulDeviceID
;
1111 IN ULONG ulAddressID
;
1112 IN ULONG ulExtVersion
;
1113 OUT LINE_ADDRESS_CAPS LineAddressCaps
;
1114 } NDIS_TAPI_GET_ADDRESS_CAPS
, *PNDIS_TAPI_GET_ADDRESS_CAPS
;
1116 typedef struct _NDIS_TAPI_GET_ADDRESS_ID
{
1117 IN ULONG ulRequestID
;
1118 IN HDRV_LINE hdLine
;
1119 OUT ULONG ulAddressID
;
1120 IN ULONG ulAddressMode
;
1121 IN ULONG ulAddressSize
;
1122 IN CHAR szAddress
[1];
1123 } NDIS_TAPI_GET_ADDRESS_ID
, *PNDIS_TAPI_GET_ADDRESS_ID
;
1125 typedef struct _NDIS_TAPI_GET_ADDRESS_STATUS
{
1126 IN ULONG ulRequestID
;
1127 IN HDRV_LINE hdLine
;
1128 IN ULONG ulAddressID
;
1129 OUT LINE_ADDRESS_STATUS LineAddressStatus
;
1130 } NDIS_TAPI_GET_ADDRESS_STATUS
, *PNDIS_TAPI_GET_ADDRESS_STATUS
;
1132 typedef struct _NDIS_TAPI_GET_CALL_ADDRESS_ID
{
1133 IN ULONG ulRequestID
;
1134 IN HDRV_CALL hdCall
;
1135 OUT ULONG ulAddressID
;
1136 } NDIS_TAPI_GET_CALL_ADDRESS_ID
, *PNDIS_TAPI_GET_CALL_ADDRESS_ID
;
1138 typedef struct _NDIS_TAPI_GET_CALL_INFO
{
1140 IN HDRV_CALL hdCall
;
1141 OUT LINE_CALL_INFO LineCallInfo
;
1142 } NDIS_TAPI_GET_CALL_INFO
, *PNDIS_TAPI_GET_CALL_INFO
;
1144 typedef struct _NDIS_TAPI_GET_CALL_STATUS
{
1145 IN ULONG ulRequestID
;
1146 IN HDRV_CALL hdCall
;
1147 OUT LINE_CALL_STATUS LineCallStatus
;
1148 } NDIS_TAPI_GET_CALL_STATUS
, *PNDIS_TAPI_GET_CALL_STATUS
;
1150 typedef struct _NDIS_TAPI_GET_DEV_CAPS
{
1151 IN ULONG ulRequestID
;
1152 IN ULONG ulDeviceID
;
1153 IN ULONG ulExtVersion
;
1154 OUT LINE_DEV_CAPS LineDevCaps
;
1155 } NDIS_TAPI_GET_DEV_CAPS
, *PNDIS_TAPI_GET_DEV_CAPS
;
1157 typedef struct _NDIS_TAPI_GET_DEV_CONFIG
{
1158 IN ULONG ulRequestID
;
1159 IN ULONG ulDeviceID
;
1160 IN ULONG ulDeviceClassSize
;
1161 IN ULONG ulDeviceClassOffset
;
1162 OUT VAR_STRING DeviceConfig
;
1163 } NDIS_TAPI_GET_DEV_CONFIG
, *PNDIS_TAPI_GET_DEV_CONFIG
;
1165 typedef struct _NDIS_TAPI_GET_EXTENSION_ID
{
1166 IN ULONG ulRequestID
;
1167 IN ULONG ulDeviceID
;
1168 OUT LINE_EXTENSION_ID LineExtensionID
;
1169 } NDIS_TAPI_GET_EXTENSION_ID
, *PNDIS_TAPI_GET_EXTENSION_ID
;
1171 typedef struct _NDIS_TAPI_GET_ID
{
1172 IN ULONG ulRequestID
;
1173 IN HDRV_LINE hdLine
;
1174 IN ULONG ulAddressID
;
1175 IN HDRV_CALL hdCall
;
1177 IN ULONG ulDeviceClassSize
;
1178 IN ULONG ulDeviceClassOffset
;
1179 OUT VAR_STRING DeviceID
;
1180 } NDIS_TAPI_GET_ID
, *PNDIS_TAPI_GET_ID
;
1182 typedef struct _NDIS_TAPI_GET_LINE_DEV_STATUS
{
1183 IN ULONG ulRequestID
;
1184 IN HDRV_LINE hdLine
;
1185 OUT LINE_DEV_STATUS LineDevStatus
;
1186 } NDIS_TAPI_GET_LINE_DEV_STATUS
, *PNDIS_TAPI_GET_LINE_DEV_STATUS
;
1188 typedef struct _NDIS_TAPI_MAKE_CALL
{
1189 IN ULONG ulRequestID
;
1190 IN HDRV_LINE hdLine
;
1191 IN HTAPI_CALL htCall
;
1192 OUT HDRV_CALL hdCall
;
1193 IN ULONG ulDestAddressSize
;
1194 IN ULONG ulDestAddressOffset
;
1195 IN BOOLEAN bUseDefaultLineCallParams
;
1196 IN LINE_CALL_PARAMS LineCallParams
;
1197 } NDIS_TAPI_MAKE_CALL
, *PNDIS_TAPI_MAKE_CALL
;
1199 typedef struct _NDIS_TAPI_NEGOTIATE_EXT_VERSION
{
1200 IN ULONG ulRequestID
;
1201 IN ULONG ulDeviceID
;
1202 IN ULONG ulLowVersion
;
1203 IN ULONG ulHighVersion
;
1204 OUT ULONG ulExtVersion
;
1205 } NDIS_TAPI_NEGOTIATE_EXT_VERSION
, *PNDIS_TAPI_NEGOTIATE_EXT_VERSION
;
1207 typedef struct _NDIS_TAPI_PROVIDER_INITIALIZE
{
1208 IN ULONG ulRequestID
;
1209 IN ULONG ulDeviceIDBase
;
1210 OUT ULONG ulNumLineDevs
;
1211 OUT ULONG ulProviderID
;
1212 } NDIS_TAPI_PROVIDER_INITIALIZE
, *PNDIS_TAPI_PROVIDER_INITIALIZE
;
1215 #define CO_TAPI_VERSION NDIS_TAPI_CURRENT_VERSION
1217 #define CO_TAPI_FLAG_OUTGOING_CALL 0x00000001
1218 #define CO_TAPI_FLAG_INCOMING_CALL 0x00000002
1219 #define CO_TAPI_FLAG_USE_DEFAULT_CALLPARAMS 0x00000004
1221 #define AF_TAPI_SAP_TYPE 0x00008000
1223 typedef struct _CO_TAPI_ADDRESS_CAPS
{
1225 IN ULONG ulAddressID
;
1227 OUT LINE_ADDRESS_CAPS LineAddressCaps
;
1228 } CO_TAPI_ADDRESS_CAPS
, *PCO_TAPI_ADDRESS_CAPS
;
1230 /* CO_TAPI_CM_CAPS.ulFlags constants */
1231 #define CO_TAPI_FLAG_PER_LINE_CAPS 0x00000001
1233 typedef struct _CO_TAPI_CM_CAPS
{
1234 OUT ULONG ulCoTapiVersion
;
1235 OUT ULONG ulNumLines
;
1237 } CO_TAPI_CM_CAPS
, *PCO_TAPI_CM_CAPS
;
1239 typedef struct _CO_TAPI_CALL_DIAGNOSTICS
{
1242 OUT NDIS_VAR_DATA_DESC DiagInfo
;
1243 } CO_TAPI_CALL_DIAGNOSTICS
, *PCO_TAPI_CALL_DIAGNOSTICS
;
1246 /* CO_TAPI_LINE_CAPS.ulFlags constants */
1247 #define CO_TAPI_FLAG_PER_ADDRESS_CAPS 0x00000001
1249 typedef struct _CO_TAPI_LINE_CAPS
{
1252 OUT LINE_DEV_CAPS LineDevCaps
;
1253 } CO_TAPI_LINE_CAPS
, *PCO_TAPI_LINE_CAPS
;
1255 typedef struct _CO_TAPI_TRANSLATE_NDIS_CALLPARAMS
{
1257 IN NDIS_VAR_DATA_DESC NdisCallParams
;
1258 OUT NDIS_VAR_DATA_DESC LineCallInfo
;
1259 } CO_TAPI_TRANSLATE_NDIS_CALLPARAMS
, *PCO_TAPI_TRANSLATE_NDIS_CALLPARAMS
;
1261 typedef struct _CO_TAPI_TRANSLATE_TAPI_CALLPARAMS
{
1263 IN ULONG ulAddressID
;
1265 IN NDIS_VAR_DATA_DESC DestAddress
;
1266 IN NDIS_VAR_DATA_DESC LineCallParams
;
1267 OUT NDIS_VAR_DATA_DESC NdisCallParams
;
1268 } CO_TAPI_TRANSLATE_TAPI_CALLPARAMS
, *PCO_TAPI_TRANSLATE_TAPI_CALLPARAMS
;
1270 /* CO_TAPI_TRANSLATE_SAP.ulLineID constants */
1271 #define CO_TAPI_LINE_ID_UNSPECIFIED 0xFFFFFFFF
1273 /* CO_TAPI_TRANSLATE_SAP.ulAddressID constants */
1274 #define CO_TAPI_ADDRESS_ID_UNSPECIFIED 0xFFFFFFFF
1276 typedef struct _CO_TAPI_TRANSLATE_SAP
{
1278 IN ULONG ulAddressID
;
1279 IN ULONG ulMediaModes
;
1281 OUT ULONG NumberOfSaps
;
1282 OUT NDIS_VAR_DATA_DESC NdisSapParams
[1];
1283 } CO_AF_TAPI_SAP
, *PCO_AF_TAPI_SAP
;
1285 typedef struct _CO_AF_TAPI_INCOMING_CALL_PARAMETERS
{
1287 IN ULONG ulAddressID
;
1289 IN NDIS_VAR_DATA_DESC LineCallInfo
;
1290 } CO_AF_TAPI_INCOMING_CALL_PARAMETERS
, *PCO_AF_TAPI_INCOMING_CALL_PARAMETERS
;
1292 typedef struct _CO_AF_TAPI_MAKE_CALL_PARAMETERS
{
1294 IN ULONG ulAddressID
;
1296 IN NDIS_VAR_DATA_DESC DestAddress
;
1297 IN NDIS_VAR_DATA_DESC LineCallParams
;
1298 } CO_AF_TAPI_MAKE_CALL_PARAMETERS
, *PCO_AF_TAPI_MAKE_CALL_PARAMETERS
;
1304 #endif /* __NDISTAPI_H */