/************************************************************************* 【文件名】 MakeCallReq.h 【功能模块和目的】 线路请求呼叫类头文件 【开发者及日期】 郑石诺 2015/03/28 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ #pragma once #include "ReqBase.h" /************************************************************************* 【类名】 CMakeCallReq 【功能】 【接口说明】 线路请求呼叫类 【开发者及日期】 郑石诺 2015/03/28 【版本】 V1.0.0 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司 【更改记录】 *************************************************************************/ class CMakeCallReq : public CReqBase { public: CMakeCallReq(CProxyShell* pParent, CPduEntity& ReqPdu); virtual ~CMakeCallReq(void); // 操作主控方法 bool request(void); bool request(LPCTSTR lpContent); bool cancel(long InstanceCancel) { return false; } bool hangUp(long InstanceHangUp); void end(bool IsSucceed, LPCTSTR lpData); void setAssoInfo(CPduEntity& a_Req); // 事件响应接口 void onDevChEvent(CVirtualProxy* pEventLine, DEV_CH_EVT_TYPE EvtType, LPCTSTR lpContent); void onLineStateChanged(CVirtualProxy* pEventLine, VIRTUAL_LINE_STATE LineState, long Call, long SubCall, LPCTSTR lpCallerNum, LPCTSTR lpCalleeNum); private: CString m_CallerNum; // 主叫号码 CString m_CalleeNum; // 被叫号码 CVirtualProxy* m_pAssoLine; // 呼叫的对端线路 long m_PendingCallId; // 当前待处理呼叫 DEV_RES_TYPE m_PeerLineType; // 对端线路类型 UINT m_Step; // 外呼操作的执行步骤(0 -> 等待摘机,1 -> 正在呼叫) int m_SipAccountId; // sip账户ID };