| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- /*************************************************************************
- 【文件名】 LogicLine.h
- 【功能模块和目的】 逻辑线路类基类头文件
- 【开发者及日期】 郑石诺 2015/01/10
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- /*************************************************************************
- 【类名】 CLogicLine
- 【功能】
- 【接口说明】 逻辑线路类基类
- 【开发者及日期】 郑石诺 2015/01/10
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class CLogicLine
- {
- public:
- CLogicLine(UINT ResId);
- virtual ~CLogicLine(void) = 0 {}
- // 设置属性
- void setRecordFile(const CString& strFileName); // 设置坐席录音文件名
- virtual void resetLine(); // 线路信息重置
- // 获取属性
- UINT lineId() const { return m_LineId; } // 获取线路ID
- UINT& lineId() { return m_LineId; }
- ULONG callId() const { return m_CallId; } // 获取CallId
- ULONG& callId() { return m_CallId; }
- ULONG callIdOnHold() const { return m_HoldCallId; } // 获取保持会话的CallId
- UINT status() const { return m_LineStatus; } // 获取线路状态
- const CString& recordFile() const { return m_RecordFile; } // 获取当前线路录音文件名
- const CString& callerNum() const { return m_CallerNum;} // 获取主叫号码
- const CString& calleeNum() const { return m_CalleeNum;} // 获取被叫号码
- UINT opType() const { return m_CurrentOpType; } // 获取当前线路正在进行的操作类型
- UINT& opType() { return m_CurrentOpType; }
- BOOL opResult() const { return m_CurrentOpResult; } // 获取当前操作结果
- BOOL& opResult() { return m_CurrentOpResult; }
- LONG taskIdBinded() const { return m_TaskIdBinded; } // 绑定的TaskId
- LONG& taskIdBinded() { return m_TaskIdBinded; }
- CLogicLine* assoLine(); // 获取对端线路指针
- virtual UINT type() = 0; // 返回线路类型
- virtual int getAgentNum() { return 0; } // 获取分机关联的工号
- virtual void setAgentNum(int nAgentId) {} // 设置坐席工号
- virtual void pushLineData2ACD() {} // 将线路数据推送给ACD
- virtual void pushRecord2ACD() {} // 将录音文件名推送给ACD
- virtual void onLineStatusUpdated(const EventResStatus &EvtInfo) = 0; // 处理线路状态变化
- protected:
- void _reportLineStatus(void); // 线路状态变化统计
- protected:
- UINT m_LineId; // 线路ID
- UINT m_LineStatus; // 线路状态
- ULONG m_CallId; // 当前CallId
- ULONG m_HoldCallId; // 保持会话标志
- UINT m_CurrentOpType ; // 记录对当前线路的操作类型
- BOOL m_CurrentOpResult; // 线路的当前操作结果
- LONG m_TaskIdBinded; // 线路绑定的TaskId
- CString m_CallerNum; // 主叫号码
- CString m_CalleeNum; // 被叫号码
- CString m_RecordFile; // 当前线路录音文件名
- };
|