There are three different ways to get colleagues added into your profile.
1. AD profile import, from Organization tab
2. Users can manually add colleagues
3. Outlook Social Connector will send colleague suggestions based on communication history.
Colleague information get stored in [Profile DB].dbo.UserColleagues table
Timer Jobs:
User Profile Change Job
Activity Feed Job
My Site Suggestions Email Job
Colleague compilation is dependent on “User Profile Change Job”
The ‘Activity Feed Job’ will update the ActivityEventsPublsihed and ActivityEventsConsolidated table with the recent updates from ‘UserProfileEventLog’ table to display the colleague added event in ‘Recent Activities’ and other users who tracks the same event in ‘My Newsfeed’.
My Site Suggestions Email Job - Sends out emails with colleague and keyword suggestions to people who don’t update their profiles often, prompting them to update their profiles, scheduled for every 15th of the month.
View Suggestions
Colleagues tab in profile page will display ‘Add’ and ‘View Suggestions’ link to add more colleagues.
Stored procedures:
exec membership_getColleagueSuggestions
exec profile_suggestions_get
Outlook Social Connector
C:\Users\<loginname>\AppData\Local\Microsoft\Outlook\spscoll.dat
Microsoft SharePoint server colleague import Add-in
This Add-in allows Microsoft SharePoint server to import colleague suggestions based on your outlook content.
Troubleshooting Tips:
Common Issue
Users are unable to add their colleagues.
Error Message
User ‘Eleven’ name is resolved and he has permission to browse the SharePoint root site.
How it works
When you try to add colleague, first it executes a stored procedure against MySite Content DB to get user information from tables like UserInfo and Groups.
These tables are getting updated when user creates his mysite or accessing his profile page for the first time.
If there is NO information about a user then it initiates next Stored Procedure in "Profile DB", this SP gathers required input parameters from multiple tables like DNContactLookup, UserProfile_Full ... Table for execution ….
If there is NO information about the user in “Profile DB” as well, then it returns error message.
Required:
So basically either one of the following must be done by the user …
If the below Query returns any result, adding colleague would be successful for the user ‘eleven’
use [MySite_Content_8080]
select * from UserInfo nolock where tp_Login like '%eleven%'
use [Profile DB]
select * from DNContactLookup nolock
select * from UserProfileValue nolock where PropertyVal='eleven'
select * from UserProfile_Full nolock where NTName = 'four\eleven'
Membership
Memberships haven’t changed significantly since MOSS 2007.
The process is relatively straightforward:
· Users are added to the SharePoint site in the default Members Group.
· This action updates the EventCache for the Content Database.
· The SiteSynch table (Profile DB) holds the Change token for this action.
· The User Profile to SharePoint Full Synchronization polls the SiteSynch table for the ChangeLog token.
· The Content database’s EventCache table is read (looking for user changes).
· Users are updated (deleted or added) to the UserMembership table.
Timer Job
User Profile to SharePoint Full Synchronization
Synchronizes user information from the user profile application to SharePoint user and synchronizes site memberships from SharePoint to the user profile application, hourly by default.
Micro-Blogs and Status
Micro-blogs (also known as Status Messages) are tied to Activity Feeds.
The message is easy to set, and is a quick update from the owner.
It reflected to the browser and in colleague newsfeeds.
This data will be directly updated into ‘UserProfileEventLog’ table, it will be reflected immediately in profile page.
Recent Activities and Newsfeed will get updated after the ‘Activity Feed Job’ ran.
No timer job required to reflect the data in profile page.
‘Activity feed job’ need to run to reflect the status change event update in Acvities.
Emails
Emails will be sent whenever colleagues are added, and Note board updates are made to track a colleague. These emails are immediate.
It sends out emails with colleague and keyword suggestions to people who don’t update their profiles often, prompting them to update their profiles, runs monthly on the 15th.
This email contains, full text of the Note board message, link to a user profile, unsubscribe link …
Organizations
Organizations are hierarchical structures native to a corporation.
SharePoint is capable of understanding and working with the Organization data in Active Directory.
There is a feature called ‘Organizational profile’ which will help to you create a hierarchical structure manually.
Basically the user’s manager and direct report information used to build basic Organization hierarchy.
Interest
Interests are another feature monitored and updated by the Activity Feed.
They are exposed in the GUI in the Newsfeed section where the My Interests link appears.
Interest is an ‘Open Vocabulary’, that is, it doesn’t restrict users to select an existing value. If the value exits, the user can select it, and if not, add it. This addition updates the Term Store (see below):
Activity Feed Job: updates the My Newsfeed section when there is new interest added
In the database, Interests are listed in the Profile DB in the UserInterests Table. But are also stored in the UserProfileValue table with the rest of the User Profile Properties.
Extremely helpful information in this post and the others like it. Wondering what happens in the Colleagues list if a profile is deleted. E.g. User A has User B as a colleague. User B leaves the company and their profile has been removed. Will User A's colleague list get updated to remove User B at any point?
As you have asked user A will not get any notification. Instead when User B got deleted thru User Profile Application, it will be reflected all links, I mean User B won't dispalyed in any other user's profile.
What is the criteria for "people who don't update their profile often"?
Excellent info.
We're getting a delivery failure report when we added a colleague in My Site.Expected for that colleague to received an email notification but instead
we get a "Delivery Failure Report"
Your message: <name> has added you as a colleague
was not delivered to: <colleague's email address>
because: 550 5.7.0 Sender Policy Violation
Any idea?