如何在ConversationAdded事件中获取上下文数据

时间:2013-06-10 17:36:41

标签: lync

我们有一个模块可以与用户生成对话,包括向对话添加会话数据。使用以下代码行生成对话

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);

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

任何人都会看到我做错了或有其他建议方法吗?

特洛伊

1 个答案:

答案 0 :(得分: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-another

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

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