2

我正在尝试在 UI 抑制模式下使用 Lync 2013 sdk 创建消息传递应用程序,我正在使用以下代码向对话中的所有参与者发送消息,但我找不到将消息发送给特定其中一个的方法,有谁知道如何做到这一点?

我的代码:

public void StartIMConversation(string participantUri)
        {         
            _Conversation.PropertyChanged += _Conversation_PropertyChanged;
            _Conversation = _LyncClient.ConversationManager.AddConversation();
        }

void ConversationsManager_ConversationAdded(Object source, ConversationManagerEventArgs data)
        {
            data.Conversation.ParticipantAdded += Conversation_ParticipantAdded;
            data.Conversation.StateChanged += Conversation_StateChanged; 
data.Conversation.AddParticipant(_LyncClient.ContactManager.GetContactByUri(this.myRemoteParticipantUri));
data.Conversation.AddParticipant(_LyncClient.ContactManager.GetContactByUri(this.myRemoteParticipantUri2));
data.Conversation.AddParticipant(_LyncClient.ContactManager.GetContactByUri(this.myRemoteParticipantUri3));


    InstantMessageModality imModality = (InstantMessageModality)participant.Conversation.Modalities[ModalityTypes.InstantMessage];
                            imModality.BeginSendMessage(message, SendMessageCallback, imModality);

        }
    private void SendMessageCallback(IAsyncResult ar)
        {
            InstantMessageModality imModality = (InstantMessageModality)ar.AsyncState;

            try
            {
                imModality.EndSendMessage(ar);
            }
            catch (LyncClientException lce)
            {
                MessageBox.Show("Lync Client Exception on EndSendMessage " + lce.Message);
            }

        }

如果使用对话无法做到这一点,请引导我以正确的方式,感谢任何帮助。

4

2 回答 2

2

没有办法在给定对话中选择 IM 的接收者。您最好的选择可能是只与您需要的参与者开始单独的对话。

于 2014-03-07T08:48:35.713 回答
1

我同意所选答案...但是...当您编写 UI 抑制应用程序时,您可以使用单独的 IM 对话(根据答案),然后将其内联显示。当您控制会议的显示时,您可以随意显示它,如果这确实是您想要做的。

于 2014-04-10T07:57:23.213 回答