www.pudn.com > lucent_softphone.rar > lucentCti.idl
// CTI.idl : IDL source for CTI.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (CTI.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
#include "ctc_code.h"
[
uuid(BCD200F1-2264-11D4-A429-0040053D6065),
version(1.0),
helpstring("CTI 1.0 Type Library")
]
library CTILib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
// {interface forward definition
interface IKVPair;
interface IKVList;
interface ICTIEvent;
interface IDirectoryNumber;
interface IMichelleCTI;
interface IGenesysOB;
interface IWebCTI;
typedef [unique] IKVPair *LPKVPAIR;
typedef [unique] IKVList *LPKVLIST;
typedef [unique] ICTIEvent *LPCTIEVENT;
typedef [unique] IDirectoryNumber *LPDN;
typedef [unique] IMichelleCTI *LPMICHELLECTI;
typedef [unique] IGenesysOB *LPGENESYSOB;
typedef [unique] IWebCTI *LPWEBCTI;
// interface forward definition}
// {enumeration definition
typedef [v1_enum] enum KVTYPES {
KVT_String,
KVT_Int,
KVT_Binary,
KVT_List,
KVT_Incorrect = -1
} KVTYPES;
typedef [v1_enum] enum KVRESULTS {
KVR_Error = -1,
KVR_NotFound,
KVR_Successful
} KVRESULTS;
typedef [v1_enum] enum PBXTYPES {
PT_Unknown = -1,
PT_Generic = 0,
PT_Alcatel,
PT_Aspect,
PT_Coral,
PT_Delco,
PT_DmsTcp,
PT_DmsX25,
PT_Harris,
PT_Hicom300,
PT_Hicom300E,
PT_LucentG3,
PT_Matra,
PT_Md110,
PT_Mitel,
PT_Neax,
PT_NortelMeridTcp,
PT_NortelMeridX25,
PT_Philips,
PT_Rgalaxy,
PT_RSpectrumTcp,
PT_RSpectrumX25,
PT_Starex,
PT_Symposium,
PT_MAX
} PBXTYPES;
typedef [v1_enum] enum ADDRTYPES {
AT_Unknown,
AT_DN,
AT_Position,
AT_Queue,
AT_RouteDN,
AT_Trunk,
AT_VoiceChannel,
AT_DataChannel,
AT_Announcement,
AT_ASAI,
AT_ACDGroup,
AT_VSP,
AT_RouteQueue,
AT_AgentID,
AT_Other = 99
} ADDRTYPES;
typedef [v1_enum] enum DEVTYPES {
DT_Dn = ctcK_Dn,
DT_RoutePoint = ctcK_RoutePoint,
DT_MonitorChannel = ctcK_MonitorChannel,
DT_Trunk = ctcK_Trunk,
DT_Dnis = ctcK_Dnis,
DT_LineId = ctcK_LineId,
DT_VoiceChannel = ctcK_VoiceChannel,
DT_AcdGroup = ctcK_AcdGroup,
DT_DeviceGroup = ctcK_DeviceGroup,
DT_Agent = ctcK_Agent
} DEVTYPES;
typedef [v1_enum] enum MERGETYPES {
MT_Transfer,
MT_Conference
} MERGETYPES;
typedef [v1_enum] enum FORWARDMODES {
FM_None,
FM_Unconditional,
FM_OnBusy,
FM_OnNoAnswer,
FM_OnBusyAndNoAnswer,
FM_SendAllCalls
} FORWARDMODES;
typedef [v1_enum] enum ERRORTYPES {
ET_NOERROR,
ET_WIN32,
ET_COM,
ET_TLIB,
ET_CTC,
ET_USER,
ET_LUCENT,
ET_LUCENT_CONF
} ERRORTYPES;
typedef [v1_enum] enum USERERRORS {
UE_CTIINITED,
UE_CTINOTINIT,
UE_MAX
} USERERRORS;
typedef [v1_enum] enum AGENTMODES {
AM_Unknown,
AM_ManualIn,
AM_AutoIn,
AM_AfterCallWork,
AM_AuxWork,
AM_NoCallDisconnect
} AGENTMODES;
typedef [v1_enum] enum AGENTSTATES {
AS_AfterCallWork = ctcK_AgentAfterCallWork,
AS_Login = ctcK_AgentLogin,
AS_Logout = ctcK_AgentLogout,
AS_NotReady = ctcK_AgentNotReady,
AS_Ready = ctcK_AgentReady,
AS_OtherWork = ctcK_AgentOtherWork,
AS_InService = ctcK_AgentInService,
AS_Busy = ctcK_AgentBusy
} AGENTSTATES;
typedef [v1_enum] enum CALLSTATES {
CS_Ok,
CS_Transferred,
CS_Conferenced,
CS_GeneralError,
CS_SystemError,
CS_RemoteRelease,
CS_Busy,
CS_NoAnswer,
CS_SitDetected,
CS_AnsweringMachineDetected,
CS_AllTrunksBusy,
CS_SitInvalidnum,
CS_SitVacant,
CS_SitIntercept,
CS_SitUnknown,
CS_SitNocircuit,
CS_SitReorder,
CS_FaxDetected,
CS_QueueFull,
CS_Cleared,
CS_Overflowed,
CS_Abandoned,
CS_Redirected,
CS_Forwarded,
CS_Consult,
CS_Pickedup,
CS_Dropped,
CS_Droppednoanswer,
CS_Unknown,
CS_Covered,
CS_ConverseOn,
CS_Bridged,
CS_Deafened = 49,
CS_Held = 50
} CALLSTATES;
typedef [v1_enum] enum CALLTYPES {
CT_Unknown,
CT_Internal,
CT_Inbound,
CT_Outbound,
CT_Consult
} CALLTYPES;
typedef [v1_enum] enum DNROLES {
DNR_Unknown,
DNR_Origination,
DNR_Destination,
DNR_ConferenceMember,
DNR_NewParty,
DNR_AddedBy,
DNR_DeletedBy,
DNR_TransferredBy,
DNR_DeletedParty,
DNR_ConferencedBy,
DNR_Observer
} DNROLES;
typedef [v1_enum] enum EVENTCODES {
RQT_RegisterClient,
RQT_QueryServer,
RQT_QueryAddress,
RQT_RegisterAddress,
RQT_UnregisterAddress,
RQT_RegisterAll,
RQT_UnregisterAll,
RQT_SetInputMask,
RQT_AgentLogin,
RQT_AgentLogout,
RQT_AgentReady,
RQT_AgentNotReady,
RQT_SetDNDOn,
RQT_SetDNDOff,
RQT_MakeCall,
RQT_MakePredictiveCall,
RQT_AnswerCall,
RQT_ReleaseCall,
RQT_HoldCall,
RQT_RetrieveCall,
RQT_InitiateConference,
RQT_CompleteConference,
RQT_DeleteFromConference,
RQT_InitiateTransfer,
RQT_MuteTransfer,
RQT_SingleStepTransfer,
RQT_CompleteTransfer,
RQT_MergeCalls,
RQT_AlternateCall,
RQT_ReconnectCall,
RQT_AttachUserData,
RQT_UpdateUserData,
RQT_DeleteUserData,
RQT_DeletePair,
RQT_CallForwardSet,
RQT_CallForwardCancel,
RQT_RouteCall,
RQT_GiveMusicTreatment,
RQT_GiveSilenceTreatment,
RQT_GiveRingBackTreatment,
RQT_LoginMailBox,
RQT_LogoutMailBox,
RQT_OpenVoiceFile,
RQT_CloseVoiceFile,
RQT_PlayVoiceFile,
RQT_CollectDigits,
RQT_SetMessageWaitingOn,
RQT_SetMessageWaitingOff,
RQT_DistributeUserEvent,
RQT_DistributeEvent,
EVT_ServerConnected,
EVT_ServerDisconnected,
EVT_Error,
EVT_Registered,
EVT_Unregistered,
EVT_RegisteredAll,
EVT_UnregisteredAll,
EVT_Queued,
EVT_Diverted,
EVT_Abandoned,
EVT_Ringing,
EVT_Dialing,
EVT_NetworkReached,
EVT_DestinationBusy,
EVT_Established,
EVT_Released,
EVT_Held,
EVT_Retrieved,
EVT_PartyChanged,
EVT_PartyAdded,
EVT_PartyDeleted,
EVT_RouteRequest,
EVT_RouteUsed,
EVT_AgentLogin,
EVT_AgentLogout,
EVT_AgentReady,
EVT_AgentNotReady,
EVT_DNDOn,
EVT_DNDOff,
EVT_MailBoxLogin,
EVT_MailBoxLogout,
EVT_VoiceFileOpened,
EVT_VoiceFileClosed,
EVT_VoiceFileEndPlay,
EVT_DigitsCollected,
EVT_AttachedDataChanged,
EVT_OffHook,
EVT_OnHook,
EVT_ForwardSet,
EVT_ForwardCancel,
EVT_MessageWaitingOn,
EVT_MessageWaitingOff,
EVT_AddressInfo,
EVT_ServerInfo,
EVT_LinkDisconnected,
EVT_LinkConnected,
EVT_UserEvent,
RQT_SendDTMF,
EVT_DTMFSent,
EVT_ResourceAllocated,
EVT_ResourceFreed,
EVT_RemoteConnectionSuccess,
EVT_RemoteConnectionFailed,
RQT_RedirectCall,
RQT_ListenDisconnect,
RQT_ListenReconnect,
EVT_ListenDisconnected,
EVT_ListenReconnected,
RQT_QueryCall,
EVT_PartyInfo,
RQT_ClearCall,
RQT_SetCallInfo,
EVT_CallInfoChanged,
RQT_ApplyTreatment,
EVT_TreatmentApplied,
EVT_TreatmentNotApplied,
EVT_TreatmentEnd,
EVT_HardwareError,
EVT_AgentAfterCallWork,
EVT_TreatmentRequired,
RQT_SingleStepConference,
RQT_QuerySwitch,
EVT_SwitchInfo,
RQT_GetAccessNumber,
RQT_CancelReqGetAccessNumber,
EVT_AnswerAccessNumber,
EVT_ReqGetAccessNumberCanceled,
RQT_ReserveAgent,
EVT_AgentReserved,
RQT_ReserveAgentAndGetAccessNumber,
RQT_AgentSetIdleReason,
EVT_AgentIdleReasonSet,
EVT_RestoreConnection,
EVT_PrimaryChanged,
RQT_LostBackupConnection,
RQT_SetDNInfo,
RQT_QueryLocation,
EVT_LocationInfo,
EVT_ACK,
CODEMAX,
RESERVED_0,
RESERVED_1,
EVT_WebRequest
} EVENTCODES;
typedef [v1_enum] enum NETWORKS {
NW_unknown,
NW_nb_nb,
NW_ip_tcp,
NW_dnet_nsp,
NW_nb_tcp,
NW_np,
NW_spx
} NETWORKS;
// enumeration definition}
// {interfaces definition
// <IKVPair
[
object,
uuid(BCD200FF-2264-11D4-A429-0040053D6065),
helpstring("IKVPair Interface"),
pointer_default(unique)
]
interface IKVPair : IUnknown
{
[propget, helpstring("property Type")] HRESULT Type([out, retval] KVTYPES *pVal);
[propget, helpstring("property Key")] HRESULT Key([out, retval] BSTR *pVal);
[propget, helpstring("property StringValue")] HRESULT StringValue([out, retval] BSTR *pVal);
[propget, helpstring("property IntValue")] HRESULT IntValue([out, retval] int *pVal);
[propget, helpstring("property ListValue")] HRESULT ListValue([out, retval] LPKVLIST *pVal);
[propget, helpstring("property BinaryValue")] HRESULT BinaryValue([out, retval] byte * *pVal);
[propget, helpstring("property BinaryLength")] HRESULT BinaryLength([out, retval] int *pVal);
};
// IKVPair>
// <IKVList
[
object,
uuid(BCD20101-2264-11D4-A429-0040053D6065),
helpstring("IKVList Interface"),
pointer_default(unique)
]
interface IKVList : IUnknown
{
[helpstring("method Dup")] LPKVLIST Dup();
[helpstring("method AddString")] KVRESULTS AddString([in] BSTR key, [in] BSTR value);
[helpstring("method AddInt")] KVRESULTS AddInt([in] BSTR key, [in] int value);
[helpstring("method AddList")] KVRESULTS AddList([in] BSTR key, [in] LPKVLIST value);
[helpstring("method AddBinary")] KVRESULTS AddBinary([in] BSTR key, [in] int length, [in, size_is(length)] byte *value);
[helpstring("method DeletePair")] KVRESULTS DeletePair([in] BSTR key);
[helpstring("method DeleteAll")] KVRESULTS DeleteAll();
[helpstring("method InitScanLoop")] KVRESULTS InitScanLoop();
[helpstring("method NextPair")] LPKVPAIR NextPair();
[helpstring("method GetStringValue")] KVRESULTS GetStringValue([in] BSTR key, [out, ref] BSTR *pVal);
[helpstring("method GetIntValue")] KVRESULTS GetIntValue([in] BSTR key, [out, ref] int *pVal);
[helpstring("method GetListValue")] KVRESULTS GetListValue([in] BSTR key, [out, ref] LPKVLIST *pVal);
[helpstring("method GetBinaryValue")] KVRESULTS GetBinaryValue([in] BSTR key, [out, ref] byte * *pVal);
[helpstring("method GetPair")] KVRESULTS GetPair([in] BSTR key, [out, ref] LPKVPAIR *pVal);
};
// IKVList>
// <ICTIEvent
[
object,
uuid(BCD20103-2264-11D4-A429-0040053D6065),
helpstring("ICTIEvent Interface"),
pointer_default(unique)
]
interface ICTIEvent : IUnknown
{
[propget, helpstring("property Event")] HRESULT Event([out, retval] EVENTCODES *pVal);
[propget, helpstring("property RefID")] HRESULT RefID([out, retval] int *pVal);
[propget, helpstring("property HomeLocation")] HRESULT HomeLocation([out, retval] BSTR *pVal);
[propget, helpstring("property CustomerID")] HRESULT CustomerID([out, retval] BSTR *pVal);
[propget, helpstring("property ConnID")] HRESULT ConnID([out, retval] BSTR *pVal);
[propget, helpstring("property PrevConnID")] HRESULT PrevConnID([out, retval] BSTR *pVal);
[propget, helpstring("property CallID")] HRESULT CallID([out, retval] long *pVal);
[propget, helpstring("property NodeID")] HRESULT NodeID([out, retval] int *pVal);
[propget, helpstring("property NetCallID")] HRESULT NetCallID([out, retval] long *pVal);
[propget, helpstring("property NetNodeID")] HRESULT NetNodeID([out, retval] int *pVal);
[propget, helpstring("property CallType")] HRESULT CallType([out, retval] CALLTYPES *pVal);
[propget, helpstring("property CallState")] HRESULT CallState([out, retval] CALLSTATES *pVal);
[propget, helpstring("property AgentID")] HRESULT AgentID([out, retval] BSTR *pVal);
[propget, helpstring("property AgentMode")] HRESULT AgentMode([out, retval] AGENTMODES *pVal);
[propget, helpstring("property ErrorCode")] HRESULT ErrorCode([out, retval] long *pVal);
[propget, helpstring("property ErrorMessage")] HRESULT ErrorMessage([out, retval] BSTR *pVal);
[propget, helpstring("property ThisDN")] HRESULT ThisDN([out, retval] BSTR *pVal);
[propget, helpstring("property ThisQueue")] HRESULT ThisQueue([out, retval] BSTR *pVal);
[propget, helpstring("property ThisTrunk")] HRESULT ThisTrunk([out, retval] long *pVal);
[propget, helpstring("property ThisDNRole")] HRESULT ThisDNRole([out, retval] DNROLES *pVal);
[propget, helpstring("property OtherDN")] HRESULT OtherDN([out, retval] BSTR *pVal);
[propget, helpstring("property OtherQueue")] HRESULT OtherQueue([out, retval] BSTR *pVal);
[propget, helpstring("property OtherTrunk")] HRESULT OtherTrunk([out, retval] long *pVal);
[propget, helpstring("property OtherDNRole")] HRESULT OtherDNRole([out, retval] DNROLES *pVal);
[propget, helpstring("property ThirdPartyDN")] HRESULT ThirdPartyDN([out, retval] BSTR *pVal);
[propget, helpstring("property ThirdPartyQueue")] HRESULT ThirdPartyQueue([out, retval] BSTR *pVal);
[propget, helpstring("property ThirdPartyTrunk")] HRESULT ThirdPartyTrunk([out, retval] long *pVal);
[propget, helpstring("property ThirdPartyDNRole")] HRESULT ThirdPartyDNRole([out, retval] DNROLES *pVal);
[propget, helpstring("property DNIS")] HRESULT DNIS([out, retval] BSTR *pVal);
[propget, helpstring("property ANI")] HRESULT ANI([out, retval] BSTR *pVal);
[propget, helpstring("property CallingLineName")] HRESULT CallingLineName([out, retval] BSTR *pVal);
[propget, helpstring("property CLID")] HRESULT CLID([out, retval] BSTR *pVal);
[propget, helpstring("property UserData")] HRESULT UserData([out, retval] LPKVLIST *pVal);
[propget, helpstring("property Reasons")] HRESULT Reasons([out, retval] LPKVLIST *pVal);
[propget, helpstring("property Extensions")] HRESULT Extensions([out, retval] LPKVLIST *pVal);
[helpstring("method Copy")] LPCTIEVENT Copy();
[propget, helpstring("property WebReqID")] HRESULT WebReqID([out, retval] BSTR *pVal);
[propget, helpstring("property WebReqType")] HRESULT WebReqType([out, retval] int *pVal);
[propget, helpstring("property WebCustName")] HRESULT WebCustName([out, retval] BSTR *pVal);
[propget, helpstring("property WebCustPhone")] HRESULT WebCustPhone([out, retval] BSTR *pVal);
[propget, helpstring("property WebCustMPhone")] HRESULT WebCustMPhone([out, retval] BSTR *pVal);
[propget, helpstring("property WebCustEmail")] HRESULT WebCustEmail([out, retval] BSTR *pVal);
[propget, helpstring("property WebCustIDBrNo")] HRESULT WebCustIDBrNo([out, retval] BSTR *pVal);
[propget, helpstring("property WebIPAddr")] HRESULT WebIPAddr([out, retval] BSTR *pVal);
[propget, helpstring("property WebCallPhone")] HRESULT WebCallPhone([out, retval] BSTR *pVal);
[propget, helpstring("property WebTMail")] HRESULT WebTMail([out, retval] BSTR *pVal);
[propget, helpstring("property WebChatRoomId")] HRESULT WebChatRoomId([out, retval] BSTR *pVal);
[propget, helpstring("property WebNmRoomId")] HRESULT WebNmRoomId([out, retval] BSTR *pVal);
[propget, helpstring("property WebPrjType")] HRESULT WebPrjType([out, retval] BSTR *pVal);
[propget, helpstring("property WebAddr")] HRESULT WebAddr([out, retval] BSTR *pVal);
};
// ICTIEvent>
// <IDirectoryNumber
[
object,
uuid(6F3DFD81-2267-11D4-A429-0040053D6065),
helpstring("IDirectoryNumber Interface"),
pointer_default(unique)
]
interface IDirectoryNumber : IUnknown
{
[propget, helpstring("property ErrCode")] HRESULT ErrCode([out, retval] long *pVal);
[propget, helpstring("property ErrMsg")] HRESULT ErrMsg([out, retval] BSTR *pVal);
[propget, helpstring("property Registered")] HRESULT Registered([out, retval] BOOL *pVal);
[propget, helpstring("property Number")] HRESULT Number([out, retval] BSTR *pVal);
[propget, helpstring("property Type")] HRESULT Type([out, retval] ADDRTYPES *pVal);
[propget, helpstring("property Logged")] HRESULT Logged([out, retval] BOOL *pVal);
[propget, helpstring("property AgentID")] HRESULT AgentID([out, retval] BSTR *pVal);
[propget, helpstring("property ACDQ")] HRESULT ACDQ([out, retval] BSTR *pVal);
[propget, helpstring("property AgentState")] HRESULT AgentState([out, retval] AGENTSTATES *pVal);
[propget, helpstring("property AgentMode")] HRESULT AgentMode([out, retval] AGENTMODES *pVal);
[propget, helpstring("property OnHook")] HRESULT OnHook([out, retval] BOOL *pVal);
[propget, helpstring("property DND")] HRESULT DND([out, retval] BOOL *pVal);
[propput, helpstring("property DND")] HRESULT DND([in] BOOL newVal);
[propget, helpstring("property ErrReport")] HRESULT ErrReport([out, retval] BOOL *pVal);
[propput, helpstring("property ErrReport")] HRESULT ErrReport([in] BOOL newVal);
[helpstring("method AgentLogin")] BOOL AgentLogin([in] BSTR AgentID, [in, optional] BSTR AgentPassword, [in, optional] BSTR ACDQ, [in, optional] AGENTMODES mode);
[helpstring("method AgentLogout")] BOOL AgentLogout();
[helpstring("method AgentSetReady")] BOOL AgentSetReady([in, optional] AGENTMODES mode);
[helpstring("method AgentSetNotReady")] BOOL AgentSetNotReady([in, optional] AGENTMODES mode);
[helpstring("method MakeCall")] BOOL MakeCall([in] BSTR dn, [in, optional] LPKVLIST data);
[helpstring("method AnswerCall")] BOOL AnswerCall([in, optional] BSTR connid);
[helpstring("method ReleaseCall")] BOOL ReleaseCall([in, optional] BSTR connid, [in, optional] BOOL hangup);
[helpstring("method HoldCall")] BOOL HoldCall([in, optional] BSTR connid);
[helpstring("method RetrieveCall")] BOOL RetrieveCall([in, optional] BSTR connid);
[helpstring("method InitTransferCall")] BOOL InitTransferCall([in] BSTR dn, [in, optional] LPKVLIST data);
[helpstring("method CompleteTransfer")] BOOL CompleteTransfer();
[helpstring("method InitConferenceCall")] BOOL InitConferenceCall([in] BSTR dn, [in, optional] LPKVLIST data);
[helpstring("method CompleteConference")] BOOL CompleteConference();
[helpstring("method DeleteFromConference")] BOOL DeleteFromConference([in] BSTR dn);
[helpstring("method ReconnectCall")] BOOL ReconnectCall();
[helpstring("method MergeCall")] BOOL MergeCalls([in, optional] MERGETYPES type);
[helpstring("method RedirectCall")] BOOL RedirectCall([in] BSTR dn, [in, optional] BSTR connid);
[helpstring("method MuteTransfer")] BOOL MuteTransfer([in] BSTR dn, [in, optional] LPKVLIST data);
[helpstring("method SingleStepTransfer")] BOOL SingleStepTransfer([in] BSTR dn, [in, optional] LPKVLIST data);
[helpstring("method AlternateCall")] BOOL AlternateCall();
[helpstring("method Forward")] BOOL Forward([in] BSTR dn, [in, optional] FORWARDMODES mode);
[helpstring("method CancelForward")] BOOL CancelForward([in, optional] FORWARDMODES mode);
[helpstring("method AttachData")] BOOL AttachData([in, optional] BSTR connid, [in] LPKVLIST data);
[helpstring("method DeleteAllData")] BOOL DeleteAllData([in, optional] BSTR connid);
[helpstring("method DeleteData")] BOOL DeleteData([in, optional] BSTR connid, [in] BSTR key);
[helpstring("method UpdateData")] BOOL UpdateData([in, optional] BSTR connid, [in] LPKVLIST data);
[propget, helpstring("property ActiveID")] HRESULT ActiveID([out, retval] long *pVal);
[propget, helpstring("property HoldID")] HRESULT HoldID([out, retval] long *pVal);
[helpstring("method ID2ConnID")] HRESULT ID2ConnID([in] long id, [out, retval] BSTR *connid);
[propget, helpstring("property ActiveConnID")] HRESULT ActiveConnID([out, retval] BSTR *pVal);
[propget, helpstring("property HoldConnID")] HRESULT HoldConnID([out, retval] BSTR *pVal);
[helpstring("method SendDTMF")] BOOL SendDTMF([in] BSTR tone);
};
// IDirectoryNumber>
// <IWebCTI
[
object,
uuid(7F7F66D0-6836-11d4-81EF-AA9FE5000000),
helpstring("IWebCTI Interface"),
pointer_default(unique)
]
interface IWebCTI : IUnknown
{
[helpstring("method Init")] BOOL Init([in] BSTR server, [in] int port);
[helpstring("method UnInit")] void Uninit();
[helpstring("method Login")] void Login([in] BSTR AgentID);
[helpstring("method ReportStatus")] void ReportStatus([in] BSTR AgentID, [in] AGENTSTATES AgentState);
[helpstring("method ReportConfirm")] void ReportConfirm([in] BOOL confirm);
[helpstring("method ReportResult")] void ReportResult([in] BSTR ReqID, [in] BOOL result, [in] BSTR reason);
};
// IWebCTI>
// <IMichelleCTI
[
object,
uuid(6F3DFD84-2267-11D4-A429-0040053D6065),
helpstring("IMichelleCTI Interface"),
pointer_default(unique)
]
interface IMichelleCTI : IUnknown
{
[propget, helpstring("property Initialized")] HRESULT Initialized([out, retval] BOOL *pVal);
[propget, helpstring("property ErrType")] HRESULT ErrType([out, retval] ERRORTYPES *pVal);
[propget, helpstring("property ErrCode")] HRESULT ErrCode([out, retval] long *pVal);
[propget, helpstring("property ErrMsg")] HRESULT ErrMsg([out, retval] BSTR *pVal);
[helpstring("method Initialize")] BOOL Initialize([in] PBXTYPES pbxtype, [in] BSTR server, [in] int port, [in] BSTR name, [in] BSTR pass);
[helpstring("method Uninitialize")] void Uninitialize();
[helpstring("method RegisterDN")] LPDN RegisterDN([in] BSTR dn, [in, optional, defaultvalue(AT_DN)] ADDRTYPES type, [in, optional] BSTR acdpos);
[helpstring("method UnregisterDN")] void UnregisterDN([in] LPDN dn);
};
// IMichelleCTI>
// <IGenesysOB
[
object,
uuid(F9AE154F-2D2E-11D4-81D3-F01672000000),
helpstring("IGenesysOB Interface"),
pointer_default(unique)
]
interface IGenesysOB : IUnknown
{
[propget, helpstring("property RescheduleFlag")] HRESULT RescheduleFlag([out, retval] int *pVal);
[propget, helpstring("property CampaignBatchID")] HRESULT CampaignBatchID([out, retval] int *pVal);
[propget, helpstring("property CampaignID")] HRESULT CampaignID([out, retval] int *pVal);
[propget, helpstring("property Campaign")] HRESULT Campaign([out, retval] BSTR *pVal);
[propget, helpstring("property ProjectName")] HRESULT ProjectName([out, retval] BSTR *pVal);
[propget, helpstring("property CustomerID")] HRESULT CustomerID([out, retval] int *pVal);
[propget, helpstring("property CustomerName")] HRESULT CustomerName([out, retval] BSTR *pVal);
[propget, helpstring("property CustomerTitle")] HRESULT CustomerTitle([out, retval] BSTR *pVal);
[propget, helpstring("property EventID")] HRESULT EventID([out, retval] int *pVal);
[propput, helpstring("property EventID")] HRESULT EventID([in] int newVal);
[propget, helpstring("property PhoneNumber")] HRESULT PhoneNumber([out, retval] BSTR *pVal);
[propput, helpstring("property PhoneNumber")] HRESULT PhoneNumber([in] BSTR newVal);
[propput, helpstring("property NeverCall")] HRESULT NeverCall([in] BOOL newVal);
[propput, helpstring("property ExpectedStartDate")] HRESULT ExpectedStartDate([in] BSTR newVal);
[helpstring("method Init")] BOOL Init([in] LPKVLIST data);
[helpstring("method UnInit")] void Uninit();
};
// IGenesysOB>
// interfaces definition}
// {event interface definition
// <_IDirectoryNumberEvents
[
uuid(6F3DFD83-2267-11D4-A429-0040053D6065),
helpstring("_IDirectoryNumberEvents Interface")
]
dispinterface _IDirectoryNumberEvents
{
properties:
methods:
[id(1), helpstring("method Event")] BOOL Event([in] LPCTIEVENT evt);
};
// _IDirectoryNumberEvents>
// <_IMichelleCTIEvents
[
uuid(6F3DFD86-2267-11D4-A429-0040053D6065),
helpstring("_IMichelleCTIEvents Interface")
]
dispinterface _IMichelleCTIEvents
{
properties:
methods:
[id(1), helpstring("method Event")] BOOL Event([in] LPCTIEVENT evt);
};
// _IMichelleCTIEvents>
// event interface definition}
// {object definition
// <KVPair
[
uuid(BCD20100-2264-11D4-A429-0040053D6065),
helpstring("KVPair Class")
]
coclass KVPair
{
[default] interface IKVPair;
};
// KVPair>
// <KVList
[
uuid(BCD20102-2264-11D4-A429-0040053D6065),
helpstring("KVList Class")
]
coclass KVList
{
[default] interface IKVList;
};
// KVList>
// <CTIEvent
[
uuid(BCD20104-2264-11D4-A429-0040053D6065),
helpstring("CTIEvent Class")
]
coclass CTIEvent
{
[default] interface ICTIEvent;
};
// CTIEvent>
// <DirectoryNumber
[
uuid(6F3DFD82-2267-11D4-A429-0040053D6065),
helpstring("DirectoryNumber Class")
]
coclass DirectoryNumber
{
[default] interface IDirectoryNumber;
interface IGenesysOB;
[default, source] dispinterface _IDirectoryNumberEvents;
};
// DirectoryNumber>
// <MichelleCTI
[
uuid(6F3DFD85-2267-11D4-A429-0040053D6065),
helpstring("MichelleCTI Class")
]
coclass MichelleCTI
{
[default] interface IMichelleCTI;
interface IWebCTI;
[default, source] dispinterface _IMichelleCTIEvents;
};
// MichelleCTI>
// object definition}
};