0

我们有一个与用户生成对话的模块,包括向对话中添加上下文数据。对话是使用下面的代码行生成的,

IAsyncResult ar = automation.BeginStartConversation(AutomationModalities.InstantMessage,singleParticipant, modalitySettings, BeginConversationCallBack, automation);   

在另一个应用程序/服务中,我们正在侦听正在创建的对话,即 void Conversations_ConversationAdded(object sender, ConversationManagerEventArgs e) 事件处理程序。每当创建对话时都会调用此事件处理程序,在此事件处理程序中,我们为上下文数据连接了更多事件处理程序,例如,

e.Conversation.InitialContextSent += new EventHandler<InitialContextEventArgs>  (conversation_InitialContextSent);
e.Conversation.InitialContextReceived += new EventHandler<InitialContextEventArgs>(conversation_InitialContextReceived);
e.Conversation.ContextDataSent += new EventHandler<ContextEventArgs>(Conversation_ContextDataSent);
e.Conversation.ContextDataReceived += new EventHandler<ContextEventArgs>(Conversation_ContextDataReceived);

但是,当通过前面提到的方法创建新对话时,不会引发任何事件。我正在尝试找到一种方法来获取对话中的上下文数据,但我很难做到这一点。

有人看到我做错了什么或有其他方法建议吗?

特洛伊

4

1 回答 1

0

以下帖子中的答案是 UI 抑制的 Lync (2010) 客户端无法接收上下文数据:

http://social.msdn.microsoft.com/Forums/lync/en-US/dfeb0603-b4ef-44f1-97c1-2555991a221a/how-to-send-custom-data-from-one-uisuppressed-application-to-其他

下面的页面暗示只有 InitialContextReceived 事件没有被发送,但是后续数据可能会被接收。请参阅注释“当 Lync 未处于 UI 抑制模式时,此代码中不会引发此事件。”。请注意,这是 2013 年的,我还没有尝试过。

http://msdn.microsoft.com/en-us/library/lync/jj933248.aspx

于 2013-06-20T21:31:55.527 回答