Colleagues Overview

Microsoft Office SharePoint Server 2007 provides a fast and easy way to discover your network of friends and colleagues automatically. Office SharePoint Server 2007 mines colleagues from Microsoft Windows Messenger (IM) and Microsoft Office Outlook e-mail. Note that in Outlook, Office SharePoint Server 2007 doesn't simply import all the people who have sent e-mail to the user. Instead, it examines the user’s recent e-mail and uses a ranking algorithm to determine the user’s most likely contacts. Then it shows you the list, and prompts you to approve or reject the colleagues. Office SharePoint Server 2007 considers people with whom you communicate often on important e-mail threads as a strong connection.

The following code example shows how you can use the User Profiles object model to display what people in your workgroup are doing.

// get all of the user’s colleagues
foreach (Colleague colleague in userProfile.Colleagues.GetItems())
{
  colleagueAccountNames.Add(
(string)colleague.Profile[PropertyConstants.AccountName].Value);
}

// get colleagues' usage information from custom data source
List<UsageData> usageData = GetUsageFromColleagues(colleagueAccountNames);

// determine usage of each URL 
Dictionary<string, int> usageCount = new Dictionary<string, int>();
foreach (UsageData usage in usageData)
{
   if (usageCount.ContainsKey(usage.Url))
      usageCount[usage.Url] += 1;
   else
      usageCount[usage.Url] = 1;
}

// sort the results by most used
// render into HTML

See Also

Other Resources

Configuring the User Profile Store Using the Object Model
Accessing the User Profile Store Using the Object Model