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