| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- /*************************************************************************
- 【文件名】 DevControl.h
- 【功能模块和目的】 设备控制类头文件
- 【开发者及日期】 郑石诺 2015/05/27
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- #include "devicelink.h"
- #include "NetRepInterface.h"
- /*************************************************************************
- 【类名】 CDevControl
- 【功能】
- 【接口说明】 设备控制类
- 【开发者及日期】 郑石诺 2015/05/27
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class CDevControl : public IDeviceLink, public IPduLinkProc, public IPduCommProc
- {
- SINGLETON_DECLARE(CDevControl)
- public:
- virtual ~CDevControl(void);
- ////////////////////////////////////////////////////////////////////////////////
- ////继承自IDeviceLink///////////////////////////////////////////////////////////
- ////////////////////////////////////////////////////////////////////////////////
- bool open(IDeviceOperator* a_pOperator);
- void close(void);
- bool operate(LONG Instance, LINE_OP OpType, ULONG ResID, LineOpParam* pLineOpParam);
- ////////////////////////////////////////////////////////////////////////////////
- //继承自IPduLinkProc, IPduCommProc
- void OnLinkStateChanged(const PduLinkContent& linkContent); // PDU连接状态变化事件处理
- void OnRecvCommand(CPduEntity* a_pPduEntity); // PDU命令到达事件处理
- private:
- CDevControl(void);
- bool __initNetLink(void); // 初始化网络连接
- void __shutNetLink(void); // 关闭网络连接
- void __notifyResType(void);
- // 操作接口
- void __onLog(UINT Level, CHAR* lpszFormat, ...); // 通知显示日志
- void __onDevStateUpdated(UINT DevState); // 通知设备不可用
- void __onNetLinkDisconnected(PduLinkContent linkContent); // 连接断开后续处理
- void __onOpResult(long Instance, BOOL IsSucceed, LPCTSTR Data); // 设备操作执行结果
- void __onDevResDetail(CPduEntity* a_pPduEntity); // 设备资源明细处理
- void __onDevResState(CPduEntity* a_pPduEntity); // 设备资源状态处理
- void __onDevOpProcess(CPduEntity* a_pPduEntity); // 设备操作进展处理
- void __onDevOpResult(CPduEntity* a_pPduEntity); // 设备操作结果处理
- void __onDevActiveEvent(CPduEntity* a_pPduEntity); // 设备主动事件处理
- void __onDevReqReturn(CPduEntity* a_pPduEntity); // 设备请求返回处理
- // OP处理子函数
- bool __procOpInfoTransaction(long Instance, ULONG ResID, LineOpParam* pParam); // 数据交互
- bool __procOpPlayVoice(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 线路放音收号
- bool __procOpMakeCall(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 线路外呼处理
- bool __procOpHangUp(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 线路挂机处理
- bool __procOpTrunkTurn(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 外线呼叫转移
- bool __procOpTurnAgent(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 外线转坐席
- bool __procOpAnswerCall(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 应答呼叫
- bool __procOpPCall(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 预测外呼
- bool __procOpTransfer(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 座席呼叫转移
- bool __procOpConf(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 单步会议
- bool __procOpTurnIvr(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 转IVR
- bool __procOpInstead(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 代接
- bool __procOpGrab(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 强截
- bool __procOpInsert(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 强插
- bool __procOpListen(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 监听
- bool __procOpReset(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 重置
- bool __procOpFax(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 传真
- bool __procOpRecord(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 录音
- bool __procOpLeaveWord(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 留言录音
- bool __procOpMuteOn(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 静音启动
- bool __procOpMuteOff(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 静音结束
- bool __procOpSelfCheck(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 线路自检
- bool __procOpConsultCallBegin(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 协商呼叫启动
- bool __procOpConsultCallConfirm(long Instance, ULONG ResID, LineOpParam* pLineOpParam); // 协商呼叫确认
- private:
- IDeviceOperator* m_pOperator;
- bool m_IsConnected2Sc;
- bool m_IsDevOK;
- };
|