MiddleWares_YiHe 郑州颐和医院随访系统中间件

CallSession.h 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. /*************************************************************************
  2. 【文件名】 CallSession.h
  3. 【功能模块和目的】 会话类头文件
  4. 【开发者及日期】 郑石诺 2015/01/12
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. class CLogicLine;
  11. /*************************************************************************
  12. 【类名】 CCallSession
  13. 【功能】
  14. 【接口说明】 会话类头
  15. 【开发者及日期】 郑石诺 2015/01/12
  16. 【版本】 V1.0.0
  17. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  18. 【更改记录】
  19. *************************************************************************/
  20. class CCallSession
  21. {
  22. public:
  23. CCallSession(ULONG CallId);
  24. ~CCallSession(void);
  25. ULONG callId(void) const { return m_CallId; } // 获取会话标识
  26. int lineCount(void) const { return m_LineList.GetCount(); } // 获取线路数量
  27. const CString& data(void) const { return m_Data; } // 获取随路数据
  28. CString& data(void) { return m_Data; }
  29. CLogicLine* getAssoLine(CLogicLine* pHostLine); // 获取关联线路
  30. void addLine(CLogicLine *pLine); // 会话中添加线路
  31. void onLineStatusUpdated(CLogicLine* pLine); // 处理线路状态
  32. void onRecord(CLogicLine* pLine);
  33. private:
  34. void __procLineRecord(CLogicLine* pRecLine, CString& RecFile); // 处理线路录音
  35. void __onLineTalking(CLogicLine* pLine); // 线路通话
  36. void __onLineHangUp(CLogicLine* pLine); // 线路挂机
  37. void __onLineTrunkTransfer(CLogicLine* pLine); // 中继转分机时间记录
  38. void __onLineTrunkTransferCrd(); // 更新中继转分机之后的trunk外线的记录表
  39. private:
  40. typedef CList<UINT, UINT> LogicLineList;
  41. LogicLineList m_LineList; // 会话中线路列表
  42. ULONG m_CallId; // 会话标识
  43. CString m_RecFile; // 会话中主录音文件
  44. CString m_Data; // 与会话绑定的随路数据
  45. };