-1

私はSkypeを使用したアプリ間の通信に取り組んでいます。私の要件は、1人のSkypeユーザーが通話/ビデオ通話を発信するときに、アプリケーションストリームを使用して、Skypeに接続された1つのアプリからSkypeに接続された他のアプリにメッセージを送信したかったことです。

別のサンプルアプリでは、あるアプリから別のアプリにアプリケーションストリームを使用してメッセージを送受信できますが、ユーザーが電話をかけたときにアプリケーションストリームをアクティブ化したいと思いました。

Skype4COMは、これら3つのイベントをICallChannelManagerに公開します

  1. ICallChannelManagerEvents :: Channels
  2. ICallChannelManagerEvents :: Created
  3. ICallChannelManagerEvents :: Message

これら3つのイベントを登録しました

hr = m_pCallChannelMgr.CreateInstance(__uuidof(CallChannelManager));
hr = SinkSkypeCallChannelMgrEvents::DispEventAdvise(m_pCallChannelMgr);

hr = m_pCallChannelMgr->CreateApplication(L"");
VARIANT_BOOL flag = m_pCallChannelMgr->GetCreated();
while(true )
{
if ( VARIANT_TRUE == flag) break;
flag = m_pCallChannelMgr->GetCreated();
Sleep(1000);

}
hr = m_pCallChannelMgr->Connect(m_Skypeptr);

m_pCallChannelMgr-> CreateApplication();の場合 ICallChannelManagerEvents::Createdイベントを発生させると呼ばれます。

2つのイベントICallChannelManagerEvents::ChannelsとICallChannelManagerEvents::Messageが発生したときのその他の場合についてはよくわかりません。Plzはこれについて私を助けてくれます。

4

1 に答える 1

0

問題 すでに通話中の場合に解決され、プラグインが Skype へのフックを開始すると、ICallChannelManagerEvents が発生します。

于 2012-11-22T12:14:55.750 に答える