簡體   English   中英

返回新的來電uri

[英]Return new incoming call uri

我正在使用此簡單的代碼來獲取來電和呼叫者的Uri。 如果用戶有多個Lync會話打開,則由於靜態索引,它總是返回第一個。 我如何能夠獲得新的連接索引,以便獲得正確的呼叫者uri?

    Imports Microsoft.Lync.Model
Imports Microsoft.Lync.Model.Conversation
Imports Lync = Microsoft.Lync.Model.Conversation


Public Class myLync
    Private _LyncClient As LyncClient
    Public WithEvents _ConversationMgr As Microsoft.Lync.Model.Conversation.ConversationManager
    Public WithEvents _conv As Conversation

 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Try
            _LyncClient = LyncClient.GetClient()
            _ConversationMgr = _LyncClient.ConversationManager
        Catch ex As Exception
        End Try
 End Sub

 Private Sub _ConversationMgr_ConversationAdded(ByVal sender As Object, ByVal e As Microsoft.Lync.Model.Conversation.ConversationManagerEventArgs) Handles _ConversationMgr.ConversationAdded
        AddHandler e.Conversation.Modalities(ModalityTypes.AudioVideo).ModalityStateChanged, AddressOf AVModalityStateChanged
 End Sub

 Private Sub AVModalityStateChanged(ByVal sender As Object, ByVal e As ModalityStateChangedEventArgs)
        Select Case e.NewState
            Case ModalityState.Notified
                Dim Uri = _ConversationMgr.Conversations.Item(0).Participants.Item(1).Contact.Uri
        End Select
 End Sub

AVModalityStateChanged(ByVal sender As Object, ByVal e As ModalityStateChangedEventArgs) ,可以將sender參數AVModality轉換為AVModality類型,從那里您可以訪問參與者。

不好意思,我的C#看起來像:

  private void Participant_ModalityStateChanged(object sender, ModalityStateChangedEventArgs e)
    {
        if (e.NewState == ModalityState.Connected)
        {
            var modality = (AVModality) sender;
            var participant = modality.Participant;
            var uri = participant.Contact.Uri;
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM