Declaraciones del TAPI
Telephony API para VB3 o VB4 de 16 bits
Fecha: 03/Feb/99 (19/Oct/98)
Autor: Eduardo A. Morcillo < [email protected]
>
Lo que mando es un archivo con las declaraciones de
constantes y funciones
del TAPI de windows para visual basic version 3, que es la que tengo yo :-(.
Lo he "traducido" del archivo para C que se consigue en el FTP de Microsoft.
El c�digo:
' ' The Telephony API is jointly copyrighted by Intel and Microsoft. You are ' granted a royalty free worldwide, unlimited license to make copies, and use ' the API/SPI for making applications/drivers that interface with the ' specification provided that this paragraph and the Intel/Microsoft copyright ' statement is maintained as is in the text and source code files. ' ' Copyright 1995 Microsoft, all rights reserved. ' Portions copyright 1992, 1993 Intel/Microsoft, all rights reserved. ' typedef of the LINE callback procedure ' typedef void (CALLBACK * LINECALLBACK) (byval hDevice as long, ' byval dwMessage as long, ' byval dwInstance as long, ' byval dwParam1 as long, ' byval dwParam2 as long, ' byval dwParam3 as long); ' typedef of the PHONE callback procedure ' typedef void (CALLBACK * PHONECALLBACK) (byval hDevice as long, ' byval dwMessage as long, ' byval dwInstance as long, ' byval dwParam1 as long, ' byval dwParam2 as long, ' byval dwParam3 as long); ' Messages for Phones and Lines Global Const LINE_CALLINFO = 1& Global Const LINE_CALLSTATE = 2& Global Const LINE_CLOSE = 3& Global Const LINE_DEVSPECIFIC = 4& Global Const LINE_DEVSPECIFICFEATURE = 5& Global Const LINE_GATHERDIGITS = 6& Global Const LINE_GENERATE = 7& Global Const LINE_LINEDEVSTATE = 8& Global Const LINE_MONITORDIGITS = 9& Global Const LINE_MONITORMEDIA = 10& Global Const LINE_MONITORTONE = 11& Global Const LINE_REPLY = 12& Global Const LINE_REQUEST = 13& Global Const PHONE_BUTTON = 14& Global Const PHONE_CLOSE = 15& Global Const PHONE_DEVSPECIFIC = 16& Global Const PHONE_REPLY = 17& Global Const PHONE_STATE = 18& Global Const LINE_CREATE = 19& Global Const PHONE_CREATE = 20& ' Define Simple Telephony Constants. 'Global Const TAPI_REPLY = WM_USER + 99 Global Const TAPI_REPLY = &H400 + 99 Global Const TAPIERR_CONNECTED = 0& Global Const TAPIERR_DROPPED = -1& Global Const TAPIERR_NOREQUESTRECIPIENT = -2& Global Const TAPIERR_REQUESTQUEUEFULL = -3& Global Const TAPIERR_INVALDESTADDRESS = -4& Global Const TAPIERR_INVALWINDOWHANDLE = -5& Global Const TAPIERR_INVALDEVICECLASS = -6& Global Const TAPIERR_INVALDEVICEID = -7& Global Const TAPIERR_DEVICECLASSUNAVAIL = -8& Global Const TAPIERR_DEVICEIDUNAVAIL = -9& Global Const TAPIERR_DEVICEINUSE = -10& Global Const TAPIERR_DESTBUSY = -11& Global Const TAPIERR_DESTNOANSWER = -12& Global Const TAPIERR_DESTUNAVAIL = -13& Global Const TAPIERR_UNKNOWNWINHANDLE = -14& Global Const TAPIERR_UNKNOWNREQUESTID = -15& Global Const TAPIERR_REQUESTFAILED = -16& Global Const TAPIERR_REQUESTCANCELLED = -17& Global Const TAPIERR_INVALPOINTER = -18& Global Const TAPIMAXDESTADDRESSSIZE = 80& Global Const TAPIMAXAPPNAMESIZE = 40& Global Const TAPIMAXCALLEDPARTYSIZE = 40& Global Const TAPIMAXCOMMENTSIZE = 80& Global Const TAPIMAXDEVICECLASSSIZE = 40& Global Const TAPIMAXDEVICEIDSIZE = 40& ' Data types and values for Phones Global Const PHONEBUTTONFUNCTION_UNKNOWN = &H0& Global Const PHONEBUTTONFUNCTION_CONFERENCE = &H1& Global Const PHONEBUTTONFUNCTION_TRANSFER = &H2& Global Const PHONEBUTTONFUNCTION_DROP = &H3& Global Const PHONEBUTTONFUNCTION_HOLD = &H4& Global Const PHONEBUTTONFUNCTION_RECALL = &H5& Global Const PHONEBUTTONFUNCTION_DISCONNECT = &H6& Global Const PHONEBUTTONFUNCTION_CONNECT = &H7& Global Const PHONEBUTTONFUNCTION_MSGWAITON = &H8& Global Const PHONEBUTTONFUNCTION_MSGWAITOFF = &H9& Global Const PHONEBUTTONFUNCTION_SELECTRING = &HA& Global Const PHONEBUTTONFUNCTION_ABBREVDIAL = &HB& Global Const PHONEBUTTONFUNCTION_FORWARD = &HC& Global Const PHONEBUTTONFUNCTION_PICKUP = &HD& Global Const PHONEBUTTONFUNCTION_RINGAGAIN = &HE& Global Const PHONEBUTTONFUNCTION_PARK = &HF& Global Const PHONEBUTTONFUNCTION_REJECT = &H10& Global Const PHONEBUTTONFUNCTION_REDIRECT = &H11& Global Const PHONEBUTTONFUNCTION_MUTE = &H12& Global Const PHONEBUTTONFUNCTION_VOLUMEUP = &H13& Global Const PHONEBUTTONFUNCTION_VOLUMEDOWN = &H14& Global Const PHONEBUTTONFUNCTION_SPEAKERON = &H15& Global Const PHONEBUTTONFUNCTION_SPEAKEROFF = &H16& Global Const PHONEBUTTONFUNCTION_FLASH = &H17& Global Const PHONEBUTTONFUNCTION_DATAON = &H18& Global Const PHONEBUTTONFUNCTION_DATAOFF = &H19& Global Const PHONEBUTTONFUNCTION_DONOTDISTURB = &H1A& Global Const PHONEBUTTONFUNCTION_INTERCOM = &H1B& Global Const PHONEBUTTONFUNCTION_BRIDGEDAPP = &H1C& Global Const PHONEBUTTONFUNCTION_BUSY = &H1D& Global Const PHONEBUTTONFUNCTION_CALLAPP = &H1E& Global Const PHONEBUTTONFUNCTION_DATETIME = &H1F& Global Const PHONEBUTTONFUNCTION_DIRECTORY = &H20& Global Const PHONEBUTTONFUNCTION_COVER = &H21& Global Const PHONEBUTTONFUNCTION_CALLID = &H22& Global Const PHONEBUTTONFUNCTION_LASTNUM = &H23& Global Const PHONEBUTTONFUNCTION_NIGHTSRV = &H24& Global Const PHONEBUTTONFUNCTION_SENDCALLS = &H25& Global Const PHONEBUTTONFUNCTION_MSGINDICATOR = &H26& Global Const PHONEBUTTONFUNCTION_REPDIAL = &H27& Global Const PHONEBUTTONFUNCTION_SETREPDIAL = &H28& Global Const PHONEBUTTONFUNCTION_SYSTEMSPEED = &H29& Global Const PHONEBUTTONFUNCTION_STATIONSPEED = &H2A& Global Const PHONEBUTTONFUNCTION_CAMPON = &H2B& Global Const PHONEBUTTONFUNCTION_SAVEREPEAT = &H2C& Global Const PHONEBUTTONFUNCTION_QUEUECALL = &H2D& Global Const PHONEBUTTONFUNCTION_NONE = &H2E& Type PHONEBUTTONINFO dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwButtonMode As Long dwButtonFunction As Long dwButtonTextSize As Long dwButtonTextOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long dwButtonState As Long End Type Global Const PHONEBUTTONMODE_DUMMY = &H1& Global Const PHONEBUTTONMODE_CALL = &H2& Global Const PHONEBUTTONMODE_FEATURE = &H4& Global Const PHONEBUTTONMODE_KEYPAD = &H8& Global Const PHONEBUTTONMODE_LOCAL = &H10& Global Const PHONEBUTTONMODE_DISPLAY = &H20& Global Const PHONEBUTTONSTATE_UP = &H1& Global Const PHONEBUTTONSTATE_DOWN = &H2& Global Const PHONEBUTTONSTATE_UNKNOWN = &H4& Global Const PHONEBUTTONSTATE_UNAVAIL = &H8& Type PHONEEXTENSIONID dwExtensionID0 As Long dwExtensionID1 As Long dwExtensionID2 As Long dwExtensionID3 As Long End Type Type PHONECAPS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwProviderInfoSize As Long dwProviderInfoOffset As Long dwPhoneInfoSize As Long dwPhoneInfoOffset As Long dwPermanentPhoneID As Long dwPhoneNameSize As Long dwPhoneNameOffset As Long dwStringFormat As Long dwPhoneStates As Long dwHookSwitchDevs As Long dwHandsetHookSwitchModes As Long dwSpeakerHookSwitchModes As Long dwHeadsetHookSwitchModes As Long dwVolumeFlags As Long dwGainFlags As Long dwDisplayNumRows As Long dwDisplayNumColumns As Long dwNumRingModes As Long dwNumButtonLamps As Long dwButtonModesSize As Long dwButtonModesOffset As Long dwButtonFunctionsSize As Long dwButtonFunctionsOffset As Long dwLampModesSize As Long dwLampModesOffset As Long dwNumSetData As Long dwSetDataSize As Long dwSetDataOffset As Long dwNumGetData As Long dwGetDataSize As Long dwGetDataOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const PHONEERR_ALLOCATED = &H90000001 Global Const PHONEERR_BADDEVICEID = &H90000002 Global Const PHONEERR_INCOMPATIBLEAPIVERSION = &H90000003 Global Const PHONEERR_INCOMPATIBLEEXTVERSION = &H90000004 Global Const PHONEERR_INIFILECORRUPT = &H90000005 Global Const PHONEERR_INUSE = &H90000006 Global Const PHONEERR_INVALAPPHANDLE = &H90000007 Global Const PHONEERR_INVALAPPNAME = &H90000008 Global Const PHONEERR_INVALBUTTONLAMPID = &H90000009 Global Const PHONEERR_INVALBUTTONMODE = &H9000000A Global Const PHONEERR_INVALBUTTONSTATE = &H9000000B Global Const PHONEERR_INVALDATAID = &H9000000C Global Const PHONEERR_INVALDEVICECLASS = &H9000000D Global Const PHONEERR_INVALEXTVERSION = &H9000000E Global Const PHONEERR_INVALHOOKSWITCHDEV = &H9000000F Global Const PHONEERR_INVALHOOKSWITCHMODE = &H90000010 Global Const PHONEERR_INVALLAMPMODE = &H90000011 Global Const PHONEERR_INVALPARAM = &H90000012 Global Const PHONEERR_INVALPHONEHANDLE = &H90000013 Global Const PHONEERR_INVALPHONESTATE = &H90000014 Global Const PHONEERR_INVALPOINTER = &H90000015 Global Const PHONEERR_INVALPRIVILEGE = &H90000016 Global Const PHONEERR_INVALRINGMODE = &H90000017 Global Const PHONEERR_NODEVICE = &H90000018 Global Const PHONEERR_NODRIVER = &H90000019 Global Const PHONEERR_NOMEM = &H9000001A Global Const PHONEERR_NOTOWNER = &H9000001B Global Const PHONEERR_OPERATIONFAILED = &H9000001C Global Const PHONEERR_OPERATIONUNAVAIL = &H9000001D Global Const PHONEERR_RESOURCEUNAVAIL = &H9000001F Global Const PHONEERR_REQUESTOVERRUN = &H90000020 Global Const PHONEERR_STRUCTURETOOSMALL = &H90000021 Global Const PHONEERR_UNINITIALIZED = &H90000022 Global Const PHONEERR_REINIT = &H90000023 Global Const PHONEHOOKSWITCHDEV_HANDSET = &H1& Global Const PHONEHOOKSWITCHDEV_SPEAKER = &H2& Global Const PHONEHOOKSWITCHDEV_HEADSET = &H4& Global Const PHONEHOOKSWITCHMODE_ONHOOK = &H1& Global Const PHONEHOOKSWITCHMODE_MIC = &H2& Global Const PHONEHOOKSWITCHMODE_SPEAKER = &H4& Global Const PHONEHOOKSWITCHMODE_MICSPEAKER = &H8& Global Const PHONEHOOKSWITCHMODE_UNKNOWN = &H10& Global Const PHONELAMPMODE_DUMMY = &H1& Global Const PHONELAMPMODE_OFF = &H2& Global Const PHONELAMPMODE_STEADY = &H4& Global Const PHONELAMPMODE_WINK = &H8& Global Const PHONELAMPMODE_FLASH = &H10& Global Const PHONELAMPMODE_FLUTTER = &H20& Global Const PHONELAMPMODE_BROKENFLUTTER = &H40& Global Const PHONELAMPMODE_UNKNOWN = &H80& Global Const PHONEPRIVILEGE_MONITOR = &H1& Global Const PHONEPRIVILEGE_OWNER = &H2& Global Const PHONESTATE_OTHER = &H1& Global Const PHONESTATE_CONNECTED = &H2& Global Const PHONESTATE_DISCONNECTED = &H4& Global Const PHONESTATE_OWNER = &H8& Global Const PHONESTATE_MONITORS = &H10& Global Const PHONESTATE_DISPLAY = &H20& Global Const PHONESTATE_LAMP = &H40& Global Const PHONESTATE_RINGMODE = &H80& Global Const PHONESTATE_RINGVOLUME = &H100& Global Const PHONESTATE_HANDSETHOOKSWITCH = &H200& Global Const PHONESTATE_HANDSETVOLUME = &H400& Global Const PHONESTATE_HANDSETGAIN = &H800& Global Const PHONESTATE_SPEAKERHOOKSWITCH = &H1000& Global Const PHONESTATE_SPEAKERVOLUME = &H2000& Global Const PHONESTATE_SPEAKERGAIN = &H4000& Global Const PHONESTATE_HEADSETHOOKSWITCH = &H8000& Global Const PHONESTATE_HEADSETVOLUME = &H10000 Global Const PHONESTATE_HEADSETGAIN = &H20000 Global Const PHONESTATE_SUSPEND = &H40000 Global Const PHONESTATE_RESUME = &H80000 Global Const PHONESTATE_DEVSPECIFIC = &H100000 Global Const PHONESTATE_REINIT = &H200000 Global Const PHONESTATE_CAPSCHANGE = &H400000 Global Const PHONESTATE_REMOVED = &H800000 Type PHONESTATUS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwStatusFlags As Long dwNumOwners As Long dwNumMonitors As Long dwRingMode As Long dwRingVolume As Long dwHandsetHookSwitchMode As Long dwHandsetVolume As Long dwHandsetGain As Long dwSpeakerHookSwitchMode As Long dwSpeakerVolume As Long dwSpeakerGain As Long dwHeadsetHookSwitchMode As Long dwHeadsetVolume As Long dwHeadsetGain As Long dwDisplaySize As Long dwDisplayOffset As Long dwLampModesSize As Long dwLampModesOffset As Long dwOwnerNameSize As Long dwOwnerNameOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const PHONESTATUSFLAGS_CONNECTED = &H1 Global Const PHONESTATUSFLAGS_SUSPENDED = &H2 Global Const STRINGFORMAT_ASCII = &H1 Global Const STRINGFORMAT_DBCS = &H2 Global Const STRINGFORMAT_UNICODE = &H3 Global Const STRINGFORMAT_BINARY = &H4 Type VARSTRING dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwStringFormat As Long dwStringSize As Long dwStringOffset As Long End Type ' Data types and values for Lines Global Const LINEADDRCAPFLAGS_FWDNUMRINGS = &H1 Global Const LINEADDRCAPFLAGS_PICKUPGROUPID = &H2 Global Const LINEADDRCAPFLAGS_SECURE = &H4 Global Const LINEADDRCAPFLAGS_BLOCKIDDEFAULT = &H8 Global Const LINEADDRCAPFLAGS_BLOCKIDOVERRIDE = &H10 Global Const LINEADDRCAPFLAGS_DIALED = &H20 Global Const LINEADDRCAPFLAGS_ORIGOFFHOOK = &H40 Global Const LINEADDRCAPFLAGS_DESTOFFHOOK = &H80 Global Const LINEADDRCAPFLAGS_FWDCONSULT = &H100 Global Const LINEADDRCAPFLAGS_SETUPCONFNULL = &H200 Global Const LINEADDRCAPFLAGS_AUTORECONNECT = &H400 Global Const LINEADDRCAPFLAGS_COMPLETIONID = &H800 Global Const LINEADDRCAPFLAGS_TRANSFERHELD = &H1000 Global Const LINEADDRCAPFLAGS_TRANSFERMAKE = &H2000 Global Const LINEADDRCAPFLAGS_CONFERENCEHELD = &H4000 Global Const LINEADDRCAPFLAGS_CONFERENCEMAKE = &H8000 Global Const LINEADDRCAPFLAGS_PARTIALDIAL = &H10000 Global Const LINEADDRCAPFLAGS_FWDSTATUSVALID = &H20000 Global Const LINEADDRCAPFLAGS_FWDINTEXTADDR = &H40000 Global Const LINEADDRCAPFLAGS_FWDBUSYNAADDR = &H80000 Global Const LINEADDRCAPFLAGS_ACCEPTTOALERT = &H100000 Global Const LINEADDRCAPFLAGS_CONFDROP = &H200000 Global Const LINEADDRCAPFLAGS_PICKUPCALLWAIT = &H400000 Type LINEADDRESSCAPS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwLineDeviceID As Long dwAddressSize As Long dwAddressOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long dwAddressSharing As Long dwAddressStates As Long dwCallInfoStates As Long dwCallerIDFlags As Long dwCalledIDFlags As Long dwConnectedIDFlags As Long dwRedirectionIDFlags As Long dwRedirectingIDFlags As Long dwCallStates As Long dwDialToneModes As Long dwBusyModes As Long dwSpecialInfo As Long dwDisconnectModes As Long dwMaxNumActiveCalls As Long dwMaxNumOnHoldCalls As Long dwMaxNumOnHoldPendingCalls As Long dwMaxNumConference As Long dwMaxNumTransConf As Long dwAddrCapFlags As Long dwCallFeatures As Long dwRemoveFromConfCaps As Long dwRemoveFromConfState As Long dwTransferModes As Long dwParkModes As Long dwForwardModes As Long dwMaxForwardEntries As Long dwMaxSpecificEntries As Long dwMinFwdNumRings As Long dwMaxFwdNumRings As Long dwMaxCallCompletions As Long dwCallCompletionConds As Long dwCallCompletionModes As Long dwNumCompletionMessages As Long dwCompletionMsgTextEntrySize As Long dwCompletionMsgTextSize As Long dwCompletionMsgTextOffset As Long dwAddressFeatures As Long End Type Global Const LINEADDRESSMODE_ADDRESSID = &H1 Global Const LINEADDRESSMODE_DIALABLEADDR = &H2 Global Const LINEADDRESSSHARING_PRIVATE = &H1 Global Const LINEADDRESSSHARING_BRIDGEDEXCL = &H2 Global Const LINEADDRESSSHARING_BRIDGEDNEW = &H4 Global Const LINEADDRESSSHARING_BRIDGEDSHARED = &H8 Global Const LINEADDRESSSHARING_MONITORED = &H10 Global Const LINEADDRESSSTATE_OTHER = &H1 Global Const LINEADDRESSSTATE_DEVSPECIFIC = &H2 Global Const LINEADDRESSSTATE_INUSEZERO = &H4 Global Const LINEADDRESSSTATE_INUSEONE = &H8 Global Const LINEADDRESSSTATE_INUSEMANY = &H10 Global Const LINEADDRESSSTATE_NUMCALLS = &H20 Global Const LINEADDRESSSTATE_FORWARD = &H40 Global Const LINEADDRESSSTATE_TERMINALS = &H80 Global Const LINEADDRESSSTATE_CAPSCHANGE = &H100 Type LINEADDRESSSTATUS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwNumInUse As Long dwNumActiveCalls As Long dwNumOnHoldCalls As Long dwNumOnHoldPendCalls As Long dwAddressFeatures As Long dwNumRingsNoAnswer As Long dwForwardNumEntries As Long dwForwardSize As Long dwForwardOffset As Long dwTerminalModesSize As Long dwTerminalModesOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const LINEADDRFEATURE_FORWARD = &H1 Global Const LINEADDRFEATURE_MAKECALL = &H2 Global Const LINEADDRFEATURE_PICKUP = &H4 Global Const LINEADDRFEATURE_SETMEDIACONTROL = &H8 Global Const LINEADDRFEATURE_SETTERMINAL = &H10 Global Const LINEADDRFEATURE_SETUPCONF = &H20 Global Const LINEADDRFEATURE_UNCOMPLETECALL = &H40 Global Const LINEADDRFEATURE_UNPARK = &H80 Global Const LINEANSWERMODE_NONE = &H1 Global Const LINEANSWERMODE_DROP = &H2 Global Const LINEANSWERMODE_HOLD = &H4 Global Const LINEBEARERMODE_VOICE = &H1 Global Const LINEBEARERMODE_SPEECH = &H2 Global Const LINEBEARERMODE_MULTIUSE = &H4 Global Const LINEBEARERMODE_DATA = &H8 Global Const LINEBEARERMODE_ALTSPEECHDATA = &H10 Global Const LINEBEARERMODE_NONCALLSIGNALING = &H20 Global Const LINEBEARERMODE_PASSTHROUGH = &H40 Global Const LINEBUSYMODE_STATION = &H1 Global Const LINEBUSYMODE_TRUNK = &H2 Global Const LINEBUSYMODE_UNKNOWN = &H4 Global Const LINEBUSYMODE_UNAVAIL = &H8 Global Const LINECALLCOMPLCOND_BUSY = &H1 Global Const LINECALLCOMPLCOND_NOANSWER = &H2 Global Const LINECALLCOMPLMODE_CAMPON = &H1 Global Const LINECALLCOMPLMODE_CALLBACK = &H2 Global Const LINECALLCOMPLMODE_INTRUDE = &H4 Global Const LINECALLCOMPLMODE_MESSAGE = &H8 Global Const LINECALLFEATURE_ACCEPT = &H1 Global Const LINECALLFEATURE_ADDTOCONF = &H2 Global Const LINECALLFEATURE_ANSWER = &H4 Global Const LINECALLFEATURE_BLINDTRANSFER = &H8 Global Const LINECALLFEATURE_COMPLETECALL = &H10 Global Const LINECALLFEATURE_COMPLETETRANSF = &H20 Global Const LINECALLFEATURE_DIAL = &H40 Global Const LINECALLFEATURE_DROP = &H80 Global Const LINECALLFEATURE_GATHERDIGITS = &H100 Global Const LINECALLFEATURE_GENERATEDIGITS = &H200 Global Const LINECALLFEATURE_GENERATETONE = &H400 Global Const LINECALLFEATURE_HOLD = &H800 Global Const LINECALLFEATURE_MONITORDIGITS = &H1000 Global Const LINECALLFEATURE_MONITORMEDIA = &H2000 Global Const LINECALLFEATURE_MONITORTONES = &H4000 Global Const LINECALLFEATURE_PARK = &H8000 Global Const LINECALLFEATURE_PREPAREADDCONF = &H10000 Global Const LINECALLFEATURE_REDIRECT = &H20000 Global Const LINECALLFEATURE_REMOVEFROMCONF = &H40000 Global Const LINECALLFEATURE_SECURECALL = &H80000 Global Const LINECALLFEATURE_SENDUSERUSER = &H100000 Global Const LINECALLFEATURE_SETCALLPARAMS = &H200000 Global Const LINECALLFEATURE_SETMEDIACONTROL = &H400000 Global Const LINECALLFEATURE_SETTERMINAL = &H800000 Global Const LINECALLFEATURE_SETUPCONF = &H1000000 Global Const LINECALLFEATURE_SETUPTRANSFER = &H2000000 Global Const LINECALLFEATURE_SWAPHOLD = &H4000000 Global Const LINECALLFEATURE_UNHOLD = &H8000000 Global Const LINECALLFEATURE_RELEASEUSERUSERINFO = &H10000000 Type LINEDIALPARAMS dwDialPause As Long dwDialSpeed As Long dwDigitDuration As Long dwWaitForDialtone As Long End Type Type LINECALLINFO dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long hLine As Integer dwLineDeviceID As Long dwAddressID As Long dwBearerMode As Long dwRate As Long dwMediaMode As Long dwAppSpecific As Long dwCallID As Long dwRelatedCallID As Long dwCallParamFlags As Long dwCallStates As Long dwMonitorDigitModes As Long dwMonitorMediaModes As Long DialParams As LINEDIALPARAMS dwOrigin As Long dwReason As Long dwCompletionID As Long dwNumOwners As Long dwNumMonitors As Long dwCountryCode As Long dwTrunk As Long dwCallerIDFlags As Long dwCallerIDSize As Long dwCallerIDOffset As Long dwCallerIDNameSize As Long dwCallerIDNameOffset As Long dwCalledIDFlags As Long dwCalledIDSize As Long dwCalledIDOffset As Long dwCalledIDNameSize As Long dwCalledIDNameOffset As Long dwConnectedIDFlags As Long dwConnectedIDSize As Long dwConnectedIDOffset As Long dwConnectedIDNameSize As Long dwConnectedIDNameOffset As Long dwRedirectionIDFlags As Long dwRedirectionIDSize As Long dwRedirectionIDOffset As Long dwRedirectionIDNameSize As Long dwRedirectionIDNameOffset As Long dwRedirectingIDFlags As Long dwRedirectingIDSize As Long dwRedirectingIDOffset As Long dwRedirectingIDNameSize As Long dwRedirectingIDNameOffset As Long dwAppNameSize As Long dwAppNameOffset As Long dwDisplayableAddressSize As Long dwDisplayableAddressOffset As Long dwCalledPartySize As Long dwCalledPartyOffset As Long dwCommentSize As Long dwCommentOffset As Long dwDisplaySize As Long dwDisplayOffset As Long dwUserUserInfoSize As Long dwUserUserInfoOffset As Long dwHighLevelCompSize As Long dwHighLevelCompOffset As Long dwLowLevelCompSize As Long dwLowLevelCompOffset As Long dwChargingInfoSize As Long dwChargingInfoOffset As Long dwTerminalModesSize As Long dwTerminalModesOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const LINECALLINFOSTATE_OTHER = &H1 Global Const LINECALLINFOSTATE_DEVSPECIFIC = &H2 Global Const LINECALLINFOSTATE_BEARERMODE = &H4 Global Const LINECALLINFOSTATE_RATE = &H8 Global Const LINECALLINFOSTATE_MEDIAMODE = &H10 Global Const LINECALLINFOSTATE_APPSPECIFIC = &H20 Global Const LINECALLINFOSTATE_CALLID = &H40 Global Const LINECALLINFOSTATE_RELATEDCALLID = &H80 Global Const LINECALLINFOSTATE_ORIGIN = &H100 Global Const LINECALLINFOSTATE_REASON = &H200 Global Const LINECALLINFOSTATE_COMPLETIONID = &H400 Global Const LINECALLINFOSTATE_NUMOWNERINCR = &H800 Global Const LINECALLINFOSTATE_NUMOWNERDECR = &H1000 Global Const LINECALLINFOSTATE_NUMMONITORS = &H2000 Global Const LINECALLINFOSTATE_TRUNK = &H4000 Global Const LINECALLINFOSTATE_CALLERID = &H8000 Global Const LINECALLINFOSTATE_CALLEDID = &H10000 Global Const LINECALLINFOSTATE_CONNECTEDID = &H20000 Global Const LINECALLINFOSTATE_REDIRECTIONID = &H40000 Global Const LINECALLINFOSTATE_REDIRECTINGID = &H80000 Global Const LINECALLINFOSTATE_DISPLAY = &H100000 Global Const LINECALLINFOSTATE_USERUSERINFO = &H200000 Global Const LINECALLINFOSTATE_HIGHLEVELCOMP = &H400000 Global Const LINECALLINFOSTATE_LOWLEVELCOMP = &H800000 Global Const LINECALLINFOSTATE_CHARGINGINFO = &H1000000 Global Const LINECALLINFOSTATE_TERMINAL = &H2000000 Global Const LINECALLINFOSTATE_DIALPARAMS = &H4000000 Global Const LINECALLINFOSTATE_MONITORMODES = &H8000000 Type LINECALLLIST dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwCallsNumEntries As Long dwCallsSize As Long dwCallsOffset As Long End Type Global Const LINECALLORIGIN_OUTBOUND = &H1 Global Const LINECALLORIGIN_INTERNAL = &H2 Global Const LINECALLORIGIN_EXTERNAL = &H4 Global Const LINECALLORIGIN_UNKNOWN = &H10 Global Const LINECALLORIGIN_UNAVAIL = &H20 Global Const LINECALLORIGIN_CONFERENCE = &H40 Global Const LINECALLORIGIN_INBOUND = &H80 Global Const LINECALLPARAMFLAGS_SECURE = &H1 Global Const LINECALLPARAMFLAGS_IDLE = &H2 Global Const LINECALLPARAMFLAGS_BLOCKID = &H4 Global Const LINECALLPARAMFLAGS_ORIGOFFHOOK = &H8 Global Const LINECALLPARAMFLAGS_DESTOFFHOOK = &H10 Type LINECALLPARAMS ' Defaults: dwTotalSize As Long ' --------- dwBearerMode As Long ' voice dwMinRate As Long ' (3.1kHz as integer) dwMaxRate As Long ' (3.1kHz) dwMediaMode As Long ' interactiveVoice dwCallParamFlags As Long ' 0 dwAddressMode As Long ' addressID dwAddressID As Long ' (any available) DialParams As LINEDIALPARAMS ' (0, 0, 0, 0) dwOrigAddressSize As Long ' 0 dwOrigAddressOffset As Long dwDisplayableAddressSize As Long dwDisplayableAddressOffset As Long dwCalledPartySize As Long ' 0 dwCalledPartyOffset As Long dwCommentSize As Long ' 0 dwCommentOffset As Long dwUserUserInfoSize As Long ' 0 dwUserUserInfoOffset As Long dwHighLevelCompSize As Long ' 0 dwHighLevelCompOffset As Long dwLowLevelCompSize As Long ' 0 dwLowLevelCompOffset As Long dwDevSpecificSize As Long ' 0 dwDevSpecificOffset As Long End Type Global Const LINECALLPARTYID_BLOCKED = &H1 Global Const LINECALLPARTYID_OUTOFAREA = &H2 Global Const LINECALLPARTYID_NAME = &H4 Global Const LINECALLPARTYID_ADDRESS = &H8 Global Const LINECALLPARTYID_PARTIAL = &H10 Global Const LINECALLPARTYID_UNKNOWN = &H20 Global Const LINECALLPARTYID_UNAVAIL = &H40 Global Const LINECALLPRIVILEGE_NONE = &H1 Global Const LINECALLPRIVILEGE_MONITOR = &H2 Global Const LINECALLPRIVILEGE_OWNER = &H4 Global Const LINECALLREASON_DIRECT = &H1 Global Const LINECALLREASON_FWDBUSY = &H2 Global Const LINECALLREASON_FWDNOANSWER = &H4 Global Const LINECALLREASON_FWDUNCOND = &H8 Global Const LINECALLREASON_PICKUP = &H10 Global Const LINECALLREASON_UNPARK = &H20 Global Const LINECALLREASON_REDIRECT = &H40 Global Const LINECALLREASON_CALLCOMPLETION = &H80 Global Const LINECALLREASON_TRANSFER = &H100 Global Const LINECALLREASON_REMINDER = &H200 Global Const LINECALLREASON_UNKNOWN = &H400 Global Const LINECALLREASON_UNAVAIL = &H800 Global Const LINECALLREASON_INTRUDE = &H1000 Global Const LINECALLREASON_PARKED = &H2000 Global Const LINECALLSELECT_LINE = &H1 Global Const LINECALLSELECT_ADDRESS = &H2 Global Const LINECALLSELECT_CALL = &H4 Global Const LINECALLSTATE_IDLE = &H1 Global Const LINECALLSTATE_OFFERING = &H2 Global Const LINECALLSTATE_ACCEPTED = &H4 Global Const LINECALLSTATE_DIALTONE = &H8 Global Const LINECALLSTATE_DIALING = &H10 Global Const LINECALLSTATE_RINGBACK = &H20 Global Const LINECALLSTATE_BUSY = &H40 Global Const LINECALLSTATE_SPECIALINFO = &H80 Global Const LINECALLSTATE_CONNECTED = &H100 Global Const LINECALLSTATE_PROCEEDING = &H200 Global Const LINECALLSTATE_ONHOLD = &H400 Global Const LINECALLSTATE_CONFERENCED = &H800 Global Const LINECALLSTATE_ONHOLDPENDCONF = &H1000 Global Const LINECALLSTATE_ONHOLDPENDTRANSFER = &H2000 Global Const LINECALLSTATE_DISCONNECTED = &H4000 Global Const LINECALLSTATE_UNKNOWN = &H8000 Global Const LINECONNECTEDMODE_ACTIVE = &H1 Global Const LINECONNECTEDMODE_INACTIVE = &H2 Global Const LINEOFFERINGMODE_ACTIVE = &H1 Global Const LINEOFFERINGMODE_INACTIVE = &H2 Type LINECALLSTATUS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwCallState As Long dwCallStateMode As Long dwCallPrivilege As Long dwCallFeatures As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const LINEDEVCAPFLAGS_CROSSADDRCONF = &H1 Global Const LINEDEVCAPFLAGS_HIGHLEVCOMP = &H2 Global Const LINEDEVCAPFLAGS_LOWLEVCOMP = &H4 Global Const LINEDEVCAPFLAGS_MEDIACONTROL = &H8 Global Const LINEDEVCAPFLAGS_MULTIPLEADDR = &H10 Global Const LINEDEVCAPFLAGS_CLOSEDROP = &H20 Global Const LINEDEVCAPFLAGS_DIALBILLING = &H40 Global Const LINEDEVCAPFLAGS_DIALQUIET = &H80 Global Const LINEDEVCAPFLAGS_DIALDIALTONE = &H100 Type LINEEXTENSIONID dwExtensionID0 As Long dwExtensionID1 As Long dwExtensionID2 As Long dwExtensionID3 As Long End Type Type LINEDEVCAPS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwProviderInfoSize As Long dwProviderInfoOffset As Long dwSwitchInfoSize As Long dwSwitchInfoOffset As Long dwPermanentLineID As Long dwLineNameSize As Long dwLineNameOffset As Long dwStringFormat As Long dwAddressModes As Long dwNumAddresses As Long dwBearerModes As Long dwMaxRate As Long dwMediaModes As Long dwGenerateToneModes As Long dwGenerateToneMaxNumFreq As Long dwGenerateDigitModes As Long dwMonitorToneMaxNumFreq As Long dwMonitorToneMaxNumEntries As Long dwMonitorDigitModes As Long dwGatherDigitsMinTimeout As Long dwGatherDigitsMaxTimeout As Long dwMedCtlDigitMaxListSize As Long dwMedCtlMediaMaxListSize As Long dwMedCtlToneMaxListSize As Long dwMedCtlCallStateMaxListSize As Long dwDevCapFlags As Long dwMaxNumActiveCalls As Long dwAnswerMode As Long dwRingModes As Long dwLineStates As Long dwUUIAcceptSize As Long dwUUIAnswerSize As Long dwUUIMakeCallSize As Long dwUUIDropSize As Long dwUUISendUserUserInfoSize As Long dwUUICallInfoSize As Long MinDialParams As LINEDIALPARAMS MaxDialParams As LINEDIALPARAMS DefaultDialParams As LINEDIALPARAMS dwNumTerminals As Long dwTerminalCapsSize As Long dwTerminalCapsOffset As Long dwTerminalTextEntrySize As Long dwTerminalTextSize As Long dwTerminalTextOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long dwLineFeatures As Long End Type Global Const LINEDEVSTATE_OTHER = &H1 Global Const LINEDEVSTATE_RINGING = &H2 Global Const LINEDEVSTATE_CONNECTED = &H4 Global Const LINEDEVSTATE_DISCONNECTED = &H8 Global Const LINEDEVSTATE_MSGWAITON = &H10 Global Const LINEDEVSTATE_MSGWAITOFF = &H20 Global Const LINEDEVSTATE_INSERVICE = &H40 Global Const LINEDEVSTATE_OUTOFSERVICE = &H80 Global Const LINEDEVSTATE_MAINTENANCE = &H100 Global Const LINEDEVSTATE_OPEN = &H200 Global Const LINEDEVSTATE_CLOSE = &H400 Global Const LINEDEVSTATE_NUMCALLS = &H800 Global Const LINEDEVSTATE_NUMCOMPLETIONS = &H1000 Global Const LINEDEVSTATE_TERMINALS = &H2000 Global Const LINEDEVSTATE_ROAMMODE = &H4000 Global Const LINEDEVSTATE_BATTERY = &H8000 Global Const LINEDEVSTATE_SIGNAL = &H10000 Global Const LINEDEVSTATE_DEVSPECIFIC = &H20000 Global Const LINEDEVSTATE_REINIT = &H40000 Global Const LINEDEVSTATE_LOCK = &H80000 Global Const LINEDEVSTATE_CAPSCHANGE = &H100000 Global Const LINEDEVSTATE_CONFIGCHANGE = &H200000 Global Const LINEDEVSTATE_TRANSLATECHANGE = &H400000 Global Const LINEDEVSTATE_COMPLCANCEL = &H800000 Global Const LINEDEVSTATE_REMOVED = &H1000000 Type LINEDEVSTATUS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwNumOpens As Long dwOpenMediaModes As Long dwNumActiveCalls As Long dwNumOnHoldCalls As Long dwNumOnHoldPendCalls As Long dwLineFeatures As Long dwNumCallCompletions As Long dwRingMode As Long dwSignalLevel As Long dwBatteryLevel As Long dwRoamMode As Long dwDevStatusFlags As Long dwTerminalModesSize As Long dwTerminalModesOffset As Long dwDevSpecificSize As Long dwDevSpecificOffset As Long End Type Global Const LINEDEVSTATUSFLAGS_CONNECTED = &H1 Global Const LINEDEVSTATUSFLAGS_MSGWAIT = &H2 Global Const LINEDEVSTATUSFLAGS_INSERVICE = &H4 Global Const LINEDEVSTATUSFLAGS_LOCKED = &H8 Global Const LINEDIALTONEMODE_NORMAL = &H1 Global Const LINEDIALTONEMODE_SPECIAL = &H2 Global Const LINEDIALTONEMODE_INTERNAL = &H4 Global Const LINEDIALTONEMODE_EXTERNAL = &H8 Global Const LINEDIALTONEMODE_UNKNOWN = &H10 Global Const LINEDIALTONEMODE_UNAVAIL = &H20 Global Const LINEDIGITMODE_PULSE = &H1 Global Const LINEDIGITMODE_DTMF = &H2 Global Const LINEDIGITMODE_DTMFEND = &H4 Global Const LINEDISCONNECTMODE_NORMAL = &H1 Global Const LINEDISCONNECTMODE_UNKNOWN = &H2 Global Const LINEDISCONNECTMODE_REJECT = &H4 Global Const LINEDISCONNECTMODE_PICKUP = &H8 Global Const LINEDISCONNECTMODE_FORWARDED = &H10 Global Const LINEDISCONNECTMODE_BUSY = &H20 Global Const LINEDISCONNECTMODE_NOANSWER = &H40 Global Const LINEDISCONNECTMODE_BADADDRESS = &H80 Global Const LINEDISCONNECTMODE_UNREACHABLE = &H100 Global Const LINEDISCONNECTMODE_CONGESTION = &H200 Global Const LINEDISCONNECTMODE_INCOMPATIBLE = &H400 Global Const LINEDISCONNECTMODE_UNAVAIL = &H800 Global Const LINEDISCONNECTMODE_NODIALTONE = &H1000 Global Const LINEERR_ALLOCATED = &H80000001 Global Const LINEERR_BADDEVICEID = &H80000002 Global Const LINEERR_BEARERMODEUNAVAIL = &H80000003 Global Const LINEERR_CALLUNAVAIL = &H80000005 Global Const LINEERR_COMPLETIONOVERRUN = &H80000006 Global Const LINEERR_CONFERENCEFULL = &H80000007 Global Const LINEERR_DIALBILLING = &H80000008 Global Const LINEERR_DIALDIALTONE = &H80000009 Global Const LINEERR_DIALPROMPT = &H8000000A Global Const LINEERR_DIALQUIET = &H8000000B Global Const LINEERR_INCOMPATIBLEAPIVERSION = &H8000000C Global Const LINEERR_INCOMPATIBLEEXTVERSION = &H8000000D Global Const LINEERR_INIFILECORRUPT = &H8000000E Global Const LINEERR_INUSE = &H8000000F Global Const LINEERR_INVALADDRESS = &H80000010 Global Const LINEERR_INVALADDRESSID = &H80000011 Global Const LINEERR_INVALADDRESSMODE = &H80000012 Global Const LINEERR_INVALADDRESSSTATE = &H80000013 Global Const LINEERR_INVALAPPHANDLE = &H80000014 Global Const LINEERR_INVALAPPNAME = &H80000015 Global Const LINEERR_INVALBEARERMODE = &H80000016 Global Const LINEERR_INVALCALLCOMPLMODE = &H80000017 Global Const LINEERR_INVALCALLHANDLE = &H80000018 Global Const LINEERR_INVALCALLPARAMS = &H80000019 Global Const LINEERR_INVALCALLPRIVILEGE = &H8000001A Global Const LINEERR_INVALCALLSELECT = &H8000001B Global Const LINEERR_INVALCALLSTATE = &H8000001C Global Const LINEERR_INVALCALLSTATELIST = &H8000001D Global Const LINEERR_INVALCARD = &H8000001E Global Const LINEERR_INVALCOMPLETIONID = &H8000001F Global Const LINEERR_INVALCONFCALLHANDLE = &H80000020 Global Const LINEERR_INVALCONSULTCALLHANDLE = &H80000021 Global Const LINEERR_INVALCOUNTRYCODE = &H80000022 Global Const LINEERR_INVALDEVICECLASS = &H80000023 Global Const LINEERR_INVALDEVICEHANDLE = &H80000024 Global Const LINEERR_INVALDIALPARAMS = &H80000025 Global Const LINEERR_INVALDIGITLIST = &H80000026 Global Const LINEERR_INVALDIGITMODE = &H80000027 Global Const LINEERR_INVALDIGITS = &H80000028 Global Const LINEERR_INVALEXTVERSION = &H80000029 Global Const LINEERR_INVALGROUPID = &H8000002A Global Const LINEERR_INVALLINEHANDLE = &H8000002B Global Const LINEERR_INVALLINESTATE = &H8000002C Global Const LINEERR_INVALLOCATION = &H8000002D Global Const LINEERR_INVALMEDIALIST = &H8000002E Global Const LINEERR_INVALMEDIAMODE = &H8000002F Global Const LINEERR_INVALMESSAGEID = &H80000030 Global Const LINEERR_INVALPARAM = &H80000032 Global Const LINEERR_INVALPARKID = &H80000033 Global Const LINEERR_INVALPARKMODE = &H80000034 Global Const LINEERR_INVALPOINTER = &H80000035 Global Const LINEERR_INVALPRIVSELECT = &H80000036 Global Const LINEERR_INVALRATE = &H80000037 Global Const LINEERR_INVALREQUESTMODE = &H80000038 Global Const LINEERR_INVALTERMINALID = &H80000039 Global Const LINEERR_INVALTERMINALMODE = &H8000003A Global Const LINEERR_INVALTIMEOUT = &H8000003B Global Const LINEERR_INVALTONE = &H8000003C Global Const LINEERR_INVALTONELIST = &H8000003D Global Const LINEERR_INVALTONEMODE = &H8000003E Global Const LINEERR_INVALTRANSFERMODE = &H8000003F Global Const LINEERR_LINEMAPPERFAILED = &H80000040 Global Const LINEERR_NOCONFERENCE = &H80000041 Global Const LINEERR_NODEVICE = &H80000042 Global Const LINEERR_NODRIVER = &H80000043 Global Const LINEERR_NOMEM = &H80000044 Global Const LINEERR_NOREQUEST = &H80000045 Global Const LINEERR_NOTOWNER = &H80000046 Global Const LINEERR_NOTREGISTERED = &H80000047 Global Const LINEERR_OPERATIONFAILED = &H80000048 Global Const LINEERR_OPERATIONUNAVAIL = &H80000049 Global Const LINEERR_RATEUNAVAIL = &H8000004A Global Const LINEERR_RESOURCEUNAVAIL = &H8000004B Global Const LINEERR_REQUESTOVERRUN = &H8000004C Global Const LINEERR_STRUCTURETOOSMALL = &H8000004D Global Const LINEERR_TARGETNOTFOUND = &H8000004E Global Const LINEERR_TARGETSELF = &H8000004F Global Const LINEERR_UNINITIALIZED = &H80000050 Global Const LINEERR_USERUSERINFOTOOBIG = &H80000051 Global Const LINEERR_REINIT = &H80000052 Global Const LINEERR_ADDRESSBLOCKED = &H80000053 Global Const LINEERR_BILLINGREJECTED = &H80000054 Global Const LINEERR_INVALFEATURE = &H80000055 Global Const LINEERR_NOMULTIPLEINSTANCE = &H80000056 Global Const LINEFEATURE_DEVSPECIFIC = &H1 Global Const LINEFEATURE_DEVSPECIFICFEAT = &H2 Global Const LINEFEATURE_FORWARD = &H4 Global Const LINEFEATURE_MAKECALL = &H8 Global Const LINEFEATURE_SETMEDIACONTROL = &H10 Global Const LINEFEATURE_SETTERMINAL = &H20 Type lineForward dwForwardMode As Long dwCallerAddressSize As Long dwCallerAddressOffset As Long dwDestCountryCode As Long dwDestAddressSize As Long dwDestAddressOffset As Long End Type Type LINEFORWARDLIST dwTotalSize As Long dwNumEntries As Long ForwardList(1) As lineForward End Type Global Const LINEFORWARDMODE_UNCOND = &H1 Global Const LINEFORWARDMODE_UNCONDINTERNAL = &H2 Global Const LINEFORWARDMODE_UNCONDEXTERNAL = &H4 Global Const LINEFORWARDMODE_UNCONDSPECIFIC = &H8 Global Const LINEFORWARDMODE_BUSY = &H10 Global Const LINEFORWARDMODE_BUSYINTERNAL = &H20 Global Const LINEFORWARDMODE_BUSYEXTERNAL = &H40 Global Const LINEFORWARDMODE_BUSYSPECIFIC = &H80 Global Const LINEFORWARDMODE_NOANSW = &H100 Global Const LINEFORWARDMODE_NOANSWINTERNAL = &H200 Global Const LINEFORWARDMODE_NOANSWEXTERNAL = &H400 Global Const LINEFORWARDMODE_NOANSWSPECIFIC = &H800 Global Const LINEFORWARDMODE_BUSYNA = &H1000 Global Const LINEFORWARDMODE_BUSYNAINTERNAL = &H2000 Global Const LINEFORWARDMODE_BUSYNAEXTERNAL = &H4000 Global Const LINEFORWARDMODE_BUSYNASPECIFIC = &H8000 Global Const LINEFORWARDMODE_UNKNOWN = &H10000 Global Const LINEFORWARDMODE_UNAVAIL = &H20000 Global Const LINEGATHERTERM_BUFFERFULL = &H1 Global Const LINEGATHERTERM_TERMDIGIT = &H2 Global Const LINEGATHERTERM_FIRSTTIMEOUT = &H4 Global Const LINEGATHERTERM_INTERTIMEOUT = &H8 Global Const LINEGATHERTERM_CANCEL = &H10 Global Const LINEGENERATETERM_DONE = &H1 Global Const LINEGENERATETERM_CANCEL = &H2 Type lineGenerateTone dwFrequency As Long dwCadenceOn As Long dwCadenceOff As Long dwVolume As Long End Type Global Const LINEMAPPER = &HFFFFFFFF Type LINEMEDIACONTROLCALLSTATE dwCallStates As Long dwMediaControl As Long End Type Type LINEMEDIACONTROLDIGIT dwDigit As Long dwDigitModes As Long dwMediaControl As Long End Type Type LINEMEDIACONTROLMEDIA dwMediaModes As Long dwDuration As Long dwMediaControl As Long End Type Type LINEMEDIACONTROLTONE dwAppSpecific As Long dwDuration As Long dwFrequency1 As Long dwFrequency2 As Long dwFrequency3 As Long dwMediaControl As Long End Type Global Const LINEMEDIACONTROL_NONE = &H1 Global Const LINEMEDIACONTROL_START = &H2 Global Const LINEMEDIACONTROL_RESET = &H4 Global Const LINEMEDIACONTROL_PAUSE = &H8 Global Const LINEMEDIACONTROL_RESUME = &H10 Global Const LINEMEDIACONTROL_RATEUP = &H20 Global Const LINEMEDIACONTROL_RATEDOWN = &H40 Global Const LINEMEDIACONTROL_RATENORMAL = &H80 Global Const LINEMEDIACONTROL_VOLUMEUP = &H100 Global Const LINEMEDIACONTROL_VOLUMEDOWN = &H200 Global Const LINEMEDIACONTROL_VOLUMENORMAL = &H400 Global Const LINEMEDIAMODE_UNKNOWN = &H2 Global Const LINEMEDIAMODE_INTERACTIVEVOICE = &H4 Global Const LINEMEDIAMODE_AUTOMATEDVOICE = &H8 Global Const LINEMEDIAMODE_DATAMODEM = &H10 Global Const LINEMEDIAMODE_G3FAX = &H20 Global Const LINEMEDIAMODE_TDD = &H40 Global Const LINEMEDIAMODE_G4FAX = &H80 Global Const LINEMEDIAMODE_DIGITALDATA = &H100 Global Const LINEMEDIAMODE_TELETEX = &H200 Global Const LINEMEDIAMODE_VIDEOTEX = &H400 Global Const LINEMEDIAMODE_TELEX = &H800 Global Const LINEMEDIAMODE_MIXED = &H1000 Global Const LINEMEDIAMODE_ADSI = &H2000 Global Const LINEMEDIAMODE_VOICEVIEW = &H4000 Global Const LAST_LINEMEDIAMODE = &H4000 Type LINEMONITORTONE dwAppSpecific As Long dwDuration As Long dwFrequency1 As Long dwFrequency2 As Long dwFrequency3 As Long End Type Global Const LINEPARKMODE_DIRECTED = &H1 Global Const LINEPARKMODE_NONDIRECTED = &H2 Global Const LINEREMOVEFROMCONF_NONE = &H1 Global Const LINEREMOVEFROMCONF_LAST = &H2 Global Const LINEREMOVEFROMCONF_ANY = &H3 Type LINEREQMAKECALL szDestAddress As String * TAPIMAXDESTADDRESSSIZE szAppName As String * TAPIMAXAPPNAMESIZE szCalledParty As String * TAPIMAXCALLEDPARTYSIZE szComment As String * TAPIMAXCOMMENTSIZE End Type Type LINEREQMEDIACALL hWnd As Integer wRequestID As Integer szDeviceClass As String * TAPIMAXDEVICECLASSSIZE ' unsigned char ucDeviceID[TAPIMAXDEVICEIDSIZE]; ucDeviceID As String * TAPIMAXDEVICEIDSIZE dwSize As Long dwSecure As Long szDestAddress As String * TAPIMAXDESTADDRESSSIZE szAppName As String * TAPIMAXAPPNAMESIZE szCalledParty As String * TAPIMAXCALLEDPARTYSIZE szComment As String * TAPIMAXCOMMENTSIZE End Type Global Const LINEREQUESTMODE_MAKECALL = &H1 Global Const LINEREQUESTMODE_MEDIACALL = &H2 Global Const LINEREQUESTMODE_DROP = &H4 Global Const LAST_LINEREQUESTMODE = LINEREQUESTMODE_MEDIACAL Global Const LINEROAMMODE_UNKNOWN = &H1 Global Const LINEROAMMODE_UNAVAIL = &H2 Global Const LINEROAMMODE_HOME = &H4 Global Const LINEROAMMODE_ROAMA = &H8 Global Const LINEROAMMODE_ROAMB = &H10 Global Const LINESPECIALINFO_NOCIRCUIT = &H1 Global Const LINESPECIALINFO_CUSTIRREG = &H2 Global Const LINESPECIALINFO_REORDER = &H4 Global Const LINESPECIALINFO_UNKNOWN = &H8 Global Const LINESPECIALINFO_UNAVAIL = &H10 Type LINETERMCAPS dwTermDev As Long dwTermModes As Long dwTermSharing As Long End Type Global Const LINETERMDEV_PHONE = &H1 Global Const LINETERMDEV_HEADSET = &H2 Global Const LINETERMDEV_SPEAKER = &H4 Global Const LINETERMMODE_BUTTONS = &H1 Global Const LINETERMMODE_LAMPS = &H2 Global Const LINETERMMODE_DISPLAY = &H4 Global Const LINETERMMODE_RINGER = &H8 Global Const LINETERMMODE_HOOKSWITCH = &H10 Global Const LINETERMMODE_MEDIATOLINE = &H20 Global Const LINETERMMODE_MEDIAFROMLINE = &H40 Global Const LINETERMMODE_MEDIABIDIRECT = &H80 Global Const LINETERMSHARING_PRIVATE = &H1 Global Const LINETERMSHARING_SHAREDEXCL = &H2 Global Const LINETERMSHARING_SHAREDCONF = &H4 Global Const LINETONEMODE_CUSTOM = &H1 Global Const LINETONEMODE_RINGBACK = &H2 Global Const LINETONEMODE_BUSY = &H4 Global Const LINETONEMODE_BEEP = &H8 Global Const LINETONEMODE_BILLING = &H10 Global Const LINETRANSFERMODE_TRANSFER = &H1 Global Const LINETRANSFERMODE_CONFERENCE = &H2 Type LINETRANSLATEOUTPUT dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwDialableStringSize As Long dwDialableStringOffset As Long dwDisplayableStringSize As Long dwDisplayableStringOffset As Long dwCurrentCountry As Long dwDestCountry As Long dwTranslateResults As Long End Type Type LINETRANSLATECAPS dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwNumLocations As Long dwLocationListSize As Long dwLocationListOffset As Long dwCurrentLocationID As Long dwNumCards As Long dwCardListSize As Long dwCardListOffset As Long dwCurrentPreferredCardID As Long End Type Type LINELOCATIONENTRY dwPermanentLocationID As Long dwLocationNameSize As Long dwLocationNameOffset As Long dwCountryCode As Long dwCityCodeSize As Long dwCityCodeOffset As Long dwPreferredCardID As Long dwLocalAccessCodeSize As Long dwLocalAccessCodeOffset As Long dwLongDistanceAccessCodeSize As Long dwLongDistanceAccessCodeOffset As Long dwTollPrefixListSize As Long dwTollPrefixListOffset As Long dwCountryID As Long dwOptions As Long dwCancelCallWaitingSize As Long dwCancelCallWaitingOffset As Long End Type Type LINECARDENTRY dwPermanentCardID As Long dwCardNameSize As Long dwCardNameOffset As Long dwCardNumberDigits As Long dwSameAreaRuleSize As Long dwSameAreaRuleOffset As Long dwLongDistanceRuleSize As Long dwLongDistanceRuleOffset As Long dwInternationalRuleSize As Long dwInternationalRuleOffset As Long dwOptions As Long End Type Type LINECOUNTRYLIST dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwNumCountries As Long dwCountryListSize As Long dwCountryListOffset As Long End Type Type LINECOUNTRYENTRY dwCountryID As Long dwCountryCode As Long dwNextCountryID As Long dwCountryNameSize As Long dwCountryNameOffset As Long dwSameAreaRuleSize As Long dwSameAreaRuleOffset As Long dwLongDistanceRuleSize As Long dwLongDistanceRuleOffset As Long dwInternationalRuleSize As Long dwInternationalRuleOffset As Long End Type Type LINEPROVIDERLIST dwTotalSize As Long dwNeededSize As Long dwUsedSize As Long dwNumProviders As Long dwProviderListSize As Long dwProviderListOffset As Long End Type Type LINEPROVIDERENTRY dwPermanentProviderID As Long dwProviderFilenameSize As Long dwProviderFilenameOffset As Long End Type Global Const LINETOLLLISTOPTION_ADD = &H1 Global Const LINETOLLLISTOPTION_REMOVE = &H2 Global Const LINETRANSLATEOPTION_CARDOVERRIDE = &H1 Global Const LINETRANSLATEOPTION_CANCELCALLWAITING = &H2 Global Const LINETRANSLATEOPTION_FORCELOCAL = &H4 Global Const LINETRANSLATEOPTION_FORCELD = &H8 Global Const LINETRANSLATERESULT_CANONICAL = &H1 Global Const LINETRANSLATERESULT_INTERNATIONAL = &H2 Global Const LINETRANSLATERESULT_LONGDISTANCE = &H4 Global Const LINETRANSLATERESULT_LOCAL = &H8 Global Const LINETRANSLATERESULT_INTOLLLIST = &H10 Global Const LINETRANSLATERESULT_NOTINTOLLLIST = &H20 Global Const LINETRANSLATERESULT_DIALBILLING = &H40 Global Const LINETRANSLATERESULT_DIALQUIET = &H80 Global Const LINETRANSLATERESULT_DIALDIALTONE = &H100 Global Const LINETRANSLATERESULT_DIALPROMPT = &H200 Global Const LINELOCATIONOPTION_PULSEDIAL = &H1 Global Const LINECARDOPTION_PREDEFINED = &H1 Global Const LINECARDOPTION_HIDDEN = &H2 ' Simple Telephony prototypes Declare Function tapiRequestMakeCall Lib "tapi.dll" (ByVal lpszDestAddress As String, ByVal lpszAppName As String, ByVal lpszCalledParty As String, ByVal lpszComment As String) Declare Function tapiRequestMediaCall Lib "tapi.dll" (ByVal hWnd As Integer, ByVal wRequestID As Integer, ByVal lpszDeviceClass As String, ByVal lpDeviceID As String, ByVal dwSize As Long, ByVal dwSecure As Long, ByVal lpszDestAddress As String, ByVal lpszAppName As String, ByVal lpszCalledParty As String, ByVal lpszComment As String) Declare Function tapiRequestDrop Lib "tapi.dll" (ByVal hWnd As Integer, ByVal wRequestID As Integer) Declare Function lineRegisterRequestRecipient Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwRegistrationInstance As Long, ByVal dwRequestMode As Long, ByVal bEnable As Long) Declare Function tapiGetLocationInfo Lib "tapi.dll" (lpszCountryCode As String, lpszCityCode As String) ' Tapi Address Translation procedures Declare Function lineSetCurrentLocation Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwLocation As Long) Declare Function lineSetTollList Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal lpszAddressIn As String, ByVal dwTollListOption As Long) Declare Function lineTranslateAddress Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal lpszAddressIn As String, ByVal dwCard As Long, ByVal dwTranslateOptions As Long, lpTranslateOutput As LINETRANSLATEOUTPUT) Declare Function lineGetTranslateCaps Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwAPIVersion As Long, lpTranslateCaps As LPLINETRANSLATECAPS) ' Tapi function prototypes Declare Function lineAccept Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpsUserUserInfo As String, ByVal dwSize As Long) Declare Function lineAddToConference Lib "tapi.dll" (ByVal hConfCall As Integer, ByVal hConsultCall As Integer) Declare Function lineAnswer Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpsUserUserInfo As String, ByVal dwSize As Long) Declare Function lineBlindTransfer Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpszDestAddress As String, ByVal dwCountryCode As Long) Declare Function lineClose Lib "tapi.dll" (ByVal hLine As Integer) Declare Function lineCompleteCall Lib "tapi.dll" (ByVal hCall As Integer, lpdwCompletionID As Long, ByVal dwCompletionMode As Long, ByVal dwMessageID As Long) Declare Function lineCompleteTransfer Lib "tapi.dll" (ByVal hCall As Integer, ByVal hConsultCall As Integer, lphConfCall As Integer, ByVal dwTransferMode As Long) Declare Function lineConfigDialog Lib "tapi.dll" (ByVal dwDeviceID As Long, ByVal hwndOwner As Integer, ByVal lpszDeviceClass As String) Declare Function lineConfigDialogEdit Lib "tapi.dll" (ByVal dwDeviceID As Long, ByVal hwndOwner As Integer, ByVal lpszDeviceClass As String, lpDeviceConfigIn As Any, ByVal dwSize As Long, lpDeviceConfigOut As String) Declare Function lineDeallocateCall Lib "tapi.dll" (ByVal hCall As Integer) Declare Function lineDevSpecific Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal hCall As Integer, lpParams As Any, ByVal dwSize As Long) Declare Function lineDevSpecificFeature Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwFeature As Long, lpParams As Any, ByVal dwSize As Long) Declare Function lineDial Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpszDestAddress As String, ByVal dwCountryCode As Long) Declare Function lineDrop Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpsUserUserInfo As String, ByVal dwSize As Long) Declare Function lineForward Lib "tapi.dll" (ByVal hLine As Integer, ByVal bAllAddresses As Long, ByVal dwAddressID As Long, lpForwardList As LINEFORWARDLIST, ByVal dwNumRingsNoAnswer As Long, lphConsultCall As Integer, lpCallParams As LINECALLPARAMS) Declare Function lineGatherDigits Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwDigitModes As Long, lpsDigits As Integer, ByVal dwNumDigits As Long, ByVal lpszTerminationDigits As String, ByVal dwFirstDigitTimeout As Long, ByVal dwInterDigitTimeout As Long) Declare Function lineGenerateDigits Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwDigitMode As Long, ByVal lpszDigits As String, ByVal dwDuration As Long) Declare Function lineGenerateTone Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwToneMode As Long, ByVal dwDuration As Long, ByVal dwNumTones As Long, lpTones As lineGenerateTone) Declare Function lineGetAddressCaps Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAddressID As Long, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, lpAddressCaps As LINEADDRESSCAPS) Declare Function lineGetAddressID Lib "tapi.dll" (ByVal hLine As Integer, lpdwAddressID As Long, ByVal dwAddressMode As Long, ByVal lpsAddress As String, ByVal dwSize As Long) Declare Function lineGetAddressStatus Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, lpAddressStatus As LINEADDRESSSTATUS) Declare Function lineGetCallInfo Lib "tapi.dll" (ByVal hCall As Integer, lpCallInfo As LINECALLINFO) Declare Function lineGetCallStatus Lib "tapi.dll" (ByVal hCall As Integer, lpCallStatus As LINECALLSTATUS) Declare Function lineGetConfRelatedCalls Lib "tapi.dll" (ByVal hCall As Integer, lpCallList As LINECALLLIST) Declare Function lineGetDevCaps Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, lpDevCaps As LINEDEVCAPS) Declare Function lineGetDevConfig Lib "tapi.dll" (ByVal dwDeviceID As Long, lpDeviceConfig As String, ByVal lpszDeviceClass As String) Declare Function lineGetNewCalls Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal dwSelect As Long, lpCallList As LINECALLLIST) Declare Function lineGetIcon Lib "tapi.dll" (ByVal dwDeviceID As Long, ByVal lpszDeviceClass As String, lphIcon As Integer) Declare Function lineGetID Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal hCall As Integer, ByVal dwSelect As Long, lpDeviceID As String, ByVal lpszDeviceClass As String) Declare Function lineGetLineDevStatus Lib "tapi.dll" (ByVal hLine As Integer, lpLineDevStatus As LINEDEVSTATUS) Declare Function lineGetNumRings Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, lpdwNumRings As Long) Declare Function lineGetRequest Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwRequestMode As Long, lpRequestBuffer As Any) Declare Function lineGetStatusMessages Lib "tapi.dll" (ByVal hLine As Integer, lpdwLineStates As Long, lpdwAddressStates As Long) Declare Function lineHandoff Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpszFileName As String, ByVal dwMediaMode As Long) Declare Function lineHold Lib "tapi.dll" (ByVal hCall As Integer) Declare Function lineInitialize Lib "tapi.dll" (lphLineApp As Integer, ByVal hInstance As Integer, lpfnCallback As LINECALLBACK, ByVal lpszAppName As String, lpdwNumDevs As Long) Declare Function lineMakeCall Lib "tapi.dll" (ByVal hLine As Integer, lphCall As Integer, ByVal lpszDestAddress As String, ByVal dwCountryCode As Long, lpCallParams As LINECALLPARAMS) Declare Function lineMonitorDigits Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwDigitModes As Long) Declare Function lineMonitorMedia Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwMediaModes As Long) Declare Function lineMonitorTones Lib "tapi.dll" (ByVal hCall As Integer, lpToneList As LINEMONITORTONE, ByVal dwNumEntries As Long) Declare Function lineNegotiateAPIVersion Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPILowVersion As Long, ByVal dwAPIHighVersion As Long, lpdwAPIVersion As Long, lpExtensionID As LINEEXTENSIONID) Declare Function lineNegotiateExtVersion Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal dwExtLowVersion As Long, ByVal dwExtHighVersion As Long, lpdwExtVersion As Long) Declare Function lineOpen Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, lphLine As Integer, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, ByVal dwCallbackInstance As Long, ByVal dwPrivileges As Long, ByVal dwMediaModes As Long, lpCallParams As LINECALLPARAMS) Declare Function linePark Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwParkMode As Long, ByVal lpszDirAddress As String, lpNonDirAddress As String) Declare Function linePickup Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, lphCall As Integer, ByVal lpszDestAddress As String, ByVal lpszGroupID As String) Declare Function linePrepareAddToConference Lib "tapi.dll" (ByVal hConfCall As Integer, lphConsultCall As Integer, lpCallParams As LINECALLPARAMS) Declare Function lineRedirect Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpszDestAddress As String, ByVal dwCountryCode As Long) Declare Function lineRemoveFromConference Lib "tapi.dll" (ByVal hCall As Integer) Declare Function lineSecureCall Lib "tapi.dll" (ByVal hCall As Integer) Declare Function lineSendUserUserInfo Lib "tapi.dll" (ByVal hCall As Integer, ByVal lpsUserUserInfo As String, ByVal dwSize As Long) Declare Function lineSetAppSpecific Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwAppSpecific As Long) Declare Function lineSetCallParams Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwBearerMode As Long, ByVal dwMinRate As Long, ByVal dwMaxRate As Long, lpDialParams As LINEDIALPARAMS) Declare Function lineSetCallPrivilege Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwCallPrivilege As Long) Declare Function lineSetDevConfig Lib "tapi.dll" (ByVal dwDeviceID As Long, lpDeviceConfig As Any, ByVal dwSize As Long, ByVal lpszDeviceClass As String) Declare Function lineSetMediaControl Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal hCall As Integer, ByVal dwSelect As Long, lpDigitList As LINEMEDIACONTROLDIGIT, ByVal dwDigitNumEntries As Long, lpMediaList As LINEMEDIACONTROLMEDIA, ByVal dwMediaNumEntries As Long, lpToneList As LINEMEDIACONTROLTONE, ByVal dwToneNumEntries As Long, lpCallStateList As LINEMEDIACONTROLCALLSTATE, ByVal dwCallStateNumEntries As Long) Declare Function lineSetMediaMode Lib "tapi.dll" (ByVal hCall As Integer, ByVal dwMediaModes As Long) Declare Function lineSetNumRings Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal dwNumRings As Long) Declare Function lineSetStatusMessages Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwLineStates As Long, ByVal dwAddressStates As Long) Declare Function lineSetTerminal Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, ByVal hCall As Integer, ByVal dwSelect As Long, ByVal dwTerminalModes As Long, ByVal dwTerminalID As Long, ByVal bEnable As Long) Declare Function lineSetupConference Lib "tapi.dll" (ByVal hCall As Integer, ByVal hLine As Integer, lphConfCall As Integer, lphConsultCall As Integer, ByVal dwNumParties As Long, lpCallParams As LINECALLPARAMS) Declare Function lineSetupTransfer Lib "tapi.dll" (ByVal hCall As Integer, lphConsultCall As Integer, lpCallParams As LINECALLPARAMS) Declare Function lineShutdown Lib "tapi.dll" (ByVal hLineApp As Integer) Declare Function lineSwapHold Lib "tapi.dll" (ByVal hActiveCall As Integer, ByVal hHeldCall As Integer) Declare Function lineUncompleteCall Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwCompletionID As Long) Declare Function lineUnhold Lib "tapi.dll" (ByVal hCall As Integer) Declare Function lineUnpark Lib "tapi.dll" (ByVal hLine As Integer, ByVal dwAddressID As Long, lphCall As Integer, ByVal lpszDestAddress As String) Declare Function lineReleaseUserUserInfo Lib "tapi.dll" (ByVal hCall As Integer) Declare Function phoneClose Lib "tapi.dll" (ByVal hPhone As Integer) Declare Function phoneConfigDialog Lib "tapi.dll" (ByVal dwDeviceID As Long, ByVal hwndOwner As Integer, ByVal lpszDeviceClass As String) Declare Function phoneDevSpecific Lib "tapi.dll" (ByVal hPhone As Integer, lpParams As Any, ByVal dwSize As Long) Declare Function phoneGetButtonInfo Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwButtonLampID As Long, lpButtonInfo As PHONEBUTTONINFO) Declare Function phoneGetData Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwDataID As Long, lpData As Any, ByVal dwSize As Long) Declare Function phoneGetDevCaps Lib "tapi.dll" (ByVal hPhoneApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, lpPhoneCaps As PHONECAPS) Declare Function phoneGetDisplay Lib "tapi.dll" (ByVal hPhone As Integer, lpDisplay As String) Declare Function phoneGetGain Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwHookSwitchDev As Long, lpdwGain As Long) Declare Function phoneGetHookSwitch Lib "tapi.dll" (ByVal hPhone As Integer, lpdwHookSwitchDevs As Long) Declare Function phoneGetIcon Lib "tapi.dll" (ByVal dwDeviceID As Long, ByVal lpszDeviceClass As String, lphIcon As Integer) Declare Function phoneGetID Lib "tapi.dll" (ByVal hPhone As Integer, lpDeviceID As String, ByVal lpszDeviceClass As String) Declare Function phoneGetLamp Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwButtonLampID As Long, lpdwLampMode As Long) Declare Function phoneGetRing Lib "tapi.dll" (ByVal hPhone As Integer, lpdwRingMode As Long, lpdwVolume As Long) Declare Function phoneGetStatus Lib "tapi.dll" (ByVal hPhone As Integer, lpPhoneStatus As PHONESTATUS) Declare Function phoneGetStatusMessages Lib "tapi.dll" (ByVal hPhone As Integer, lpdwPhoneStates As Long, lpdwButtonModes As Long, lpdwButtonStates As Long) Declare Function phoneGetVolume Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwHookSwitchDev As Long, lpdwVolume As Long) ' Ver PHONECALLBACK al comienzo del archivo Declare Function phoneInitialize Lib "tapi.dll" (lphPhoneApp As Integer, ByVal hInstance As Integer, lpfnCallback As Long, ByVal lpszAppName As String, lpdwNumDevs As Long) Declare Function phoneNegotiateAPIVersion Lib "tapi.dll" (ByVal hPhoneApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPILowVersion As Long, ByVal dwAPIHighVersion As Long, lpdwAPIVersion As Long, lpExtensionID As PHONEEXTENSIONID) Declare Function phoneNegotiateExtVersion Lib "tapi.dll" (ByVal hPhoneApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal dwExtLowVersion As Long, ByVal dwExtHighVersion As Long, lpdwExtVersion As Long) Declare Function phoneOpen Lib "tapi.dll" (ByVal hPhoneApp As Integer, ByVal dwDeviceID As Long, lphPhone As Integer, ByVal dwAPIVersion As Long, ByVal dwExtVersion As Long, ByVal dwCallbackInstance As Long, ByVal dwPrivilege As Long) Declare Function phoneSetButtonInfo Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwButtonLampID As Long, lpButtonInfo As PHONEBUTTONINFO) Declare Function phoneSetData Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwDataID As Long, lpData As Any, ByVal dwSize As Long) Declare Function phoneSetDisplay Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwRow As Long, ByVal dwColumn As Long, ByVal lpsDisplay As String, ByVal dwSize As Long) Declare Function phoneSetGain Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwHookSwitchDev As Long, ByVal dwGain As Long) Declare Function phoneSetHookSwitch Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwHookSwitchDevs As Long, ByVal dwHookSwitchMode As Long) Declare Function phoneSetLamp Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwButtonLampID As Long, ByVal dwLampMode As Long) Declare Function phoneSetRing Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwRingMode As Long, ByVal dwVolume As Long) Declare Function phoneSetStatusMessages Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwPhoneStates As Long, ByVal dwButtonModes As Long, ByVal dwButtonStates As Long) Declare Function phoneSetVolume Lib "tapi.dll" (ByVal hPhone As Integer, ByVal dwHookSwitchDev As Long, ByVal dwVolume As Long) Declare Function phoneShutdown Lib "tapi.dll" (ByVal hPhoneApp As Integer) Declare Function lineTranslateDialog Lib "tapi.dll" (ByVal hLineApp As Integer, ByVal dwDeviceID As Long, ByVal dwAPIVersion As Long, ByVal hwndOwner As Integer, ByVal lpszAddressIn As String) Declare Function lineGetCountry Lib "tapi.dll" (ByVal dwCountryID As Long, ByVal dwAPIVersion As Long, lpLineCountryList As LINECOUNTRYLIST) Declare Function lineGetAppPriority Lib "tapi.dll" (ByVal lpszAppFilename As String, ByVal dwMediaMode As Long, lpExtensionID As LINEEXTENSIONID, ByVal dwRequestMode As Long, lpExtensionName As String, lpdwPriority As Long) Declare Function lineSetAppPriority Lib "tapi.dll" (ByVal lpszAppFilename As String, ByVal dwMediaMode As Long, lpExtensionID As LINEEXTENSIONID, ByVal dwRequestMode As Long, ByVal lpszExtensionName As String, ByVal dwPriority As Long) Declare Function lineAddProvider Lib "tapi.dll" (ByVal lpszProviderFilename As String, ByVal hwndOwner As Integer, lpdwPermanentProviderID As Long) Declare Function lineConfigProvider Lib "tapi.dll" (ByVal hwndOwner As Integer, ByVal dwPermanentProviderID As Long) Declare Function lineRemoveProvider Lib "tapi.dll" (ByVal dwPermanentProviderID As Long, ByVal hwndOwner As Integer) Declare Function lineGetProviderList Lib "tapi.dll" (ByVal dwAPIVersion As Long, lpProviderList As LINEPROVIDERLIST)