SharePoint 2010 Grab SIP -адрес из AD?
Вопрос
Я хотел бы, чтобы поля «SIP -адреса» (например, SIP: myname.companyname.com) автоматически заполнилось, чтобы мы могли использовать функциональность «присутствие» портала - насколько я вижу, у нас нет выделенного атрибута LDAP для этой информации Анкет
Я был бы очень благодарен за советы о том, как получить эти данные в SharePoint 2010?
Решение
В каждой сети есть скрытый список под названием SiteUserInfolist, используйте его, чтобы получить SIP.
private string GetSipAddress(SPUser user, SPWeb web)
{
web = web ?? SPContext.Current.Web;
var userItem = web.SiteUserInfoList.GetItemById(user.ID);
string sip = string.Empty;
if (userItem != null)
{
var sipAddress = userItem["SipAddress"];
if (sipAddress != null)
{
sip = sipAddress.ToString().Replace("sip:", "");
}
}
return sip;
}
Eсть почта об этом.
Другие советы
Предполагая, что вы используете AD и инфраструктуру MS SIP (OCS/Lync), вы должны иметь атрибут в AD, называемом «MSRTCSIP-PrimaryUserAddress». Вы должны быть в состоянии сопоставить это с любым атрибутом профиля пользователя, который вам нравится во время синхронизации. Я немного удивлен, что это еще не будет нанесено на карту с атрибутом адреса SIP, но я думаю, что это зависит от того, что вы настроили.