Я реализую приложение с использованием Lync Client API 2010, которое позволит пользователю принимать/отклонять обмен мгновенными сообщениями/аудио/видео Lync через него, а не через окно клиента Lync. В большинстве случаев приложение работает должным образом, за исключением следующего сценария:
- Предположим, что учетная запись LyncA начинает аудиовызов с учетной записью LyncB.
- Мое приложение (установленное на ПК с учетной записью LyncB) обнаруживает, что в учетной записи LyncB создается новый разговор lync с помощью события ConversationAdded.
- Нажмите кнопку «Принять» в «Моем приложении», чтобы принять вызов от LyncA (затем мое приложение вызовет функцию BeginConnect AudioVideoModality). Все работает так, как ожидалось. LyncB принимает аудиовызов от LyncA.
- LyncA нажимает кнопку «Видео» в окне Lync, чтобы добавить видео в беседу.
- LyncB обнаруживает это и автоматически отображает окно видео без какого-либо взаимодействия с пользователем, а видеоканал начинает передачу.
- Теперь нажмите кнопку «Завершить видео» в окне Lync LyncB, чтобы завершить передачу видео из LyncA. Видео останавливается, но аудиовызов продолжается.
- Теперь LyncA снова нажимает кнопку «Видео» в окне Lync, чтобы снова добавить видео в беседу.
- В это время LyncB открывается с окном сообщения «Принять/отклонить», чтобы запросить у пользователя разрешение на принятие или отклонение передачи видео. Мое приложение обнаруживает это через событие ActionAvailabilityChanged класса AudioVideoModality. Однако в настоящее время мое приложение не может использовать Lync API 2010 для приема передачи видео. Я пробовал метод Accept в AudioVideoModality, а также метод BeginConnect. Также попробовал BeginStart VideoChannel в AudioVideoModality, но все равно не смог принять входящую передачу видео. При вызове метода BeginConnect было выдано исключение UnauthorizedAccessException.
Кто-нибудь еще сталкивается с такой же проблемой здесь? Очень ценю, если вы можете дать мне несколько советов по решению этой проблемы.
Спасибо.