Lync 2013 SDK的Self.Contact.ContactInformationChanged事件

时间:2014-03-27 08:31:13

标签: wpf lync-2013 lync-client-sdk

我是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客户端更改了状态时才会触发此事件。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您无法告知导致状态更改的原因,因为最终ContactInformationChanged事件实际上是由Lync服务器触发的,而不是您的客户端或您的应用程序仅仅发出更改请求。

我建议存储您的应用程序认为当前在线状态应该是什么,即最近在应用程序本身中更改为什么,并在事件处理程序中对其进行测试。