| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- /*************************************************************************
- 【文件名】 NetworkCti.h
- 【功能模块和目的】 CTI端网络控制类头文件
- 【开发者及日期】 郑石诺 2015/01/07
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- #include "IMsgObserver.h"
- /*************************************************************************
- 【类名】 CNetworkCti
- 【功能】 控制CTI端网络数据收发和连接状态
- 【接口说明】
- 【开发者及日期】 郑石诺 2015/01/07
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class CNetworkCti : public IPduLinkProc, public IPduCommProc
- {
- SINGLETON_DECLARE(CNetworkCti)
- public:
- ~CNetworkCti(void);
- BOOL init(void); // 初始化Socket服务器端
- void release(void);
- BOOL send2ACD(CPduEntity& a_PduEntity); // 发送命令到ACD
- BOOL send2IVR(CPduEntity& a_PduEntity); // 发送命令到IVR
- BOOL isIVRConnected() const { return m_IsIvrConnected; } // 获取IVR连接状态
- BOOL isACDConnected() const { return m_IsAcdConnected; } // 获取ACD连接状态
- ////////////////////////////////////////////////////////////////////////////////
- //继承自IPduLinkProc,IPduCommProc,IMsgObserver
- void OnLinkStateChanged(const PduLinkContent& linkContent); // PDU连接状态变化事件处理
- void OnRecvCommand(CPduEntity* a_pPduEntity); // PDU命令到达事件处理接口
- private:
- CNetworkCti(void);
- void __procRegMsg(CPduEntity& a_PduEntity); // 注册命令处理
- void __onRegSuccess(const PduLinkContent& linkContent); // 设备注册成功
- void __onDisconnect(const PduLinkContent& linkContent); // 设备连接断开
- private:
- struct DevInfo
- {
- CHAR szIpAddress[PDU_IP_LEN]; // 设备IP地址
- int Port; // 设备端口号
- int DevId; // 设备Id(-1代表连接设备不存在)
- };
-
- DevInfo m_DevAcd; // ACD设备信息
- DevInfo m_DevIvr; // IVR设备信息
- BOOL m_IsAcdConnected; // ACD连接状态
- BOOL m_IsIvrConnected; // IVR连接状态
- };
|