Lync SDK获取发送或接收的文本

Lync SDK获取发送或接收的文本,sdk,lync,instant-messaging,Sdk,Lync,Instant Messaging,在我看到这篇文章之前: 我实现了这个解决方案,但我真的需要得到已经发送或接收的文本。问题是,虽然我的应用程序注册为自动打开,但如果我收到关闭窗口的消息,我会丢失第一个文本(这只是一个示例)。有人知道我怎么才能拿到文本吗 我到处都找不到。不在Conversation类或ConversationManager中 英语不是我的母语,希望你能理解我的意思。如果我正确理解了问题,你想获得连接应用程序之前的对话吗?比如,了解历史?我认为这在API中是不可能的——您不能使用API查看历史数据,只能查看“现在

在我看到这篇文章之前:

我实现了这个解决方案,但我真的需要得到已经发送或接收的文本。问题是,虽然我的应用程序注册为自动打开,但如果我收到关闭窗口的消息,我会丢失第一个文本(这只是一个示例)。有人知道我怎么才能拿到文本吗

我到处都找不到。不在
Conversation
类或
ConversationManager


英语不是我的母语,希望你能理解我的意思。

如果我正确理解了问题,你想获得连接应用程序之前的对话吗?比如,了解历史?我认为这在API中是不可能的——您不能使用API查看历史数据,只能查看“现在”正在发生的事情。您可能会成功地查找Lync数据库(虽然我不知道在哪里!)

您缺少第一行文本,我想您是说缺少第一行?启动IM对话的文本可以在所谓的“Toast”中找到

toast是启动新对话时在Lync客户端上弹出的窗口。对于IM对话,第一条消息是toast的一部分,并在此弹出窗口中显示给用户。它不是通过即时消息流发送的

MSDN文档:

ToastMessage
InviteReceivedEventArgs
[]的属性。您的传入呼叫处理程序可能会处理
CallReceivedEventArgs
,它继承了
InviteReceivedEventArgs

private void OnIncomingInstantMessagingCallReceived(
    object sender,
    CallReceivedEventArgs<InstantMessagingCall> e)
{
    var toast = e.ToastMessage; // There she is. Mind you it can be null too.
}
private void onIncomingInstantMessageCallReceived(
对象发送器,
CallReceivedEventArgs(e)
{
var toast=e.ToastMessage;//她在那里。请注意,它也可以为null。
}

我可以补充一点,应用程序是CWE(对话窗口扩展)。不是控制台应用程序或类似的不是历史本身,我只需要当前对话窗口中的文本。即使使用javascript,我也找不到一个解决方法,使用exe应用程序,在有人讲话时添加弹出窗口,并传递所有对话。我尝试过这种方法,但它只有第一条信息,如果在你打开对话之前,其他人发短信,你会失去所有信息