如何在lync应用程序中获取传出呼叫状态

时间:2014-04-08 11:51:27

标签: c# lync lync-client-sdk

我们正在开发一个应用程序,每当我们从应用程序拨号时,我们都能够成功连接到其他人,直到呼叫者不解除和断开或忽略呼叫时我们如何找到呼叫状态是否已断开连接,忽略不计。我们试过了

谈话状态改变了

  void Conversation_StateChanged(object sender, ConversationStateChangedEventArgs e)
    {
        if (_Conversation.State == ConversationState.Terminated)
        {
            MessageBox.Show("Terminated....");
        }
    }

audiovideo模态状态已更改

   void _AVModality_ModalityStateChanged(object sender, ModalityStateChangedEventArgs e)
    {
        switch (e.NewState)
        {
            case ModalityState.Connected:
                MessageBox.Show("Connected.");
                break;
            case ModalityState.Connecting:
                MessageBox.Show("Connecting.");
                break;
            case ModalityState.ConnectingToCaller:
                MessageBox.Show("ConnectingToCaller.");
                break;
            case ModalityState.Disconnected:
                MessageBox.Show("Disconnected.");
                break;
            case ModalityState.Invalid:
                MessageBox.Show("Invalid.");
                break;
            case ModalityState.Notified:
                MessageBox.Show("Notified.");
                break;
            case ModalityState.Suspended:
                MessageBox.Show("Suspended.");
                break;
        }
    }

当我们使用模态状态改变事件时,我们能够得到“连接”和连接,但是当忽略或断开呼叫时,它们不会触发,并且当会话状态改变时也是如此。我们能够在ucma应用程序中找到呼叫状态,但我们无法找到呼出状态。任何建议都非常感谢。

1 个答案:

答案 0 :(得分:0)

对于断开连接的呼叫,您应该能够使用Call.StateChanged事件处理程序,而不是您正在查看的对话和模态状态更改evetn处理程序。