2011-08-22 3 views
13

DB 조회를 수행하고 발견 된 정보와 함께 몇 가지 단추가있는 작은 팝업을 보여주는 프로그램과 Lync 2010을 어떻게 통합 할 수 있습니까?
프로그램이 이미 다른 유형의 전화 시스템에서 실행 중이므로 Lync 용 커넥터가 필요합니다.
Lync 내에 탭이나 다른 UI를 넣고 싶지 않습니다.Lync 2010을 외부 프로그램과 통합

+0

아마도 이것은 스크린 팝 유형 앱입니다. 즉, 수신 오디오 통화를 감지 한 다음 발신자에 대한 정보를 팝업합니다. –

+0

네, 그렇습니다. 또한 사용자가 DB에서 파생 된 목록에서 호출 할 수도 있습니다. 이 호출은 Lync에 보내야하며, 그러면 호출이 호출됩니다. – Martin

+0

2010 SDK의 예제 인 AudioVideoConversation이 내가 원하는 것을 거의 수행하고 있다는 것을 알았습니다. 조사해 보겠습니다. – Martin

답변

21

Lync SDK으로 시작해야합니다. Winforms 또는 WPF 응용 프로그램으로 응용 프로그램을 빌드 할 수 있습니다. 연결하고 Lync의 실행중인 인스턴스에 로그인하려면

로그인에

의 SDK에서 this page을 확인하십시오. Lync를 나타내는 LyncClient 개체에 대한 참조를 유지해야합니다. 이

수신 통화를 감지하기 위해 수신 전화를 검출 정적 메소드 LyncClient.GetClient()

를 호출하여 가지고 할 수있다, 당신은 ConversationManager.ConversationAdded 이벤트를 수신 할 수 있습니다. ConversationManagerLyncClient 인스턴스의 속성입니다.

는 통화가) 오디오 호출 여부를 결정하고,하려면 b)는 수신 (사용자가 위치 발신 통화) 다음과 같은 방법을 사용할 수 있습니다 반대로 다음 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; 
} 

Conversation.ParticipantAdded 이벤트에 등록해야 발신자를 확인할 수 있습니다. EventArgs 개체는 Participant 속성을 가지며 차례로 Contact 속성을가집니다. Contact 속성에는 Uri을 비롯한 많은 속성이 있으며 전화 번호가 필요합니다 (필요한 경우).

그러면 DB 호출을하고 정보를 팝업 할 수 있습니다.

편집 : 나는 더 많은 내용이수록 화면 팝업에 대한 블로그 게시물을 작성했습니다 - here

전화를 걸기를 앱이 WPF 허용하는 가장 쉬운 방법입니다 경우

놓을 호출은 StartAudioCallButton 컨트롤을 사용하는 것입니다. 그렇지 않으면 here 안내가 도움이됩니다.

+0

환상적! 제안을 시도하고 AudioVideoConversation 예제를 자세히 살펴 보겠습니다. – Martin

+0

굉장! 이 문제를 해결할 수 있다면 틱을 사용하여 답을 표시하는 것을 잊지 마세요 - 건배 –

+0

그곳에 도착하는 데에는 하루에서 셋이 걸릴 수 있지만 기억하겠습니다. 시간 내 주셔서 감사합니다. – Martin

관련 문제