2011-08-22 7 views
13

Lync 2010をDBルックアップを実行し、小さなポップアップと情報を含むプログラムと統合するにはどうすればよいですか?
プログラムはすでにいくつかの種類の電話システムで動作しています。私はLync用のコネクタが必要です。
Lync内にタブなどのUIを配置したくありません。Lync 2010と外部プログラムの統合

+0

おそらく、これはスクリーンポップタイプのアプリです。つまり、着信オーディオ通話を検出し、発信者に関する情報をポップアップしますか? –

+0

はい、正確です。また、ユーザーはDBから派生したリストから呼び出すこともできます。この呼び出しはLyncに送信され、Lyncは呼び出しを行います。 – Martin

+0

2010年のSDKの例であるAudioVideoConversationが、私が欲しいことをやっているのを見ただけで、私はそれを調べます。 – Martin

答えて

21

Lync SDKから始める必要があります。 WinformsまたはWPFアプリケーションとしてアプリケーションを構築することができます。接続し、Lyncのの実行中のインスタンスにサインインするには

で署名

、SDKからthis pageをチェックしてください。 Lyncを表すLyncClientオブジェクトへの参照を保持していることを確認してください。これは、着信コールを検出するために、着信呼

を検出LyncClient.GetClient()

静的メソッドを呼び出すことで得することができ、あなたはConversationManager.ConversationAddedイベントをリッスンすることができます。 ConversationManagerは、LyncClientインスタンスのプロパティです。 ConversationAddedせよ

bool IsIncomingAVCall(Conversation conversation) 
{ 
    // Test to see if the call contains the AV modality 
    bool containsAVModality = conversation.Modalities.ContainsKey(ModalityTypes.AudioVideo); 

    if (containsAVModality) 
    { 
     // Get the state of the AV modality 
     var state = conversation.Modalities[ModalityTypes.AudioVideo].State; 

     // 'Notified' means the call is incoming 
     if (state == ModalityState.Notified) return true; 
    } 

    return false; 
} 

:コールは、A)音声呼であると、b)受信(ユーザによって配置された発呼とは対照的に)場合は、次のメソッドを使用することができるかを決定するために

Conversation.ParticipantAddedイベントにサインアップして、発信者が誰であるかを確認する必要があります。 EventArgsオブジェクトにはParticipantプロパティがあり、プロパティにはContactプロパティがあります。 ContactプロパティにはUriなどのプロパティがあり、電話番号(必要な場合)が表示されます。

これでDB呼び出しとポップアップができます。

編集:私ははるかに詳細に入るスクリーンポップについてのブログ記事を書いた - here

アプリケーションがWPF、許可する最も簡単な方法である場合は、通話

を配置します配置されるコールは、StartAudioCallButtonコントロールを使用します。それ以外の場合は、指示hereが役立ちます。

+0

素晴らしい!あなたの提案を試し、AudioVideoConversationの例を詳しく見ていきます。 – Martin

+0

恐ろしい!これがあなたの問題を解決するならば、答えとしてマークすることを忘れないでください。この質問を後でブラウジングするのを助けてください - 歓声 –

+0

それには1日か3日かかることがありますが、私は覚えています。あなたの時間をありがとう。 – Martin

関連する問題