1 /* 2 * ndistapi.h 3 * 4 * NDIS Telephony API 5 * 6 * This file is part of the w32api package. 7 * 8 * Contributors: 9 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> 10 * 11 * THIS SOFTWARE IS NOT COPYRIGHTED 12 * 13 * This source code is offered for use in the public domain. You may 14 * use, modify or distribute it freely. 15 * 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. 20 * 21 */ 22 23 #pragma once 24 25 #ifndef _NDIS_TAPI_ 26 #define _NDIS_TAPI_ 27 28 #include "ndis.h" 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 #ifndef NDIS_TAPI_CURRENT_VERSION 35 #define NDIS_TAPI_CURRENT_VERSION 0x00010003 36 #endif 37 38 typedef ULONG_PTR HTAPI_LINE; 39 typedef ULONG_PTR HDRV_LINE; 40 typedef ULONG_PTR HTAPI_CALL; 41 typedef ULONG_PTR HDRV_CALL; 42 43 #define NDIS_STATUS_TAPI_ADDRESSBLOCKED ((NDIS_STATUS)0xC0012000L) 44 #define NDIS_STATUS_TAPI_BEARERMODEUNAVAIL ((NDIS_STATUS)0xC0012001L) 45 #define NDIS_STATUS_TAPI_CALLUNAVAIL ((NDIS_STATUS)0xC0012002L) 46 #define NDIS_STATUS_TAPI_DIALBILLING ((NDIS_STATUS)0xC0012003L) 47 #define NDIS_STATUS_TAPI_DIALDIALTONE ((NDIS_STATUS)0xC0012004L) 48 #define NDIS_STATUS_TAPI_DIALPROMPT ((NDIS_STATUS)0xC0012005L) 49 #define NDIS_STATUS_TAPI_DIALQUIET ((NDIS_STATUS)0xC0012006L) 50 #define NDIS_STATUS_TAPI_INCOMPATIBLEEXTVERSION ((NDIS_STATUS)0xC0012007L) 51 #define NDIS_STATUS_TAPI_INUSE ((NDIS_STATUS)0xC0012008L) 52 #define NDIS_STATUS_TAPI_INVALADDRESS ((NDIS_STATUS)0xC0012009L) 53 #define NDIS_STATUS_TAPI_INVALADDRESSID ((NDIS_STATUS)0xC001200AL) 54 #define NDIS_STATUS_TAPI_INVALADDRESSMODE ((NDIS_STATUS)0xC001200BL) 55 #define NDIS_STATUS_TAPI_INVALBEARERMODE ((NDIS_STATUS)0xC001200CL) 56 #define NDIS_STATUS_TAPI_INVALCALLHANDLE ((NDIS_STATUS)0xC001200DL) 57 #define NDIS_STATUS_TAPI_INVALCALLPARAMS ((NDIS_STATUS)0xC001200EL) 58 #define NDIS_STATUS_TAPI_INVALCALLSTATE ((NDIS_STATUS)0xC001200FL) 59 #define NDIS_STATUS_TAPI_INVALDEVICECLASS ((NDIS_STATUS)0xC0012010L) 60 #define NDIS_STATUS_TAPI_INVALLINEHANDLE ((NDIS_STATUS)0xC0012011L) 61 #define NDIS_STATUS_TAPI_INVALLINESTATE ((NDIS_STATUS)0xC0012012L) 62 #define NDIS_STATUS_TAPI_INVALMEDIAMODE ((NDIS_STATUS)0xC0012013L) 63 #define NDIS_STATUS_TAPI_INVALRATE ((NDIS_STATUS)0xC0012014L) 64 #define NDIS_STATUS_TAPI_NODRIVER ((NDIS_STATUS)0xC0012015L) 65 #define NDIS_STATUS_TAPI_OPERATIONUNAVAIL ((NDIS_STATUS)0xC0012016L) 66 #define NDIS_STATUS_TAPI_RATEUNAVAIL ((NDIS_STATUS)0xC0012017L) 67 #define NDIS_STATUS_TAPI_RESOURCEUNAVAIL ((NDIS_STATUS)0xC0012018L) 68 #define NDIS_STATUS_TAPI_STRUCTURETOOSMALL ((NDIS_STATUS)0xC0012019L) 69 #define NDIS_STATUS_TAPI_USERUSERINFOTOOBIG ((NDIS_STATUS)0xC001201AL) 70 #define NDIS_STATUS_TAPI_ALLOCATED ((NDIS_STATUS)0xC001201BL) 71 #define NDIS_STATUS_TAPI_INVALADDRESSSTATE ((NDIS_STATUS)0xC001201CL) 72 #define NDIS_STATUS_TAPI_INVALPARAM ((NDIS_STATUS)0xC001201DL) 73 #define NDIS_STATUS_TAPI_NODEVICE ((NDIS_STATUS)0xC001201EL) 74 #define NDIS_STATUS_TAPI_DISCONNECTMODE_NORMAL ((NDIS_STATUS)0xC0012020L) 75 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNKNOWN ((NDIS_STATUS)0xC0012021L) 76 #define NDIS_STATUS_TAPI_DISCONNECTMODE_REJECT ((NDIS_STATUS)0xC0012022L) 77 #define NDIS_STATUS_TAPI_DISCONNECTMODE_PICKUP ((NDIS_STATUS)0xC0012023L) 78 #define NDIS_STATUS_TAPI_DISCONNECTMODE_FORWARDED ((NDIS_STATUS)0xC0012024L) 79 #define NDIS_STATUS_TAPI_DISCONNECTMODE_BUSY ((NDIS_STATUS)0xC0012025L) 80 #define NDIS_STATUS_TAPI_DISCONNECTMODE_NOANSWER ((NDIS_STATUS)0xC0012026L) 81 #define NDIS_STATUS_TAPI_DISCONNECTMODE_BADADDRESS ((NDIS_STATUS)0xC0012027L) 82 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNREACHABLE ((NDIS_STATUS)0xC0012028L) 83 #define NDIS_STATUS_TAPI_DISCONNECTMODE_CONGESTION ((NDIS_STATUS)0xC0012029L) 84 #define NDIS_STATUS_TAPI_DISCONNECTMODE_INCOMPATIBLE ((NDIS_STATUS)0xC001202AL) 85 #define NDIS_STATUS_TAPI_DISCONNECTMODE_UNAVAIL ((NDIS_STATUS)0xC001202BL) 86 #define NDIS_STATUS_TAPI_RECV_DIGIT ((NDIS_STATUS)0x40010020L) 87 88 #define LINE_ADDRESSSTATE 0L 89 #define LINE_CALLINFO 1L 90 #define LINE_CALLSTATE 2L 91 #define LINE_CLOSE 3L 92 #define LINE_DEVSPECIFIC 4L 93 #define LINE_DEVSPECIFICFEATURE 5L 94 #define LINE_GATHERDIGITS 6L 95 #define LINE_GENERATE 7L 96 #define LINE_LINEDEVSTATE 8L 97 #define LINE_MONITORDIGITS 9L 98 #define LINE_MONITORMEDIA 10L 99 #define LINE_MONITORTONE 11L 100 #define LINE_REPLY 12L 101 #define LINE_REQUEST 13L 102 #define LINE_CREATE 19L 103 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 104 #define LINE_AGENTSPECIFIC 21L 105 #define LINE_AGENTSTATUS 22L 106 #define LINE_APPNEWCALL 23L 107 #define LINE_PROXYREQUEST 24L 108 #define LINE_REMOVE 25L 109 #endif 110 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020002) 111 #define LINE_AGENTSESSIONSTATUS 27L 112 #define LINE_QUEUESTATUS 28L 113 #define LINE_AGENTSTATUSEX 29L 114 #define LINE_GROUPSTATUS 30L 115 #define LINE_PROXYSTATUS 31L 116 #endif 117 #if (TAPI_CURRENT_VERSION >= 0x00030000) 118 #define LINE_APPNEWCALLHUB 32L 119 #define LINE_CALLHUBCLOSE 33L 120 #define LINE_DEVSPECIFICEX 34L 121 #endif 122 123 #define TSPI_MESSAGE_BASE 500L 124 #define LINE_NEWCALL TSPI_MESSAGE_BASE 125 #define LINE_CALLDEVSPECIFIC (TSPI_MESSAGE_BASE + 1L) 126 #define STRINGFORMAT_ASCII 0x00000001 127 #define STRINGFORMAT_DBCS 0x00000002 128 #define STRINGFORMAT_UNICODE 0x00000003 129 #define STRINGFORMAT_BINARY 0x00000004 130 131 #define LINEADDRCAPFLAGS_FWDNUMRINGS 0x00000001 132 #define LINEADDRCAPFLAGS_PICKUPGROUPID 0x00000002 133 #define LINEADDRCAPFLAGS_SECURE 0x00000004 134 #define LINEADDRCAPFLAGS_BLOCKIDDEFAULT 0x00000008 135 #define LINEADDRCAPFLAGS_BLOCKIDOVERRIDE 0x00000010 136 #define LINEADDRCAPFLAGS_DIALED 0x00000020 137 #define LINEADDRCAPFLAGS_ORIGOFFHOOK 0x00000040 138 #define LINEADDRCAPFLAGS_DESTOFFHOOK 0x00000080 139 #define LINEADDRCAPFLAGS_FWDCONSULT 0x00000100 140 #define LINEADDRCAPFLAGS_SETUPCONFNULL 0x00000200 141 #define LINEADDRCAPFLAGS_AUTORECONNECT 0x00000400 142 #define LINEADDRCAPFLAGS_COMPLETIONID 0x00000800 143 #define LINEADDRCAPFLAGS_TRANSFERHELD 0x00001000 144 #define LINEADDRCAPFLAGS_TRANSFERMAKE 0x00002000 145 #define LINEADDRCAPFLAGS_CONFERENCEHELD 0x00004000 146 #define LINEADDRCAPFLAGS_CONFERENCEMAKE 0x00008000 147 #define LINEADDRCAPFLAGS_PARTIALDIAL 0x00010000 148 #define LINEADDRCAPFLAGS_FWDSTATUSVALID 0x00020000 149 #define LINEADDRCAPFLAGS_FWDINTEXTADDR 0x00040000 150 #define LINEADDRCAPFLAGS_FWDBUSYNAADDR 0x00080000 151 #define LINEADDRCAPFLAGS_ACCEPTTOALERT 0x00100000 152 #define LINEADDRCAPFLAGS_CONFDROP 0x00200000 153 #define LINEADDRCAPFLAGS_PICKUPCALLWAIT 0x00400000 154 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 155 #define LINEADDRCAPFLAGS_PREDICTIVEDIALER 0x00800000 156 #define LINEADDRCAPFLAGS_QUEUE 0x01000000 157 #define LINEADDRCAPFLAGS_ROUTEPOINT 0x02000000 158 #define LINEADDRCAPFLAGS_HOLDMAKESNEW 0x04000000 159 #define LINEADDRCAPFLAGS_NOINTERNALCALLS 0x08000000 160 #define LINEADDRCAPFLAGS_NOEXTERNALCALLS 0x10000000 161 #define LINEADDRCAPFLAGS_SETCALLINGID 0x20000000 162 #endif 163 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 164 #define LINEADDRCAPFLAGS_ACDGROUP 0x40000000 165 #define LINEADDRCAPFLAGS_NOPSTNADDRESSTRANSLATION \ 166 0x80000000 167 #endif 168 169 #define LINEADDRESSMODE_ADDRESSID 0x00000001 170 #define LINEADDRESSMODE_DIALABLEADDR 0x00000002 171 #define LINEADDRESSSHARING_PRIVATE 0x00000001 172 #define LINEADDRESSSHARING_BRIDGEDEXCL 0x00000002 173 #define LINEADDRESSSHARING_BRIDGEDNEW 0x00000004 174 #define LINEADDRESSSHARING_BRIDGEDSHARED 0x00000008 175 #define LINEADDRESSSHARING_MONITORED 0x00000010 176 #define LINEADDRESSSTATE_OTHER 0x00000001 177 #define LINEADDRESSSTATE_DEVSPECIFIC 0x00000002 178 #define LINEADDRESSSTATE_INUSEZERO 0x00000004 179 #define LINEADDRESSSTATE_INUSEONE 0x00000008 180 #define LINEADDRESSSTATE_INUSEMANY 0x00000010 181 #define LINEADDRESSSTATE_NUMCALLS 0x00000020 182 #define LINEADDRESSSTATE_FORWARD 0x00000040 183 #define LINEADDRESSSTATE_TERMINALS 0x00000080 184 185 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 186 #define LINEADDRESSTYPE_PHONENUMBER 0x00000001 187 #define LINEADDRESSTYPE_SDP 0x00000002 188 #define LINEADDRESSTYPE_EMAILNAME 0x00000004 189 #define LINEADDRESSTYPE_DOMAINNAME 0x00000008 190 #define LINEADDRESSTYPE_IPADDRESS 0x00000010 191 #endif 192 193 #define LINEADDRFEATURE_FORWARD 0x00000001 194 #define LINEADDRFEATURE_MAKECALL 0x00000002 195 #define LINEADDRFEATURE_PICKUP 0x00000004 196 #define LINEADDRFEATURE_SETMEDIACONTROL 0x00000008 197 #define LINEADDRFEATURE_SETTERMINAL 0x00000010 198 #define LINEADDRFEATURE_SETUPCONF 0x00000020 199 #define LINEADDRFEATURE_UNCOMPLETECALL 0x00000040 200 #define LINEADDRFEATURE_UNPARK 0x00000080 201 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 202 #define LINEADDRFEATURE_PICKUPHELD 0x00000100 203 #define LINEADDRFEATURE_PICKUPGROUP 0x00000200 204 #define LINEADDRFEATURE_PICKUPDIRECT 0x00000400 205 #define LINEADDRFEATURE_PICKUPWAITING 0x00000800 206 #define LINEADDRFEATURE_FORWARDFWD 0x00001000 207 #define LINEADDRFEATURE_FORWARDDND 0x00002000 208 #endif 209 210 #define LINEANSWERMODE_NONE 0x00000001 211 #define LINEANSWERMODE_DROP 0x00000002 212 #define LINEANSWERMODE_HOLD 0x00000004 213 214 #define LINEBEARERMODE_VOICE 0x00000001 215 #define LINEBEARERMODE_SPEECH 0x00000002 216 #define LINEBEARERMODE_MULTIUSE 0x00000004 217 #define LINEBEARERMODE_DATA 0x00000008 218 #define LINEBEARERMODE_ALTSPEECHDATA 0x00000010 219 #define LINEBEARERMODE_NONCALLSIGNALING 0x00000020 220 #define LINEBEARERMODE_PASSTHROUGH 0x00000040 221 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 222 #define LINEBEARERMODE_RESTRICTEDDATA 0x00000080 223 #endif 224 225 #define LINEBUSYMODE_STATION 0x00000001 226 #define LINEBUSYMODE_TRUNK 0x00000002 227 #define LINEBUSYMODE_UNKNOWN 0x00000004 228 #define LINEBUSYMODE_UNAVAIL 0x00000008 229 230 #define LINECALLCOMPLCOND_BUSY 0x00000001 231 #define LINECALLCOMPLCOND_NOANSWER 0x00000002 232 233 #define LINECALLCOMPLMODE_CAMPON 0x00000001 234 #define LINECALLCOMPLMODE_CALLBACK 0x00000002 235 #define LINECALLCOMPLMODE_INTRUDE 0x00000004 236 #define LINECALLCOMPLMODE_MESSAGE 0x00000008 237 238 #define LINECALLFEATURE_ACCEPT 0x00000001 239 #define LINECALLFEATURE_ADDTOCONF 0x00000002 240 #define LINECALLFEATURE_ANSWER 0x00000004 241 #define LINECALLFEATURE_BLINDTRANSFER 0x00000008 242 #define LINECALLFEATURE_COMPLETECALL 0x00000010 243 #define LINECALLFEATURE_COMPLETETRANSF 0x00000020 244 #define LINECALLFEATURE_DIAL 0x00000040 245 #define LINECALLFEATURE_DROP 0x00000080 246 #define LINECALLFEATURE_GATHERDIGITS 0x00000100 247 #define LINECALLFEATURE_GENERATEDIGITS 0x00000200 248 #define LINECALLFEATURE_GENERATETONE 0x00000400 249 #define LINECALLFEATURE_HOLD 0x00000800 250 #define LINECALLFEATURE_MONITORDIGITS 0x00001000 251 #define LINECALLFEATURE_MONITORMEDIA 0x00002000 252 #define LINECALLFEATURE_MONITORTONES 0x00004000 253 #define LINECALLFEATURE_PARK 0x00008000 254 #define LINECALLFEATURE_PREPAREADDCONF 0x00010000 255 #define LINECALLFEATURE_REDIRECT 0x00020000 256 #define LINECALLFEATURE_REMOVEFROMCONF 0x00040000 257 #define LINECALLFEATURE_SECURECALL 0x00080000 258 #define LINECALLFEATURE_SENDUSERUSER 0x00100000 259 #define LINECALLFEATURE_SETCALLPARAMS 0x00200000 260 #define LINECALLFEATURE_SETMEDIACONTROL 0x00400000 261 #define LINECALLFEATURE_SETTERMINAL 0x00800000 262 #define LINECALLFEATURE_SETUPCONF 0x01000000 263 #define LINECALLFEATURE_SETUPTRANSFER 0x02000000 264 #define LINECALLFEATURE_SWAPHOLD 0x04000000 265 #define LINECALLFEATURE_UNHOLD 0x08000000 266 #define LINECALLFEATURE_RELEASEUSERUSERINFO \ 267 0x10000000 268 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 269 #define LINECALLFEATURE_SETTREATMENT 0x20000000 270 #define LINECALLFEATURE_SETQOS 0x40000000 271 #define LINECALLFEATURE_SETCALLDATA 0x80000000 272 #endif 273 274 #define LINECALLINFOSTATE_OTHER 0x00000001 275 #define LINECALLINFOSTATE_DEVSPECIFIC 0x00000002 276 #define LINECALLINFOSTATE_BEARERMODE 0x00000004 277 #define LINECALLINFOSTATE_RATE 0x00000008 278 #define LINECALLINFOSTATE_MEDIAMODE 0x00000010 279 #define LINECALLINFOSTATE_APPSPECIFIC 0x00000020 280 #define LINECALLINFOSTATE_CALLID 0x00000040 281 #define LINECALLINFOSTATE_RELATEDCALLID 0x00000080 282 #define LINECALLINFOSTATE_ORIGIN 0x00000100 283 #define LINECALLINFOSTATE_REASON 0x00000200 284 #define LINECALLINFOSTATE_COMPLETIONID 0x00000400 285 #define LINECALLINFOSTATE_NUMOWNERINCR 0x00000800 286 #define LINECALLINFOSTATE_NUMOWNERDECR 0x00001000 287 #define LINECALLINFOSTATE_NUMMONITORS 0x00002000 288 #define LINECALLINFOSTATE_TRUNK 0x00004000 289 #define LINECALLINFOSTATE_CALLERID 0x00008000 290 #define LINECALLINFOSTATE_CALLEDID 0x00010000 291 #define LINECALLINFOSTATE_CONNECTEDID 0x00020000 292 #define LINECALLINFOSTATE_REDIRECTIONID 0x00040000 293 #define LINECALLINFOSTATE_REDIRECTINGID 0x00080000 294 #define LINECALLINFOSTATE_DISPLAY 0x00100000 295 #define LINECALLINFOSTATE_USERUSERINFO 0x00200000 296 #define LINECALLINFOSTATE_HIGHLEVELCOMP 0x00400000 297 #define LINECALLINFOSTATE_LOWLEVELCOMP 0x00800000 298 #define LINECALLINFOSTATE_CHARGINGINFO 0x01000000 299 #define LINECALLINFOSTATE_TERMINAL 0x02000000 300 #define LINECALLINFOSTATE_DIALPARAMS 0x04000000 301 #define LINECALLINFOSTATE_MONITORMODES 0x08000000 302 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 303 #define LINECALLINFOSTATE_TREATMENT 0x10000000 304 #define LINECALLINFOSTATE_QOS 0x20000000 305 #define LINECALLINFOSTATE_CALLDATA 0x40000000 306 #endif 307 308 #define LINECALLORIGIN_OUTBOUND 0x00000001 309 #define LINECALLORIGIN_INTERNAL 0x00000002 310 #define LINECALLORIGIN_EXTERNAL 0x00000004 311 #define LINECALLORIGIN_UNKNOWN 0x00000010 312 #define LINECALLORIGIN_UNAVAIL 0x00000020 313 #define LINECALLORIGIN_CONFERENCE 0x00000040 314 #define LINECALLORIGIN_INBOUND 0x00000080 315 316 #define LINECALLPARAMFLAGS_SECURE 0x00000001 317 #define LINECALLPARAMFLAGS_IDLE 0x00000002 318 #define LINECALLPARAMFLAGS_BLOCKID 0x00000004 319 #define LINECALLPARAMFLAGS_ORIGOFFHOOK 0x00000008 320 #define LINECALLPARAMFLAGS_DESTOFFHOOK 0x00000010 321 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 322 #define LINECALLPARAMFLAGS_NOHOLDCONFERENCE \ 323 0x00000020 324 #define LINECALLPARAMFLAGS_PREDICTIVEDIAL 0x00000040 325 #define LINECALLPARAMFLAGS_ONESTEPTRANSFER \ 326 0x00000080 327 #endif 328 329 #define LINECALLPARTYID_BLOCKED 0x00000001 330 #define LINECALLPARTYID_OUTOFAREA 0x00000002 331 #define LINECALLPARTYID_NAME 0x00000004 332 #define LINECALLPARTYID_ADDRESS 0x00000008 333 #define LINECALLPARTYID_PARTIAL 0x00000010 334 #define LINECALLPARTYID_UNKNOWN 0x00000020 335 #define LINECALLPARTYID_UNAVAIL 0x00000040 336 337 #define LINECALLPRIVILEGE_NONE 0x00000001 338 #define LINECALLPRIVILEGE_MONITOR 0x00000002 339 #define LINECALLPRIVILEGE_OWNER 0x00000004 340 341 #define LINECALLREASON_DIRECT 0x00000001 342 #define LINECALLREASON_FWDBUSY 0x00000002 343 #define LINECALLREASON_FWDNOANSWER 0x00000004 344 #define LINECALLREASON_FWDUNCOND 0x00000008 345 #define LINECALLREASON_PICKUP 0x00000010 346 #define LINECALLREASON_UNPARK 0x00000020 347 #define LINECALLREASON_REDIRECT 0x00000040 348 #define LINECALLREASON_CALLCOMPLETION 0x00000080 349 #define LINECALLREASON_TRANSFER 0x00000100 350 #define LINECALLREASON_REMINDER 0x00000200 351 #define LINECALLREASON_UNKNOWN 0x00000400 352 #define LINECALLREASON_UNAVAIL 0x00000800 353 #define LINECALLREASON_INTRUDE 0x00001000 354 #define LINECALLREASON_PARKED 0x00002000 355 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 356 #define LINECALLREASON_CAMPEDON 0x00004000 357 #define LINECALLREASON_ROUTEREQUEST 0x00008000 358 #endif 359 360 #define LINECALLSELECT_LINE 0x00000001 361 #define LINECALLSELECT_ADDRESS 0x00000002 362 #define LINECALLSELECT_CALL 0x00000004 363 #if (NDIS_TAPI_CURRENT_VERSION > 0x00020000) 364 #define LINECALLSELECT_DEVICEID 0x00000008 365 #endif 366 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 367 #define LINECALLSELECT_CALLID 0x00000010 368 #endif 369 370 #define LINECALLSTATE_IDLE 0x00000001 371 #define LINECALLSTATE_OFFERING 0x00000002 372 #define LINECALLSTATE_ACCEPTED 0x00000004 373 #define LINECALLSTATE_DIALTONE 0x00000008 374 #define LINECALLSTATE_DIALING 0x00000010 375 #define LINECALLSTATE_RINGBACK 0x00000020 376 #define LINECALLSTATE_BUSY 0x00000040 377 #define LINECALLSTATE_SPECIALINFO 0x00000080 378 #define LINECALLSTATE_CONNECTED 0x00000100 379 #define LINECALLSTATE_PROCEEDING 0x00000200 380 #define LINECALLSTATE_ONHOLD 0x00000400 381 #define LINECALLSTATE_CONFERENCED 0x00000800 382 #define LINECALLSTATE_ONHOLDPENDCONF 0x00001000 383 #define LINECALLSTATE_ONHOLDPENDTRANSFER 0x00002000 384 #define LINECALLSTATE_DISCONNECTED 0x00004000 385 #define LINECALLSTATE_UNKNOWN 0x00008000 386 387 #define LINEDEVCAPFLAGS_CROSSADDRCONF 0x00000001 388 #define LINEDEVCAPFLAGS_HIGHLEVCOMP 0x00000002 389 #define LINEDEVCAPFLAGS_LOWLEVCOMP 0x00000004 390 #define LINEDEVCAPFLAGS_MEDIACONTROL 0x00000008 391 #define LINEDEVCAPFLAGS_MULTIPLEADDR 0x00000010 392 #define LINEDEVCAPFLAGS_CLOSEDROP 0x00000020 393 #define LINEDEVCAPFLAGS_DIALBILLING 0x00000040 394 #define LINEDEVCAPFLAGS_DIALQUIET 0x00000080 395 #define LINEDEVCAPFLAGS_DIALDIALTONE 0x00000100 396 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 397 #define LINEDEVCAPFLAGS_MSP 0x00000200 398 #define LINEDEVCAPFLAGS_CALLHUB 0x00000400 399 #define LINEDEVCAPFLAGS_CALLHUBTRACKING 0x00000800 400 #define LINEDEVCAPFLAGS_PRIVATEOBJECTS 0x00001000 401 #endif 402 403 #define LINEDEVSTATE_OTHER 0x00000001 404 #define LINEDEVSTATE_RINGING 0x00000002 405 #define LINEDEVSTATE_CONNECTED 0x00000004 406 #define LINEDEVSTATE_DISCONNECTED 0x00000008 407 #define LINEDEVSTATE_MSGWAITON 0x00000010 408 #define LINEDEVSTATE_MSGWAITOFF 0x00000020 409 #define LINEDEVSTATE_INSERVICE 0x00000040 410 #define LINEDEVSTATE_OUTOFSERVICE 0x00000080 411 #define LINEDEVSTATE_MAINTENANCE 0x00000100 412 #define LINEDEVSTATE_OPEN 0x00000200 413 #define LINEDEVSTATE_CLOSE 0x00000400 414 #define LINEDEVSTATE_NUMCALLS 0x00000800 415 #define LINEDEVSTATE_NUMCOMPLETIONS 0x00001000 416 #define LINEDEVSTATE_TERMINALS 0x00002000 417 #define LINEDEVSTATE_ROAMMODE 0x00004000 418 #define LINEDEVSTATE_BATTERY 0x00008000 419 #define LINEDEVSTATE_SIGNAL 0x00010000 420 #define LINEDEVSTATE_DEVSPECIFIC 0x00020000 421 #define LINEDEVSTATE_REINIT 0x00040000 422 #define LINEDEVSTATE_LOCK 0x00080000 423 424 #define LINEDEVSTATUSFLAGS_CONNECTED 0x00000001 425 #define LINEDEVSTATUSFLAGS_MSGWAIT 0x00000002 426 #define LINEDEVSTATUSFLAGS_INSERVICE 0x00000004 427 #define LINEDEVSTATUSFLAGS_LOCKED 0x00000008 428 429 #define LINEDIALTONEMODE_NORMAL 0x00000001 430 #define LINEDIALTONEMODE_SPECIAL 0x00000002 431 #define LINEDIALTONEMODE_INTERNAL 0x00000004 432 #define LINEDIALTONEMODE_EXTERNAL 0x00000008 433 #define LINEDIALTONEMODE_UNKNOWN 0x00000010 434 #define LINEDIALTONEMODE_UNAVAIL 0x00000020 435 436 #define LINEDIGITMODE_PULSE 0x00000001 437 #define LINEDIGITMODE_DTMF 0x00000002 438 #define LINEDIGITMODE_DTMFEND 0x00000004 439 440 #define LINEDISCONNECTMODE_NORMAL 0x00000001 441 #define LINEDISCONNECTMODE_UNKNOWN 0x00000002 442 #define LINEDISCONNECTMODE_REJECT 0x00000004 443 #define LINEDISCONNECTMODE_PICKUP 0x00000008 444 #define LINEDISCONNECTMODE_FORWARDED 0x00000010 445 #define LINEDISCONNECTMODE_BUSY 0x00000020 446 #define LINEDISCONNECTMODE_NOANSWER 0x00000040 447 #define LINEDISCONNECTMODE_BADADDRESS 0x00000080 448 #define LINEDISCONNECTMODE_UNREACHABLE 0x00000100 449 #define LINEDISCONNECTMODE_CONGESTION 0x00000200 450 #define LINEDISCONNECTMODE_INCOMPATIBLE 0x00000400 451 #define LINEDISCONNECTMODE_UNAVAIL 0x00000800 452 #define LINEDISCONNECTMODE_NODIALTONE 0x00001000 453 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 454 #define LINEDISCONNECTMODE_NUMBERCHANGED 0x00002000 455 #define LINEDISCONNECTMODE_OUTOFORDER 0x00004000 456 #define LINEDISCONNECTMODE_TEMPFAILURE 0x00008000 457 #define LINEDISCONNECTMODE_QOSUNAVAIL 0x00010000 458 #define LINEDISCONNECTMODE_BLOCKED 0x00020000 459 #define LINEDISCONNECTMODE_DONOTDISTURB 0x00040000 460 #define LINEDISCONNECTMODE_CANCELLED 0x00080000 461 #endif 462 463 #define LINEFEATURE_DEVSPECIFIC 0x00000001 464 #define LINEFEATURE_DEVSPECIFICFEAT 0x00000002 465 #define LINEFEATURE_FORWARD 0x00000004 466 #define LINEFEATURE_MAKECALL 0x00000008 467 #define LINEFEATURE_SETMEDIACONTROL 0x00000010 468 #define LINEFEATURE_SETTERMINAL 0x00000020 469 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 470 #define LINEFEATURE_SETDEVSTATUS 0x00000040 471 #define LINEFEATURE_FORWARDFWD 0x00000080 472 #define LINEFEATURE_FORWARDDND 0x00000100 473 #endif 474 475 #define LINEFORWARDMODE_UNCOND 0x00000001 476 #define LINEFORWARDMODE_UNCONDINTERNAL 0x00000002 477 #define LINEFORWARDMODE_UNCONDEXTERNAL 0x00000004 478 #define LINEFORWARDMODE_UNCONDSPECIFIC 0x00000008 479 #define LINEFORWARDMODE_BUSY 0x00000010 480 #define LINEFORWARDMODE_BUSYINTERNAL 0x00000020 481 #define LINEFORWARDMODE_BUSYEXTERNAL 0x00000040 482 #define LINEFORWARDMODE_BUSYSPECIFIC 0x00000080 483 #define LINEFORWARDMODE_NOANSW 0x00000100 484 #define LINEFORWARDMODE_NOANSWINTERNAL 0x00000200 485 #define LINEFORWARDMODE_NOANSWEXTERNAL 0x00000400 486 #define LINEFORWARDMODE_NOANSWSPECIFIC 0x00000800 487 #define LINEFORWARDMODE_BUSYNA 0x00001000 488 #define LINEFORWARDMODE_BUSYNAINTERNAL 0x00002000 489 #define LINEFORWARDMODE_BUSYNAEXTERNAL 0x00004000 490 #define LINEFORWARDMODE_BUSYNASPECIFIC 0x00008000 491 492 #define LINEGATHERTERM_BUFFERFULL 0x00000001 493 #define LINEGATHERTERM_TERMDIGIT 0x00000002 494 #define LINEGATHERTERM_FIRSTTIMEOUT 0x00000004 495 #define LINEGATHERTERM_INTERTIMEOUT 0x00000008 496 #define LINEGATHERTERM_CANCEL 0x00000010 497 498 #define LINEGENERATETERM_DONE 0x00000001 499 #define LINEGENERATETERM_CANCEL 0x00000002 500 501 #define LINEMEDIACONTROL_NONE 0x00000001 502 #define LINEMEDIACONTROL_START 0x00000002 503 #define LINEMEDIACONTROL_RESET 0x00000004 504 #define LINEMEDIACONTROL_PAUSE 0x00000008 505 #define LINEMEDIACONTROL_RESUME 0x00000010 506 #define LINEMEDIACONTROL_RATEUP 0x00000020 507 #define LINEMEDIACONTROL_RATEDOWN 0x00000040 508 #define LINEMEDIACONTROL_RATENORMAL 0x00000080 509 #define LINEMEDIACONTROL_VOLUMEUP 0x00000100 510 #define LINEMEDIACONTROL_VOLUMEDOWN 0x00000200 511 #define LINEMEDIACONTROL_VOLUMENORMAL 0x00000400 512 513 #define LINEMEDIAMODE_UNKNOWN 0x00000002 514 #define LINEMEDIAMODE_INTERACTIVEVOICE 0x00000004 515 #define LINEMEDIAMODE_AUTOMATEDVOICE 0x00000008 516 #define LINEMEDIAMODE_DATAMODEM 0x00000010 517 #define LINEMEDIAMODE_G3FAX 0x00000020 518 #define LINEMEDIAMODE_TDD 0x00000040 519 #define LINEMEDIAMODE_G4FAX 0x00000080 520 #define LINEMEDIAMODE_DIGITALDATA 0x00000100 521 #define LINEMEDIAMODE_TELETEX 0x00000200 522 #define LINEMEDIAMODE_VIDEOTEX 0x00000400 523 #define LINEMEDIAMODE_TELEX 0x00000800 524 #define LINEMEDIAMODE_MIXED 0x00001000 525 #define LINEMEDIAMODE_ADSI 0x00002000 526 527 #define LINEMEDIAMODE_VOICEVIEW 0x00004000 528 #define LAST_LINEMEDIAMODE 0x00004000 529 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020001) 530 #define LINEMEDIAMODE_VIDEO 0x00008000 531 #define LAST_LINEMEDIAMODE 0x00008000 532 #endif 533 534 #define LINEPARKMODE_DIRECTED 0x00000001 535 #define LINEPARKMODE_NONDIRECTED 0x00000002 536 537 #define LINEREMOVEFROMCONF_NONE 0x00000001 538 #define LINEREMOVEFROMCONF_LAST 0x00000002 539 #define LINEREMOVEFROMCONF_ANY 0x00000003 540 541 #define LINEREQUESTMODE_MAKECALL 0x00000001 542 #define LINEREQUESTMODE_MEDIACALL 0x00000002 543 #define LINEREQUESTMODE_DROP 0x00000004 544 545 #define LAST_LINEREQUESTMODE LINEREQUESTMODE_MEDIACALL 546 547 #define LINEROAMMODE_UNKNOWN 0x00000001 548 #define LINEROAMMODE_UNAVAIL 0x00000002 549 #define LINEROAMMODE_HOME 0x00000004 550 #define LINEROAMMODE_ROAMA 0x00000008 551 #define LINEROAMMODE_ROAMB 0x00000010 552 553 #define LINESPECIALINFO_NOCIRCUIT 0x00000001 554 #define LINESPECIALINFO_CUSTIRREG 0x00000002 555 #define LINESPECIALINFO_REORDER 0x00000004 556 #define LINESPECIALINFO_UNKNOWN 0x00000008 557 #define LINESPECIALINFO_UNAVAIL 0x00000010 558 559 #define LINETERMDEV_PHONE 0x00000001 560 #define LINETERMDEV_HEADSET 0x00000002 561 #define LINETERMDEV_SPEAKER 0x00000004 562 563 #define LINETERMMODE_BUTTONS 0x00000001 564 #define LINETERMMODE_LAMPS 0x00000002 565 #define LINETERMMODE_DISPLAY 0x00000004 566 #define LINETERMMODE_RINGER 0x00000008 567 #define LINETERMMODE_HOOKSWITCH 0x00000010 568 #define LINETERMMODE_MEDIATOLINE 0x00000020 569 #define LINETERMMODE_MEDIAFROMLINE 0x00000040 570 #define LINETERMMODE_MEDIABIDIRECT 0x00000080 571 572 #define LINETERMSHARING_PRIVATE 0x00000001 573 #define LINETERMSHARING_SHAREDEXCL 0x00000002 574 #define LINETERMSHARING_SHAREDCONF 0x00000004 575 576 #define LINETONEMODE_CUSTOM 0x00000001 577 #define LINETONEMODE_RINGBACK 0x00000002 578 #define LINETONEMODE_BUSY 0x00000004 579 #define LINETONEMODE_BEEP 0x00000008 580 #define LINETONEMODE_BILLING 0x00000010 581 582 #define LINETRANSFERMODE_TRANSFER 0x00000001 583 #define LINETRANSFERMODE_CONFERENCE 0x00000002 584 585 #define LINETOLLLISTOPTION_ADD 0x00000001 586 #define LINETOLLLISTOPTION_REMOVE 0x00000002 587 588 #define LINETRANSLATEOPTION_CARDOVERRIDE 0x00000001 589 590 #define LINETRANSLATERESULT_CANONICAL 0x00000001 591 #define LINETRANSLATERESULT_INTERNATIONAL 0x00000002 592 #define LINETRANSLATERESULT_LONGDISTANCE 0x00000004 593 #define LINETRANSLATERESULT_LOCAL 0x00000008 594 #define LINETRANSLATERESULT_INTOLLLIST 0x00000010 595 #define LINETRANSLATERESULT_NOTINTOLLLIST 0x00000020 596 #define LINETRANSLATERESULT_DIALBILLING 0x00000040 597 #define LINETRANSLATERESULT_DIALQUIET 0x00000080 598 #define LINETRANSLATERESULT_DIALDIALTONE 0x00000100 599 #define LINETRANSLATERESULT_DIALPROMPT 0x00000200 600 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 601 #define LINETRANSLATERESULT_VOICEDETECT 0x00000400 602 #endif 603 604 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 605 #define LINETRANSLATERESULT_NOTRANSLATION 0x00000800 606 #endif 607 608 typedef struct _NDIS_VAR_DATA_DESC { 609 USHORT Length; 610 USHORT MaximumLength; 611 LONG Offset; 612 } NDIS_VAR_DATA_DESC, *PNDIS_VAR_DATA_DESC; 613 614 typedef struct _LINE_DIAL_PARAMS { 615 ULONG ulDialPause; 616 ULONG ulDialSpeed; 617 ULONG ulDigitDuration; 618 ULONG ulWaitForDialtone; 619 } LINE_DIAL_PARAMS, *PLINE_DIAL_PARAMS; 620 621 typedef struct _LINE_ADDRESS_CAPS { 622 ULONG ulTotalSize; 623 ULONG ulNeededSize; 624 ULONG ulUsedSize; 625 ULONG ulLineDeviceID; 626 ULONG ulAddressSize; 627 ULONG ulAddressOffset; 628 ULONG ulDevSpecificSize; 629 ULONG ulDevSpecificOffset; 630 ULONG ulAddressSharing; 631 ULONG ulAddressStates; 632 ULONG ulCallInfoStates; 633 ULONG ulCallerIDFlags; 634 ULONG ulCalledIDFlags; 635 ULONG ulConnectedIDFlags; 636 ULONG ulRedirectionIDFlags; 637 ULONG ulRedirectingIDFlags; 638 ULONG ulCallStates; 639 ULONG ulDialToneModes; 640 ULONG ulBusyModes; 641 ULONG ulSpecialInfo; 642 ULONG ulDisconnectModes; 643 ULONG ulMaxNumActiveCalls; 644 ULONG ulMaxNumOnHoldCalls; 645 ULONG ulMaxNumOnHoldPendingCalls; 646 ULONG ulMaxNumConference; 647 ULONG ulMaxNumTransConf; 648 ULONG ulAddrCapFlags; 649 ULONG ulCallFeatures; 650 ULONG ulRemoveFromConfCaps; 651 ULONG ulRemoveFromConfState; 652 ULONG ulTransferModes; 653 ULONG ulParkModes; 654 ULONG ulForwardModes; 655 ULONG ulMaxForwardEntries; 656 ULONG ulMaxSpecificEntries; 657 ULONG ulMinFwdNumRings; 658 ULONG ulMaxFwdNumRings; 659 ULONG ulMaxCallCompletions; 660 ULONG ulCallCompletionConds; 661 ULONG ulCallCompletionModes; 662 ULONG ulNumCompletionMessages; 663 ULONG ulCompletionMsgTextEntrySize; 664 ULONG ulCompletionMsgTextSize; 665 ULONG ulCompletionMsgTextOffset; 666 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00010004) 667 ULONG ulAddressFeatures; 668 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 669 ULONG ulPredictiveAutoTransferStates; 670 ULONG ulNumCallTreatments; 671 ULONG ulCallTreatmentListSize; 672 ULONG ulCallTreatmentListOffset; 673 ULONG ulDeviceClassesSize; 674 ULONG ulDeviceClassesOffset; 675 ULONG ulMaxCallDataSize; 676 ULONG ulCallFeatures2; 677 ULONG ulMaxNoAnswerTimeout; 678 ULONG ulConnectedModes; 679 ULONG ulOfferingModes; 680 ULONG ulAvailableMediaModes; 681 #endif 682 #endif /* (NDIS_TAPI_CURRENT_VERSION >= 0x00010004) */ 683 } LINE_ADDRESS_CAPS, *PLINE_ADDRESS_CAPS; 684 685 typedef struct _LINE_ADDRESS_STATUS { 686 ULONG ulTotalSize; 687 ULONG ulNeededSize; 688 ULONG ulUsedSize; 689 ULONG ulNumInUse; 690 ULONG ulNumActiveCalls; 691 ULONG ulNumOnHoldCalls; 692 ULONG ulNumOnHoldPendCalls; 693 ULONG ulAddressFeatures; 694 ULONG ulNumRingsNoAnswer; 695 ULONG ulForwardNumEntries; 696 ULONG ulForwardSize; 697 ULONG ulForwardOffset; 698 ULONG ulTerminalModesSize; 699 ULONG ulTerminalModesOffset; 700 ULONG ulDevSpecificSize; 701 ULONG ulDevSpecificOffset; 702 } LINE_ADDRESS_STATUS, *PLINE_ADDRESS_STATUS; 703 704 typedef struct _LINE_CALL_INFO { 705 ULONG ulTotalSize; 706 ULONG ulNeededSize; 707 ULONG ulUsedSize; 708 ULONG hLine; 709 ULONG ulLineDeviceID; 710 ULONG ulAddressID; 711 ULONG ulBearerMode; 712 ULONG ulRate; 713 ULONG ulMediaMode; 714 ULONG ulAppSpecific; 715 ULONG ulCallID; 716 ULONG ulRelatedCallID; 717 ULONG ulCallParamFlags; 718 ULONG ulCallStates; 719 ULONG ulMonitorDigitModes; 720 ULONG ulMonitorMediaModes; 721 LINE_DIAL_PARAMS DialParams; 722 ULONG ulOrigin; 723 ULONG ulReason; 724 ULONG ulCompletionID; 725 ULONG ulNumOwners; 726 ULONG ulNumMonitors; 727 ULONG ulCountryCode; 728 ULONG ulTrunk; 729 ULONG ulCallerIDFlags; 730 ULONG ulCallerIDSize; 731 ULONG ulCallerIDOffset; 732 ULONG ulCallerIDNameSize; 733 ULONG ulCallerIDNameOffset; 734 ULONG ulCalledIDFlags; 735 ULONG ulCalledIDSize; 736 ULONG ulCalledIDOffset; 737 ULONG ulCalledIDNameSize; 738 ULONG ulCalledIDNameOffset; 739 ULONG ulConnectedIDFlags; 740 ULONG ulConnectedIDSize; 741 ULONG ulConnectedIDOffset; 742 ULONG ulConnectedIDNameSize; 743 ULONG ulConnectedIDNameOffset; 744 ULONG ulRedirectionIDFlags; 745 ULONG ulRedirectionIDSize; 746 ULONG ulRedirectionIDOffset; 747 ULONG ulRedirectionIDNameSize; 748 ULONG ulRedirectionIDNameOffset; 749 ULONG ulRedirectingIDFlags; 750 ULONG ulRedirectingIDSize; 751 ULONG ulRedirectingIDOffset; 752 ULONG ulRedirectingIDNameSize; 753 ULONG ulRedirectingIDNameOffset; 754 ULONG ulAppNameSize; 755 ULONG ulAppNameOffset; 756 ULONG ulDisplayableAddressSize; 757 ULONG ulDisplayableAddressOffset; 758 ULONG ulCalledPartySize; 759 ULONG ulCalledPartyOffset; 760 ULONG ulCommentSize; 761 ULONG ulCommentOffset; 762 ULONG ulDisplaySize; 763 ULONG ulDisplayOffset; 764 ULONG ulUserUserInfoSize; 765 ULONG ulUserUserInfoOffset; 766 ULONG ulHighLevelCompSize; 767 ULONG ulHighLevelCompOffset; 768 ULONG ulLowLevelCompSize; 769 ULONG ulLowLevelCompOffset; 770 ULONG ulChargingInfoSize; 771 ULONG ulChargingInfoOffset; 772 ULONG ulTerminalModesSize; 773 ULONG ulTerminalModesOffset; 774 ULONG ulDevSpecificSize; 775 ULONG ulDevSpecificOffset; 776 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 777 ULONG ulCallTreatment; 778 ULONG ulCallDataSize; 779 ULONG ulCallDataOffset; 780 ULONG ulSendingFlowspecSize; 781 ULONG ulSendingFlowspecOffset; 782 ULONG ulReceivingFlowspecSize; 783 ULONG ulReceivingFlowspecOffset; 784 #endif 785 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 786 ULONG ulCallerIDAddressType; 787 ULONG ulCalledIDAddressType; 788 ULONG ulConnectedIDAddressType; 789 ULONG ulRedirectionIDAddressType; 790 ULONG ulRedirectingIDAddressType; 791 #endif 792 } LINE_CALL_INFO, *PLINE_CALL_INFO; 793 794 typedef struct _LINE_CALL_PARAMS { 795 ULONG ulTotalSize; 796 ULONG ulBearerMode; 797 ULONG ulMinRate; 798 ULONG ulMaxRate; 799 ULONG ulMediaMode; 800 ULONG ulCallParamFlags; 801 ULONG ulAddressMode; 802 ULONG ulAddressID; 803 LINE_DIAL_PARAMS DialParams; 804 ULONG ulOrigAddressSize; 805 ULONG ulOrigAddressOffset; 806 ULONG ulDisplayableAddressSize; 807 ULONG ulDisplayableAddressOffset; 808 ULONG ulCalledPartySize; 809 ULONG ulCalledPartyOffset; 810 ULONG ulCommentSize; 811 ULONG ulCommentOffset; 812 ULONG ulUserUserInfoSize; 813 ULONG ulUserUserInfoOffset; 814 ULONG ulHighLevelCompSize; 815 ULONG ulHighLevelCompOffset; 816 ULONG ulLowLevelCompSize; 817 ULONG ulLowLevelCompOffset; 818 ULONG ulDevSpecificSize; 819 ULONG ulDevSpecificOffset; 820 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 821 ULONG ulPredictiveAutoTransferStates; 822 ULONG ulTargetAddressSize; 823 ULONG ulTargetAddressOffset; 824 ULONG ulSendingFlowspecSize; 825 ULONG ulSendingFlowspecOffset; 826 ULONG ulReceivingFlowspecSize; 827 ULONG ulReceivingFlowspecOffset; 828 ULONG ulDeviceClassSize; 829 ULONG ulDeviceClassOffset; 830 ULONG ulDeviceConfigSize; 831 ULONG ulDeviceConfigOffset; 832 ULONG ulCallDataSize; 833 ULONG ulCallDataOffset; 834 ULONG ulNoAnswerTimeout; 835 ULONG ulCallingPartyIDSize; 836 ULONG ulCallingPartyIDOffset; 837 #endif 838 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 839 ULONG ulAddressType; 840 #endif 841 } LINE_CALL_PARAMS, *PLINE_CALL_PARAMS; 842 843 typedef struct _LINE_CALL_STATUS { 844 ULONG ulTotalSize; 845 ULONG ulNeededSize; 846 ULONG ulUsedSize; 847 ULONG ulCallState; 848 ULONG ulCallStateMode; 849 ULONG ulCallPrivilege; 850 ULONG ulCallFeatures; 851 ULONG ulDevSpecificSize; 852 ULONG ulDevSpecificOffset; 853 } LINE_CALL_STATUS, *PLINE_CALL_STATUS; 854 855 typedef struct _LINE_DEV_CAPS { 856 ULONG ulTotalSize; 857 ULONG ulNeededSize; 858 ULONG ulUsedSize; 859 ULONG ulProviderInfoSize; 860 ULONG ulProviderInfoOffset; 861 ULONG ulSwitchInfoSize; 862 ULONG ulSwitchInfoOffset; 863 ULONG ulPermanentLineID; 864 ULONG ulLineNameSize; 865 ULONG ulLineNameOffset; 866 ULONG ulStringFormat; 867 ULONG ulAddressModes; 868 ULONG ulNumAddresses; 869 ULONG ulBearerModes; 870 ULONG ulMaxRate; 871 ULONG ulMediaModes; 872 ULONG ulGenerateToneModes; 873 ULONG ulGenerateToneMaxNumFreq; 874 ULONG ulGenerateDigitModes; 875 ULONG ulMonitorToneMaxNumFreq; 876 ULONG ulMonitorToneMaxNumEntries; 877 ULONG ulMonitorDigitModes; 878 ULONG ulGatherDigitsMinTimeout; 879 ULONG ulGatherDigitsMaxTimeout; 880 ULONG ulMedCtlDigitMaxListSize; 881 ULONG ulMedCtlMediaMaxListSize; 882 ULONG ulMedCtlToneMaxListSize; 883 ULONG ulMedCtlCallStateMaxListSize; 884 ULONG ulDevCapFlags; 885 ULONG ulMaxNumActiveCalls; 886 ULONG ulAnswerMode; 887 ULONG ulRingModes; 888 ULONG ulLineStates; 889 ULONG ulUUIAcceptSize; 890 ULONG ulUUIAnswerSize; 891 ULONG ulUUIMakeCallSize; 892 ULONG ulUUIDropSize; 893 ULONG ulUUISendUserUserInfoSize; 894 ULONG ulUUICallInfoSize; 895 LINE_DIAL_PARAMS MinDialParams; 896 LINE_DIAL_PARAMS MaxDialParams; 897 LINE_DIAL_PARAMS DefaultDialParams; 898 ULONG ulNumTerminals; 899 ULONG ulTerminalCapsSize; 900 ULONG ulTerminalCapsOffset; 901 ULONG ulTerminalTextEntrySize; 902 ULONG ulTerminalTextSize; 903 ULONG ulTerminalTextOffset; 904 ULONG ulDevSpecificSize; 905 ULONG ulDevSpecificOffset; 906 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00010004) 907 ULONG ulLineFeatures; 908 #endif 909 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020000) 910 ULONG ulSettableDevStatus; 911 ULONG ulDeviceClassesSize; 912 ULONG ulDeviceClassesOffset; 913 #endif 914 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00020002) 915 GUID PermanentLineGuid; 916 #endif 917 #if (NDIS_TAPI_CURRENT_VERSION >= 0x00030000) 918 ULONG ulAddressTypes; 919 GUID ProtocolGuid; 920 ULONG ulAvailableTracking; 921 #endif 922 } LINE_DEV_CAPS, *PLINE_DEV_CAPS; 923 924 typedef struct _LINE_DEV_STATUS { 925 ULONG ulTotalSize; 926 ULONG ulNeededSize; 927 ULONG ulUsedSize; 928 ULONG ulNumOpens; 929 ULONG ulOpenMediaModes; 930 ULONG ulNumActiveCalls; 931 ULONG ulNumOnHoldCalls; 932 ULONG ulNumOnHoldPendCalls; 933 ULONG ulLineFeatures; 934 ULONG ulNumCallCompletions; 935 ULONG ulRingMode; 936 ULONG ulSignalLevel; 937 ULONG ulBatteryLevel; 938 ULONG ulRoamMode; 939 ULONG ulDevStatusFlags; 940 ULONG ulTerminalModesSize; 941 ULONG ulTerminalModesOffset; 942 ULONG ulDevSpecificSize; 943 ULONG ulDevSpecificOffset; 944 } LINE_DEV_STATUS, *PLINE_DEV_STATUS; 945 946 typedef struct _LINE_EXTENSION_ID { 947 ULONG ulExtensionID0; 948 ULONG ulExtensionID1; 949 ULONG ulExtensionID2; 950 ULONG ulExtensionID3; 951 } LINE_EXTENSION_ID, *PLINE_EXTENSION_ID; 952 953 typedef struct _VAR_STRING { 954 ULONG ulTotalSize; 955 ULONG ulNeededSize; 956 ULONG ulUsedSize; 957 ULONG ulStringFormat; 958 ULONG ulStringSize; 959 ULONG ulStringOffset; 960 } VAR_STRING, *PVAR_STRING; 961 962 typedef struct _NDIS_TAPI_ANSWER { 963 _In_ ULONG ulRequestID; 964 _In_ HDRV_CALL hdCall; 965 _In_ ULONG ulUserUserInfoSize; 966 _In_ UCHAR UserUserInfo[1]; 967 } NDIS_TAPI_ANSWER, *PNDIS_TAPI_ANSWER; 968 969 typedef struct _NDIS_TAPI_CLOSE { 970 _In_ ULONG ulRequestID; 971 _In_ HDRV_LINE hdLine; 972 } NDIS_TAPI_CLOSE, *PNDIS_TAPI_CLOSE; 973 974 typedef struct _NDIS_TAPI_CLOSE_CALL { 975 _In_ ULONG ulRequestID; 976 _In_ HDRV_CALL hdCall; 977 } NDIS_TAPI_CLOSE_CALL, *PNDIS_TAPI_CLOSE_CALL; 978 979 typedef struct _NDIS_TAPI_CONDITIONAL_MEDIA_DETECTION { 980 _In_ ULONG ulRequestID; 981 _In_ HDRV_LINE hdLine; 982 _In_ ULONG ulMediaModes; 983 _In_ LINE_CALL_PARAMS LineCallParams; 984 } NDIS_TAPI_CONDITIONAL_MEDIA_DETECTION, *PNDIS_TAPI_CONDITIONAL_MEDIA_DETECTION; 985 986 typedef struct _NDIS_TAPI_DROP { 987 _In_ ULONG ulRequestID; 988 _In_ HDRV_CALL hdCall; 989 _In_ ULONG ulUserUserInfoSize; 990 _In_ UCHAR UserUserInfo[1]; 991 } NDIS_TAPI_DROP, *PNDIS_TAPI_DROP; 992 993 typedef struct _NDIS_TAPI_PROVIDER_SHUTDOWN { 994 _In_ ULONG ulRequestID; 995 } NDIS_TAPI_PROVIDER_SHUTDOWN, *PNDIS_TAPI_PROVIDER_SHUTDOWN; 996 997 typedef struct _NDIS_TAPI_SET_APP_SPECIFIC { 998 _In_ ULONG ulRequestID; 999 _In_ HDRV_CALL hdCall; 1000 _In_ ULONG ulAppSpecific; 1001 } NDIS_TAPI_SET_APP_SPECIFIC, *PNDIS_TAPI_SET_APP_SPECIFIC; 1002 1003 typedef struct _NDIS_TAPI_SET_CALL_PARAMS { 1004 _In_ ULONG ulRequestID; 1005 _In_ HDRV_CALL hdCall; 1006 _In_ ULONG ulBearerMode; 1007 _In_ ULONG ulMinRate; 1008 _In_ ULONG ulMaxRate; 1009 _In_ BOOLEAN bSetLineDialParams; 1010 _In_ LINE_DIAL_PARAMS LineDialParams; 1011 } NDIS_TAPI_SET_CALL_PARAMS, *PNDIS_TAPI_SET_CALL_PARAMS; 1012 1013 typedef struct _NDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION { 1014 _In_ ULONG ulRequestID; 1015 _In_ HDRV_LINE hdLine; 1016 _In_ ULONG ulMediaModes; 1017 } NDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION, *PNDIS_TAPI_SET_DEFAULT_MEDIA_DETECTION; 1018 1019 typedef struct _NDIS_TAPI_SET_DEV_CONFIG { 1020 _In_ ULONG ulRequestID; 1021 _In_ ULONG ulDeviceID; 1022 _In_ ULONG ulDeviceClassSize; 1023 _In_ ULONG ulDeviceClassOffset; 1024 _In_ ULONG ulDeviceConfigSize; 1025 _In_ UCHAR DeviceConfig[1]; 1026 } NDIS_TAPI_SET_DEV_CONFIG, *PNDIS_TAPI_SET_DEV_CONFIG; 1027 1028 typedef struct _NDIS_TAPI_SET_MEDIA_MODE { 1029 _In_ ULONG ulRequestID; 1030 _In_ HDRV_CALL hdCall; 1031 _In_ ULONG ulMediaMode; 1032 } NDIS_TAPI_SET_MEDIA_MODE, *PNDIS_TAPI_SET_MEDIA_MODE; 1033 1034 typedef struct _NDIS_TAPI_SET_STATUS_MESSAGES { 1035 _In_ ULONG ulRequestID; 1036 _In_ HDRV_LINE hdLine; 1037 _In_ ULONG ulLineStates; 1038 _In_ ULONG ulAddressStates; 1039 } NDIS_TAPI_SET_STATUS_MESSAGES, *PNDIS_TAPI_SET_STATUS_MESSAGES; 1040 1041 typedef struct _NDIS_TAPI_ACCEPT { 1042 _In_ ULONG ulRequestID; 1043 _In_ HDRV_CALL hdCall; 1044 _In_ ULONG ulUserUserInfoSize; 1045 _In_ UCHAR UserUserInfo[1]; 1046 } NDIS_TAPI_ACCEPT, *PNDIS_TAPI_ACCEPT; 1047 1048 typedef struct _NDIS_TAPI_DIAL { 1049 _In_ ULONG ulRequestID; 1050 _In_ HDRV_CALL hdCall; 1051 _In_ ULONG ulDestAddressSize; 1052 _In_ CHAR szDestAddress[1]; 1053 } NDIS_TAPI_DIAL, *PNDIS_TAPI_DIAL; 1054 1055 typedef struct _NDIS_TAPI_EVENT { 1056 _In_ HTAPI_LINE htLine; 1057 _In_ HTAPI_CALL htCall; 1058 _In_ ULONG ulMsg; 1059 _In_ ULONG ulParam1; 1060 _In_ ULONG ulParam2; 1061 _In_ ULONG ulParam3; 1062 } NDIS_TAPI_EVENT, *PNDIS_TAPI_EVENT; 1063 1064 typedef struct _NDIS_TAPI_OPEN { 1065 _In_ ULONG ulRequestID; 1066 _In_ ULONG ulDeviceID; 1067 _In_ HTAPI_LINE htLine; 1068 _Out_ HDRV_LINE hdLine; 1069 } NDIS_TAPI_OPEN, *PNDIS_TAPI_OPEN; 1070 1071 typedef struct _NDIS_TAPI_SECURE_CALL { 1072 _In_ ULONG ulRequestID; 1073 _In_ HDRV_CALL hdCall; 1074 } NDIS_TAPI_SECURE_CALL, *PNDIS_TAPI_SECURE_CALL; 1075 1076 typedef struct _NDIS_TAPI_SELECT_EXT_VERSION { 1077 _In_ ULONG ulRequestID; 1078 _In_ HDRV_LINE hdLine; 1079 _In_ ULONG ulExtVersion; 1080 } NDIS_TAPI_SELECT_EXT_VERSION, *PNDIS_TAPI_SELECT_EXT_VERSION; 1081 1082 typedef struct _NDIS_TAPI_SEND_USER_USER_INFO { 1083 _In_ ULONG ulRequestID; 1084 _In_ HDRV_CALL hdCall; 1085 _In_ ULONG ulUserUserInfoSize; 1086 _In_ UCHAR UserUserInfo[1]; 1087 } NDIS_TAPI_SEND_USER_USER_INFO, *PNDIS_TAPI_SEND_USER_USER_INFO; 1088 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; 1098 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 _Inout_ ULONG ulParamsSize; 1105 _Inout_ UCHAR Params[1]; 1106 } NDIS_TAPI_DEV_SPECIFIC, *PNDIS_TAPI_DEV_SPECIFIC; 1107 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; 1115 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; 1124 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; 1131 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; 1137 1138 typedef struct _NDIS_TAPI_GET_CALL_INFO { 1139 _In_ ULONG ulRequestID; 1140 _In_ HDRV_CALL hdCall; 1141 _Out_ LINE_CALL_INFO LineCallInfo; 1142 } NDIS_TAPI_GET_CALL_INFO, *PNDIS_TAPI_GET_CALL_INFO; 1143 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; 1149 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; 1156 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; 1164 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; 1170 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; 1176 _In_ ULONG ulSelect; 1177 _In_ ULONG ulDeviceClassSize; 1178 _In_ ULONG ulDeviceClassOffset; 1179 _Out_ VAR_STRING DeviceID; 1180 } NDIS_TAPI_GET_ID, *PNDIS_TAPI_GET_ID; 1181 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; 1187 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; 1198 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; 1206 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; 1213 1214 #define CO_TAPI_VERSION NDIS_TAPI_CURRENT_VERSION 1215 1216 #define CO_TAPI_FLAG_OUTGOING_CALL 0x00000001 1217 #define CO_TAPI_FLAG_INCOMING_CALL 0x00000002 1218 #define CO_TAPI_FLAG_USE_DEFAULT_CALLPARAMS 0x00000004 1219 1220 #define AF_TAPI_SAP_TYPE 0x00008000 1221 1222 typedef struct _CO_TAPI_ADDRESS_CAPS { 1223 _In_ ULONG ulLineID; 1224 _In_ ULONG ulAddressID; 1225 _Out_ ULONG ulFlags; 1226 _Out_ LINE_ADDRESS_CAPS LineAddressCaps; 1227 } CO_TAPI_ADDRESS_CAPS, *PCO_TAPI_ADDRESS_CAPS; 1228 1229 /* CO_TAPI_CM_CAPS.ulFlags constants */ 1230 #define CO_TAPI_FLAG_PER_LINE_CAPS 0x00000001 1231 1232 typedef struct _CO_TAPI_CM_CAPS { 1233 _Out_ ULONG ulCoTapiVersion; 1234 _Out_ ULONG ulNumLines; 1235 _Out_ ULONG ulFlags; 1236 } CO_TAPI_CM_CAPS, *PCO_TAPI_CM_CAPS; 1237 1238 typedef struct _CO_TAPI_CALL_DIAGNOSTICS { 1239 _Out_ ULONG ulOrigin; 1240 _Out_ ULONG ulReason; 1241 _Out_ NDIS_VAR_DATA_DESC DiagInfo; 1242 } CO_TAPI_CALL_DIAGNOSTICS, *PCO_TAPI_CALL_DIAGNOSTICS; 1243 1244 /* CO_TAPI_LINE_CAPS.ulFlags constants */ 1245 #define CO_TAPI_FLAG_PER_ADDRESS_CAPS 0x00000001 1246 1247 typedef struct _CO_TAPI_LINE_CAPS { 1248 _In_ ULONG ulLineID; 1249 _Out_ ULONG ulFlags; 1250 _Out_ LINE_DEV_CAPS LineDevCaps; 1251 } CO_TAPI_LINE_CAPS, *PCO_TAPI_LINE_CAPS; 1252 1253 typedef struct _CO_TAPI_TRANSLATE_NDIS_CALLPARAMS { 1254 _In_ ULONG ulFlags; 1255 _In_ NDIS_VAR_DATA_DESC NdisCallParams; 1256 _Out_ NDIS_VAR_DATA_DESC LineCallInfo; 1257 } CO_TAPI_TRANSLATE_NDIS_CALLPARAMS, *PCO_TAPI_TRANSLATE_NDIS_CALLPARAMS; 1258 1259 typedef struct _CO_TAPI_TRANSLATE_TAPI_CALLPARAMS { 1260 _In_ ULONG ulLineID; 1261 _In_ ULONG ulAddressID; 1262 _In_ ULONG ulFlags; 1263 _In_ NDIS_VAR_DATA_DESC DestAddress; 1264 _In_ NDIS_VAR_DATA_DESC LineCallParams; 1265 _Out_ NDIS_VAR_DATA_DESC NdisCallParams; 1266 } CO_TAPI_TRANSLATE_TAPI_CALLPARAMS, *PCO_TAPI_TRANSLATE_TAPI_CALLPARAMS; 1267 1268 /* CO_TAPI_TRANSLATE_SAP.ulLineID constants */ 1269 #define CO_TAPI_LINE_ID_UNSPECIFIED 0xFFFFFFFF 1270 1271 /* CO_TAPI_TRANSLATE_SAP.ulAddressID constants */ 1272 #define CO_TAPI_ADDRESS_ID_UNSPECIFIED 0xFFFFFFFF 1273 1274 typedef struct _CO_TAPI_TRANSLATE_SAP { 1275 _In_ ULONG ulLineID; 1276 _In_ ULONG ulAddressID; 1277 _In_ ULONG ulMediaModes; 1278 _In_ ULONG Reserved; 1279 _Out_ ULONG NumberOfSaps; 1280 _Out_ NDIS_VAR_DATA_DESC NdisSapParams[1]; 1281 } CO_AF_TAPI_SAP, *PCO_AF_TAPI_SAP; 1282 1283 typedef struct _CO_AF_TAPI_INCOMING_CALL_PARAMETERS { 1284 _In_ ULONG ulLineID; 1285 _In_ ULONG ulAddressID; 1286 _In_ ULONG ulFlags; 1287 _In_ NDIS_VAR_DATA_DESC LineCallInfo; 1288 } CO_AF_TAPI_INCOMING_CALL_PARAMETERS, *PCO_AF_TAPI_INCOMING_CALL_PARAMETERS; 1289 1290 typedef struct _CO_AF_TAPI_MAKE_CALL_PARAMETERS { 1291 _In_ ULONG ulLineID; 1292 _In_ ULONG ulAddressID; 1293 _In_ ULONG ulFlags; 1294 _In_ NDIS_VAR_DATA_DESC DestAddress; 1295 _In_ NDIS_VAR_DATA_DESC LineCallParams; 1296 } CO_AF_TAPI_MAKE_CALL_PARAMETERS, *PCO_AF_TAPI_MAKE_CALL_PARAMETERS; 1297 1298 #ifdef __cplusplus 1299 } 1300 #endif 1301 1302 #endif /* _NDIS_TAPI_ */ 1303