| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /*************************************************************************
- 【文件名】 OneLeg.h
- 【功能模块和目的】 呼叫的一方抽象基类头文件
- 【开发者及日期】 郑石诺 2015/04/09
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- #pragma once
- class CChannelResource;
- class CDspChannel;
- /*************************************************************************
- 【类名】 COneLeg
- 【功能】
- 【接口说明】 呼叫的一方抽象基类
- 【开发者及日期】 郑石诺 2015/04/09
- 【版本】 V1.0.0
- 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
- 【更改记录】
- *************************************************************************/
- class COneLeg
- {
- public:
- COneLeg(void);
- virtual ~COneLeg(void) = 0 {}
- int state(void) const { return m_State; }
- long sessionCode(void) const { return m_SessionCode; }
- long& sessionCode(void) { return m_SessionCode; }
- const CString& getCaller(void) const { return m_CallerNum; }
- const CString& getCallee(void) const { return m_CalleeNum; }
- void reset(void);
- // 话务功能接口
- virtual bool check(void) { return false; } // 线路自检
- virtual bool offhook(bool IgnoreSession, LPCTSTR CallerNum = NULL) = 0; // 内线摘机
- virtual bool dropCall(bool IsPassive) = 0; // 挂机
- virtual bool makeCall(LPCTSTR Callee, LPCTSTR Caller, int AccountId) = 0; // 启动线路拨号
- virtual bool answer(void) = 0; // 应答呼叫
- virtual bool playSound(PlayVoiceContent* pContent) = 0; // 放音收号
- virtual bool playTone(int Type) = 0; // 播放信号音
- virtual bool playStop(void) = 0; // 停止放音
- virtual bool startRecord(RecordContent* pContent) = 0; // 开始录音
- virtual bool stopRecord(void) = 0; // 停止录音
- virtual bool monitor(COneLeg* pTalker, bool IsStop) = 0; // 监听
- virtual bool allowMonitor(COneLeg* pMonitorParty) = 0; // 接受监听
- virtual bool cancelMonitor(COneLeg* pMonitorParty) = 0; // 取消监听
- virtual void freeResBinded(void) = 0; // 释放绑定资源
- virtual void setMeetingInfo(int NodeNo, int BoardNo, int MeetingId); // 设置会议ID
- // 呼叫建立接口
- virtual bool reply(void) = 0;
- virtual bool progress(void) = 0;
- virtual bool accept(void) = 0;
- virtual CChannelResource* routeChannel(void) = 0;
- virtual CChannelResource* resourceAttribute(void) = 0;
- virtual void onFaxEnd(bool IsSuccess, LPCTSTR Reason) = 0; // 传真结果处理
- protected:
- long m_SessionCode; // 当前线路所属的会话(由会话控制层管理)
- CString m_CallerNum; // 主叫号码
- CString m_CalleeNum; // 被叫号码
- volatile int m_State;
- MeetingInfo m_MeetingInfo;
- };
|