// Messenger.cpp : Implementation of CMessenger
|
|
#include "stdafx.h"
|
#include "Messenger.h"
|
#include "MBAMWnd.h"
|
|
// CMessenger
|
|
void CMessenger::SetOwner( void *pOwner )
|
{
|
|
m_pOwner = pOwner;
|
}
|
|
void CMessenger::CleanOwner( )
|
{
|
|
m_pOwner = NULL;
|
}
|
|
STDMETHODIMP CMessenger::OnAMInitData(IDispatch * pDsp, LONG * pbReturn)
|
{
|
|
if ( pbReturn == NULL )
|
return E_POINTER;
|
|
return E_NOTIMPL;
|
}
|
|
STDMETHODIMP CMessenger::OnAMDestroy(LONG * pbReturn)
|
{
|
if ( pbReturn == NULL )
|
return E_POINTER;
|
|
return E_NOTIMPL;
|
}
|
|
//====================================================
|
// ½ÓÊÕAMϵͳÏûÏ¢
|
//====================================================
|
STDMETHODIMP CMessenger::OnAMReceive(ISTKSysMsg * pSMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
((CMBAMWnd*)m_pOwner)->GetMessengerPro( )->AMReceive( pSMsg );
|
|
return S_OK;
|
}
|
|
//====================================================
|
// ½ÓÊÕAMÏûÏ¢
|
//====================================================
|
STDMETHODIMP CMessenger::OnAMMsgReceive(ISTKMessage * pMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
CComBSTR bszMsgID;
|
CString strMsgID;
|
long nDownLoad = 0;
|
CMBAMWnd *pSTKDlg = (CMBAMWnd*)m_pOwner;
|
|
if ( !pSTKDlg )
|
return S_FALSE;
|
pMsg->get_MsgID( &bszMsgID );
|
strMsgID.Format(_T("%s"),(LPCTSTR)(_bstr_t)bszMsgID);
|
pMsg->IsDownloaded( false, &nDownLoad );
|
if ( nDownLoad == 0 )
|
{
|
//if ( pSTKDlg->GetSTKBaseDBMgr()->ExistSpOpenMsgID( strMsgID ) )
|
// return true;
|
// end modify
|
}
|
pSTKDlg->GetMessengerPro( )->AMMsgReceive( pMsg );
|
|
return S_OK;
|
}
|
|
//====================================================
|
// ½ÓÊչܵÀµÇ¼ÏûÏ¢
|
//====================================================
|
STDMETHODIMP CMessenger::OnAMSignIn(AMSIGNINSTATE State, BSTR bszLoginName, LONG nErrCode)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
CString strLog;
|
strLog.Format(_T("CMessenger::OnAMSignIn %d "),State );
|
//CSTKCommFun::WriteLog(strLog);
|
if ( !m_pOwner )
|
return S_FALSE;
|
((CMBAMWnd*)m_pOwner)->AMSigninNotify(State, nErrCode );
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMError(long nErrCode, long nTrID, BSTR bszParam)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
CString strParam;
|
strParam.Format(_T("%s"),(LPCTSTR)(_bstr_t)bszParam);
|
|
/*CString strLog;
|
strLog.Format(_T("CMessenger::OnAMError (%d ) %s"),nErrCode, strParam );
|
CSTKCommFun::WriteLog(strLog);*/
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
((CMBAMWnd*)m_pOwner)->GetMessengerPro( )->AMError( nErrCode, nTrID, strParam );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMConnectError(LONG nErrCode)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
CString strLog;
|
strLog.Format(_T("CMessenger::OnAMConnectError (%d )"),nErrCode );
|
//CSTKCommFun::WriteLog(strLog);
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
((CMBAMWnd*)m_pOwner)->GetMessengerPro( )->AMConnectError( nErrCode );
|
|
return S_OK;
|
}
|
|
|
STDMETHODIMP CMessenger::OnAMNtyReceive(ISTKSysMsg* pSMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
((CMBAMWnd*)m_pOwner)->GetMessengerPro( )->AMNtyReceive( pSMsg );
|
|
return S_OK;
|
}
|
STDMETHODIMP CMessenger::OnAMLoadView()
|
{
|
return S_FALSE;
|
}
|
|
STDMETHODIMP CMessenger::OnAMViewLoadChild()
|
{
|
return S_FALSE;
|
}
|
|
STDMETHODIMP CMessenger::OnAMViewItemLoadChild()
|
{
|
return S_FALSE;
|
}
|
|
STDMETHODIMP CMessenger::OnAMMeetNtyReceive(ISTKSysMsg * pSMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
//if ( IsWindow( m_pOwner->GetSafeHwnd() ) )
|
// ((CSTKDlg*)m_pOwner)->GetMessengerPro( )->AMMeetNtyReceive( pSMsg );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMMeetReceive(ISTKSysMsg* pSMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
// if ( IsWindow( m_pOwner->GetSafeHwnd() ) )
|
// ((CSTKDlg*)m_pOwner)->GetMessengerPro( )->AMMeetReceive( pSMsg );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMMeetMsgReceive(ISTKMessage* pMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
//if ( IsWindow( m_pOwner->GetSafeHwnd() ) )
|
// ((CSTKDlg*)m_pOwner)->GetMessengerPro( )->AMMeetMsgReceive( pMsg );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMMeetConnectClosed(BSTR bszMeetID)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
CString strMeetID;
|
|
strMeetID.Format(_T("%s"),(LPCTSTR)(_bstr_t)bszMeetID);
|
//if ( IsWindow( m_pOwner->GetSafeHwnd() ) )
|
// ((CSTKDlg*)m_pOwner)->GetMessengerPro( )->AMMeetConnectClosed( strMeetID );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnAMMeetError(long nErrCode, BSTR bszMeetID, long nTrID)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
|
CString strMeetID;
|
|
strMeetID.Format(_T("%s"),(LPCTSTR)(_bstr_t)bszMeetID);
|
|
// if ( IsWindow( m_pOwner->GetSafeHwnd() ) )
|
// ((CSTKDlg*)m_pOwner)->GetMessengerPro( )->AMMeetError( nErrCode, strMeetID, nTrID );
|
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::Challenges()
|
{
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnSubAddInMsgReceive(BSTR sAddInName, ISTKMessage *pMsg)
|
{
|
// AFX_MANAGE_STATE(AfxGetStaticModuleState())
|
|
CString strAddInName;
|
BOOL bReturn = false;
|
|
if ( !m_pOwner )
|
return S_FALSE;
|
/*if ( !IsWindow( m_pOwner->GetSafeHwnd() ) )
|
return S_FALSE;
|
|
strAddInName.Format(_T("%s"),(LPCTSTR)(_bstr_t)sAddInName);
|
bReturn = ((CSTKMainDlg*)m_pOwner)->GetAddInPro( )->AMSubAddInMsgReceive( strAddInName, pMsg );
|
if ( !bReturn )
|
return S_FALSE;
|
else*/
|
return S_OK;
|
}
|
|
STDMETHODIMP CMessenger::OnESCmdReceive(ISTKParam * pParam, long * pnData)
|
{
|
|
|
return S_FALSE;
|
}
|
|
STDMETHODIMP CMessenger::OnAMHook(ISTKParam * pParam, long * pnReturn)
|
{
|
|
return S_FALSE;
|
}
|