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

LineOpExec.h 3.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /*************************************************************************
  2. 【文件名】 LineOpExec.h
  3. 【功能模块和目的】 TAPI操作执行类头文件
  4. 【开发者及日期】 郑石诺 2016/03/25
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. class CTapiOpBase;
  11. class CTapiLine;
  12. /*************************************************************************
  13. 【类名】 CLineOpExec
  14. 【功能】
  15. 【接口说明】 TAPI操作执行类
  16. 【开发者及日期】 郑石诺 2016/03/25
  17. 【版本】 V1.0.0
  18. 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司
  19. 【更改记录】
  20. *************************************************************************/
  21. class CLineOpExec
  22. {
  23. SINGLETON_DECLARE(CLineOpExec)
  24. public:
  25. ~CLineOpExec(void);
  26. // 线路操作
  27. bool procLineOp(LONG Instance, LINE_OP OpType, ULONG ResID, LineOpParam* pParam); // 处理操作请求
  28. void onTapiOpResult(long Instance, CTapiOpBase* pTapiOp, bool IsSucceed, LPCTSTR pInfo = NULL); // 操作结果返回
  29. // 设备直接操作启动
  30. void onDevDirectOpBegin(UINT OpType, CTapiLine* pHostLine, DevLinkInfoS* pInfo); // 设备直接操作启动
  31. private:
  32. CLineOpExec(void);
  33. // 线路操作中的子操作
  34. CTapiLine* __getTapiLine(ULONG ResID); // 得到关联线路
  35. bool __execOp(CTapiOpBase* pTapiOp, LineOpParam* pParam); // 执行OP
  36. bool __doVsOperation(long Instance, UINT OpType, ULONG ResID, LineOpParam* pParam);
  37. // 线路操作分类处理
  38. bool __procOpMakeCall(long Instance, ULONG ResID, LineOpParam* pParam); // 外呼
  39. bool __procOpAutoCall(long Instance, ULONG ResID, LineOpParam* pParam); // 自动外呼
  40. bool __procOpAnswerCall(long Instance, ULONG ResID, LineOpParam* pParam); // 应答
  41. bool __procOpHangUp(long Instance, ULONG ResID, LineOpParam* pParam); // 挂机
  42. bool __procOpTransfer(long Instance, ULONG ResID, LineOpParam* pParam); // 呼叫转移
  43. bool __procOpTurnAgent(long Instance, ULONG ResID, LineOpParam* pParam); // 外线来电转座席
  44. bool __procOpTurnOut(long Instance, ULONG ResID, LineOpParam* pParam); // 外线来电转外线
  45. bool __procOpTurnIvr(long Instance, ULONG ResID, LineOpParam* pParam); // 呼叫转IVR
  46. bool __procOpMeeting(long Instance, ULONG ResID, LineOpParam* pParam); // 单步会议
  47. bool __procOpHold(long Instance, ULONG ResID, LineOpParam* pParam); // 通话保持
  48. bool __procOpTakeBack(long Instance, ULONG ResID, LineOpParam* pParam); // 通话接回
  49. bool __procOpReset(long Instance, ULONG ResID, LineOpParam* pParam); // 重置
  50. bool __procOpListen(long Instance, ULONG ResID, LineOpParam* pParam); // 监听
  51. bool __procOpInsert(long Instance, ULONG ResID, LineOpParam* pParam); // 强插
  52. bool __procOpInstead(long Instance, ULONG ResID, LineOpParam* pParam); // 代接
  53. bool __procOpIntercept(long Instance, ULONG ResID, LineOpParam* pParam); // 强截
  54. bool __procOpInfoTransaction(long Instance, ULONG ResID, LineOpParam* pParam); // 数据交互
  55. bool __procOpConsultCallBegin(long Instance, ULONG ResID, LineOpParam* pParam); // 协商呼叫启动
  56. bool __procOpConsultCallConfirm(long Instance, ULONG ResID, LineOpParam* pParam); // 协商呼叫确认
  57. bool __procOpIvrFaxTransfer(long Instance, ULONG ResID, LineOpParam* pParam); // IVR发起的传真任务而产生的转移
  58. };