Интеграция Lync 2010 с внешней программой
Как интегрировать Lync 2010 с программой, которая просматривает БД и показывает небольшое всплывающее окно с найденной информацией, а также несколькими кнопками с некоторыми параметрами.
Программа уже работает с некоторыми другими типами телефонных систем, мне нужен разъем для Lync.
Я не хочу помещать вкладку или другой пользовательский интерфейс в Lync.
1 ответ
Вам нужно начать с Lync SDK. Вы можете создать свое приложение как приложение Winforms или WPF.
Вход в систему
Чтобы подключиться и выполнить вход в работающий экземпляр Lync, откройте эту страницу из SDK. Убедитесь, что вы держите ссылку на LyncClient
объект, который представляет Lync. Это можно получить, вызвав статический метод LyncClient.GetClient()
Обнаружение входящего звонка
Чтобы обнаружить входящий звонок, вы можете прослушать ConversationManager.ConversationAdded
событие. ConversationManager
это собственность на вашем LyncClient
пример.
Чтобы определить, является ли вызов а) аудиовызовом и б) входящим (в отличие от исходящего вызова, сделанного пользователем), вы можете использовать следующий метод:
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;
}
в ConversationAdded
событие, вы должны зарегистрироваться на Conversation.ParticipantAdded
событие, так что вы можете проверить, кто звонит. Объект EventArgs имеет Participant
свойство, которое в свою очередь имеет Contact
имущество. Contact
свойство имеет ряд свойств, включая Uri
, который должен дать вам номер телефона (если это то, что вам нужно).
Затем вы можете позвонить в БД и получить информацию.
Редактировать: я написал пост в блоге о всплывающих окнах, который входит в гораздо более подробно - здесь
Звонить
Если ваше приложение WPF, самый простой способ разрешить вызов - использовать элемент управления StartAudioCallButton. В противном случае, инструкции здесь должны помочь.