Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I would like to have the 'SIP Address' (eg. sip:myname.companyname.com) field automatically filled in so we can use Portal's 'presence' functionality - as far as I can see we have no dedicated LDAP attribute for this information.

I would be very grateful of some advice on how to get this data into SharePoint 2010?

share|improve this question
    
Where were you wanting to have this field "automatically filled"? In the user profile? Are you syncing your user profile data from AD? –  Samuel Yates Jul 26 '11 at 22:31
add comment

2 Answers

up vote 1 down vote accepted

There is a hidden list called SiteUserInfoList on each web, use it to get 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;
}

There is a post about it.

share|improve this answer
add comment

Assuming you are using AD and the MS SIP infrastructure (OCS/Lync), you should have an attribute in AD called "msRTCSIP-PrimaryUserAddress". You should be able to map this to any user profile attribute you like during synchronization. I'm a little surprised this wouldn't already be getting mapped to the SIP Address attribute, but I guess that depends on what you have setup.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.