我们有一个模块可以与用户生成对话,包括向对话添加会话数据。使用以下代码行生成对话
IAsyncResult ar = automation.BeginStartConversation(AutomationModalities.InstantMessage,singleParticipant, modalitySettings, BeginConversationCallBack, automation);
在另一个应用程序/服务中,我们正在侦听创建的对话,这是无效的Conversations_ConversationAdded(对象发送者,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);
但是,当通过前面提到的方法创建新会话时,不会引发任何事件。我正试图找到一种方法来获取对话中的上下文数据,但我很难这样做。
任何人都会看到我做错了或有其他建议方法吗?
特洛伊
答案 0 :(得分:0)
以下帖子中的答案表示UI抑制的Lync(2010)客户端无法接收上下文数据:
以下页面表示仅发送InitialContextReceived事件,但可能会收到后续数据。请参阅注释“当Lync未处于UI抑制模式时,此代码中不会引发此事件。”。请注意,这是2013年,我没试过。