windows-nt/Source/XPSP1/NT/multimedia/media/avi/inc.16/tspi.h
2020-09-26 16:20:57 +08:00

779 lines
25 KiB
C

// 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 1994 Microsoft, all rights reserved.
// Portions copyright 1992, 1993 Intel/Microsoft, all rights reserved.
#ifndef TSPI_H
#define TSPI_H
#include <windows.h>
#include "tapi.h"
// tspi.h is only of use in conjunction with tapi.h. Very few types are
// defined in tspi.h. Most types of procedure formal parameters are simply
// passed through from corresponding procedures in tapi.h. A working knowledge
// of the TAPI interface is required for an understanding of this interface.
#ifdef __cplusplus
extern "C" { /* Assume C declarations for C++ */
#endif /* __cplusplus */
#ifndef DECLARE_OPAQUE32
#define DECLARE_OPAQUE32(name) struct name##__ { int unused; }; \
typedef const struct name##__ FAR* name
#endif // DECLARE_OPAQUE32
#ifndef TSPIAPI
#define TSPIAPI __export __far __pascal
#endif
DECLARE_OPAQUE32(HDRVCALL);
DECLARE_OPAQUE32(HDRVLINE);
DECLARE_OPAQUE32(HDRVPHONE);
typedef HDRVCALL FAR * LPHDRVCALL;
typedef HDRVLINE FAR * LPHDRVLINE;
typedef HDRVPHONE FAR * LPHDRVPHONE;
DECLARE_OPAQUE32(HTAPICALL);
DECLARE_OPAQUE32(HTAPILINE);
DECLARE_OPAQUE32(HTAPIPHONE);
typedef HTAPICALL FAR * LPHTAPICALL;
typedef HTAPILINE FAR * LPHTAPILINE;
typedef HTAPIPHONE FAR * LPHTAPIPHONE;
typedef void (CALLBACK * LINEEVENT) (
HTAPILINE htLine,
HTAPICALL htCall,
DWORD dwMsg,
DWORD dwParam1,
DWORD dwParam2,
DWORD dwParam3);
typedef void (CALLBACK * PHONEEVENT) (
HTAPIPHONE htPhone,
DWORD dwMsg,
DWORD dwParam1,
DWORD dwParam2,
DWORD dwParam3);
#define TSPI_MESSAGE_BASE 500
// The lowest-numbered TSPI-specific message ID number
#define LINE_NEWCALL ((long) TSPI_MESSAGE_BASE + 0)
#define LINE_CALLDEVSPECIFIC ((long) TSPI_MESSAGE_BASE + 1)
#define LINE_CALLDEVSPECIFICFEATURE ((long) TSPI_MESSAGE_BASE + 2)
#define INITIALIZE_NEGOTIATION 0xFFFFFFFFL
typedef DWORD DRV_REQUESTID;
typedef void (CALLBACK * ASYNC_COMPLETION) (
DRV_REQUESTID dwRequestID,
LONG lResult);
// TSPIAPI TSPI_line functions
// ----------------------------------------------------------------------------
LONG TSPIAPI TSPI_lineAccept(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize);
LONG TSPIAPI TSPI_lineAddToConference(
DRV_REQUESTID dwRequestID,
HDRVCALL hdConfCall,
HDRVCALL hdConsultCall);
LONG TSPIAPI TSPI_lineAnswer(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize);
LONG TSPIAPI TSPI_lineBlindTransfer(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpszDestAddress,
DWORD dwCountryCode);
LONG TSPIAPI TSPI_lineClose(
HDRVLINE hdLine);
LONG TSPIAPI TSPI_lineCloseCall(
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineCompleteCall(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPDWORD lpdwCompletionID,
DWORD dwCompletionMode,
DWORD dwMessageID);
LONG TSPIAPI TSPI_lineCompleteTransfer(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
HDRVCALL hdConsultCall,
HTAPICALL htConfCall,
LPHDRVCALL lphdConfCall,
DWORD dwTransferMode);
LONG TSPIAPI TSPI_lineConditionalMediaDetection(
HDRVLINE hdLine,
DWORD dwMediaModes,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineConfigDialog(
DWORD dwDeviceID,
HWND hwndOwner,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_lineDevSpecific(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwAddressID,
HDRVCALL hdCall,
LPVOID lpParams,
DWORD dwSize);
LONG TSPIAPI TSPI_lineDevSpecificFeature(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwFeature,
LPVOID lpParams,
DWORD dwSize);
LONG TSPIAPI TSPI_lineDial(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpszDestAddress,
DWORD dwCountryCode);
LONG TSPIAPI TSPI_lineDrop(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize);
LONG TSPIAPI TSPI_lineDropOnClose(
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineDropNoOwner(
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineForward(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD bAllAddresses,
DWORD dwAddressID,
LPLINEFORWARDLIST const lpForwardList,
DWORD dwNumRingsNoAnswer,
HTAPICALL htConsultCall,
LPHDRVCALL lphdConsultCall,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineGatherDigits(
HDRVCALL hdCall,
DWORD dwEndToEndID,
DWORD dwDigitModes,
LPSTR lpsDigits,
DWORD dwNumDigits,
LPCSTR lpszTerminationDigits,
DWORD dwFirstDigitTimeout,
DWORD dwInterDigitTimeout);
LONG TSPIAPI TSPI_lineGenerateDigits(
HDRVCALL hdCall,
DWORD dwEndToEndID,
DWORD dwDigitMode,
LPCSTR lpszDigits,
DWORD dwDuration);
LONG TSPIAPI TSPI_lineGenerateTone(
HDRVCALL hdCall,
DWORD dwEndToEndID,
DWORD dwToneMode,
DWORD dwDuration,
DWORD dwNumTones,
LPLINEGENERATETONE const lpTones);
LONG TSPIAPI TSPI_lineGetAddressCaps(
DWORD dwDeviceID,
DWORD dwAddressID,
DWORD dwTSPIVersion,
DWORD dwExtVersion,
LPLINEADDRESSCAPS lpAddressCaps);
LONG TSPIAPI TSPI_lineGetAddressID(
HDRVLINE hdLine,
LPDWORD lpdwAddressID,
DWORD dwAddressMode,
LPCSTR lpsAddress,
DWORD dwSize);
LONG TSPIAPI TSPI_lineGetAddressStatus(
HDRVLINE hdLine,
DWORD dwAddressID,
LPLINEADDRESSSTATUS lpAddressStatus);
LONG TSPIAPI TSPI_lineGetCallAddressID(
HDRVCALL hdCall,
LPDWORD lpdwAddressID);
LONG TSPIAPI TSPI_lineGetCallInfo(
HDRVCALL hdCall,
LPLINECALLINFO lpCallInfo);
LONG TSPIAPI TSPI_lineGetCallStatus(
HDRVCALL hdCall,
LPLINECALLSTATUS lpCallStatus);
LONG TSPIAPI TSPI_lineGetDevCaps(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
DWORD dwExtVersion,
LPLINEDEVCAPS lpLineDevCaps);
LONG TSPIAPI TSPI_lineGetDevConfig(
DWORD dwDeviceID,
LPVARSTRING lpDeviceConfig,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_lineGetExtensionID(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
LPLINEEXTENSIONID lpExtensionID);
LONG TSPIAPI TSPI_lineGetIcon(
DWORD dwDeviceID,
LPCSTR lpszDeviceClass,
LPHICON lphIcon);
LONG TSPIAPI TSPI_lineGetID(
HDRVLINE hdLine,
DWORD dwAddressID,
HDRVCALL hdCall,
DWORD dwSelect,
LPVARSTRING lpDeviceID,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_lineGetLineDevStatus(
HDRVLINE hdLine,
LPLINEDEVSTATUS lpLineDevStatus);
LONG TSPIAPI TSPI_lineGetNumAddressIDs(
HDRVLINE hdLine,
LPDWORD lpdwNumAddressIDs);
LONG TSPIAPI TSPI_lineHold(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineMakeCall(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
HTAPICALL htCall,
LPHDRVCALL lphdCall,
LPCSTR lpszDestAddress,
DWORD dwCountryCode,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineMonitorDigits(
HDRVCALL hdCall,
DWORD dwDigitModes);
LONG TSPIAPI TSPI_lineMonitorMedia(
HDRVCALL hdCall,
DWORD dwMediaModes);
LONG TSPIAPI TSPI_lineMonitorTones(
HDRVCALL hdCall,
DWORD dwToneListID,
LPLINEMONITORTONE const lpToneList,
DWORD dwNumEntries);
LONG TSPIAPI TSPI_lineNegotiateExtVersion(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
DWORD dwLowVersion,
DWORD dwHighVersion,
LPDWORD lpdwExtVersion);
LONG TSPIAPI TSPI_lineNegotiateTSPIVersion(
DWORD dwDeviceID,
DWORD dwLowVersion,
DWORD dwHighVersion,
LPDWORD lpdwTSPIVersion);
LONG TSPIAPI TSPI_lineOpen(
DWORD dwDeviceID,
HTAPILINE htLine,
LPHDRVLINE lphdLine,
DWORD dwTSPIVersion,
LINEEVENT lpfnEventProc);
LONG TSPIAPI TSPI_linePark(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
DWORD dwParkMode,
LPCSTR lpszDirAddress,
LPVARSTRING lpNonDirAddress);
LONG TSPIAPI TSPI_linePickup(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwAddressID,
HTAPICALL htCall,
LPHDRVCALL lphdCall,
LPCSTR lpszDestAddress,
LPCSTR lpszGroupID);
LONG TSPIAPI TSPI_linePrepareAddToConference(
DRV_REQUESTID dwRequestID,
HDRVCALL hdConfCall,
HTAPICALL htConsultCall,
LPHDRVCALL lphdConsultCall,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineRedirect(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpszDestAddress,
DWORD dwCountryCode);
LONG TSPIAPI TSPI_lineRemoveFromConference(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineSecureCall(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineSelectExtVersion(
HDRVLINE hdLine,
DWORD dwExtVersion);
LONG TSPIAPI TSPI_lineSendUserUserInfo(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
LPCSTR lpsUserUserInfo,
DWORD dwSize);
LONG TSPIAPI TSPI_lineSetAppSpecific(
HDRVCALL hdCall,
DWORD dwAppSpecific);
LONG TSPIAPI TSPI_lineSetCallParams(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
DWORD dwBearerMode,
DWORD dwMinRate,
DWORD dwMaxRate,
LPLINEDIALPARAMS const lpDialParams);
LONG TSPIAPI TSPI_lineSetDefaultMediaDetection(
HDRVLINE hdLine,
DWORD dwMediaModes);
LONG TSPIAPI TSPI_lineSetDevConfig(
DWORD dwDeviceID,
LPVOID const lpDeviceConfig,
DWORD dwSize,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_lineSetMediaControl(
HDRVLINE hdLine,
DWORD dwAddressID,
HDRVCALL hdCall,
DWORD dwSelect,
LPLINEMEDIACONTROLDIGIT const lpDigitList,
DWORD dwDigitNumEntries,
LPLINEMEDIACONTROLMEDIA const lpMediaList,
DWORD dwMediaNumEntries,
LPLINEMEDIACONTROLTONE const lpToneList,
DWORD dwToneNumEntries,
LPLINEMEDIACONTROLCALLSTATE const lpCallStateList,
DWORD dwCallStateNumEntries);
LONG TSPIAPI TSPI_lineSetMediaMode(
HDRVCALL hdCall,
DWORD dwMediaMode);
LONG TSPIAPI TSPI_lineSetStatusMessages(
HDRVLINE hdLine,
DWORD dwLineStates,
DWORD dwAddressStates);
LONG TSPIAPI TSPI_lineSetTerminal(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwAddressID,
HDRVCALL hdCall,
DWORD dwSelect,
DWORD dwTerminalModes,
DWORD dwTerminalID,
DWORD bEnable);
LONG TSPIAPI TSPI_lineSetupConference(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
HDRVLINE hdLine,
HTAPICALL htConfCall,
LPHDRVCALL lphdConfCall,
HTAPICALL htConsultCall,
LPHDRVCALL lphdConsultCall,
DWORD dwNumParties,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineSetupTransfer(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall,
HTAPICALL htConsultCall,
LPHDRVCALL lphdConsultCall,
LPLINECALLPARAMS const lpCallParams);
LONG TSPIAPI TSPI_lineSwapHold(
DRV_REQUESTID dwRequestID,
HDRVCALL hdActiveCall,
HDRVCALL hdHeldCall);
LONG TSPIAPI TSPI_lineUncompleteCall(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwCompletionID);
LONG TSPIAPI TSPI_lineUnhold(
DRV_REQUESTID dwRequestID,
HDRVCALL hdCall);
LONG TSPIAPI TSPI_lineUnpark(
DRV_REQUESTID dwRequestID,
HDRVLINE hdLine,
DWORD dwAddressID,
HTAPICALL htCall,
LPHDRVCALL lphdCall,
LPCSTR lpszDestAddress);
// TSPIAPI TSPI_phone functions
// ----------------------------------------------------------------------------
LONG TSPIAPI TSPI_phoneClose(
HDRVPHONE hdPhone);
LONG TSPIAPI TSPI_phoneConfigDialog(
DWORD dwDeviceID,
HWND hwndOwner,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_phoneDevSpecific(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
LPVOID lpParams,
DWORD dwSize);
LONG TSPIAPI TSPI_phoneGetButtonInfo(
HDRVPHONE hdPhone,
DWORD dwButtonLampID,
LPPHONEBUTTONINFO lpButtonInfo);
LONG TSPIAPI TSPI_phoneGetData(
HDRVPHONE hdPhone,
DWORD dwDataID,
LPVOID lpData,
DWORD dwSize);
LONG TSPIAPI TSPI_phoneGetDevCaps(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
DWORD dwExtVersion,
LPPHONECAPS lpPhoneCaps);
LONG TSPIAPI TSPI_phoneGetDisplay(
HDRVPHONE hdPhone,
LPVARSTRING lpDisplay);
LONG TSPIAPI TSPI_phoneGetExtensionID(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
LPPHONEEXTENSIONID lpExtensionID);
LONG TSPIAPI TSPI_phoneGetGain(
HDRVPHONE hdPhone,
DWORD dwHookSwitchDev,
LPDWORD lpdwGain);
LONG TSPIAPI TSPI_phoneGetHookSwitch(
HDRVPHONE hdPhone,
LPDWORD lpdwHookSwitchDevs);
LONG TSPIAPI TSPI_phoneGetIcon(
DWORD dwDeviceID,
LPCSTR lpszDeviceClass,
LPHICON lphIcon);
LONG TSPIAPI TSPI_phoneGetID(
HDRVPHONE hdPhone,
LPVARSTRING lpDeviceID,
LPCSTR lpszDeviceClass);
LONG TSPIAPI TSPI_phoneGetLamp(
HDRVPHONE hdPhone,
DWORD dwButtonLampID,
LPDWORD lpdwLampMode);
LONG TSPIAPI TSPI_phoneGetRing(
HDRVPHONE hdPhone,
LPDWORD lpdwRingMode,
LPDWORD lpdwVolume);
LONG TSPIAPI TSPI_phoneGetStatus(
HDRVPHONE hdPhone,
LPPHONESTATUS lpPhoneStatus);
LONG TSPIAPI TSPI_phoneGetVolume(
HDRVPHONE hdPhone,
DWORD dwHookSwitchDev,
LPDWORD lpdwVolume);
LONG TSPIAPI TSPI_phoneNegotiateExtVersion(
DWORD dwDeviceID,
DWORD dwTSPIVersion,
DWORD dwLowVersion,
DWORD dwHighVersion,
LPDWORD lpdwExtVersion);
LONG TSPIAPI TSPI_phoneNegotiateTSPIVersion(
DWORD dwDeviceID,
DWORD dwLowVersion,
DWORD dwHighVersion,
LPDWORD lpdwTSPIVersion);
LONG TSPIAPI TSPI_phoneOpen(
DWORD dwDeviceID,
HTAPIPHONE htPhone,
LPHDRVPHONE lphdPhone,
DWORD dwTSPIVersion,
PHONEEVENT lpfnEventProc);
LONG TSPIAPI TSPI_phoneSelectExtVersion(
HDRVPHONE hdPhone,
DWORD dwExtVersion);
LONG TSPIAPI TSPI_phoneSetButtonInfo(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwButtonLampID,
LPPHONEBUTTONINFO const lpButtonInfo);
LONG TSPIAPI TSPI_phoneSetData(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwDataID,
LPVOID const lpData,
DWORD dwSize);
LONG TSPIAPI TSPI_phoneSetDisplay(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwRow,
DWORD dwColumn,
LPCSTR lpsDisplay,
DWORD dwSize);
LONG TSPIAPI TSPI_phoneSetGain(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwHookSwitchDev,
DWORD dwGain);
LONG TSPIAPI TSPI_phoneSetHookSwitch(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwHookSwitchDevs,
DWORD dwHookSwitchMode);
LONG TSPIAPI TSPI_phoneSetLamp(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwButtonLampID,
DWORD dwLampMode);
LONG TSPIAPI TSPI_phoneSetRing(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwRingMode,
DWORD dwVolume);
LONG TSPIAPI TSPI_phoneSetStatusMessages(
HDRVPHONE hdPhone,
DWORD dwPhoneStates,
DWORD dwButtonModes,
DWORD dwButtonStates);
LONG TSPIAPI TSPI_phoneSetVolume(
DRV_REQUESTID dwRequestID,
HDRVPHONE hdPhone,
DWORD dwHookSwitchDev,
DWORD dwVolume);
// TSPIAPI TSPI_provider functions
// ----------------------------------------------------------------------------
LONG TSPIAPI TSPI_providerConfig(
HWND hwndOwner,
DWORD dwPermanentProviderID);
LONG TSPIAPI TSPI_providerInit(
DWORD dwTSPIVersion,
DWORD dwPermanentProviderID,
DWORD dwLineDeviceIDBase,
DWORD dwPhoneDeviceIDBase,
DWORD dwNumLines,
DWORD dwNumPhones,
ASYNC_COMPLETION lpfnCompletionProc);
LONG TSPIAPI TSPI_providerInstall(
HWND hwndOwner,
DWORD dwPermanentProviderID);
LONG TSPIAPI TSPI_providerRemove(
HWND hwndOwner,
DWORD dwPermanentProviderID);
LONG TSPIAPI TSPI_providerShutdown(
DWORD dwTSPIVersion);
LONG TSPIAPI TSPI_providerEnumDevices(
DWORD dwPermanentProviderID,
LPDWORD lpdwNumLines,
LPDWORD lpdwNumPhones);
// The following macros are the ordinal numbers of the exported tspi functions
#define TSPI_PROC_BASE 500
#define TSPI_LINEACCEPT (TSPI_PROC_BASE + 0)
#define TSPI_LINEADDTOCONFERENCE (TSPI_PROC_BASE + 1)
#define TSPI_LINEANSWER (TSPI_PROC_BASE + 2)
#define TSPI_LINEBLINDTRANSFER (TSPI_PROC_BASE + 3)
#define TSPI_LINECLOSE (TSPI_PROC_BASE + 4)
#define TSPI_LINECLOSECALL (TSPI_PROC_BASE + 5)
#define TSPI_LINECOMPLETECALL (TSPI_PROC_BASE + 6)
#define TSPI_LINECOMPLETETRANSFER (TSPI_PROC_BASE + 7)
#define TSPI_LINECONDITIONALMEDIADETECTION (TSPI_PROC_BASE + 8)
#define TSPI_LINECONFIGDIALOG (TSPI_PROC_BASE + 9)
#define TSPI_LINEDEVSPECIFIC (TSPI_PROC_BASE + 10)
#define TSPI_LINEDEVSPECIFICFEATURE (TSPI_PROC_BASE + 11)
#define TSPI_LINEDIAL (TSPI_PROC_BASE + 12)
#define TSPI_LINEDROP (TSPI_PROC_BASE + 13)
#define TSPI_LINEFORWARD (TSPI_PROC_BASE + 14)
#define TSPI_LINEGATHERDIGITS (TSPI_PROC_BASE + 15)
#define TSPI_LINEGENERATEDIGITS (TSPI_PROC_BASE + 16)
#define TSPI_LINEGENERATETONE (TSPI_PROC_BASE + 17)
#define TSPI_LINEGETADDRESSCAPS (TSPI_PROC_BASE + 18)
#define TSPI_LINEGETADDRESSID (TSPI_PROC_BASE + 19)
#define TSPI_LINEGETADDRESSSTATUS (TSPI_PROC_BASE + 20)
#define TSPI_LINEGETCALLADDRESSID (TSPI_PROC_BASE + 21)
#define TSPI_LINEGETCALLINFO (TSPI_PROC_BASE + 22)
#define TSPI_LINEGETCALLSTATUS (TSPI_PROC_BASE + 23)
#define TSPI_LINEGETDEVCAPS (TSPI_PROC_BASE + 24)
#define TSPI_LINEGETDEVCONFIG (TSPI_PROC_BASE + 25)
#define TSPI_LINEGETEXTENSIONID (TSPI_PROC_BASE + 26)
#define TSPI_LINEGETICON (TSPI_PROC_BASE + 27)
#define TSPI_LINEGETID (TSPI_PROC_BASE + 28)
#define TSPI_LINEGETLINEDEVSTATUS (TSPI_PROC_BASE + 29)
#define TSPI_LINEGETNUMADDRESSIDS (TSPI_PROC_BASE + 30)
#define TSPI_LINEHOLD (TSPI_PROC_BASE + 31)
#define TSPI_LINEMAKECALL (TSPI_PROC_BASE + 32)
#define TSPI_LINEMONITORDIGITS (TSPI_PROC_BASE + 33)
#define TSPI_LINEMONITORMEDIA (TSPI_PROC_BASE + 34)
#define TSPI_LINEMONITORTONES (TSPI_PROC_BASE + 35)
#define TSPI_LINENEGOTIATEEXTVERSION (TSPI_PROC_BASE + 36)
#define TSPI_LINENEGOTIATETSPIVERSION (TSPI_PROC_BASE + 37)
#define TSPI_LINEOPEN (TSPI_PROC_BASE + 38)
#define TSPI_LINEPARK (TSPI_PROC_BASE + 39)
#define TSPI_LINEPICKUP (TSPI_PROC_BASE + 40)
#define TSPI_LINEPREPAREADDTOCONFERENCE (TSPI_PROC_BASE + 41)
#define TSPI_LINEREDIRECT (TSPI_PROC_BASE + 42)
#define TSPI_LINEREMOVEFROMCONFERENCE (TSPI_PROC_BASE + 43)
#define TSPI_LINESECURECALL (TSPI_PROC_BASE + 44)
#define TSPI_LINESELECTEXTVERSION (TSPI_PROC_BASE + 45)
#define TSPI_LINESENDUSERUSERINFO (TSPI_PROC_BASE + 46)
#define TSPI_LINESETAPPSPECIFIC (TSPI_PROC_BASE + 47)
#define TSPI_LINESETCALLPARAMS (TSPI_PROC_BASE + 48)
#define TSPI_LINESETDEFAULTMEDIADETECTION (TSPI_PROC_BASE + 49)
#define TSPI_LINESETDEVCONFIG (TSPI_PROC_BASE + 50)
#define TSPI_LINESETMEDIACONTROL (TSPI_PROC_BASE + 51)
#define TSPI_LINESETMEDIAMODE (TSPI_PROC_BASE + 52)
#define TSPI_LINESETSTATUSMESSAGES (TSPI_PROC_BASE + 53)
#define TSPI_LINESETTERMINAL (TSPI_PROC_BASE + 54)
#define TSPI_LINESETUPCONFERENCE (TSPI_PROC_BASE + 55)
#define TSPI_LINESETUPTRANSFER (TSPI_PROC_BASE + 56)
#define TSPI_LINESWAPHOLD (TSPI_PROC_BASE + 57)
#define TSPI_LINEUNCOMPLETECALL (TSPI_PROC_BASE + 58)
#define TSPI_LINEUNHOLD (TSPI_PROC_BASE + 59)
#define TSPI_LINEUNPARK (TSPI_PROC_BASE + 60)
#define TSPI_PHONECLOSE (TSPI_PROC_BASE + 61)
#define TSPI_PHONECONFIGDIALOG (TSPI_PROC_BASE + 62)
#define TSPI_PHONEDEVSPECIFIC (TSPI_PROC_BASE + 63)
#define TSPI_PHONEGETBUTTONINFO (TSPI_PROC_BASE + 64)
#define TSPI_PHONEGETDATA (TSPI_PROC_BASE + 65)
#define TSPI_PHONEGETDEVCAPS (TSPI_PROC_BASE + 66)
#define TSPI_PHONEGETDISPLAY (TSPI_PROC_BASE + 67)
#define TSPI_PHONEGETEXTENSIONID (TSPI_PROC_BASE + 68)
#define TSPI_PHONEGETGAIN (TSPI_PROC_BASE + 69)
#define TSPI_PHONEGETHOOKSWITCH (TSPI_PROC_BASE + 70)
#define TSPI_PHONEGETICON (TSPI_PROC_BASE + 71)
#define TSPI_PHONEGETID (TSPI_PROC_BASE + 72)
#define TSPI_PHONEGETLAMP (TSPI_PROC_BASE + 73)
#define TSPI_PHONEGETRING (TSPI_PROC_BASE + 74)
#define TSPI_PHONEGETSTATUS (TSPI_PROC_BASE + 75)
#define TSPI_PHONEGETVOLUME (TSPI_PROC_BASE + 76)
#define TSPI_PHONENEGOTIATEEXTVERSION (TSPI_PROC_BASE + 77)
#define TSPI_PHONENEGOTIATETSPIVERSION (TSPI_PROC_BASE + 78)
#define TSPI_PHONEOPEN (TSPI_PROC_BASE + 79)
#define TSPI_PHONESELECTEXTVERSION (TSPI_PROC_BASE + 80)
#define TSPI_PHONESETBUTTONINFO (TSPI_PROC_BASE + 81)
#define TSPI_PHONESETDATA (TSPI_PROC_BASE + 82)
#define TSPI_PHONESETDISPLAY (TSPI_PROC_BASE + 83)
#define TSPI_PHONESETGAIN (TSPI_PROC_BASE + 84)
#define TSPI_PHONESETHOOKSWITCH (TSPI_PROC_BASE + 85)
#define TSPI_PHONESETLAMP (TSPI_PROC_BASE + 86)
#define TSPI_PHONESETRING (TSPI_PROC_BASE + 87)
#define TSPI_PHONESETSTATUSMESSAGES (TSPI_PROC_BASE + 88)
#define TSPI_PHONESETVOLUME (TSPI_PROC_BASE + 89)
#define TSPI_PROVIDERCONFIG (TSPI_PROC_BASE + 90)
#define TSPI_PROVIDERINIT (TSPI_PROC_BASE + 91)
#define TSPI_PROVIDERINSTALL (TSPI_PROC_BASE + 92)
#define TSPI_PROVIDERREMOVE (TSPI_PROC_BASE + 93)
#define TSPI_PROVIDERSHUTDOWN (TSPI_PROC_BASE + 94)
#define TSPI_PROVIDERENUMDEVICES (TSPI_PROC_BASE + 95)
#define TSPI_LINEDROPONCLOSE (TSPI_PROC_BASE + 96)
#define TSPI_LINEDROPNOOWNER (TSPI_PROC_BASE + 97)
#ifdef __cplusplus
} /* End of extern "C" { */
#endif /* __cplusplus */
#endif // TSPI_H