/************************************************************************* 【文件名】 OpPlayAndDtmf.h 【功能模块和目的】 通道请求【放音收按键】类头文件 【开发者及日期】 郑石诺 2016/08/16 【版本】 V1.0.0 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ #pragma once #include "operation.h" /************************************************************************* 【类名】 COpPlayAndDtmf 【功能】 【接口说明】 通道请求【放音收按键】类 【开发者及日期】 郑石诺 2016/08/16 【版本】 V1.0.0 【版权信息】 Copyright (C)2016 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ class COpPlayAndDtmf : public COperation { public: COpPlayAndDtmf(COperationReactor* pParent, LONG Instance); virtual ~COpPlayAndDtmf(void); virtual LINE_OP type(void) const { return LINE_OP_PLAY_VOICE; } virtual bool start(LineOpParam* pParam); virtual bool cancel(LONG InstanceCancel); // 取消当前操作 virtual bool hangup(LONG InstanceHangup); // 操作中挂机 // 事件响应接口 virtual void onHostChanDtmf(LPCTSTR Dtmf); // 关联通道DTMF处理 virtual void onHostChanStateUpdated(CVirtualChan* pHostChan); // 关联通道状态更新处理 virtual void onChanAppExecuted(CVirtualChan* pHostChan, PAPP_EXEC_NOTIFY pNotify); // 通道任务执行结束事件处理 protected: virtual void _end(bool IsSucceed); // 操作完成(注:此操作之后只能调用 return 语句) private: BOOL m_bExecuteEnd; BOOL m_bDtmfEnd; PlayVoiceContent m_PlayContent; CString m_Dtmf; };