2016-10-02 10 views
0

У меня есть список адресов электронной почты, полученный из корпоративного веб-сервиса.
Все адреса, как известно, существуют в Lync/S4B в качестве действительных контактов.Получите несколько контактов из 1 поиска в Lync2013 SDK

Я пытаюсь создать приложение, которое показывает присутствие для этого списка адресов, но я столкнулся с проблемами производительности, когда список большой.
В худшем случае у меня около 400 адресов, на которые мне нужно получить присутствие. Sofar единственный способ, с помощью которого я могу успешно конвертировать адреса в контакты, - это запустить запросы ContactManager.BeginSearch() (1 для каждого адреса) с помощью SearchProviders.GlobalAddressList. Я много искал в Интернете и не мог найти другого способа сделать это. ExpertSearch не включен в моем случае (даже не знаю, поможет ли он). Это займет около 50 секунд, чтобы получить контакты.

1) Любые идеи для более быстрых способов получения контактов?
2) Или можно добавить контакт в список подписчиков после подписного списка. Вызывается подписка()? Если да, то переписывает ли существующие контакты в списке подписчиков? И вам нужно снова вызвать Subscribe() после добавления нового контакта?

ответ

0

Я не уверен, что могу ответить 1), но я думаю, что нет другого более быстрого способа, но я уверен.

Для вопроса 2) да, вы можете вызвать AddContact/AddContacts/RemoveContact без необходимости повторного вызова Subscribe/Unsubscribe. Каждая контактная подписка отделена друг от друга. Поэтому добавление/удаление контактной подписки не влияет на подписку с других контактов .