修改三方通话功能,在发起三方通话时,先保持住主叫,然后再拉回主叫到会议

FaxChannel.h 1.3KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*************************************************************************
  2. 【文件名】 FaxChannel.h
  3. 【功能模块和目的】 传真通道类头文件
  4. 【开发者及日期】 郑石诺 2015/05/18
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. class COneLeg;
  11. class CIpmChannel;
  12. /*************************************************************************
  13. 【类名】 CFaxChannel
  14. 【功能】
  15. 【接口说明】 传真通道类
  16. 【开发者及日期】 郑石诺 2015/05/18
  17. 【版本】 V1.0.0
  18. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  19. 【更改记录】
  20. *************************************************************************/
  21. class CFaxChannel
  22. {
  23. public:
  24. CFaxChannel(int ChanNo);
  25. ~CFaxChannel(void);
  26. bool open(void);
  27. void close(void);
  28. bool isFree(void) const { return m_state == FS_IDLE; }
  29. bool send(COneLeg* pLeg, LPCTSTR FaxFile);
  30. bool recv(COneLeg* pLeg, LPCTSTR FaxFile);
  31. bool stop(void);
  32. void onDevEvent(METAEVENT* pMetaEvent);
  33. private:
  34. void __release(bool FaxResult);
  35. void __onFaxError(void);
  36. void __onFaxEnd(void);
  37. private:
  38. typedef enum
  39. {
  40. FS_IDLE = 0,
  41. FS_SEND = 1,
  42. FS_RECV = 2
  43. } FaxState;
  44. int m_ChanNo;
  45. int m_Handle;
  46. FaxState m_state;
  47. COneLeg* m_pLeg;
  48. CIpmChannel* m_pIpmChan;
  49. };