| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /*************************************************************************
- 【文件名】 TaskMgr.h
- 【功能模块和目的】 任务管理器类头文件
- 【开发者及日期】 郑石诺 2015/01/07
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- #include "IMsgObserver.h"
- class CTask;
- class CPduEntity;
- /*************************************************************************
- 【类名】 CTaskMgr
- 【功能】 管理CTI中所有任务
- 【接口说明】
- 【开发者及日期】 郑石诺 2015/01/07
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class CTaskMgr : public IMsgObserver
- {
- SINGLETON_DECLARE(CTaskMgr)
- public:
- ~CTaskMgr(void);
- void init(void); // 模块初始化
- void uninit(void);
- void removeTask(long TaskId); // 移除Task
- CTask* findTask(long TaskId); // 查找Task
- void onPduMessage(CPduEntity &PduEntity); // Pdu命令处理接口
- void onTaskPduMsg(UINT LineId, CPduEntity &PduEntity); // task命令处理
- ////////////////////////////////////////////////////////////////////////////////
- //继承自IMsgObserver
- void onMessage(UINT MsgType, const PARAM lpContent);
- private:
- CTaskMgr(void);
- // Task管理函数
- void __addTask(CTask* pTask); // 添加task
- void __onAgentLogin(CPduEntity &PduEntity); // 处理坐席签入命令
- void __onAgentLogout(CPduEntity &PduEntity); // 处理坐席签入命令
- void __onAgentReset(CPduEntity &PduEntity); // 处理坐席重置命令
- void __onTaskFailed(CTask* pTask, CPduEntity &PduEntity); // DoTask调用失败
- // 底层设备消息处理函数
- void __procDevOpProcess(UINT EvtType, const PARAM lpContent); // 处理底层设备操作进展
- void __procDevOpResult(UINT EvtType, const PARAM lpContent); // 处理底层线路操作返回
- void __procDevOperator(UINT EvtType, const PARAM lpContent); // 处理底层设备主动操作事件
- private:
- CCriticalSection m_TaskLock;
- CMap<LONG, LONG, CTask*, CTask*> m_TaskTable; // 管理Task的结构
- };
|