4035 lines
105 KiB
Plaintext
4035 lines
105 KiB
Plaintext
//
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
cpp_quote("/* Copyright (c) Microsoft Corporation. All rights reserved. */")
|
|
|
|
#ifndef __TAPI3IF_IDL__
|
|
#define __TAPI3IF_IDL__
|
|
|
|
import "oaidl.idl";
|
|
import "basetsd.h";
|
|
import "strmif.idl";
|
|
|
|
midl_pragma warning( disable: 2039 )
|
|
|
|
cpp_quote("#if 0")
|
|
#ifdef _X86_
|
|
typedef long TAPIHWND;
|
|
#else
|
|
typedef LONGLONG TAPIHWND;
|
|
#endif
|
|
cpp_quote("#endif")
|
|
|
|
|
|
cpp_quote("#ifdef _X86_")
|
|
cpp_quote("typedef long TAPIHWND;")
|
|
cpp_quote("#else")
|
|
cpp_quote("typedef LONGLONG TAPIHWND;")
|
|
cpp_quote("#endif")
|
|
|
|
|
|
typedef long TAPI_DIGITMODE;
|
|
|
|
typedef enum TAPI_TONEMODE
|
|
{
|
|
TTM_RINGBACK = 0x00000002,
|
|
TTM_BUSY = 0x00000004,
|
|
TTM_BEEP = 0x00000008,
|
|
TTM_BILLING = 0x00000010
|
|
|
|
} TAPI_TONEMODE;
|
|
|
|
typedef enum TAPI_GATHERTERM
|
|
{
|
|
TGT_BUFFERFULL = 0x00000001,
|
|
TGT_TERMDIGIT = 0x00000002,
|
|
TGT_FIRSTTIMEOUT = 0x00000004,
|
|
TGT_INTERTIMEOUT = 0x00000008,
|
|
TGT_CANCEL = 0x00000010
|
|
|
|
} TAPI_GATHERTERM;
|
|
|
|
typedef struct TAPI_CUSTOMTONE
|
|
{
|
|
DWORD dwFrequency;
|
|
DWORD dwCadenceOn;
|
|
DWORD dwCadenceOff;
|
|
DWORD dwVolume;
|
|
|
|
} TAPI_CUSTOMTONE, *LPTAPI_CUSTOMTONE;
|
|
|
|
typedef struct TAPI_DETECTTONE
|
|
{
|
|
DWORD dwAppSpecific;
|
|
DWORD dwDuration;
|
|
DWORD dwFrequency1;
|
|
DWORD dwFrequency2;
|
|
DWORD dwFrequency3;
|
|
|
|
} TAPI_DETECTTONE, *LPTAPI_DETECTTONE;
|
|
|
|
typedef enum ADDRESS_EVENT
|
|
{
|
|
AE_STATE,
|
|
AE_CAPSCHANGE,
|
|
AE_RINGING,
|
|
AE_CONFIGCHANGE,
|
|
AE_FORWARD,
|
|
AE_NEWTERMINAL,
|
|
AE_REMOVETERMINAL,
|
|
AE_MSGWAITON,
|
|
AE_MSGWAITOFF,
|
|
AE_LASTITEM = AE_MSGWAITOFF
|
|
|
|
} ADDRESS_EVENT;
|
|
|
|
typedef enum ADDRESS_STATE
|
|
{
|
|
AS_INSERVICE,
|
|
AS_OUTOFSERVICE
|
|
|
|
} ADDRESS_STATE;
|
|
|
|
typedef enum CALL_STATE
|
|
{
|
|
CS_IDLE,
|
|
CS_INPROGRESS,
|
|
CS_CONNECTED,
|
|
CS_DISCONNECTED,
|
|
CS_OFFERING,
|
|
CS_HOLD,
|
|
CS_QUEUED,
|
|
CS_LASTITEM = CS_QUEUED
|
|
|
|
} CALL_STATE;
|
|
|
|
typedef enum CALL_STATE_EVENT_CAUSE
|
|
{
|
|
CEC_NONE,
|
|
CEC_DISCONNECT_NORMAL,
|
|
CEC_DISCONNECT_BUSY,
|
|
CEC_DISCONNECT_BADADDRESS,
|
|
CEC_DISCONNECT_NOANSWER,
|
|
CEC_DISCONNECT_CANCELLED,
|
|
CEC_DISCONNECT_REJECTED,
|
|
CEC_DISCONNECT_FAILED,
|
|
CEC_DISCONNECT_BLOCKED
|
|
|
|
} CALL_STATE_EVENT_CAUSE;
|
|
|
|
typedef enum CALL_MEDIA_EVENT
|
|
{
|
|
CME_NEW_STREAM,
|
|
CME_STREAM_FAIL,
|
|
CME_TERMINAL_FAIL,
|
|
CME_STREAM_NOT_USED,
|
|
CME_STREAM_ACTIVE,
|
|
CME_STREAM_INACTIVE,
|
|
CME_LASTITEM = CME_STREAM_INACTIVE
|
|
|
|
} CALL_MEDIA_EVENT;
|
|
|
|
typedef enum CALL_MEDIA_EVENT_CAUSE
|
|
{
|
|
CMC_UNKNOWN,
|
|
CMC_BAD_DEVICE,
|
|
CMC_CONNECT_FAIL,
|
|
CMC_LOCAL_REQUEST,
|
|
CMC_REMOTE_REQUEST,
|
|
CMC_MEDIA_TIMEOUT,
|
|
CMC_MEDIA_RECOVERED,
|
|
CMC_QUALITY_OF_SERVICE
|
|
|
|
} CALL_MEDIA_EVENT_CAUSE;
|
|
|
|
typedef enum DISCONNECT_CODE
|
|
{
|
|
DC_NORMAL,
|
|
DC_NOANSWER,
|
|
DC_REJECTED
|
|
|
|
} DISCONNECT_CODE;
|
|
|
|
typedef enum TERMINAL_STATE
|
|
{
|
|
TS_INUSE,
|
|
TS_NOTINUSE
|
|
|
|
} TERMINAL_STATE;
|
|
|
|
typedef enum TERMINAL_DIRECTION
|
|
{
|
|
TD_CAPTURE,
|
|
TD_RENDER,
|
|
TD_BIDIRECTIONAL,
|
|
TD_MULTITRACK_MIXED,
|
|
TD_NONE
|
|
|
|
} TERMINAL_DIRECTION;
|
|
|
|
typedef enum TERMINAL_TYPE
|
|
{
|
|
TT_STATIC,
|
|
TT_DYNAMIC
|
|
|
|
} TERMINAL_TYPE;
|
|
|
|
typedef enum CALL_PRIVILEGE
|
|
{
|
|
CP_OWNER,
|
|
CP_MONITOR
|
|
|
|
} CALL_PRIVILEGE;
|
|
|
|
typedef enum TAPI_EVENT
|
|
{
|
|
TE_TAPIOBJECT = 0x00000001,
|
|
TE_ADDRESS = 0x00000002,
|
|
TE_CALLNOTIFICATION = 0x00000004,
|
|
TE_CALLSTATE = 0x00000008,
|
|
TE_CALLMEDIA = 0x00000010,
|
|
TE_CALLHUB = 0x00000020,
|
|
TE_CALLINFOCHANGE = 0x00000040,
|
|
TE_PRIVATE = 0x00000080,
|
|
TE_REQUEST = 0x00000100,
|
|
TE_AGENT = 0x00000200,
|
|
TE_AGENTSESSION = 0x00000400,
|
|
TE_QOSEVENT = 0x00000800,
|
|
TE_AGENTHANDLER = 0x00001000,
|
|
TE_ACDGROUP = 0x00002000,
|
|
TE_QUEUE = 0x00004000,
|
|
TE_DIGITEVENT = 0x00008000,
|
|
TE_GENERATEEVENT = 0x00010000,
|
|
TE_ASRTERMINAL = 0x00020000,
|
|
TE_TTSTERMINAL = 0x00040000,
|
|
TE_FILETERMINAL = 0x00080000,
|
|
TE_TONETERMINAL = 0x00100000,
|
|
TE_PHONEEVENT = 0x00200000,
|
|
TE_TONEEVENT = 0x00400000,
|
|
TE_GATHERDIGITS = 0x00800000,
|
|
TE_ADDRESSDEVSPECIFIC = 0x01000000,
|
|
TE_PHONEDEVSPECIFIC = 0x02000000
|
|
} TAPI_EVENT;
|
|
|
|
typedef enum CALL_NOTIFICATION_EVENT
|
|
{
|
|
CNE_OWNER,
|
|
CNE_MONITOR,
|
|
CNE_LASTITEM = CNE_MONITOR
|
|
|
|
} CALL_NOTIFICATION_EVENT;
|
|
|
|
typedef enum CALLHUB_EVENT
|
|
{
|
|
CHE_CALLJOIN,
|
|
CHE_CALLLEAVE,
|
|
CHE_CALLHUBNEW,
|
|
CHE_CALLHUBIDLE,
|
|
CHE_LASTITEM = CHE_CALLHUBIDLE
|
|
|
|
} CALLHUB_EVENT;
|
|
|
|
typedef enum CALLHUB_STATE
|
|
{
|
|
CHS_ACTIVE,
|
|
CHS_IDLE
|
|
|
|
} CALLHUB_STATE;
|
|
|
|
|
|
typedef enum TAPIOBJECT_EVENT
|
|
{
|
|
TE_ADDRESSCREATE,
|
|
TE_ADDRESSREMOVE,
|
|
TE_REINIT,
|
|
TE_TRANSLATECHANGE,
|
|
TE_ADDRESSCLOSE,
|
|
TE_PHONECREATE,
|
|
TE_PHONEREMOVE
|
|
|
|
} TAPIOBJECT_EVENT;
|
|
|
|
typedef enum TAPI_OBJECT_TYPE
|
|
{
|
|
TOT_NONE,
|
|
TOT_TAPI,
|
|
TOT_ADDRESS,
|
|
TOT_TERMINAL,
|
|
TOT_CALL,
|
|
TOT_CALLHUB,
|
|
TOT_PHONE
|
|
|
|
} TAPI_OBJECT_TYPE;
|
|
|
|
typedef enum QOS_SERVICE_LEVEL
|
|
{
|
|
QSL_NEEDED = 1,
|
|
QSL_IF_AVAILABLE = 2,
|
|
QSL_BEST_EFFORT = 3
|
|
|
|
} QOS_SERVICE_LEVEL;
|
|
|
|
typedef enum QOS_EVENT
|
|
{
|
|
QE_NOQOS = 1,
|
|
QE_ADMISSIONFAILURE = 2,
|
|
QE_POLICYFAILURE = 3,
|
|
QE_GENERICERROR = 4,
|
|
QE_LASTITEM = QE_GENERICERROR
|
|
|
|
} QOS_EVENT;
|
|
|
|
typedef enum CALLINFOCHANGE_CAUSE
|
|
{
|
|
CIC_OTHER,
|
|
CIC_DEVSPECIFIC,
|
|
CIC_BEARERMODE,
|
|
CIC_RATE,
|
|
CIC_APPSPECIFIC,
|
|
CIC_CALLID,
|
|
CIC_RELATEDCALLID,
|
|
CIC_ORIGIN,
|
|
CIC_REASON,
|
|
CIC_COMPLETIONID,
|
|
CIC_NUMOWNERINCR,
|
|
CIC_NUMOWNERDECR,
|
|
CIC_NUMMONITORS,
|
|
CIC_TRUNK,
|
|
CIC_CALLERID,
|
|
CIC_CALLEDID,
|
|
CIC_CONNECTEDID,
|
|
CIC_REDIRECTIONID,
|
|
CIC_REDIRECTINGID,
|
|
CIC_USERUSERINFO,
|
|
CIC_HIGHLEVELCOMP,
|
|
CIC_LOWLEVELCOMP,
|
|
CIC_CHARGINGINFO,
|
|
CIC_TREATMENT,
|
|
CIC_CALLDATA,
|
|
CIC_PRIVILEGE,
|
|
CIC_MEDIATYPE,
|
|
CIC_LASTITEM = CIC_MEDIATYPE
|
|
|
|
} CALLINFOCHANGE_CAUSE;
|
|
|
|
typedef enum CALLINFO_LONG
|
|
{
|
|
CIL_MEDIATYPESAVAILABLE,
|
|
CIL_BEARERMODE,
|
|
CIL_CALLERIDADDRESSTYPE,
|
|
CIL_CALLEDIDADDRESSTYPE,
|
|
CIL_CONNECTEDIDADDRESSTYPE,
|
|
CIL_REDIRECTIONIDADDRESSTYPE,
|
|
CIL_REDIRECTINGIDADDRESSTYPE,
|
|
CIL_ORIGIN,
|
|
CIL_REASON,
|
|
CIL_APPSPECIFIC,
|
|
CIL_CALLPARAMSFLAGS,
|
|
CIL_CALLTREATMENT,
|
|
CIL_MINRATE,
|
|
CIL_MAXRATE,
|
|
CIL_COUNTRYCODE,
|
|
CIL_CALLID,
|
|
CIL_RELATEDCALLID,
|
|
CIL_COMPLETIONID,
|
|
CIL_NUMBEROFOWNERS,
|
|
CIL_NUMBEROFMONITORS,
|
|
CIL_TRUNK,
|
|
CIL_RATE,
|
|
CIL_GENERATEDIGITDURATION,
|
|
CIL_MONITORDIGITMODES,
|
|
CIL_MONITORMEDIAMODES
|
|
|
|
} CALLINFO_LONG;
|
|
|
|
typedef enum CALLINFO_STRING
|
|
{
|
|
CIS_CALLERIDNAME,
|
|
CIS_CALLERIDNUMBER,
|
|
CIS_CALLEDIDNAME,
|
|
CIS_CALLEDIDNUMBER,
|
|
CIS_CONNECTEDIDNAME,
|
|
CIS_CONNECTEDIDNUMBER,
|
|
CIS_REDIRECTIONIDNAME,
|
|
CIS_REDIRECTIONIDNUMBER,
|
|
CIS_REDIRECTINGIDNAME,
|
|
CIS_REDIRECTINGIDNUMBER,
|
|
CIS_CALLEDPARTYFRIENDLYNAME,
|
|
CIS_COMMENT,
|
|
CIS_DISPLAYABLEADDRESS,
|
|
CIS_CALLINGPARTYID
|
|
|
|
} CALLINFO_STRING;
|
|
|
|
|
|
typedef enum CALLINFO_BUFFER
|
|
{
|
|
CIB_USERUSERINFO,
|
|
CIB_DEVSPECIFICBUFFER,
|
|
CIB_CALLDATABUFFER,
|
|
CIB_CHARGINGINFOBUFFER,
|
|
CIB_HIGHLEVELCOMPATIBILITYBUFFER,
|
|
CIB_LOWLEVELCOMPATIBILITYBUFFER
|
|
|
|
} CALLINFO_BUFFER;
|
|
|
|
|
|
|
|
typedef enum ADDRESS_CAPABILITY
|
|
{
|
|
AC_ADDRESSTYPES,
|
|
AC_BEARERMODES,
|
|
AC_MAXACTIVECALLS,
|
|
AC_MAXONHOLDCALLS,
|
|
AC_MAXONHOLDPENDINGCALLS,
|
|
AC_MAXNUMCONFERENCE,
|
|
AC_MAXNUMTRANSCONF,
|
|
AC_MONITORDIGITSUPPORT,
|
|
AC_GENERATEDIGITSUPPORT,
|
|
AC_GENERATETONEMODES,
|
|
AC_GENERATETONEMAXNUMFREQ,
|
|
AC_MONITORTONEMAXNUMFREQ,
|
|
AC_MONITORTONEMAXNUMENTRIES,
|
|
AC_DEVCAPFLAGS,
|
|
AC_ANSWERMODES,
|
|
AC_LINEFEATURES,
|
|
AC_SETTABLEDEVSTATUS,
|
|
AC_PARKSUPPORT,
|
|
AC_CALLERIDSUPPORT,
|
|
AC_CALLEDIDSUPPORT,
|
|
AC_CONNECTEDIDSUPPORT,
|
|
AC_REDIRECTIONIDSUPPORT,
|
|
AC_REDIRECTINGIDSUPPORT,
|
|
AC_ADDRESSCAPFLAGS,
|
|
AC_CALLFEATURES1,
|
|
AC_CALLFEATURES2,
|
|
AC_REMOVEFROMCONFCAPS,
|
|
AC_REMOVEFROMCONFSTATE,
|
|
AC_TRANSFERMODES,
|
|
AC_ADDRESSFEATURES,
|
|
AC_PREDICTIVEAUTOTRANSFERSTATES,
|
|
AC_MAXCALLDATASIZE,
|
|
AC_LINEID,
|
|
AC_ADDRESSID,
|
|
AC_FORWARDMODES,
|
|
AC_MAXFORWARDENTRIES,
|
|
AC_MAXSPECIFICENTRIES,
|
|
AC_MINFWDNUMRINGS,
|
|
AC_MAXFWDNUMRINGS,
|
|
AC_MAXCALLCOMPLETIONS,
|
|
AC_CALLCOMPLETIONCONDITIONS,
|
|
AC_CALLCOMPLETIONMODES,
|
|
AC_PERMANENTDEVICEID,
|
|
AC_GATHERDIGITSMINTIMEOUT,
|
|
AC_GATHERDIGITSMAXTIMEOUT,
|
|
AC_GENERATEDIGITMINDURATION,
|
|
AC_GENERATEDIGITMAXDURATION,
|
|
AC_GENERATEDIGITDEFAULTDURATION
|
|
|
|
} ADDRESS_CAPABILITY;
|
|
|
|
|
|
typedef enum ADDRESS_CAPABILITY_STRING
|
|
{
|
|
ACS_PROTOCOL,
|
|
ACS_ADDRESSDEVICESPECIFIC,
|
|
ACS_LINEDEVICESPECIFIC,
|
|
ACS_PROVIDERSPECIFIC,
|
|
ACS_SWITCHSPECIFIC,
|
|
ACS_PERMANENTDEVICEGUID
|
|
|
|
} ADDRESS_CAPABILITY_STRING;
|
|
|
|
|
|
typedef enum FULLDUPLEX_SUPPORT
|
|
{
|
|
FDS_SUPPORTED,
|
|
FDS_NOTSUPPORTED,
|
|
FDS_UNKNOWN
|
|
|
|
} FULLDUPLEX_SUPPORT;
|
|
|
|
|
|
typedef enum FINISH_MODE
|
|
{
|
|
FM_ASTRANSFER,
|
|
FM_ASCONFERENCE
|
|
|
|
} FINISH_MODE;
|
|
|
|
typedef enum PHONE_PRIVILEGE
|
|
{
|
|
PP_OWNER,
|
|
PP_MONITOR
|
|
|
|
} PHONE_PRIVILEGE;
|
|
|
|
//
|
|
// the hookswitch types
|
|
//
|
|
|
|
typedef enum PHONE_HOOK_SWITCH_DEVICE
|
|
{
|
|
PHSD_HANDSET = 0x00000001,
|
|
PHSD_SPEAKERPHONE = 0x00000002,
|
|
PHSD_HEADSET = 0x00000004
|
|
|
|
} PHONE_HOOK_SWITCH_DEVICE;
|
|
|
|
//
|
|
// hookswitch mode
|
|
//
|
|
|
|
typedef enum PHONE_HOOK_SWITCH_STATE
|
|
{
|
|
PHSS_ONHOOK = 0x00000001,
|
|
PHSS_OFFHOOK_MIC_ONLY = 0x00000002,
|
|
PHSS_OFFHOOK_SPEAKER_ONLY = 0x00000004,
|
|
PHSS_OFFHOOK = 0x00000008
|
|
|
|
} PHONE_HOOK_SWITCH_STATE;
|
|
|
|
//
|
|
// lamp mode
|
|
// how the lamp is flashing.
|
|
// as defined in TAPI 2.x
|
|
//
|
|
|
|
typedef enum PHONE_LAMP_MODE
|
|
{
|
|
LM_DUMMY = 0x00000001,
|
|
LM_OFF = 0x00000002,
|
|
LM_STEADY = 0x00000004,
|
|
LM_WINK = 0x00000008,
|
|
LM_FLASH = 0x00000010,
|
|
LM_FLUTTER = 0x00000020,
|
|
LM_BROKENFLUTTER = 0x00000040,
|
|
LM_UNKNOWN = 0x00000080
|
|
|
|
} PHONE_LAMP_MODE;
|
|
|
|
//
|
|
// capabilities of the phone
|
|
//
|
|
|
|
typedef enum PHONECAPS_LONG
|
|
{
|
|
PCL_HOOKSWITCHES,
|
|
PCL_HANDSETHOOKSWITCHMODES,
|
|
PCL_HEADSETHOOKSWITCHMODES,
|
|
PCL_SPEAKERPHONEHOOKSWITCHMODES,
|
|
PCL_DISPLAYNUMROWS,
|
|
PCL_DISPLAYNUMCOLUMNS,
|
|
PCL_NUMRINGMODES,
|
|
PCL_NUMBUTTONLAMPS,
|
|
PCL_GENERICPHONE
|
|
|
|
} PHONECAPS_LONG;
|
|
|
|
//
|
|
// capabilities of the phone (strings)
|
|
//
|
|
|
|
typedef enum PHONECAPS_STRING
|
|
{
|
|
PCS_PHONENAME,
|
|
PCS_PHONEINFO,
|
|
PCS_PROVIDERINFO
|
|
|
|
} PHONECAPS_STRING;
|
|
|
|
//
|
|
// capabilities of the phone (buffers)
|
|
//
|
|
|
|
typedef enum PHONECAPS_BUFFER
|
|
{
|
|
PCB_DEVSPECIFICBUFFER
|
|
|
|
} PHONECAPS_BUFFER;
|
|
|
|
//
|
|
// state of the button
|
|
// do we need to reflect the one shot vs. state?
|
|
//
|
|
|
|
typedef enum PHONE_BUTTON_STATE
|
|
{
|
|
PBS_UP = 0x00000001,
|
|
PBS_DOWN = 0x00000002,
|
|
PBS_UNKNOWN = 0x00000004,
|
|
PBS_UNAVAIL = 0x00000008
|
|
|
|
} PHONE_BUTTON_STATE;
|
|
|
|
//
|
|
// what the button is used for
|
|
//
|
|
|
|
typedef enum PHONE_BUTTON_MODE
|
|
{
|
|
PBM_DUMMY,
|
|
PBM_CALL,
|
|
PBM_FEATURE,
|
|
PBM_KEYPAD,
|
|
PBM_LOCAL,
|
|
PBM_DISPLAY
|
|
|
|
} PHONE_BUTTON_MODE;
|
|
|
|
//
|
|
// the function of the button - when the button is pressed,
|
|
// what is expected to happen.
|
|
//
|
|
|
|
typedef enum PHONE_BUTTON_FUNCTION
|
|
{
|
|
PBF_UNKNOWN,
|
|
PBF_CONFERENCE,
|
|
PBF_TRANSFER,
|
|
PBF_DROP,
|
|
PBF_HOLD,
|
|
PBF_RECALL,
|
|
PBF_DISCONNECT,
|
|
PBF_CONNECT,
|
|
PBF_MSGWAITON,
|
|
PBF_MSGWAITOFF,
|
|
PBF_SELECTRING,
|
|
PBF_ABBREVDIAL,
|
|
PBF_FORWARD,
|
|
PBF_PICKUP,
|
|
PBF_RINGAGAIN,
|
|
PBF_PARK,
|
|
PBF_REJECT,
|
|
PBF_REDIRECT,
|
|
PBF_MUTE,
|
|
PBF_VOLUMEUP,
|
|
PBF_VOLUMEDOWN,
|
|
PBF_SPEAKERON,
|
|
PBF_SPEAKEROFF,
|
|
PBF_FLASH,
|
|
PBF_DATAON,
|
|
PBF_DATAOFF,
|
|
PBF_DONOTDISTURB,
|
|
PBF_INTERCOM,
|
|
PBF_BRIDGEDAPP,
|
|
PBF_BUSY,
|
|
PBF_CALLAPP,
|
|
PBF_DATETIME,
|
|
PBF_DIRECTORY,
|
|
PBF_COVER,
|
|
PBF_CALLID,
|
|
PBF_LASTNUM,
|
|
PBF_NIGHTSRV,
|
|
PBF_SENDCALLS,
|
|
PBF_MSGINDICATOR,
|
|
PBF_REPDIAL,
|
|
PBF_SETREPDIAL,
|
|
PBF_SYSTEMSPEED,
|
|
PBF_STATIONSPEED,
|
|
PBF_CAMPON,
|
|
PBF_SAVEREPEAT,
|
|
PBF_QUEUECALL,
|
|
PBF_NONE,
|
|
PBF_SEND
|
|
|
|
} PHONE_BUTTON_FUNCTION;
|
|
|
|
//
|
|
// Used by ITAutomatedPhoneControl
|
|
//
|
|
|
|
typedef enum PHONE_TONE
|
|
{
|
|
PT_KEYPADZERO,
|
|
PT_KEYPADONE,
|
|
PT_KEYPADTWO,
|
|
PT_KEYPADTHREE,
|
|
PT_KEYPADFOUR,
|
|
PT_KEYPADFIVE,
|
|
PT_KEYPADSIX,
|
|
PT_KEYPADSEVEN,
|
|
PT_KEYPADEIGHT,
|
|
PT_KEYPADNINE,
|
|
PT_KEYPADSTAR,
|
|
PT_KEYPADPOUND,
|
|
PT_KEYPADA,
|
|
PT_KEYPADB,
|
|
PT_KEYPADC,
|
|
PT_KEYPADD,
|
|
PT_NORMALDIALTONE,
|
|
PT_EXTERNALDIALTONE,
|
|
PT_BUSY,
|
|
PT_RINGBACK,
|
|
PT_ERRORTONE,
|
|
PT_SILENCE
|
|
|
|
} PHONE_TONE;
|
|
|
|
//
|
|
// events related to phones
|
|
//
|
|
|
|
typedef enum PHONE_EVENT
|
|
{
|
|
PE_DISPLAY,
|
|
PE_LAMPMODE,
|
|
PE_RINGMODE,
|
|
PE_RINGVOLUME,
|
|
PE_HOOKSWITCH,
|
|
PE_CAPSCHANGE,
|
|
PE_BUTTON,
|
|
PE_CLOSE,
|
|
PE_NUMBERGATHERED,
|
|
PE_DIALING,
|
|
PE_ANSWER,
|
|
PE_DISCONNECT,
|
|
PE_LASTITEM = PE_DISCONNECT
|
|
|
|
} PHONE_EVENT;
|
|
|
|
// Dispach ID mapping constants
|
|
const DISPID INTERFACEMASK = 0x00FF0000;
|
|
const DISPID DISPIDMASK = 0x0000FFFF;
|
|
|
|
// Tapi Object Interfaces
|
|
const DISPID IDISPTAPI = 0x00010000;
|
|
const DISPID IDISPTAPICALLCENTER = 0x00020000;
|
|
|
|
// Call Object Interfaces
|
|
const DISPID IDISPCALLINFO = 0x00010000;
|
|
const DISPID IDISPBASICCALLCONTROL = 0x00020000;
|
|
const DISPID IDISPLEGACYCALLMEDIACONTROL = 0x00030000;
|
|
const DISPID IDISPAGGREGATEDMSPCALLOBJ = 0x00040000;
|
|
|
|
// Address Object Interfaces
|
|
const DISPID IDISPADDRESS = 0x00010000;
|
|
const DISPID IDISPADDRESSCAPABILITIES = 0x00020000;
|
|
const DISPID IDISPMEDIASUPPORT = 0x00030000;
|
|
const DISPID IDISPADDRESSTRANSLATION = 0x00040000;
|
|
const DISPID IDISPLEGACYADDRESSMEDIACONTROL = 0x00050000;
|
|
const DISPID IDISPAGGREGATEDMSPADDRESSOBJ = 0x00060000;
|
|
|
|
// Phone Object Interfaces
|
|
const DISPID IDISPPHONE = 0x00010000;
|
|
const DISPID IDISPAPC = 0x00020000;
|
|
|
|
// file terminal object interfaces
|
|
const DISPID IDISPMULTITRACK = 0x00010000;
|
|
const DISPID IDISPMEDIACONTROL = 0x00020000;
|
|
const DISPID IDISPMEDIARECORD = 0x00030000;
|
|
const DISPID IDISPMEDIAPLAYBACK = 0x00040000;
|
|
|
|
// file terminal track interfaces
|
|
const DISPID IDISPFILETRACK = 0x00010000;
|
|
|
|
|
|
// forward definitions
|
|
interface IEnumAddress;
|
|
interface IEnumPhone;
|
|
interface IEnumCall;
|
|
interface IEnumTerminalClass;
|
|
interface IEnumTerminal;
|
|
interface IEnumLocation;
|
|
interface IEnumCallingCard;
|
|
interface IEnumBstr;
|
|
interface ITCollection;
|
|
interface ITCollection2;
|
|
interface ITTerminal;
|
|
interface ITAMTerminal;
|
|
interface ITTAPI;
|
|
interface ITTAPI2;
|
|
interface ITMediaSupport;
|
|
interface ITTerminalSupport;
|
|
interface ITTerminalSupport2;
|
|
interface ITCallInfo;
|
|
interface ITCallInfo2;
|
|
interface ITCallHub;
|
|
interface ITBasicCallControl;
|
|
interface IEnumCallHub;
|
|
interface ITForwardInformation;
|
|
interface ITAddressTranslation;
|
|
interface ITAddressTranslationInfo;
|
|
interface ITLocationInfo;
|
|
interface ITCallingCard;
|
|
interface ITAddress;
|
|
interface ITAddress2;
|
|
interface ITPhone;
|
|
interface ITStaticAudioTerminal;
|
|
interface ITStream;
|
|
interface ITStreamControl;
|
|
interface ITStream;
|
|
interface ITSubStreamControl;
|
|
interface ITSubStream;
|
|
interface IEnumStream;
|
|
interface IEnumSubStream;
|
|
interface ITTone;
|
|
interface ITToneGeneration;
|
|
interface ITToneDetection;
|
|
interface ITScriptableAudioFormat;
|
|
interface ITPluggableTerminalSuperclassInfo;
|
|
interface ITPluggableTerminalClassInfo;
|
|
interface IEnumPluggableTerminalClassInfo;
|
|
interface IEnumPluggableSuperclassInfo;
|
|
interface ITDetectTone;
|
|
interface ITCustomTone;
|
|
|
|
[
|
|
uuid( B1EFC382-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITTAPI interface"),
|
|
pointer_default(unique),
|
|
dual
|
|
]
|
|
|
|
interface ITTAPI : IDispatch
|
|
{
|
|
[id(IDISPTAPI | 13), helpstring("Initialize")]
|
|
HRESULT Initialize();
|
|
|
|
[id(IDISPTAPI | 14), helpstring("Shutdown")]
|
|
HRESULT Shutdown();
|
|
|
|
[propget, id(IDISPTAPI | 1), helpstring("property Addresses")]
|
|
HRESULT Addresses(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPTAPI | 2), hidden, helpstring("method EnumerateAddresses")]
|
|
HRESULT EnumerateAddresses(
|
|
[out, retval] IEnumAddress ** ppEnumAddress
|
|
);
|
|
|
|
[id(IDISPTAPI | 3), helpstring("method RegisterCallNotifications")]
|
|
HRESULT RegisterCallNotifications(
|
|
[in]ITAddress * pAddress,
|
|
[in]VARIANT_BOOL fMonitor,
|
|
[in]VARIANT_BOOL fOwner,
|
|
[in]long lMediaTypes,
|
|
[in]long lCallbackInstance,
|
|
[out,retval]long * plRegister
|
|
);
|
|
|
|
[id(IDISPTAPI | 4), helpstring("method UnregisterNotifications")]
|
|
HRESULT UnregisterNotifications(
|
|
[in] long lRegister
|
|
);
|
|
|
|
[propget, id(IDISPTAPI | 5), helpstring("property CallHubs")]
|
|
HRESULT CallHubs(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPTAPI | 6), hidden, helpstring("method EnumerateCallHubs")]
|
|
HRESULT EnumerateCallHubs(
|
|
[out, retval] IEnumCallHub ** ppEnumCallHub
|
|
);
|
|
|
|
[id(IDISPTAPI | 7), helpstring("method SetCallHubTracking")]
|
|
HRESULT SetCallHubTracking(
|
|
[in] VARIANT pAddresses,
|
|
[in] VARIANT_BOOL bTracking
|
|
);
|
|
|
|
|
|
[id(IDISPTAPI | 8), hidden]
|
|
HRESULT EnumeratePrivateTAPIObjects(
|
|
[out] IEnumUnknown ** ppEnumUnknown
|
|
);
|
|
|
|
[propget, id(IDISPTAPI | 9), helpstring("property PrivateTAPIObjects")]
|
|
HRESULT PrivateTAPIObjects(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPTAPI | 10), helpstring("method RegisterRequestRecipient")]
|
|
HRESULT RegisterRequestRecipient(
|
|
[in] long lRegistrationInstance,
|
|
[in] long lRequestMode,
|
|
[in] VARIANT_BOOL fEnable
|
|
);
|
|
|
|
[id(IDISPTAPI | 11), helpstring("method SetAssistedTelephonyPriority")]
|
|
HRESULT SetAssistedTelephonyPriority(
|
|
[in] BSTR pAppFilename,
|
|
[in] VARIANT_BOOL fPriority
|
|
);
|
|
|
|
[id(IDISPTAPI | 12), helpstring("method SetApplicationPriority")]
|
|
HRESULT SetApplicationPriority(
|
|
[in] BSTR pAppFilename,
|
|
[in] long lMediaType,
|
|
[in] VARIANT_BOOL fPriority
|
|
);
|
|
|
|
[propput, id(IDISPTAPI | 15), helpstring("property EventFilter")]
|
|
HRESULT EventFilter(
|
|
[in] long lFilterMask
|
|
);
|
|
|
|
[propget, id(IDISPTAPI | 15), helpstring("property EventFilter")]
|
|
HRESULT EventFilter(
|
|
[out, retval] long * plFilterMask
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 54FBDC8C-D90F-4dad-9695-B373097F094B ),
|
|
helpstring("TAPI 3.1 ITTAPI2 interface"),
|
|
dual
|
|
]
|
|
interface ITTAPI2 : ITTAPI
|
|
{
|
|
//
|
|
// get the phones that can be used on this address
|
|
// returns a collection/enumeration for scripting and c/c++
|
|
//
|
|
[propget, id(IDISPTAPI | 16), helpstring("property Phones")]
|
|
HRESULT Phones(
|
|
[out, retval] VARIANT * pPhones
|
|
);
|
|
|
|
[id(IDISPTAPI | 17), hidden, helpstring("method EnumeratePhones")]
|
|
HRESULT EnumeratePhones(
|
|
[out, retval] IEnumPhone ** ppEnumPhone
|
|
);
|
|
|
|
[id(IDISPTAPI | 18), helpstring("method CreateEmptyCollectionObject")]
|
|
HRESULT CreateEmptyCollectionObject(
|
|
[out, retval] ITCollection2 ** ppCollection
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( B1EFC384-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITMediaSupport interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITMediaSupport : IDispatch
|
|
{
|
|
[propget, id(IDISPMEDIASUPPORT | 1), helpstring("property MediaTypes")]
|
|
HRESULT MediaTypes(
|
|
[out, retval] long * plMediaTypes
|
|
);
|
|
|
|
[id(IDISPMEDIASUPPORT | 2), helpstring("method QueryMediaType")]
|
|
HRESULT QueryMediaType(
|
|
[in] long lMediaType,
|
|
[out, retval] VARIANT_BOOL * pfSupport
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 41757F4A-CF09-4b34-BC96-0A79D2390076 ),
|
|
helpstring("TAPI 3.1 ITPluggableTerminalClassInfo interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITPluggableTerminalClassInfo : IDispatch
|
|
{
|
|
//
|
|
// Terminal Friendly Name
|
|
//
|
|
[id(1), propget, helpstring("method get_Name")]
|
|
HRESULT Name(
|
|
[out, retval] BSTR* pName
|
|
);
|
|
|
|
//
|
|
// Company name
|
|
//
|
|
[id(2), propget, helpstring("method get_Company")]
|
|
HRESULT Company(
|
|
[out, retval] BSTR* pCompany
|
|
);
|
|
|
|
//
|
|
// Terminal Version
|
|
//
|
|
[id(3), propget, helpstring("method get_Version")]
|
|
HRESULT Version(
|
|
[out, retval] BSTR* pVersion
|
|
);
|
|
|
|
//
|
|
// TerminalClass
|
|
//
|
|
[id(4), propget, helpstring("method get_TerminalClass")]
|
|
HRESULT TerminalClass(
|
|
[out, retval] BSTR* pTerminalClass
|
|
);
|
|
|
|
//
|
|
// This CLSID is used to CoCreate the terminal
|
|
//
|
|
[id(5), propget, helpstring("method get_CLSID")]
|
|
HRESULT CLSID(
|
|
[out, retval] BSTR* pCLSID
|
|
);
|
|
|
|
//
|
|
// Direction supported by terminal
|
|
//
|
|
[id(6), propget, helpstring("method get_Direction")]
|
|
HRESULT Direction(
|
|
[out, retval] TERMINAL_DIRECTION* pDirection
|
|
);
|
|
|
|
//
|
|
// Media Types supported by terminal
|
|
//
|
|
[id(7), propget, helpstring("method get_MediaTypes")]
|
|
HRESULT MediaTypes(
|
|
[out, retval] long* pMediaTypes
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 6D54E42C-4625-4359-A6F7-631999107E05 ),
|
|
helpstring("TAPI 3.1 ITPluggableTerminalSuperclassInfo interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITPluggableTerminalSuperclassInfo : IDispatch
|
|
{
|
|
[id(1), propget, helpstring("method get_Name")]
|
|
HRESULT Name(
|
|
[out, retval] BSTR* pName
|
|
);
|
|
|
|
|
|
[id(2), propget, helpstring("method get_CLSID")]
|
|
HRESULT CLSID(
|
|
[out, retval] BSTR* pCLSID
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( B1EFC385-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITTerminalSupport interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITTerminalSupport : IDispatch
|
|
{
|
|
[propget, id(IDISPAGGREGATEDMSPADDRESSOBJ | 1), helpstring("property StaticTerminals")]
|
|
HRESULT StaticTerminals(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 2), hidden, helpstring("method EnumerateStaticTerminals")]
|
|
HRESULT EnumerateStaticTerminals(
|
|
[out, retval] IEnumTerminal ** ppTerminalEnumerator
|
|
);
|
|
|
|
[propget, id(IDISPAGGREGATEDMSPADDRESSOBJ | 3), helpstring("property DynamicTerminalClasses")]
|
|
HRESULT DynamicTerminalClasses(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 4), hidden, helpstring("method EnumerateDynamicTerminalClasses")]
|
|
HRESULT EnumerateDynamicTerminalClasses(
|
|
[out, retval] IEnumTerminalClass ** ppTerminalClassEnumerator
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 5), helpstring("method CreateTerminal")]
|
|
HRESULT CreateTerminal(
|
|
[in] BSTR pTerminalClass,
|
|
[in] long lMediaType,
|
|
[in] TERMINAL_DIRECTION Direction,
|
|
[out, retval] ITTerminal ** ppTerminal
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 6), helpstring("method GetDefaultStaticTerminal")]
|
|
HRESULT GetDefaultStaticTerminal(
|
|
[in] long lMediaType,
|
|
[in] TERMINAL_DIRECTION Direction,
|
|
[out, retval] ITTerminal ** ppTerminal
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( F3EB39BC-1B1F-4e99-A0C0-56305C4DD591 ),
|
|
helpstring("TAPI 3.1 ITTerminalSupport2 interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITTerminalSupport2 : ITTerminalSupport
|
|
{
|
|
[propget, id(IDISPAGGREGATEDMSPADDRESSOBJ | 7), helpstring("property PluggableSuperclasses")]
|
|
HRESULT PluggableSuperclasses(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 8), hidden, helpstring("method EnumeratePluggableSuperclasses")]
|
|
HRESULT EnumeratePluggableSuperclasses(
|
|
[out, retval] IEnumPluggableSuperclassInfo ** ppSuperclassEnumerator
|
|
);
|
|
|
|
[propget, id(IDISPAGGREGATEDMSPADDRESSOBJ | 9), helpstring("property PluggableTerminalClasses")]
|
|
HRESULT PluggableTerminalClasses(
|
|
[in] BSTR bstrTerminalSuperclass,
|
|
[in] long lMediaType,
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPADDRESSOBJ | 10), hidden, helpstring("method EnumeratePluggableTerminalClasses")]
|
|
HRESULT EnumeratePluggableTerminalClasses(
|
|
[in] CLSID iidTerminalSuperclass,
|
|
[in] long lMediaType,
|
|
[out, retval] IEnumPluggableTerminalClassInfo ** ppClassEnumerator
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( B1EFC386-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITAddress interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITAddress : IDispatch
|
|
{
|
|
[propget, id(IDISPADDRESS | 1), helpstring("property State")]
|
|
HRESULT State(
|
|
[out, retval] ADDRESS_STATE * pAddressState
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 2), helpstring("property AddressName")]
|
|
HRESULT AddressName(
|
|
[out, retval] BSTR * ppName
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 3), helpstring("property ServiceProviderName")]
|
|
HRESULT ServiceProviderName(
|
|
[out, retval] BSTR * ppName
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 4), helpstring("property TAPIObject")]
|
|
HRESULT TAPIObject(
|
|
[out, retval] ITTAPI ** ppTapiObject
|
|
);
|
|
|
|
[id(IDISPADDRESS | 5), helpstring("method CreateCall")]
|
|
HRESULT CreateCall(
|
|
[in] BSTR pDestAddress,
|
|
[in] long lAddressType,
|
|
[in] long lMediaTypes,
|
|
[out, retval] ITBasicCallControl ** ppCall
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 6), helpstring("property Calls")]
|
|
HRESULT Calls(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[id(IDISPADDRESS | 7), hidden, helpstring("method EnumerateCalls")]
|
|
HRESULT EnumerateCalls(
|
|
[out, retval] IEnumCall ** ppCallEnum
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 8), helpstring("property DialableAddress")]
|
|
HRESULT DialableAddress(
|
|
[out,retval] BSTR * pDialableAddress
|
|
);
|
|
|
|
[id(IDISPADDRESS | 10), helpstring("method CreateForwardInfoObject")]
|
|
HRESULT CreateForwardInfoObject(
|
|
[out, retval] ITForwardInformation ** ppForwardInfo
|
|
);
|
|
|
|
[id(IDISPADDRESS | 11), helpstring("method Forward")]
|
|
HRESULT Forward(
|
|
[in] ITForwardInformation * pForwardInfo,
|
|
[in] ITBasicCallControl * pCall
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 12), helpstring("method Forward")]
|
|
HRESULT CurrentForwardInfo(
|
|
[out, retval] ITForwardInformation ** ppForwardInfo
|
|
);
|
|
|
|
[propput, id(IDISPADDRESS | 14), helpstring("property MessageWaiting")]
|
|
HRESULT MessageWaiting(
|
|
[in] VARIANT_BOOL fMessageWaiting
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 14), helpstring("property MessageWaiting")]
|
|
HRESULT MessageWaiting(
|
|
[out, retval] VARIANT_BOOL * pfMessageWaiting
|
|
);
|
|
|
|
[propput, id(IDISPADDRESS | 15), helpstring("property DoNotDisturb")]
|
|
HRESULT DoNotDisturb(
|
|
[in] VARIANT_BOOL fDoNotDisturb
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 15), helpstring("property DoNotDisturb")]
|
|
HRESULT DoNotDisturb(
|
|
[out, retval] VARIANT_BOOL * pfDoNotDisturb
|
|
);
|
|
|
|
}
|
|
|
|
///////////////////////////////////////////////////////
|
|
// ITAddress2
|
|
///////////////////////////////////////////////////////
|
|
|
|
[
|
|
uuid( B0AE5D9B-BE51-46c9-B0F7-DFA8A22A8BC4 ),
|
|
helpstring("TAPI 3.1 ITAddress2 interface"),
|
|
dual
|
|
]
|
|
interface ITAddress2 : ITAddress
|
|
{
|
|
//
|
|
// get the phones that can be used on this address
|
|
// returns a collection/enumeration for scripting and c/c++
|
|
//
|
|
[propget, id(IDISPADDRESS | 16), helpstring("property Phones")]
|
|
HRESULT Phones(
|
|
[out, retval] VARIANT * pPhones
|
|
);
|
|
|
|
[id(IDISPADDRESS | 17), hidden, helpstring("method EnumeratePhones")]
|
|
HRESULT EnumeratePhones(
|
|
[out, retval] IEnumPhone ** ppEnumPhone
|
|
);
|
|
|
|
[id(IDISPADDRESS | 18), helpstring("method GetPhoneFromTerminal")]
|
|
HRESULT GetPhoneFromTerminal(
|
|
[in] ITTerminal * pTerminal,
|
|
[out, retval] ITPhone ** ppPhone
|
|
);
|
|
|
|
[propget, id(IDISPADDRESS | 20), helpstring("property PreferredPhones")]
|
|
HRESULT PreferredPhones(
|
|
[out, retval] VARIANT * pPhones
|
|
);
|
|
|
|
[id(IDISPADDRESS | 21), hidden, helpstring("method EnumeratePreferredPhones")]
|
|
HRESULT EnumeratePreferredPhones(
|
|
[out, retval] IEnumPhone ** ppEnumPhone
|
|
);
|
|
|
|
//
|
|
// Filtering events
|
|
//
|
|
|
|
[propget, id(IDISPADDRESS | 19), helpstring("method EventFilter")]
|
|
HRESULT EventFilter(
|
|
[in] TAPI_EVENT TapiEvent,
|
|
[in] long lSubEvent,
|
|
[out,retval] VARIANT_BOOL* pEnable
|
|
);
|
|
|
|
[propput, id(IDISPADDRESS | 19), helpstring("method EventFilter")]
|
|
HRESULT EventFilter(
|
|
[in] TAPI_EVENT TapiEvent,
|
|
[in] long lSubEvent,
|
|
[in] VARIANT_BOOL bEnable
|
|
);
|
|
|
|
|
|
//
|
|
// device specific methods
|
|
//
|
|
|
|
[id(IDISPADDRESS | 22), hidden, helpstring("method DeviceSpecific")]
|
|
HRESULT DeviceSpecific(
|
|
[in] ITCallInfo *pCall,
|
|
[in] BYTE *pParams,
|
|
[in] DWORD dwSize
|
|
);
|
|
|
|
[id(IDISPADDRESS | 23), helpstring("method DeviceSpecificVariant")]
|
|
HRESULT DeviceSpecificVariant(
|
|
[in] ITCallInfo *pCall,
|
|
[in] VARIANT varDevSpecificByteArray
|
|
);
|
|
|
|
[id(IDISPADDRESS | 24), helpstring("method NegotiateExtVersion")]
|
|
HRESULT NegotiateExtVersion (
|
|
[in] long lLowVersion,
|
|
[in] long lHighVersion,
|
|
[out, retval] long *plExtVersion
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 8DF232F5-821B-11d1-BB5C-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITAddressCapabilities interface"),
|
|
dual
|
|
]
|
|
interface ITAddressCapabilities : IDispatch
|
|
{
|
|
[propget, id(IDISPADDRESSCAPABILITIES | 1), helpstring("property AddressCapability")]
|
|
HRESULT AddressCapability(
|
|
[in] ADDRESS_CAPABILITY AddressCap,
|
|
[out, retval] long * plCapability
|
|
);
|
|
|
|
[propget, id(IDISPADDRESSCAPABILITIES | 2), helpstring("property AddressCapabilityString")]
|
|
HRESULT AddressCapabilityString(
|
|
[in] ADDRESS_CAPABILITY_STRING AddressCapString,
|
|
[out, retval] BSTR * ppCapabilityString
|
|
);
|
|
|
|
[propget, id(IDISPADDRESSCAPABILITIES | 3), helpstring("property CallTreatments")]
|
|
HRESULT CallTreatments( [out, retval] VARIANT * pVariant );
|
|
|
|
[id(IDISPADDRESSCAPABILITIES | 4), hidden]
|
|
HRESULT EnumerateCallTreatments( [out, retval] IEnumBstr ** ppEnumCallTreatment );
|
|
|
|
[propget, id(IDISPADDRESSCAPABILITIES | 5), helpstring("property CompletionMessages")]
|
|
HRESULT CompletionMessages( [out, retval] VARIANT * pVariant );
|
|
|
|
[id(IDISPADDRESSCAPABILITIES | 6), hidden]
|
|
HRESULT EnumerateCompletionMessages( [out, retval] IEnumBstr ** ppEnumCompletionMessage );
|
|
|
|
[propget, id(IDISPADDRESSCAPABILITIES | 7), helpstring("property DeviceClasses")]
|
|
HRESULT DeviceClasses( [out, retval] VARIANT * pVariant );
|
|
|
|
[id(IDISPADDRESSCAPABILITIES | 8), hidden]
|
|
HRESULT EnumerateDeviceClasses( [out, retval] IEnumBstr ** ppEnumDeviceClass );
|
|
}
|
|
|
|
///////////////////////////////////////////////////////
|
|
// ITPhone
|
|
///////////////////////////////////////////////////////
|
|
|
|
[
|
|
uuid( 09D48DB4-10CC-4388-9DE7-A8465618975A ),
|
|
helpstring("TAPI 3.1 ITPhone interface"),
|
|
dual
|
|
]
|
|
interface ITPhone : IDispatch
|
|
{
|
|
//
|
|
// opens the phone devices
|
|
//
|
|
[id(IDISPPHONE | 1), helpstring("method Open")]
|
|
HRESULT Open(
|
|
[in] PHONE_PRIVILEGE Privilege
|
|
);
|
|
|
|
//
|
|
// closes the phone
|
|
//
|
|
[id(IDISPPHONE | 2), helpstring("method Close")]
|
|
HRESULT Close();
|
|
|
|
//
|
|
// returns a collection/enumeration of addresses that the phone
|
|
// can be used on
|
|
//
|
|
[propget, id(IDISPPHONE | 3), helpstring("property Addresses")]
|
|
HRESULT Addresses(
|
|
[out, retval] VARIANT * pAddresses
|
|
);
|
|
|
|
[id(IDISPPHONE | 4), hidden, helpstring("method EnumerateAddresses")]
|
|
HRESULT EnumerateAddresses(
|
|
[out, retval] IEnumAddress ** ppEnumAddress
|
|
);
|
|
|
|
//
|
|
// gets a DWORD (long) capability of the phone, based on the PHONECAPS_LONG
|
|
// passed in.
|
|
//
|
|
[propget, id(IDISPPHONE | 5), helpstring("property PhoneCapsLong")]
|
|
HRESULT PhoneCapsLong(
|
|
[in] PHONECAPS_LONG pclCap,
|
|
[out, retval] long * plCapability
|
|
);
|
|
|
|
//
|
|
// gets a string capability/information about the phone, based on the PHONECAPS_STRING
|
|
// passed in.
|
|
//
|
|
[propget, id(IDISPPHONE | 6), helpstring("property PhoneCapsString")]
|
|
HRESULT PhoneCapsString(
|
|
[in] PHONECAPS_STRING pcsCap,
|
|
[out, retval] BSTR * ppCapability
|
|
);
|
|
|
|
//
|
|
// gets a collection/enumerations of terminals that are the terminals that
|
|
// are associated with the phone.
|
|
//
|
|
[propget, id(IDISPPHONE | 7), helpstring("property Terminals")]
|
|
HRESULT Terminals(
|
|
[in] ITAddress * pAddress,
|
|
[out, retval] VARIANT * pTerminals
|
|
);
|
|
|
|
[id(IDISPPHONE | 8), hidden, helpstring("method EnumerateTerminals")]
|
|
HRESULT EnumerateTerminals(
|
|
[in] ITAddress * pAddress,
|
|
[out, retval] IEnumTerminal ** ppEnumTerminal
|
|
);
|
|
|
|
//
|
|
// get the button mode
|
|
//
|
|
[propget, id(IDISPPHONE | 9), helpstring("property ButtonMode")]
|
|
HRESULT ButtonMode(
|
|
[in] long lButtonID,
|
|
[out, retval] PHONE_BUTTON_MODE * pButtonMode
|
|
);
|
|
|
|
//
|
|
// put the button mode
|
|
//
|
|
[propput, id(IDISPPHONE | 9), helpstring("property ButtonMode")]
|
|
HRESULT ButtonMode(
|
|
[in] long lButtonID,
|
|
[in] PHONE_BUTTON_MODE ButtonMode
|
|
);
|
|
|
|
//
|
|
// get the button function
|
|
//
|
|
[propget, id(IDISPPHONE | 10), helpstring("property ButtonFunction")]
|
|
HRESULT ButtonFunction(
|
|
[in] long lButtonID,
|
|
[out, retval] PHONE_BUTTON_FUNCTION * pButtonFunction
|
|
);
|
|
|
|
//
|
|
// put the button function
|
|
//
|
|
[propput, id(IDISPPHONE | 10), helpstring("property ButtonFunction")]
|
|
HRESULT ButtonFunction(
|
|
[in] long lButtonID,
|
|
[in] PHONE_BUTTON_FUNCTION ButtonFunction
|
|
);
|
|
|
|
|
|
//
|
|
// get the button text
|
|
//
|
|
[propget, id(IDISPPHONE | 11), helpstring("property ButtonText")]
|
|
HRESULT ButtonText(
|
|
[in] long lButtonID,
|
|
[out, retval] BSTR * ppButtonText
|
|
);
|
|
|
|
//
|
|
// set the button text
|
|
//
|
|
[propput, id(IDISPPHONE | 11), helpstring("property ButtonText")]
|
|
HRESULT ButtonText(
|
|
[in] long lButtonID,
|
|
[in] BSTR bstrButtonText
|
|
);
|
|
|
|
//
|
|
// get the button state
|
|
//
|
|
[propget, id(IDISPPHONE | 12), helpstring("property ButtonState")]
|
|
HRESULT ButtonState(
|
|
[in] long lButtonID,
|
|
[out, retval] PHONE_BUTTON_STATE * pButtonState
|
|
);
|
|
|
|
//
|
|
// set the current hookswitch state
|
|
//
|
|
[propget, id(IDISPPHONE | 13), helpstring("property HookSwitchState")]
|
|
HRESULT HookSwitchState(
|
|
[in] PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,
|
|
[out, retval] PHONE_HOOK_SWITCH_STATE * pHookSwitchState
|
|
);
|
|
|
|
//
|
|
// set the current hookswitch state
|
|
//
|
|
[propput, id(IDISPPHONE | 13), helpstring("property HookSwitchState")]
|
|
HRESULT HookSwitchState(
|
|
[in] PHONE_HOOK_SWITCH_DEVICE HookSwitchDevice,
|
|
[in] PHONE_HOOK_SWITCH_STATE HookSwitchState
|
|
);
|
|
|
|
//
|
|
// set the ring mode for the phone
|
|
//
|
|
[propput, id(IDISPPHONE | 14), helpstring("property RingMode")]
|
|
HRESULT RingMode(
|
|
[in] long lRingMode
|
|
);
|
|
|
|
//
|
|
// get the ring mode for the phone
|
|
//
|
|
[propget, id(IDISPPHONE | 14), helpstring("property RingMode")]
|
|
HRESULT RingMode(
|
|
[out, retval] long * plRingMode
|
|
);
|
|
|
|
//
|
|
// set the ring volume for the phone
|
|
//
|
|
[propput, id(IDISPPHONE | 15), helpstring("property RingVolume")]
|
|
HRESULT RingVolume(
|
|
[in] long lRingVolume
|
|
);
|
|
|
|
//
|
|
// get the ring volume for the phone
|
|
//
|
|
[propget, id(IDISPPHONE | 15), helpstring("property RingVolume")]
|
|
HRESULT RingVolume(
|
|
[out, retval] long * plRingVolume
|
|
);
|
|
|
|
//
|
|
// get the privilege for the phone
|
|
//
|
|
[propget, id(IDISPPHONE | 16), helpstring("property Privilege")]
|
|
HRESULT Privilege(
|
|
[out, retval] PHONE_PRIVILEGE * pPrivilege
|
|
);
|
|
|
|
|
|
[id(IDISPPHONE | 17), hidden, helpstring("method GetPhoneDevCapsBuffer")]
|
|
HRESULT GetPhoneCapsBuffer(
|
|
[in] PHONECAPS_BUFFER pcbCaps,
|
|
[out] DWORD *pdwSize,
|
|
[out] BYTE **ppPhoneCapsBuffer
|
|
);
|
|
|
|
|
|
[propget, id(IDISPPHONE | 18), helpstring("property PhoneCapsBuffer")]
|
|
HRESULT PhoneCapsBuffer(
|
|
[in] PHONECAPS_BUFFER pcbCaps,
|
|
[out, retval] VARIANT *pVarBuffer
|
|
);
|
|
|
|
|
|
[propget, id(IDISPPHONE | 19), helpstring("property LampMode")]
|
|
HRESULT LampMode(
|
|
[in] long lLampID,
|
|
[out, retval] PHONE_LAMP_MODE * pLampMode
|
|
);
|
|
|
|
|
|
[propput, id(IDISPPHONE | 19), helpstring("property LampMode")]
|
|
HRESULT LampMode(
|
|
[in] long lLampID,
|
|
[in] PHONE_LAMP_MODE LampMode
|
|
);
|
|
|
|
|
|
[propget, id(IDISPPHONE | 20), helpstring("property Display")]
|
|
HRESULT Display(
|
|
[out, retval] BSTR *pbstrDisplay
|
|
);
|
|
|
|
|
|
[id(IDISPPHONE | 21), helpstring("method SetDisplay")]
|
|
HRESULT SetDisplay(
|
|
[in] long lRow,
|
|
[in] long lColumn,
|
|
[in] BSTR bstrDisplay
|
|
);
|
|
|
|
//
|
|
// returns a collection/enumeration of addresses that the phone
|
|
// is preferred on
|
|
//
|
|
[propget, id(IDISPPHONE | 22), helpstring("property PreferredAddresses")]
|
|
HRESULT PreferredAddresses(
|
|
[out, retval] VARIANT * pAddresses
|
|
);
|
|
|
|
[id(IDISPPHONE | 23), hidden, helpstring("method EnumeratePreferredAddresses")]
|
|
HRESULT EnumeratePreferredAddresses(
|
|
[out, retval] IEnumAddress ** ppEnumAddress
|
|
);
|
|
|
|
//
|
|
// device specific methods
|
|
//
|
|
|
|
[id(IDISPADDRESS | 24), hidden, helpstring("method DeviceSpecific")]
|
|
HRESULT DeviceSpecific(
|
|
[in] BYTE *pParams,
|
|
[in] DWORD dwSize
|
|
);
|
|
|
|
[id(IDISPADDRESS | 25), helpstring("method DeviceSpecificVariant")]
|
|
HRESULT DeviceSpecificVariant(
|
|
[in] VARIANT varDevSpecificByteArray
|
|
);
|
|
|
|
[id(IDISPADDRESS | 26), helpstring("method NegotiateExtVersion")]
|
|
HRESULT NegotiateExtVersion(
|
|
[in] long lLowVersion,
|
|
[in] long lHighVersion,
|
|
[out, retval] long *plExtVersion
|
|
);
|
|
|
|
}
|
|
|
|
///////////////////////////////////////////////////////
|
|
// ITAutomatedPhoneControl
|
|
///////////////////////////////////////////////////////
|
|
|
|
[
|
|
uuid( 1EE1AF0E-6159-4a61-B79B-6A4BA3FC9DFC ),
|
|
helpstring("TAPI 3.1 ITAutomatedPhoneControl interface"),
|
|
dual
|
|
]
|
|
interface ITAutomatedPhoneControl : IDispatch
|
|
{
|
|
[id(IDISPAPC | 1), helpstring("method StartTone")]
|
|
HRESULT StartTone(
|
|
[in] PHONE_TONE Tone,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPAPC | 2), helpstring("method StopTone")]
|
|
HRESULT StopTone();
|
|
|
|
[propget, id(IDISPAPC | 3), helpstring("property Tone")]
|
|
HRESULT Tone(
|
|
[out, retval] PHONE_TONE * pTone
|
|
);
|
|
|
|
[id(IDISPAPC | 4), helpstring("method StartRinger")]
|
|
HRESULT StartRinger(
|
|
[in] long lRingMode,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPAPC | 5), helpstring("method StopRinger")]
|
|
HRESULT StopRinger();
|
|
|
|
[propget, id(IDISPAPC | 6), helpstring("property Ringer")]
|
|
HRESULT Ringer(
|
|
[out, retval] VARIANT_BOOL * pfRinging
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 7), helpstring("property PhoneHandlingEnabled")]
|
|
HRESULT PhoneHandlingEnabled(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 7), helpstring("property PhoneHandlingEnabled")]
|
|
HRESULT PhoneHandlingEnabled(
|
|
[out, retval] VARIANT_BOOL * pfEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 8), helpstring("property AutoEndOfNumberTimeout")]
|
|
HRESULT AutoEndOfNumberTimeout(
|
|
[in] long lTimeout
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 8), helpstring("property AutoEndOfNumberTimeout")]
|
|
HRESULT AutoEndOfNumberTimeout(
|
|
[out, retval] long * plTimeout
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 9), helpstring("property AutoDialtone")]
|
|
HRESULT AutoDialtone(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 9), helpstring("property AutoDialtone")]
|
|
HRESULT AutoDialtone(
|
|
[out, retval] VARIANT_BOOL * pfEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 10), helpstring("property AutoStopTonesOnOnHook")]
|
|
HRESULT AutoStopTonesOnOnHook(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 10), helpstring("property AutoStopTonesOnOnHook")]
|
|
HRESULT AutoStopTonesOnOnHook(
|
|
[out, retval] VARIANT_BOOL * pfEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 11), helpstring("property AutoStopRingOnOffHook")]
|
|
HRESULT AutoStopRingOnOffHook(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 11), helpstring("property AutoStopRingOnOffHook")]
|
|
HRESULT AutoStopRingOnOffHook(
|
|
[out, retval] VARIANT_BOOL * pfEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 12), helpstring("property AutoKeypadTones")]
|
|
HRESULT AutoKeypadTones(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 12), helpstring("property AutoKeypadTones")]
|
|
HRESULT AutoKeypadTones (
|
|
[out, retval] VARIANT_BOOL * pfEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 13), helpstring("property AutoKeypadTonesMinimumDuration")]
|
|
HRESULT AutoKeypadTonesMinimumDuration(
|
|
[in] long lDuration
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 13), helpstring("property AutoKeypadTonesMinimumDuration")]
|
|
HRESULT AutoKeypadTonesMinimumDuration(
|
|
[out, retval] long * plDuration
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 14), helpstring("property AutoVolumeControl")]
|
|
HRESULT AutoVolumeControl(
|
|
[in] VARIANT_BOOL fEnabled
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 14), helpstring("property AutoVolumeControl")]
|
|
HRESULT AutoVolumeControl(
|
|
[out, retval] VARIANT_BOOL * fEnabled
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 15), helpstring("property AutoVolumeControlStep")]
|
|
HRESULT AutoVolumeControlStep(
|
|
[in] long lStepSize
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 15), helpstring("property AutoVolumeControlStep")]
|
|
HRESULT AutoVolumeControlStep(
|
|
[out, retval] long * plStepSize
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 16), helpstring("property AutoVolumeControlRepeatDelay")]
|
|
HRESULT AutoVolumeControlRepeatDelay(
|
|
[in] long lDelay
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 16), helpstring("property AutoVolumeControlRepeatDelay")]
|
|
HRESULT AutoVolumeControlRepeatDelay(
|
|
[out, retval] long * plDelay
|
|
);
|
|
|
|
[propput, id(IDISPAPC | 17), helpstring("property AutoVolumeControlRepeatPeriod")]
|
|
HRESULT AutoVolumeControlRepeatPeriod(
|
|
[in] long lPeriod
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 17), helpstring("property AutoVolumeControlRepeatPeriod")]
|
|
HRESULT AutoVolumeControlRepeatPeriod(
|
|
[out, retval] long * plPeriod
|
|
);
|
|
|
|
[id(IDISPAPC | 18), helpstring("method SelectCall")]
|
|
HRESULT SelectCall(
|
|
[in] ITCallInfo * pCall,
|
|
[in] VARIANT_BOOL fSelectDefaultTerminals
|
|
);
|
|
|
|
[id(IDISPAPC | 19), helpstring("method UnselectCall")]
|
|
HRESULT UnselectCall(
|
|
[in] ITCallInfo * pCall
|
|
);
|
|
|
|
[id(IDISPAPC | 20), hidden, helpstring("method EnumerateSelectedCalls")]
|
|
HRESULT EnumerateSelectedCalls(
|
|
[out, retval] IEnumCall ** ppCallEnum
|
|
);
|
|
|
|
[propget, id(IDISPAPC | 21), helpstring("property SelectedCalls")]
|
|
HRESULT SelectedCalls(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( B1EFC389-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITBasicCallControl interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITBasicCallControl : IDispatch
|
|
{
|
|
|
|
[id(IDISPBASICCALLCONTROL | 3), helpstring("method Connect")]
|
|
HRESULT Connect(
|
|
[in] VARIANT_BOOL fSync
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 4), helpstring("method Answer")]
|
|
HRESULT Answer();
|
|
|
|
[id(IDISPBASICCALLCONTROL | 5), helpstring("method Disconnect")]
|
|
HRESULT Disconnect(
|
|
[in] DISCONNECT_CODE code
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 6), helpstring("method Hold")]
|
|
HRESULT Hold(
|
|
[in] VARIANT_BOOL fHold
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 7), helpstring("method HandoffDirect")]
|
|
HRESULT HandoffDirect(
|
|
[in] BSTR pApplicationName
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 8), helpstring("method HandoffIndirect")]
|
|
HRESULT HandoffIndirect(
|
|
[in] long lMediaType
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 9), helpstring("method Conference")]
|
|
HRESULT Conference(
|
|
[in] ITBasicCallControl * pCall,
|
|
[in] VARIANT_BOOL fSync
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 10), helpstring("method Transfer")]
|
|
HRESULT Transfer(
|
|
[in] ITBasicCallControl * pCall,
|
|
[in] VARIANT_BOOL fSync
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 11), helpstring("method BlindTransfer")]
|
|
HRESULT BlindTransfer(
|
|
[in] BSTR pDestAddress
|
|
);
|
|
[id(IDISPBASICCALLCONTROL | 12), helpstring("method SwapHold")]
|
|
HRESULT SwapHold(
|
|
[in] ITBasicCallControl * pCall
|
|
);
|
|
[id(IDISPBASICCALLCONTROL | 13), helpstring("method ParkDirect")]
|
|
HRESULT ParkDirect(
|
|
[in] BSTR pParkAddress
|
|
);
|
|
[id(IDISPBASICCALLCONTROL | 14), helpstring("method ParkIndirect")]
|
|
HRESULT ParkIndirect(
|
|
[out, retval] BSTR * ppNonDirAddress
|
|
);
|
|
[id(IDISPBASICCALLCONTROL | 15), helpstring("method Unpark")]
|
|
HRESULT Unpark();
|
|
|
|
[id(IDISPBASICCALLCONTROL | 16), helpstring("method SetQOS")]
|
|
HRESULT SetQOS(
|
|
[in] long lMediaType,
|
|
[in] QOS_SERVICE_LEVEL ServiceLevel
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 19), helpstring("method Pickup")]
|
|
HRESULT Pickup(
|
|
[in] BSTR pGroupID
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 20), helpstring("method Dial")]
|
|
HRESULT Dial(
|
|
[in] BSTR pDestAddress
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 21), helpstring("method Finish")]
|
|
HRESULT Finish(
|
|
[in] FINISH_MODE finishMode
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 22), helpstring("method RemoveFromConference")]
|
|
HRESULT RemoveFromConference();
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 350F85D1-1227-11D3-83D4-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallInfo interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITCallInfo : IDispatch
|
|
{
|
|
[propget, id(IDISPCALLINFO | 1), helpstring("property Address")]
|
|
HRESULT Address(
|
|
[out, retval] ITAddress ** ppAddress
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 2), helpstring("property CallState")]
|
|
HRESULT CallState(
|
|
[out, retval] CALL_STATE * pCallState
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 3), helpstring("property Privilege")]
|
|
HRESULT Privilege(
|
|
[out, retval] CALL_PRIVILEGE * pPrivilege
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 4), helpstring("property CallHub")]
|
|
HRESULT CallHub(
|
|
[out,retval] ITCallHub ** ppCallHub
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 5), helpstring("property CallInfoLong")]
|
|
HRESULT CallInfoLong(
|
|
[in] CALLINFO_LONG CallInfoLong,
|
|
[out, retval] long * plCallInfoLongVal
|
|
);
|
|
|
|
[propput, id(IDISPCALLINFO | 5), helpstring("property CallInfoLong")]
|
|
HRESULT CallInfoLong(
|
|
[in] CALLINFO_LONG CallInfoLong,
|
|
[in] long lCallInfoLongVal
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 6), helpstring("property CallInfoString")]
|
|
HRESULT CallInfoString(
|
|
[in] CALLINFO_STRING CallInfoString,
|
|
[out, retval] BSTR * ppCallInfoString
|
|
);
|
|
|
|
[propput, id(IDISPCALLINFO | 6), helpstring("property CallInfoString")]
|
|
HRESULT CallInfoString(
|
|
[in] CALLINFO_STRING CallInfoString,
|
|
[in] BSTR pCallInfoString
|
|
);
|
|
|
|
[propget, id(IDISPCALLINFO | 7), helpstring("property CallInfoBuffer")]
|
|
HRESULT CallInfoBuffer(
|
|
[in] CALLINFO_BUFFER CallInfoBuffer,
|
|
[out, retval] VARIANT * ppCallInfoBuffer
|
|
);
|
|
|
|
[propput, id(IDISPCALLINFO | 7), helpstring("property CallInfoBuffer")]
|
|
HRESULT CallInfoBuffer(
|
|
[in] CALLINFO_BUFFER CallInfoBuffer,
|
|
[in] VARIANT pCallInfoBuffer
|
|
);
|
|
|
|
[id(IDISPCALLINFO | 8), hidden]
|
|
HRESULT GetCallInfoBuffer(
|
|
[in] CALLINFO_BUFFER CallInfoBuffer,
|
|
[out] DWORD * pdwSize,
|
|
[out, size_is(,*pdwSize)] BYTE ** ppCallInfoBuffer
|
|
);
|
|
|
|
[id(IDISPCALLINFO | 9), hidden]
|
|
HRESULT SetCallInfoBuffer(
|
|
[in] CALLINFO_BUFFER CallInfoBuffer,
|
|
[in] DWORD dwSize,
|
|
[in, size_is(dwSize)] BYTE * pCallInfoBuffer
|
|
);
|
|
|
|
[id(IDISPCALLINFO | 10), helpstring("method ReleaseUserUserInfo")]
|
|
HRESULT ReleaseUserUserInfo();
|
|
}
|
|
|
|
[
|
|
uuid( 94D70CA6-7AB0-4daa-81CA-B8F8643FAEC1 ),
|
|
helpstring("TAPI 3.1 ITCallInfo2 interface"),
|
|
dual
|
|
]
|
|
interface ITCallInfo2 : ITCallInfo
|
|
{
|
|
[propget, id(IDISPCALLINFO | 11), helpstring("method EventFilter")]
|
|
HRESULT EventFilter(
|
|
[in] TAPI_EVENT TapiEvent,
|
|
[in] long lSubEvent,
|
|
[out,retval] VARIANT_BOOL* pEnable
|
|
);
|
|
|
|
[propput, id(IDISPCALLINFO | 11), helpstring("method EventFilter")]
|
|
HRESULT EventFilter(
|
|
[in] TAPI_EVENT TapiEvent,
|
|
[in] long lSubEvent,
|
|
[in] VARIANT_BOOL bEnable
|
|
);
|
|
}
|
|
|
|
//
|
|
// Implemented by the MSP's Terminal objects.
|
|
//
|
|
|
|
[
|
|
uuid( B1EFC38A-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITTerminal interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITTerminal : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Name")]
|
|
HRESULT Name(
|
|
[out, retval] BSTR * ppName
|
|
);
|
|
|
|
[propget, id(2), helpstring("property State")]
|
|
HRESULT State(
|
|
[out, retval] TERMINAL_STATE * pTerminalState
|
|
);
|
|
|
|
[propget, id(3), helpstring("property TerminalType")]
|
|
HRESULT TerminalType(
|
|
[out, retval] TERMINAL_TYPE * pType
|
|
);
|
|
|
|
// terminal class is actually a guid
|
|
[propget, id(4), helpstring("property TerminalClass")]
|
|
HRESULT TerminalClass(
|
|
[out, retval] BSTR * ppTerminalClass
|
|
);
|
|
|
|
[propget, id(5), helpstring("property MediaType")]
|
|
HRESULT MediaType(
|
|
[out, retval] long * plMediaType
|
|
);
|
|
|
|
[propget, id(6), helpstring("property Direction")]
|
|
HRESULT Direction(
|
|
[out, retval] TERMINAL_DIRECTION *pDirection
|
|
);
|
|
}
|
|
|
|
//
|
|
// implemented by multitrack terminals
|
|
//
|
|
|
|
[
|
|
object,
|
|
uuid(FE040091-ADE8-4072-95C9-BF7DE8C54B44),
|
|
dual,
|
|
helpstring("ITMultiTrackTerminal Interface"),
|
|
]
|
|
|
|
interface ITMultiTrackTerminal : IDispatch
|
|
{
|
|
|
|
[propget, id(IDISPMULTITRACK | 1), helpstring("property TrackTerminals")]
|
|
HRESULT TrackTerminals(
|
|
[out, retval] VARIANT *pVariant
|
|
);
|
|
|
|
[id(IDISPMULTITRACK | 2), hidden, helpstring("method EnumerateTrackTerminals")]
|
|
HRESULT EnumerateTrackTerminals(
|
|
[out, retval] IEnumTerminal **ppEnumTerminal
|
|
);
|
|
|
|
[id(IDISPMULTITRACK | 3), helpstring("method CreateTrackTerminal")]
|
|
HRESULT CreateTrackTerminal(
|
|
[in]long MediaType,
|
|
[in]TERMINAL_DIRECTION TerminalDirection,
|
|
[out,retval]ITTerminal **ppTerminal
|
|
);
|
|
|
|
[propget, id(IDISPMULTITRACK | 4), helpstring("property MediaTypesInUse")]
|
|
HRESULT MediaTypesInUse(
|
|
[out, retval] long *plMediaTypesInUse
|
|
);
|
|
|
|
[propget, id(IDISPMULTITRACK | 5), helpstring("property DirectionsInUse")]
|
|
HRESULT DirectionsInUse(
|
|
[out, retval] TERMINAL_DIRECTION *plDirectionsInUsed
|
|
);
|
|
|
|
[id(IDISPMULTITRACK | 6), helpstring("method RemoveTrackTerminal")]
|
|
HRESULT RemoveTrackTerminal(
|
|
[in] ITTerminal *pTrackTerminalToRemove
|
|
);
|
|
|
|
}
|
|
|
|
//
|
|
// this describes state of the terminal
|
|
//
|
|
|
|
typedef enum TERMINAL_MEDIA_STATE
|
|
{
|
|
TMS_IDLE, // Terminal is doing nothing. No transfer of data
|
|
TMS_ACTIVE, // Transferring media stream <-> storage
|
|
TMS_PAUSED, // Transfer temporarily suspended
|
|
TMS_LASTITEM = TMS_PAUSED
|
|
} TERMINAL_MEDIA_STATE;
|
|
|
|
|
|
//
|
|
// state transition causes
|
|
//
|
|
|
|
typedef enum FT_STATE_EVENT_CAUSE
|
|
{
|
|
FTEC_NORMAL,
|
|
FTEC_END_OF_FILE,
|
|
FTEC_READ_ERROR,
|
|
FTEC_WRITE_ERROR
|
|
} FT_STATE_EVENT_CAUSE;
|
|
|
|
[
|
|
object,
|
|
uuid(31CA6EA9-C08A-4bea-8811-8E9C1BA3EA3A),
|
|
dual,
|
|
helpstring("ITFileTrack Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface ITFileTrack : IDispatch
|
|
{
|
|
[propget, id(IDISPFILETRACK | 1), hidden, helpstring("property Format")]
|
|
HRESULT Format(
|
|
[out, retval] AM_MEDIA_TYPE **ppmt
|
|
);
|
|
|
|
[propput, id(IDISPFILETRACK | 1), hidden, helpstring("property Format")]
|
|
HRESULT Format(
|
|
[in] const AM_MEDIA_TYPE *pmt
|
|
);
|
|
|
|
[propget, id(IDISPFILETRACK | 2), helpstring("property ControllingTerminal")]
|
|
HRESULT ControllingTerminal(
|
|
[out, retval] ITTerminal **ppControllingTerminal
|
|
);
|
|
|
|
[propget, id(IDISPFILETRACK | 3), helpstring("property AudioFormatForScripting")]
|
|
HRESULT AudioFormatForScripting(
|
|
[out, retval] ITScriptableAudioFormat** ppAudioFormat
|
|
);
|
|
|
|
[propput, id(IDISPFILETRACK | 3), helpstring("property AudioFormatForScripting")]
|
|
HRESULT AudioFormatForScripting(
|
|
[in] ITScriptableAudioFormat* pAudioFormat
|
|
);
|
|
|
|
[propget, id(IDISPFILETRACK | 5), helpstring("property EmptyAudioFormatForScripting")]
|
|
HRESULT EmptyAudioFormatForScripting(
|
|
[out, retval] ITScriptableAudioFormat** ppAudioFormat
|
|
);
|
|
|
|
};
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(627E8AE6-AE4C-4a69-BB63-2AD625404B77),
|
|
dual,
|
|
helpstring("ITMediaPlayback Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface ITMediaPlayback : IDispatch
|
|
{
|
|
[propput, id(IDISPMEDIAPLAYBACK | 1), helpstring("property PlayList")]
|
|
HRESULT PlayList(
|
|
[in] VARIANTARG PlayListVariant
|
|
);
|
|
|
|
[propget, id(IDISPMEDIAPLAYBACK | 1), helpstring("property PlayList")]
|
|
HRESULT PlayList(
|
|
[out, retval] VARIANTARG* pPlayListVariant
|
|
);
|
|
};
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(F5DD4592-5476-4cc1-9D4D-FAD3EEFE7DB2),
|
|
dual,
|
|
helpstring("ITMediaRecord Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
interface ITMediaRecord : IDispatch
|
|
{
|
|
[propput, id(IDISPMEDIARECORD | 1), helpstring("propery FileName")]
|
|
HRESULT FileName
|
|
(
|
|
[in] BSTR bstrFileName
|
|
);
|
|
|
|
[propget, id(IDISPMEDIARECORD | 1), helpstring("property FileName")]
|
|
HRESULT FileName(
|
|
[out, retval] BSTR *pbstrFileName
|
|
);
|
|
};
|
|
|
|
|
|
[
|
|
object,
|
|
uuid(C445DDE8-5199-4bc7-9807-5FFB92E42E09),
|
|
dual,
|
|
helpstring("ITMediaControl Interface"),
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface ITMediaControl : IDispatch
|
|
{
|
|
[id(IDISPMEDIACONTROL | 1), helpstring("method Start")]
|
|
HRESULT Start();
|
|
|
|
[id(IDISPMEDIACONTROL | 2), helpstring("method Stop")]
|
|
HRESULT Stop();
|
|
|
|
[id(IDISPMEDIACONTROL | 3), helpstring("method Pause")]
|
|
HRESULT Pause();
|
|
|
|
[propget, id(IDISPMEDIACONTROL | 4), helpstring("property MediaState")]
|
|
HRESULT MediaState(
|
|
[out, retval] TERMINAL_MEDIA_STATE *pTerminalMediaState
|
|
);
|
|
};
|
|
|
|
|
|
[
|
|
uuid( B1EFC38D-9355-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITBasicAudioTerminal interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITBasicAudioTerminal : IDispatch
|
|
{
|
|
[propput, id(1), helpstring("property Volume")]
|
|
HRESULT Volume(
|
|
[in] long lVolume
|
|
);
|
|
|
|
[propget, id(1), helpstring("property Volume")]
|
|
HRESULT Volume(
|
|
[out, retval] long * plVolume
|
|
);
|
|
|
|
[propput, id(2), helpstring("property Balance")]
|
|
HRESULT Balance(
|
|
[in] long lBalance
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Balance")]
|
|
HRESULT Balance(
|
|
[out, retval] long * plBalance
|
|
);
|
|
}
|
|
|
|
///////////////////////////////////////////////////////
|
|
// ITStaticAudioTerminal
|
|
///////////////////////////////////////////////////////
|
|
|
|
[
|
|
uuid( A86B7871-D14C-48e6-922E-A8D15F984800 ),
|
|
helpstring("TAPI 3.1 ITStaticAudioTerminal Interface"),
|
|
dual
|
|
]
|
|
interface ITStaticAudioTerminal : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property WaveId")]
|
|
HRESULT WaveId(
|
|
[out, retval] long * plWaveId
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( A3C1544E-5B92-11d1-8F4E-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallHub interface"),
|
|
dual
|
|
]
|
|
interface ITCallHub : IDispatch
|
|
{
|
|
[id(1), helpstring("method Clear")]
|
|
HRESULT Clear();
|
|
|
|
[id(2), hidden, helpstring("method EnumerateCalls")]
|
|
HRESULT EnumerateCalls(
|
|
[out, retval] IEnumCall ** ppEnumCall
|
|
);
|
|
[propget, id(3), helpstring("property Calls")]
|
|
HRESULT Calls(
|
|
[out, retval] VARIANT * pCalls
|
|
);
|
|
[propget, id(4), helpstring("property NumCalls")]
|
|
HRESULT NumCalls(
|
|
[out, retval] long * plCalls
|
|
);
|
|
|
|
[propget, id(5), helpstring("property State")]
|
|
HRESULT State(
|
|
[out, retval] CALLHUB_STATE * pState
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid(AB493640-4C0B-11D2-A046-00C04FB6809F),
|
|
helpstring("TAPI 3.0 ITLegacyAddressMediaControl Interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface ITLegacyAddressMediaControl : IUnknown
|
|
{
|
|
[id(IDISPLEGACYADDRESSMEDIACONTROL | 1), hidden]
|
|
HRESULT GetID(
|
|
[in] BSTR pDeviceClass,
|
|
[out] DWORD * pdwSize,
|
|
[out, size_is(,*pdwSize)] BYTE ** ppDeviceID
|
|
);
|
|
|
|
[id(IDISPLEGACYADDRESSMEDIACONTROL | 2), hidden]
|
|
HRESULT GetDevConfig(
|
|
[in] BSTR pDeviceClass,
|
|
[out] DWORD * pdwSize,
|
|
[out, size_is(,*pdwSize)] BYTE ** ppDeviceConfig
|
|
);
|
|
|
|
[id(IDISPLEGACYADDRESSMEDIACONTROL | 3), hidden]
|
|
HRESULT SetDevConfig(
|
|
[in] BSTR pDeviceClass,
|
|
[in] DWORD dwSize,
|
|
[in, size_is(dwSize)] BYTE * pDeviceConfig
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 0e269cd0-10d4-4121-9c22-9c85d625650d ),
|
|
helpstring("TAPI 3.0 ITPrivateEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITPrivateEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Address")]
|
|
HRESULT Address(
|
|
[out, retval] ITAddress ** ppAddress
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Call")]
|
|
HRESULT Call(
|
|
[out, retval] ITCallInfo ** ppCallInfo
|
|
);
|
|
|
|
[propget, id(3), helpstring("property CallHub")]
|
|
HRESULT CallHub(
|
|
[out, retval] ITCallHub ** ppCallHub
|
|
);
|
|
|
|
[propget, id(4), helpstring("property EventCode")]
|
|
HRESULT EventCode(
|
|
[out, retval] long * plEventCode
|
|
);
|
|
|
|
[propget, id(5), helpstring("property EventInterface")]
|
|
HRESULT EventInterface(
|
|
[out, retval] IDispatch ** pEventInterface
|
|
);
|
|
|
|
}
|
|
|
|
|
|
[
|
|
uuid(B0EE512B-A531-409e-9DD9-4099FE86C738),
|
|
helpstring("TAPI 3.1 ITLegacyAddressMediaControl2 Interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface ITLegacyAddressMediaControl2 : ITLegacyAddressMediaControl
|
|
{
|
|
[id(IDISPLEGACYADDRESSMEDIACONTROL | 4), hidden]
|
|
HRESULT ConfigDialog(
|
|
[in] HWND hwndOwner,
|
|
[in] BSTR pDeviceClass
|
|
);
|
|
|
|
[id(IDISPLEGACYADDRESSMEDIACONTROL | 5), hidden]
|
|
HRESULT ConfigDialogEdit(
|
|
[in] HWND hwndOwner,
|
|
[in] BSTR pDeviceClass,
|
|
[in] DWORD dwSizeIn,
|
|
[in, size_is(dwSizeIn)] BYTE * pDeviceConfigIn,
|
|
[out] DWORD * pdwSizeOut,
|
|
[out, size_is(,*pdwSizeOut)] BYTE ** ppDeviceConfigOut
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid(d624582f-cc23-4436-b8a5-47c625c8045d),
|
|
helpstring("TAPI 3.0 ITLegacyCallMediaControl Interface"),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ITLegacyCallMediaControl : IDispatch
|
|
{
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 1), helpstring("method DetectDigits")]
|
|
HRESULT DetectDigits(
|
|
[in] TAPI_DIGITMODE DigitMode
|
|
);
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 2), helpstring("method GenerateDigits")]
|
|
HRESULT GenerateDigits(
|
|
[in] BSTR pDigits,
|
|
[in] TAPI_DIGITMODE DigitMode
|
|
);
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 3), hidden]
|
|
HRESULT GetID(
|
|
[in] BSTR pDeviceClass,
|
|
[out] DWORD * pdwSize,
|
|
[out, size_is(,*pdwSize)] BYTE ** ppDeviceID
|
|
);
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 4), helpstring("method SetMediaType")]
|
|
HRESULT SetMediaType(
|
|
[in] long lMediaType
|
|
);
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 5), helpstring("method MonitorMedia")]
|
|
HRESULT MonitorMedia(
|
|
[in] long lMediaType
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid(57CA332D-7BC2-44f1-A60C-936FE8D7CE73),
|
|
helpstring("TAPI 3.1 ITLegacyCallMediaControl2 Interface"),
|
|
dual
|
|
]
|
|
interface ITLegacyCallMediaControl2 : ITLegacyCallMediaControl
|
|
{
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 6), helpstring("method GenerateDigits2")]
|
|
HRESULT GenerateDigits2(
|
|
[in] BSTR pDigits,
|
|
[in] TAPI_DIGITMODE DigitMode,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 7), helpstring("method GatherDigits")]
|
|
HRESULT GatherDigits(
|
|
[in] TAPI_DIGITMODE DigitMode,
|
|
[in] long lNumDigits,
|
|
[in] BSTR pTerminationDigits,
|
|
[in] long lFirstDigitTimeout,
|
|
[in] long lInterDigitTimeout
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 8), hidden, helpstring("method DetectTones")]
|
|
HRESULT DetectTones(
|
|
[in] TAPI_DETECTTONE * pToneList,
|
|
[in] long lNumTones
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 9), helpstring("method DetectTonesByCollection")]
|
|
HRESULT DetectTonesByCollection(
|
|
[in] ITCollection2 * pDetectToneCollection
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 10), helpstring("method GenerateTone")]
|
|
HRESULT GenerateTone(
|
|
[in] TAPI_TONEMODE ToneMode,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 11), hidden, helpstring("method GenerateCustomTones")]
|
|
HRESULT GenerateCustomTones(
|
|
[in] TAPI_CUSTOMTONE * pToneList,
|
|
[in] long lNumTones,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 12), helpstring("method GenerateCustomTonesByCollection")]
|
|
HRESULT GenerateCustomTonesByCollection(
|
|
[in] ITCollection2 * pCustomToneCollection,
|
|
[in] long lDuration
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 13), helpstring("method CreateDetectToneObject")]
|
|
HRESULT CreateDetectToneObject(
|
|
[out, retval] ITDetectTone ** ppDetectTone
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 14), helpstring("method CreateCustomToneObject")]
|
|
HRESULT CreateCustomToneObject(
|
|
[out, retval] ITCustomTone ** ppCustomTone
|
|
);
|
|
|
|
[id(IDISPLEGACYCALLMEDIACONTROL | 15), helpstring("method GetIDAsVariant")]
|
|
HRESULT GetIDAsVariant(
|
|
[in] BSTR bstrDeviceClass,
|
|
[out, retval] VARIANT *pVarDeviceID
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 961F79BD-3097-49df-A1D6-909B77E89CA0 ),
|
|
helpstring("TAPI 3.1 ITDetectTone Interface"),
|
|
dual
|
|
]
|
|
interface ITDetectTone : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property AppSpecific")]
|
|
HRESULT AppSpecific(
|
|
[out, retval] long * plAppSpecific
|
|
);
|
|
|
|
[propput, id(1), helpstring("property AppSpecific")]
|
|
HRESULT AppSpecific(
|
|
[in] long lAppSpecific
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Duration")]
|
|
HRESULT Duration(
|
|
[out, retval] long * plDuration
|
|
);
|
|
|
|
[propput, id(2), helpstring("property Duration")]
|
|
HRESULT Duration(
|
|
[in] long lDuration
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Frequency")]
|
|
HRESULT Frequency(
|
|
[in] long Index,
|
|
[out, retval] long * plFrequency
|
|
);
|
|
|
|
[propput, id(3), helpstring("property Frequency")]
|
|
HRESULT Frequency(
|
|
[in] long Index,
|
|
[in] long lFrequency
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 357AD764-B3C6-4b2a-8FA5-0722827A9254 ),
|
|
helpstring("TAPI 3.1 ITCustomTone Interface"),
|
|
dual,
|
|
pointer_default(unique)
|
|
]
|
|
interface ITCustomTone : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Frequency")]
|
|
HRESULT Frequency(
|
|
[out, retval] long * plFrequency
|
|
);
|
|
|
|
[propput, id(1), helpstring("property Frequency")]
|
|
HRESULT Frequency(
|
|
[in] long lFrequency
|
|
);
|
|
|
|
[propget, id(2), helpstring("property CadenceOn")]
|
|
HRESULT CadenceOn(
|
|
[out, retval] long * plCadenceOn
|
|
);
|
|
|
|
[propput, id(2), helpstring("property CadenceOn")]
|
|
HRESULT CadenceOn(
|
|
[in] long CadenceOn
|
|
);
|
|
|
|
[propget, id(3), helpstring("property CadenceOff")]
|
|
HRESULT CadenceOff(
|
|
[out, retval] long * plCadenceOff
|
|
);
|
|
|
|
[propput, id(3), helpstring("property CadenceOff")]
|
|
HRESULT CadenceOff(
|
|
[in] long lCadenceOff
|
|
);
|
|
|
|
[propget, id(4), helpstring("property Volume")]
|
|
HRESULT Volume(
|
|
[out, retval] long * plVolume
|
|
);
|
|
|
|
[propput, id(4), helpstring("property Volume")]
|
|
HRESULT Volume(
|
|
[in] long lVolume
|
|
);
|
|
}
|
|
|
|
///////////////////////////////////////////////////////
|
|
// IEnumPhone
|
|
///////////////////////////////////////////////////////
|
|
|
|
[
|
|
uuid( F15B7669-4780-4595-8C89-FB369C8CF7AA ),
|
|
helpstring("TAPI 3.1 IEnumPhone Interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumPhone : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] ITPhone ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumPhone ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( AE269CF4-935E-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 IEnumTerminal Interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumTerminal : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITTerminal ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumTerminal ** ppEnum
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( AE269CF5-935E-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 IEnumTerminalClass interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumTerminalClass : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] GUID * pElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumTerminalClass ** ppEnum
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( AE269CF6-935E-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 IEnumCall interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumCall : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITCallInfo ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumCall ** ppEnum
|
|
);
|
|
}
|
|
|
|
|
|
|
|
[
|
|
uuid( 1666FCA1-9363-11d0-835C-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 IEnumAddress interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumAddress : IUnknown
|
|
{
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] ITAddress ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumAddress ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( A3C15450-5B92-11d1-8F4E-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 IEnumCallHub interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumCallHub : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] ITCallHub ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumCallHub ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 35372049-0BC6-11d2-A033-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 IEnumBstr interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumBstr : IUnknown
|
|
{
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] BSTR * ppStrings,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumBstr ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 4567450C-DBEE-4e3f-AAF5-37BF9EBF5E29 ),
|
|
helpstring("TAPI 3.1 IEnumPluggableTerminalClassInfo interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumPluggableTerminalClassInfo : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] ITPluggableTerminalClassInfo** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumPluggableTerminalClassInfo ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( E9586A80-89E6-4cff-931D-478D5751F4C0 ),
|
|
helpstring("TAPI 3.1 IEnumPluggableSuperclassInfo interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumPluggableSuperclassInfo : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out, size_is(celt)] ITPluggableTerminalSuperclassInfo** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumPluggableSuperclassInfo ** ppEnum
|
|
);
|
|
}
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////
|
|
// ITPhoneEvent
|
|
///////////////////////////////////////////////////////
|
|
[
|
|
uuid( 8F942DD8-64ED-4aaf-A77D-B23DB0837EAD ),
|
|
helpstring("TAPI 3.1 ITPhoneEvent Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITPhoneEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Phone")]
|
|
HRESULT Phone( [out, retval] ITPhone ** ppPhone );
|
|
|
|
[propget, id(2), helpstring("property Event")]
|
|
HRESULT Event( [out, retval] PHONE_EVENT * pEvent );
|
|
|
|
[propget, id(3), helpstring("property ButtonState")]
|
|
HRESULT ButtonState( [out, retval] PHONE_BUTTON_STATE * pState );
|
|
|
|
[propget, id(4), helpstring("property HookSwitchState")]
|
|
HRESULT HookSwitchState( [out, retval] PHONE_HOOK_SWITCH_STATE * pState );
|
|
|
|
[propget, id(5), helpstring("property HookSwitchDevice")]
|
|
HRESULT HookSwitchDevice( [out, retval] PHONE_HOOK_SWITCH_DEVICE * pDevice );
|
|
|
|
[propget, id(6), helpstring("property RingMode")]
|
|
HRESULT RingMode( [out, retval] long * plRingMode );
|
|
|
|
[propget, id(7), helpstring("property ButtonLampId")]
|
|
HRESULT ButtonLampId( [out, retval] long * plButtonLampId );
|
|
|
|
[propget, id(8), helpstring("property NumberGathered")]
|
|
HRESULT NumberGathered( [out, retval] BSTR * ppNumber );
|
|
|
|
[propget, id(9), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCallInfo );
|
|
}
|
|
|
|
[
|
|
uuid( 62F47097-95C9-11d0-835D-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITCallStateEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITCallStateEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call(
|
|
[out, retval] ITCallInfo ** ppCallInfo
|
|
);
|
|
|
|
[propget, id(2), helpstring("property State")]
|
|
HRESULT State(
|
|
[out, retval] CALL_STATE * pCallState
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Cause")]
|
|
HRESULT Cause(
|
|
[out, retval] CALL_STATE_EVENT_CAUSE * pCEC
|
|
);
|
|
|
|
[propget, id(4), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance(
|
|
[out, retval] long * plCallbackInstance
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( 63FFB2A6-872B-4cd3-A501-326E8FB40AF7 ),
|
|
helpstring("TAPI 3.1 ITPhoneDeviceSpecificEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITPhoneDeviceSpecificEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Phone")]
|
|
HRESULT Phone( [out, retval] ITPhone ** ppPhone );
|
|
|
|
[propget, id(2), helpstring("property lParam1")]
|
|
HRESULT lParam1( [out, retval] long *pParam1);
|
|
|
|
[propget, id(3), helpstring("property lParam2")]
|
|
HRESULT lParam2( [out, retval] long *pParam2);
|
|
|
|
[propget, id(4), helpstring("property lParam3")]
|
|
HRESULT lParam3( [out, retval] long *pParam3);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( FF36B87F-EC3A-11d0-8EE4-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallMediaEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITCallMediaEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call(
|
|
[out, retval] ITCallInfo ** ppCallInfo
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Event")]
|
|
HRESULT Event(
|
|
[out, retval] CALL_MEDIA_EVENT * pCallMediaEvent
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Error")]
|
|
HRESULT Error(
|
|
[out, retval] HRESULT * phrError
|
|
);
|
|
|
|
[propget, id(4), helpstring("property Terminal")]
|
|
HRESULT Terminal(
|
|
[out, retval] ITTerminal ** ppTerminal
|
|
);
|
|
|
|
[propget, id(5), helpstring("property Stream")]
|
|
HRESULT Stream(
|
|
[out, retval] ITStream ** ppStream
|
|
);
|
|
|
|
[propget, id(6), helpstring("property Cause")]
|
|
HRESULT Cause(
|
|
[out, retval] CALL_MEDIA_EVENT_CAUSE * pCause
|
|
);
|
|
}
|
|
|
|
[
|
|
|
|
uuid( 80D3BFAC-57D9-11d2-A04A-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITDigitDetectionEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITDigitDetectionEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCallInfo );
|
|
|
|
[propget, id(2), helpstring("property Digit")]
|
|
HRESULT Digit( [out, retval] unsigned char * pucDigit );
|
|
|
|
[propget, id(3), helpstring("property DigitMode")]
|
|
HRESULT DigitMode( [out, retval] TAPI_DIGITMODE * pDigitMode );
|
|
|
|
[propget, id(4), helpstring("property TickCount")]
|
|
HRESULT TickCount( [out, retval] long * plTickCount );
|
|
|
|
[propget, id(5), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance( [out, retval] long * plCallbackInstance );
|
|
}
|
|
|
|
[
|
|
uuid(80D3BFAD-57D9-11d2-A04A-00C04FB6809F),
|
|
helpstring("TAPI 3.0 ITDigitGenerationEvent interface"),
|
|
dual
|
|
]
|
|
interface ITDigitGenerationEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCallInfo );
|
|
|
|
[propget, id(2), helpstring("property GenerationTermination")]
|
|
HRESULT GenerationTermination( [out, retval] long * plGenerationTermination );
|
|
|
|
[propget, id(3), helpstring("property TickCount")]
|
|
HRESULT TickCount( [out, retval] long * plTickCount );
|
|
|
|
[propget, id(4), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance( [out, retval] long * plCallbackInstance );
|
|
}
|
|
|
|
[
|
|
uuid( E52EC4C1-CBA3-441a-9E6A-93CB909E9724 ),
|
|
helpstring("TAPI 3.1 ITDigitsGatheredEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITDigitsGatheredEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCallInfo );
|
|
|
|
[propget, id(2), helpstring("property Digits")]
|
|
HRESULT Digits( [out, retval] BSTR * ppDigits );
|
|
|
|
[propget, id(3), helpstring("property GatherTermination")]
|
|
HRESULT GatherTermination( [out, retval] TAPI_GATHERTERM * pGatherTermination );
|
|
|
|
[propget, id(4), helpstring("property TickCount")]
|
|
HRESULT TickCount( [out, retval] long * plTickCount );
|
|
|
|
[propget, id(5), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance( [out, retval] long * plCallbackInstance );
|
|
}
|
|
|
|
[
|
|
uuid( 407E0FAF-D047-4753-B0C6-8E060373FECD ),
|
|
helpstring("TAPI 3.1 ITToneDetectionEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITToneDetectionEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCallInfo );
|
|
|
|
[propget, id(2), helpstring("property AppSpecific")]
|
|
HRESULT AppSpecific( [out, retval] long * plAppSpecific );
|
|
|
|
[propget, id(3), helpstring("property TickCount")]
|
|
HRESULT TickCount( [out, retval] long * plTickCount );
|
|
|
|
[propget, id(4), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance( [out, retval] long * plCallbackInstance );
|
|
}
|
|
|
|
[
|
|
uuid( F4854D48-937A-11d1-BB58-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITTAPIObjectEvent Interface"),
|
|
dual
|
|
]
|
|
interface ITTAPIObjectEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property TAPIObject")]
|
|
HRESULT TAPIObject(
|
|
[out, retval] ITTAPI ** ppTAPIObject
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Event")]
|
|
HRESULT Event(
|
|
[out, retval] TAPIOBJECT_EVENT * pEvent
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Address")]
|
|
HRESULT Address(
|
|
[out, retval] ITAddress ** ppAddress
|
|
);
|
|
|
|
[propget, id(4), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance(
|
|
[out, retval] long * plCallbackInstance
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 359DDA6E-68CE-4383-BF0B-169133C41B46 ),
|
|
helpstring("TAPI 3.1 ITTAPIObjectEvent2 interface"),
|
|
oleautomation
|
|
]
|
|
interface ITTAPIObjectEvent2 : ITTAPIObjectEvent
|
|
{
|
|
[propget, id(5), helpstring("property Phone")]
|
|
HRESULT Phone( [out, retval] ITPhone ** ppPhone );
|
|
}
|
|
|
|
[
|
|
uuid( EDDB9426-3B91-11d1-8F30-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITTAPIEventNotification Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITTAPIEventNotification : IUnknown
|
|
{
|
|
[id(1), helpstring("method Event")]
|
|
HRESULT Event(
|
|
[in] TAPI_EVENT TapiEvent,
|
|
[in] IDispatch * pEvent
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( A3C15451-5B92-11d1-8F4E-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallHubEvent Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITCallHubEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Event")]
|
|
HRESULT Event(
|
|
[out, retval] CALLHUB_EVENT * pEvent
|
|
);
|
|
|
|
[propget, id(2), helpstring("property CallHub")]
|
|
HRESULT CallHub(
|
|
[out, retval] ITCallHub ** ppCallHub
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Call")]
|
|
HRESULT Call(
|
|
[out, retval] ITCallInfo ** ppCall
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 831CE2D1-83B5-11d1-BB5C-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITAddressEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITAddressEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Address")]
|
|
HRESULT Address( [out, retval] ITAddress ** ppAddress );
|
|
|
|
[propget, id(2), helpstring("property Event")]
|
|
HRESULT Event( [out, retval] ADDRESS_EVENT * pEvent );
|
|
|
|
[propget, id(3), helpstring("property Terminal")]
|
|
HRESULT Terminal( [out, retval] ITTerminal ** ppTerminal );
|
|
}
|
|
|
|
|
|
[
|
|
uuid( 3ACB216B-40BD-487a-8672-5CE77BD7E3A3 ),
|
|
helpstring("TAPI 3.1 ITAddressDeviceSpecificEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITAddressDeviceSpecificEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Address")]
|
|
HRESULT Address( [out, retval] ITAddress ** ppAddress );
|
|
|
|
[propget, id(2), helpstring("property Call")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(3), helpstring("property lParam1")]
|
|
HRESULT lParam1( [out, retval] long *pParam1);
|
|
|
|
[propget, id(4), helpstring("property lParam2")]
|
|
HRESULT lParam2( [out, retval] long *pParam2);
|
|
|
|
[propget, id(5), helpstring("property lParam3")]
|
|
HRESULT lParam3( [out, retval] long *pParam3);
|
|
}
|
|
|
|
|
|
|
|
[
|
|
uuid( E4A7FBAC-8C17-4427-9F55-9F589AC8AF00 ),
|
|
helpstring("TAPI 3.0 ITFileTerminalEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITFileTerminalEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Terminal")]
|
|
HRESULT Terminal( [out, retval] ITTerminal ** ppTerminal );
|
|
|
|
[propget, id(2), helpstring("property Track")]
|
|
HRESULT Track( [out, retval] ITFileTrack ** ppTrackTerminal );
|
|
|
|
[propget, id(3), helpstring("property Call") ]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(4), helpstring("property State")]
|
|
HRESULT State( [out, retval] TERMINAL_MEDIA_STATE * pState);
|
|
|
|
[propget, id(5), helpstring("property Cause")]
|
|
HRESULT Cause( [out, retval] FT_STATE_EVENT_CAUSE * pCause );
|
|
|
|
[propget, id(6), helpstring("property Error")]
|
|
HRESULT Error( [out, retval] HRESULT * phrErrorCode );
|
|
}
|
|
|
|
[
|
|
uuid( D964788F-95A5-461d-AB0C-B9900A6C2713 ),
|
|
helpstring("TAPI 3.0 ITTTSTerminalEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITTTSTerminalEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Terminal")]
|
|
HRESULT Terminal( [out, retval] ITTerminal ** ppTerminal );
|
|
|
|
[propget, id(2), helpstring("property Call") ]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(3), helpstring("property Error")]
|
|
HRESULT Error( [out, retval] HRESULT * phrErrorCode );
|
|
}
|
|
|
|
[
|
|
uuid( EE016A02-4FA9-467c-933F-5A15B12377D7 ),
|
|
helpstring("TAPI 3.0 ITASRTerminalEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITASRTerminalEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Terminal")]
|
|
HRESULT Terminal( [out, retval] ITTerminal ** ppTerminal );
|
|
|
|
[propget, id(2), helpstring("property Call") ]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(3), helpstring("property Error")]
|
|
HRESULT Error( [out, retval] HRESULT * phrErrorCode );
|
|
}
|
|
|
|
[
|
|
uuid( E6F56009-611F-4945-BBD2-2D0CE5612056 ),
|
|
helpstring("TAPI 3.0 ITToneTerminalEvent interface"),
|
|
oleautomation
|
|
]
|
|
interface ITToneTerminalEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Terminal")]
|
|
HRESULT Terminal( [out, retval] ITTerminal ** ppTerminal );
|
|
|
|
[propget, id(2), helpstring("property Call") ]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(3), helpstring("property Error")]
|
|
HRESULT Error( [out, retval] HRESULT * phrErrorCode );
|
|
}
|
|
|
|
[
|
|
uuid( CFA3357C-AD77-11d1-BB68-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITQOSEvent Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITQOSEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property CallHub")]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[propget, id(3), helpstring("property Event")]
|
|
HRESULT Event( [out, retval] QOS_EVENT * pQosEvent );
|
|
|
|
[propget, id(4), helpstring("property MediaType")]
|
|
HRESULT MediaType( [out, retval] long * plMediaType );
|
|
}
|
|
|
|
[
|
|
uuid( 5D4B65F9-E51C-11d1-A02F-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallInfoChangeEvent Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITCallInfoChangeEvent : IDispatch
|
|
{
|
|
[ propget, id(1), helpstring("property Call") ]
|
|
HRESULT Call( [out, retval] ITCallInfo ** ppCall );
|
|
|
|
[ propget, id(2), helpstring("property Cause") ]
|
|
HRESULT Cause( [out, retval] CALLINFOCHANGE_CAUSE * pCIC );
|
|
|
|
[ propget, id(3), helpstring("property Callback Instance") ]
|
|
HRESULT CallbackInstance( [out, retval] long * plCallbackInstance );
|
|
}
|
|
|
|
|
|
[
|
|
uuid( AC48FFDF-F8C4-11d1-A030-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITRequest Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITRequest : IDispatch
|
|
{
|
|
[ id(1), helpstring("method MakeCall") ]
|
|
HRESULT MakeCall(
|
|
[in] BSTR pDestAddress,
|
|
[in] BSTR pAppName,
|
|
[in] BSTR pCalledParty,
|
|
[in] BSTR pComment
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid(AC48FFDE-F8C4-11d1-A030-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITRequestEvent Interface"),
|
|
oleautomation
|
|
]
|
|
interface ITRequestEvent : IDispatch
|
|
{
|
|
[ propget, id(1), helpstring("property RegistrationInstance") ]
|
|
HRESULT RegistrationInstance( [out, retval] long * plRegistrationInstance );
|
|
|
|
[ propget, id(2), helpstring("property RequestMode") ]
|
|
HRESULT RequestMode( [out, retval] long * plRequestMode );
|
|
|
|
[ propget, id(3), helpstring("property DestAddress") ]
|
|
HRESULT DestAddress( [out, retval] BSTR * ppDestAddress );
|
|
|
|
[ propget, id(5), helpstring("property AppName") ]
|
|
HRESULT AppName( [out, retval] BSTR * ppAppName );
|
|
|
|
[ propget, id(6), helpstring("property CalledParty") ]
|
|
HRESULT CalledParty( [out, retval] BSTR * ppCalledParty );
|
|
|
|
[ propget, id(7), helpstring("property Comment") ]
|
|
HRESULT Comment( [out, retval] BSTR * ppComment );
|
|
}
|
|
|
|
|
|
[
|
|
object,
|
|
public,
|
|
uuid( 5EC5ACF2-9C02-11d0-8362-00AA003CCABD ),
|
|
helpstring("TAPI 3.0 ITCollection interface"),
|
|
dual
|
|
]
|
|
interface ITCollection : IDispatch
|
|
{
|
|
[propget, helpstring("Returns number of items in collection.")]
|
|
HRESULT Count(
|
|
[out, retval] long * lCount
|
|
);
|
|
|
|
[propget, id(DISPID_VALUE),
|
|
helpstring("Given an index, returns an item in the collection.")]
|
|
HRESULT Item(
|
|
[in] long Index,
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
[propget, restricted, id(DISPID_NEWENUM),
|
|
helpstring("returns an enumerator for the collection.")]
|
|
HRESULT _NewEnum(
|
|
[out, retval] IUnknown ** ppNewEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
object,
|
|
public,
|
|
uuid( E6DDDDA5-A6D3-48ff-8737-D32FC4D95477 ),
|
|
helpstring("TAPI 3.1 ITCollection2 interface"),
|
|
dual
|
|
]
|
|
interface ITCollection2 : ITCollection
|
|
{
|
|
[id(1), helpstring("Adds an item to the collection.")]
|
|
HRESULT Add(
|
|
[in] long Index,
|
|
[in] VARIANT * pVariant
|
|
);
|
|
|
|
[id(2), helpstring("Removes an item from the collection.")]
|
|
HRESULT Remove(
|
|
[in] long Index
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 449F659E-88A3-11d1-BB5D-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITForwardInformation Interface"),
|
|
dual
|
|
]
|
|
interface ITForwardInformation : IDispatch
|
|
{
|
|
[propput, id(1), helpstring("property NumRingsNoAnswer")]
|
|
HRESULT NumRingsNoAnswer(
|
|
[in] long lNumRings
|
|
);
|
|
[propget, id(1), helpstring("property NumRingsNoAnswer")]
|
|
HRESULT NumRingsNoAnswer(
|
|
[out, retval] long * plNumRings
|
|
);
|
|
[id(2), helpstring("method SetForwardType")]
|
|
HRESULT SetForwardType(
|
|
[in] long ForwardType,
|
|
[in] BSTR pDestAddress,
|
|
[in] BSTR pCallerAddress
|
|
);
|
|
[propget, id(3), helpstring("property ForwardTypeDestination")]
|
|
HRESULT ForwardTypeDestination(
|
|
[in] long ForwardType,
|
|
[out, retval] BSTR * ppDestAddress
|
|
);
|
|
[propget, id(4), helpstring("property ForwardTypeCaller")]
|
|
HRESULT ForwardTypeCaller(
|
|
[in] long Forwardtype,
|
|
[out, retval] BSTR * ppCallerAddress
|
|
);
|
|
[id(5),hidden]
|
|
HRESULT GetForwardType(
|
|
[in] long ForwardType,
|
|
[out] BSTR * ppDestinationAddress,
|
|
[out] BSTR * ppCallerAddress
|
|
);
|
|
[id(6), helpstring("method Clear")]
|
|
HRESULT Clear();
|
|
}
|
|
|
|
[
|
|
uuid( 5229B4ED-B260-4382-8E1A-5DF3A8A4CCC0 ),
|
|
helpstring("TAPI 3.1 ITForwardInformation2 Interface"),
|
|
dual
|
|
]
|
|
interface ITForwardInformation2 : ITForwardInformation
|
|
{
|
|
[id(7), helpstring("method SetForwardType2")]
|
|
HRESULT SetForwardType2(
|
|
[in] long ForwardType,
|
|
[in] BSTR pDestAddress,
|
|
[in] long DestAddressType,
|
|
[in] BSTR pCallerAddress,
|
|
[in] long CallerAddressType
|
|
);
|
|
[id(8),hidden]
|
|
HRESULT GetForwardType2(
|
|
[in] long ForwardType,
|
|
[out] BSTR * ppDestinationAddress,
|
|
[out] long * pDestAddressType,
|
|
[out] BSTR * ppCallerAddress,
|
|
[out] long * pCallerAddressType
|
|
);
|
|
[propget, id(9), helpstring("property ForwardTypeDestinationAddressType")]
|
|
HRESULT ForwardTypeDestinationAddressType(
|
|
[in] long ForwardType,
|
|
[out, retval] long * pDestAddressType
|
|
);
|
|
[propget, id(10), helpstring("property ForwardTypeCallerAddressType")]
|
|
HRESULT ForwardTypeCallerAddressType(
|
|
[in] long Forwardtype,
|
|
[out, retval] long * pCallerAddressType
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 0C4D8F03-8DDB-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 ITAddressTranslation Interface"),
|
|
dual
|
|
]
|
|
interface ITAddressTranslation : IDispatch
|
|
{
|
|
|
|
[id(IDISPADDRESSTRANSLATION | 1), helpstring("method TranslateAddress")]
|
|
HRESULT TranslateAddress(
|
|
[in] BSTR pAddressToTranslate,
|
|
[in] long lCard,
|
|
[in] long lTranslateOptions,
|
|
[out, retval] ITAddressTranslationInfo ** ppTranslated
|
|
);
|
|
|
|
[ id(IDISPADDRESSTRANSLATION | 2), helpstring("method TranslateDialog")]
|
|
HRESULT TranslateDialog(
|
|
[in] TAPIHWND hwndOwner,
|
|
[in] BSTR pAddressIn
|
|
);
|
|
|
|
[id(IDISPADDRESSTRANSLATION | 3), hidden, helpstring("method EnumerateLocations")]
|
|
HRESULT EnumerateLocations(
|
|
[out, retval] IEnumLocation ** ppEnumLocation
|
|
);
|
|
[propget, id(IDISPADDRESSTRANSLATION | 4), helpstring("property Locations")]
|
|
HRESULT Locations(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
[id(IDISPADDRESSTRANSLATION | 5), hidden, helpstring("method EnumerateCallingCards")]
|
|
HRESULT EnumerateCallingCards(
|
|
[out, retval] IEnumCallingCard ** ppEnumCallingCard
|
|
);
|
|
[propget, id(IDISPADDRESSTRANSLATION | 6), helpstring("property CallingCards")]
|
|
HRESULT CallingCards(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
}
|
|
|
|
|
|
|
|
[
|
|
uuid( AFC15945-8D40-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 ITAddressTranslationInfo Interface"),
|
|
dual
|
|
]
|
|
interface ITAddressTranslationInfo : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Dialable String")]
|
|
HRESULT DialableString(
|
|
[out, retval] BSTR * ppDialableString
|
|
);
|
|
[propget, id(2), helpstring("property Displayable String")]
|
|
HRESULT DisplayableString(
|
|
[out, retval] BSTR * ppDisplayableString
|
|
);
|
|
[propget, id(3), helpstring("property Current Country Code")]
|
|
HRESULT CurrentCountryCode(
|
|
[out, retval] long * CountryCode
|
|
);
|
|
[propget, id(4), helpstring("property Destination Country Code")]
|
|
HRESULT DestinationCountryCode(
|
|
[out, retval] long * CountryCode
|
|
);
|
|
[propget, id(5), helpstring("property Translation Results")]
|
|
HRESULT TranslationResults(
|
|
[out, retval] long * plResults
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 0C4D8EFF-8DDB-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 ITLocationInfo Interface"),
|
|
dual
|
|
]
|
|
interface ITLocationInfo : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Permanent Location ID")]
|
|
HRESULT PermanentLocationID(
|
|
[out, retval] long * plLocationID
|
|
);
|
|
[propget, id(2), helpstring("property Country Code")]
|
|
HRESULT CountryCode(
|
|
[out, retval] long * plCountryCode
|
|
);
|
|
[propget, id(3), helpstring("property Country ID")]
|
|
HRESULT CountryID(
|
|
[out, retval] long * plCountryID
|
|
);
|
|
[propget, id(4), helpstring("property Options")]
|
|
HRESULT Options(
|
|
[out, retval] long * plOptions
|
|
);
|
|
[propget, id(5), helpstring("property Preferred Credit Card ID")]
|
|
HRESULT PreferredCardID(
|
|
[out, retval] long * plCardID
|
|
);
|
|
[propget, id(6), helpstring("property Location Name")]
|
|
HRESULT LocationName(
|
|
[out, retval] BSTR * ppLocationName
|
|
);
|
|
[propget, id(7), helpstring("property City/Area Code")]
|
|
HRESULT CityCode(
|
|
[out, retval] BSTR * ppCode
|
|
);
|
|
[propget, id(8), helpstring("property Local Access Code")]
|
|
HRESULT LocalAccessCode(
|
|
[out, retval] BSTR * ppCode
|
|
);
|
|
[propget, id(9), helpstring("property Long Distance Access Code")]
|
|
HRESULT LongDistanceAccessCode(
|
|
[out, retval] BSTR * ppCode
|
|
);
|
|
[propget, id(10), helpstring("property Toll Prefix List")]
|
|
HRESULT TollPrefixList(
|
|
[out, retval] BSTR * ppTollList
|
|
);
|
|
[propget, id(11), helpstring("property Cancel Call Waiting Code")]
|
|
HRESULT CancelCallWaitingCode(
|
|
[out, retval] BSTR * ppCode
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 0C4D8F01-8DDB-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 IEnumLocation interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumLocation : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITLocationInfo ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumLocation ** ppEnum
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 0C4D8F00-8DDB-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 ITCallingCard Interface"),
|
|
dual
|
|
]
|
|
interface ITCallingCard : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Permanent Card ID")]
|
|
HRESULT PermanentCardID(
|
|
[out, retval] long * plCardID
|
|
);
|
|
[propget, id(2), helpstring("property Number Of Digits")]
|
|
HRESULT NumberOfDigits(
|
|
[out, retval] long * plDigits
|
|
);
|
|
[propget, id(3), helpstring("property Options")]
|
|
HRESULT Options(
|
|
[out, retval] long * plOptions
|
|
);
|
|
[propget, id(4), helpstring("property Card Name")]
|
|
HRESULT CardName(
|
|
[out, retval] BSTR * ppCardName
|
|
);
|
|
[propget, id(5), helpstring("property Same Area Dialing Rule")]
|
|
HRESULT SameAreaDialingRule(
|
|
[out, retval] BSTR * ppRule
|
|
);
|
|
[propget, id(6), helpstring("property Long Distance Dialing Rule")]
|
|
HRESULT LongDistanceDialingRule(
|
|
[out, retval] BSTR * ppRule
|
|
);
|
|
[propget, id(7), helpstring("property International Dialing Rule")]
|
|
HRESULT InternationalDialingRule(
|
|
[out, retval] BSTR * ppRule
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( 0C4D8F02-8DDB-11d1-A09E-00805FC147D3 ),
|
|
helpstring("TAPI 3.0 IEnumCallingCard interface"),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
|
|
interface IEnumCallingCard : IUnknown
|
|
{
|
|
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITCallingCard ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumCallingCard ** ppEnum
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( 895801DF-3DD6-11d1-8F30-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITCallNotificationEvent interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITCallNotificationEvent : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Call")]
|
|
HRESULT Call(
|
|
[out,retval] ITCallInfo ** ppCall
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Event")]
|
|
HRESULT Event(
|
|
[out,retval] CALL_NOTIFICATION_EVENT * pCallNotificationEvent
|
|
);
|
|
|
|
[propget, id(3), helpstring("property CallbackInstance")]
|
|
HRESULT CallbackInstance(
|
|
[out, retval] long * plCallbackInstance
|
|
);
|
|
|
|
}
|
|
|
|
|
|
|
|
[
|
|
uuid( E9225295-C759-11d1-A02B-00C04FB6809F ),
|
|
helpstring("TAPI 3.0 ITDispatchMapper interface")
|
|
]
|
|
interface ITDispatchMapper : IDispatch
|
|
{
|
|
[id(1), helpstring("QueryDispatchInterface")]
|
|
HRESULT
|
|
QueryDispatchInterface(
|
|
[in] BSTR pIID,
|
|
[in] IDispatch * pInterfaceToMap,
|
|
[out, retval] IDispatch ** ppReturnedInterface
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( EE3BD604-3868-11D2-A045-00C04FB6809F ),
|
|
helpstring( "ITStreamControl interface" ),
|
|
pointer_default(unique),
|
|
dual
|
|
]
|
|
interface ITStreamControl : IDispatch
|
|
{
|
|
[id(IDISPAGGREGATEDMSPCALLOBJ | 1), helpstring("method CreateStream")]
|
|
HRESULT CreateStream(
|
|
[in] long lMediaType,
|
|
[in] TERMINAL_DIRECTION td,
|
|
[out, retval] ITStream ** ppStream
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPCALLOBJ | 2), helpstring("method RemoveStream")]
|
|
HRESULT RemoveStream(
|
|
[in] ITStream * pStream
|
|
);
|
|
|
|
[id(IDISPAGGREGATEDMSPCALLOBJ | 3), hidden]
|
|
HRESULT EnumerateStreams(
|
|
[out] IEnumStream ** ppEnumStream
|
|
);
|
|
|
|
[propget, id(IDISPAGGREGATEDMSPCALLOBJ | 4), helpstring("property Streams")]
|
|
HRESULT Streams(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
}
|
|
|
|
|
|
[
|
|
uuid( EE3BD605-3868-11D2-A045-00C04FB6809F ),
|
|
helpstring( "ITStream interface" ),
|
|
pointer_default(unique),
|
|
dual
|
|
]
|
|
interface ITStream : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property MediaType")]
|
|
HRESULT MediaType(
|
|
[out, retval] long * plMediaType
|
|
);
|
|
|
|
[propget, id(2), helpstring("property Direction")]
|
|
HRESULT Direction(
|
|
[out, retval] TERMINAL_DIRECTION * pTD
|
|
);
|
|
|
|
[propget, id(3), helpstring("property Name")]
|
|
HRESULT Name(
|
|
[out, retval] BSTR * ppName
|
|
);
|
|
|
|
[id(4), helpstring("method StartStream")]
|
|
HRESULT StartStream(void);
|
|
|
|
[id(5), helpstring("method PauseStream")]
|
|
HRESULT PauseStream(void);
|
|
|
|
[id(6), helpstring("method StopStream")]
|
|
HRESULT StopStream(void);
|
|
|
|
[id(7), helpstring("method SelectTerminal")]
|
|
HRESULT SelectTerminal(
|
|
[in] ITTerminal * pTerminal
|
|
);
|
|
|
|
[id(8), helpstring("method UnselectTerminal")]
|
|
HRESULT UnselectTerminal(
|
|
[in] ITTerminal * pTerminal
|
|
);
|
|
|
|
[id(9), hidden]
|
|
HRESULT EnumerateTerminals(
|
|
[out] IEnumTerminal ** ppEnumTerminal
|
|
);
|
|
|
|
[propget, id(10), helpstring("property Terminals")]
|
|
HRESULT Terminals(
|
|
[out, retval] VARIANT * pTerminals
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( EE3BD606-3868-11d2-A045-00C04FB6809F ),
|
|
helpstring( "IEnumStream interface" ),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumStream : IUnknown
|
|
{
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITStream ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumStream ** ppEnum
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( EE3BD607-3868-11D2-A045-00C04FB6809F ),
|
|
helpstring( "ITSubStreamControl interface" ),
|
|
pointer_default(unique),
|
|
dual
|
|
]
|
|
interface ITSubStreamControl : IDispatch
|
|
{
|
|
[id(1), helpstring("method CreateSubStream")]
|
|
HRESULT CreateSubStream(
|
|
[out, retval] ITSubStream ** ppSubStream
|
|
);
|
|
|
|
[id(2), helpstring("method RemoveSubStream")]
|
|
HRESULT RemoveSubStream(
|
|
[in] ITSubStream * pSubStream
|
|
);
|
|
|
|
[id(3), hidden]
|
|
HRESULT EnumerateSubStreams(
|
|
[out] IEnumSubStream ** ppEnumSubStream
|
|
);
|
|
|
|
[propget, id(4), helpstring("property SubStreams")]
|
|
HRESULT SubStreams(
|
|
[out, retval] VARIANT * pVariant
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( EE3BD608-3868-11D2-A045-00C04FB6809F ),
|
|
helpstring( "ITSubStream interface" ),
|
|
pointer_default(unique),
|
|
dual
|
|
]
|
|
interface ITSubStream : IDispatch
|
|
{
|
|
[id(1), helpstring("method StartStream")]
|
|
HRESULT StartSubStream(void);
|
|
|
|
[id(2), helpstring("method PauseStream")]
|
|
HRESULT PauseSubStream(void);
|
|
|
|
[id(3), helpstring("method StopStream")]
|
|
HRESULT StopSubStream(void);
|
|
|
|
[id(4), helpstring("method SelectTerminal")]
|
|
HRESULT SelectTerminal(
|
|
[in] ITTerminal * pTerminal
|
|
);
|
|
|
|
[id(5), helpstring("method UnselectTerminal")]
|
|
HRESULT UnselectTerminal(
|
|
[in] ITTerminal * pTerminal
|
|
);
|
|
|
|
[id(6), hidden]
|
|
HRESULT EnumerateTerminals(
|
|
[out] IEnumTerminal ** ppEnumTerminal
|
|
);
|
|
|
|
[propget, id(7), helpstring("property Terminals")]
|
|
HRESULT Terminals(
|
|
[out, retval] VARIANT * pTerminals
|
|
);
|
|
|
|
[propget, id(8), helpstring("property Stream")]
|
|
HRESULT Stream(
|
|
[out, retval] ITStream ** ppITStream
|
|
);
|
|
}
|
|
|
|
|
|
[
|
|
uuid( EE3BD609-3868-11d2-A045-00C04FB6809F ),
|
|
helpstring( "IEnumSubStream interface" ),
|
|
hidden,
|
|
pointer_default(unique)
|
|
]
|
|
interface IEnumSubStream : IUnknown
|
|
{
|
|
HRESULT Next(
|
|
[in] ULONG celt,
|
|
[out] ITSubStream ** ppElements,
|
|
[in,out,ptr] ULONG * pceltFetched
|
|
);
|
|
|
|
HRESULT Reset( void );
|
|
|
|
HRESULT Skip (
|
|
[in] ULONG celt
|
|
);
|
|
|
|
HRESULT Clone (
|
|
[out, retval] IEnumSubStream ** ppEnum
|
|
);
|
|
|
|
}
|
|
|
|
[
|
|
uuid( 207823EA-E252-11d2-B77E-0080C7135381 ),
|
|
helpstring("ITLegacyWaveSupport"),
|
|
dual
|
|
]
|
|
interface ITLegacyWaveSupport : IDispatch
|
|
{
|
|
HRESULT IsFullDuplex( [out] FULLDUPLEX_SUPPORT * pSupport );
|
|
}
|
|
|
|
|
|
|
|
[
|
|
uuid(161A4A56-1E99-4b3f-A46A-168F38A5EE4C ),
|
|
helpstring("TAPI 3.0 ITBasicCallControl2 interface"),
|
|
dual
|
|
]
|
|
|
|
interface ITBasicCallControl2 : ITBasicCallControl
|
|
{
|
|
[id(IDISPBASICCALLCONTROL | 23), helpstring("method RequestTerminal")]
|
|
HRESULT RequestTerminal(
|
|
[in] BSTR bstrTerminalClassGUID,
|
|
[in] long lMediaType,
|
|
[in] TERMINAL_DIRECTION Direction,
|
|
[out, retval] ITTerminal ** ppTerminal
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 24), helpstring("method SelectTerminalOnCall")]
|
|
HRESULT SelectTerminalOnCall(
|
|
[in] ITTerminal *pTerminal
|
|
);
|
|
|
|
[id(IDISPBASICCALLCONTROL | 25), helpstring("method UnselectTerminalOnCall")]
|
|
HRESULT UnselectTerminalOnCall(
|
|
[in] ITTerminal *pTerminal
|
|
);
|
|
}
|
|
|
|
[
|
|
uuid( B87658BD-3C59-4f64-BE74-AEDE3E86A81E ),
|
|
helpstring("TAPI 3.0 ITScriptableAudioFormat Interface"),
|
|
dual
|
|
]
|
|
interface ITScriptableAudioFormat : IDispatch
|
|
{
|
|
[propget, id(1), helpstring("property Channels")]
|
|
HRESULT Channels(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(1), helpstring("property Channels")]
|
|
HRESULT Channels(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
[propget, id(2), helpstring("property SamplesPerSec")]
|
|
HRESULT SamplesPerSec(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(2), helpstring("property SamplesPerSec")]
|
|
HRESULT SamplesPerSec(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
[propget, id(3), helpstring("property AvgBytesPerSec")]
|
|
HRESULT AvgBytesPerSec(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(3), helpstring("property AvgBytesPerSec")]
|
|
HRESULT AvgBytesPerSec(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
[propget, id(4), helpstring("property BlockAlign")]
|
|
HRESULT BlockAlign(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(4), helpstring("property BlockAlign")]
|
|
HRESULT BlockAlign(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
[propget, id(5), helpstring("property BitsPerSample")]
|
|
HRESULT BitsPerSample(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(5), helpstring("property BitsPerSample")]
|
|
HRESULT BitsPerSample(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
[propget, id(6), helpstring("property FormatTag")]
|
|
HRESULT FormatTag(
|
|
[out, retval] long* pVal
|
|
);
|
|
|
|
[propput, id(6), helpstring("property FormatTag")]
|
|
HRESULT FormatTag(
|
|
[in] const long nNewVal
|
|
);
|
|
|
|
};
|
|
|
|
|
|
|
|
cpp_quote("/****************************************")
|
|
cpp_quote(" * Terminal Classes")
|
|
cpp_quote(" ****************************************/")
|
|
cpp_quote("")
|
|
cpp_quote("// Video Windows - {F7438990-D6EB-11d0-82A6-00AA00B5CA1B}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_VideoWindowTerm;")
|
|
cpp_quote("")
|
|
cpp_quote("// Video input (camera) {AAF578EC-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_VideoInputTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Handset device {AAF578EB-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_HandsetTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Headset device {AAF578ED-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_HeadsetTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Speakerphone device {AAF578EE-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_SpeakerphoneTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Microphone (sound card) {AAF578EF-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_MicrophoneTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Speakers (sound card) {AAF578F0-DC70-11d0-8ED3-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_SpeakersTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// Media stream terminal {E2F7AEF7-4971-11D1-A671-006097C9A2E8}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_MediaStreamTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// File Recording terminal {521F3D06-C3D0-4511-8617-86B9A783DA77}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_FileRecordingTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// File Recording Track {BF14A2E4-E88B-4ef5-9740-5AC5D022F8C9}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_FileRecordingTrack;")
|
|
cpp_quote("")
|
|
cpp_quote("// File Playback Terminal {0CB9914C-79CD-47dc-ADB0-327F47CEFB20}")
|
|
cpp_quote("EXTERN_C const CLSID CLSID_FilePlaybackTerminal;")
|
|
cpp_quote("")
|
|
cpp_quote("// define the media modes")
|
|
cpp_quote("#define TAPIMEDIATYPE_AUDIO 0x8")
|
|
cpp_quote("#define TAPIMEDIATYPE_VIDEO 0x8000")
|
|
cpp_quote("#define TAPIMEDIATYPE_DATAMODEM 0x10")
|
|
cpp_quote("#define TAPIMEDIATYPE_G3FAX 0x20")
|
|
cpp_quote("#define TAPIMEDIATYPE_MULTITRACK 0x10000")
|
|
cpp_quote("")
|
|
cpp_quote("// {831CE2D6-83B5-11d1-BB5C-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID TAPIPROTOCOL_PSTN;")
|
|
cpp_quote("")
|
|
cpp_quote("// {831CE2D7-83B5-11d1-BB5C-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID TAPIPROTOCOL_H323;")
|
|
cpp_quote("")
|
|
cpp_quote("// {831CE2D8-83B5-11d1-BB5C-00C04FB6809F}")
|
|
cpp_quote("EXTERN_C const CLSID TAPIPROTOCOL_Multicast;")
|
|
cpp_quote("")
|
|
cpp_quote("#define __TapiConstants_MODULE_DEFINED__")
|
|
|
|
|
|
#endif // __TAPI3IF_IDL__
|