hd

LineHolder.h 1.5KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /*************************************************************************
  2. 【文件名】 LineHolder.h
  3. 【功能模块和目的】 线路管理类头文件
  4. 【开发者及日期】 郑石诺 2015/01/07
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. #include "IMsgObserver.h"
  11. class CLogicLine;
  12. /*************************************************************************
  13. 【类名】 CLineHolder
  14. 【功能】 管理CTI中所有逻辑线路
  15. 【接口说明】
  16. 【开发者及日期】 郑石诺 2015/01/07
  17. 【版本】 V1.0.0
  18. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  19. 【更改记录】
  20. *************************************************************************/
  21. class CLineHolder : public IMsgObserver
  22. {
  23. SINGLETON_DECLARE(CLineHolder)
  24. public:
  25. ~CLineHolder(void);
  26. void init(void); // 模块初始化
  27. void uninit(void);
  28. CLogicLine* getLogicLine(UINT LineId); // 获取线路类指针
  29. UINT getLineAssoAgentId(UINT LineId); // 读取内线关联的座席工号
  30. void onAcdConnected(void); // ACD连接成功处理
  31. ////////////////////////////////////////////////////////////////////////////////
  32. //继承自IMsgObserver
  33. void onMessage(UINT MsgType, const PARAM lpContent);
  34. private:
  35. CLineHolder(void);
  36. void __deleteExten(UINT ExtId);
  37. void __procResDetail(const EventResDetail &EvtInfo); // 处理资源类型明细
  38. void __procResStatus(const EventResStatus &EvtInfo); // 处理资源状态变化
  39. private:
  40. CMap<UINT, UINT, CLogicLine*, CLogicLine*> m_LineMap; // 管理线路的容器
  41. };