不允许来电 Lync Api 或禁用来电声音

Posted

技术标签:

【中文标题】不允许来电 Lync Api 或禁用来电声音【英文标题】:Do not allow incoming call Lync Api or disabling sounds for incoming call 【发布时间】:2014-12-04 11:12:01 【问题描述】:

我使用 Lync api 开发了一个 Windows 应用程序。我的客户想要禁用对此应用程序的来电。所以我添加了一些这样的东西。我可以挂断电话,但是在我能够这样做之前,响铃很少

private void ClientInitialized(IAsyncResult result)
        
            try
            
                //registers for conversation related events
                //these events will occur when new conversations are created (incoming/outgoing) and removed
                client.ConversationManager.ConversationAdded += ConversationManager_ConversationAdded;
                client.ConversationManager.ConversationRemoved += ConversationManager_ConversationRemoved;
            
            catch (Exception ex)
            
                MessageBox.Show("Problem in adding/removing conversation", "Bella IVIS", MessageBoxButtons.OK, MessageBoxIcon.Error);
            
        

void ConversationManager_ConversationAdded(object sender, ConversationManagerEventArgs e)
        
     try
         
     var _client = client;
     if (e.Conversation.State == ConversationState.Active)
     
     for (int intLoop = 0; intLoop < _client.ConversationManager.Conversations.Count; intLoop++)
     
         _client.ConversationManager.Conversations[intLoop].End();
     
     _client = null;
      return;
     
    
  

【问题讨论】:

ConversationAdded 是在添加对话之后。您想在添加对话之前查看它,以确定在它到达添加点之前完全阻止/静音它 有没有要查找的事件名称 这是特定于这个客户端(端点)还是用户?如果是针对用户的,您可以在服务器端为用户关闭音频视频功能。可能仍然相关的旧文章:jackiechen.org/2012/02/13/… 感谢您的文章。目前,在 ConversationManager_ConversationAdded 事件中点击调试器之前,我会收到铃声。所以我不知道我必须阻止呼叫的事件,之后我应该能够再次修改密钥。你有什么想法吗 【参考方案1】:

我不知道是否有办法在Conversation_Added 事件之前捕获对话。但是,如果 Lync 状态与您无关,那么您将 Lync 状态更改为“请勿打扰”。这样,您将永远不会收到任何传入请求(除非用户 Lync 设置允许这样做)

var newInformation =new Dictionary<PublishableContactInformationType, object>();
        newInformation.Add(PublishableContactInformationType.Availability, ContactAvailability.DoNotDisturb);

try

     this.lyncClient.Self.BeginPublishContactInformation(newInformation,(result) => this.lyncClient.Self.EndPublishContactInformation(result) , null);
  catch 

【讨论】:

以上是关于不允许来电 Lync Api 或禁用来电声音的主要内容,如果未能解决你的问题,请参考以下文章

在 UCMA 4.0 应用程序中接受 Lync 客户端的来电

Lync/Skype 数据库中的未接来电?

打开 al 声音在来电后不播放,直到应用重新启动

电话录音服务仅记录来电者的声音。 (安卓)

如何在智能手机中运行网络应用程序时禁用任何来电?

当设备在android中收到来电时如何播放声音?