我是Lync 2013 SDK的基本开发人员。
我想将自定义状态从我的应用程序更改为Lync 2013客户端和副签证。
表单加载事件已添加LyncClient.Self.Contact.ContactInformationChanged
。
当我从自定义应用程序更改状态时,这也将使用我的功能更改Lync 2013客户端的状态。
try
{
_lyncClient.Self.BeginPublishContactInformation(
stuffToPublish,
(ar) =>
{
_lyncClient.Self.EndPublishContactInformation(ar);
},
null);
}
catch (ItemNotFoundException)
{
MessageBox.Show(_SelectedCustomAvailabilityId.ToString() + " Item not found");
}
由于Lync 2013客户端的状态已更改,因此在执行我的函数后会触发LyncClient.Self.Contact.ContactInformationChanged
事件。
当我的应用程序更改状态时,我不希望发生此事件。我希望只有在Lync 2013客户端更改了状态时才会触发此事件。
我该如何解决这个问题?
答案 0 :(得分:1)
您无法告知导致状态更改的原因,因为最终ContactInformationChanged事件实际上是由Lync服务器触发的,而不是您的客户端或您的应用程序仅仅发出更改请求。
我建议存储您的应用程序认为当前在线状态应该是什么,即最近在应用程序本身中更改为什么,并在事件处理程序中对其进行测试。