如何在Lync Client API 2010拒绝后接受传入的视频通话?

时间:2012-06-08 10:42:04

标签: c# lync-2010

我正在使用Lync Client API 2010实现一个应用程序,该应用程序允许用户通过它而不是通过Lync客户端窗口接受/拒绝IM /音频/视频Lync对话。除了以下情况之外,我可以让应用程序在大多数情况下按预期工作:

  1. 我们假设帐户LyncA使用帐户LyncB启动音频呼叫
  2. 我的应用程序(安装在运行LyncB帐户的PC上)检测到通过ConversationAdded事件在LyncB帐户上创建了新的lync对话。
  3. 单击“我的应用程序”上的“接受”按钮接受来自LyncA的呼叫(我的应用程序随后将调用AudioVideoModality的BeginConnect)。一切都按预期工作。 LyncB接受来自LyncA的音频呼叫。
  4. LyncA点击Lync窗口上的视频按钮,将视频添加到对话中。
  5. LyncB检测到并自动显示视频窗口而无需任何用户交互,视频频道开始传输。
  6. 现在,单击LyncB的Lync窗口上的结束视频按钮以结束来自LyncA的视频传输。视频已停止,但音频通话仍在继续。
  7. 现在,LyncA再次点击Lync Window上的视频按钮,将视频添加回对话。
  8. 此时,LyncB会弹出一个“接受/拒绝”消息框,要求用户接受或拒绝视频传输。我的应用程序通过AudioVideoModality的事件ActionAvailabilityChanged检测到这一点。但是,我的应用程序此时无法使用Lync API 2010接受视频传输。我已经尝试了AudioVideoModality中的Accept方法以及BeginConnect方法。还尝试了AudioVideoModality中VideoChannel的BeginStart,但仍然无法接受传入的视频传输。调用BeginConnect方法时,它抛出异常UnauthorizedAccessException。
  9. 有没有其他人在这里遇到同样的问题?如果你能提供一些解决这个问题的提示,我真的很感激。

    感谢。

1 个答案:

答案 0 :(得分:0)

这只是一个猜测:也许VideoChannel仍处于活动状态,但处于暂停状态。您可以尝试使用AVModality BeginRetrieve方法来检索视频。

视频频道的状态是什么?