📄 tapidevice.h
字号:
#pragma once
#define TAPI_FRIENDLY_NAME TEXT("TAPIDeviceV1.0")
class CTAPIDevice;
class CTAPIEventSink
{
public:
virtual void OnAddressState(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnCallInfo(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnCallState(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineClose(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnDevSpecific(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnDevSpecificFeature(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnGatherDigits(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineGenerate(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineDevState(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnMonitorDigits(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnMonitorMedia(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnMonitorTone(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineReply(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineRequest(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
virtual void OnLineCreate(DWORD dwParam1,DWORD dwParam2,DWORD dwParam3) = 0;
};
typedef CTAPIEventSink ITAPIEventSink;
class CTAPIDevice
{
public:
CTAPIDevice(void);
virtual ~CTAPIDevice(void);
public:
BOOL Initialize(IN HINSTANCE hInstance,
IN ITAPIEventSink* pSink,
IN TCHAR* pszAppName = NULL);
void Shutdown();
void GetGeneralInfo(TCHAR* pszIMEI,TCHAR* pszManufacturer,TCHAR* pszModal,TCHAR* pszSubscriber,TCHAR* pszRevision);
BOOL OpenLine(DWORD dwId = -1,DWORD dwPrivileges = LINECALLPRIVILEGE_MONITOR);
BOOL CloseLine();
public:
private:
HLINEAPP m_hLineApp;
HLINE m_hLine;
DWORD m_dwLowAPIVersion;
DWORD m_dwDevices;
DWORD m_dwCellularId;
private:
DWORD GetCellularLineId();
BOOL GetLineGeneralInfo(LPLINEGENERALINFO pInfo,LPTSTR pszInfo,DWORD dwInfo,DWORD dwOffset);
private:
static ITAPIEventSink* m_pEventSink;
static void FAR PASCAL lineCallback(DWORD hDevice,
DWORD dwMsg,
DWORD dwCallbackInstance,
DWORD dwParam1,
DWORD dwParam2,
DWORD dwParam3);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -