Extending the My Site activity feed with external blog posts

Preview:

DESCRIPTION

Extending the My Site activity feed with external blog posts. Dutch Information Worker User Group 25 October 2012. Who is Bram?. SharePoint Architect @ Macaw Microsoft Certified Master SharePoint Server 2010 http:// bramdejager.wordpress.com @ bramdejager bram.de.jager@macaw.nl. - PowerPoint PPT Presentation

Citation preview

Extending the My Site activity feed with external blog posts

Dutch Information Worker User Group25 October 2012

You’re the pilot. Take Control.

SharePoint Architect

Bram de Jager

SharePoint Architect @ MacawMicrosoft Certified Master SharePoint Server 2010http://bramdejager.wordpress.com @bramdejagerbram.de.jager@macaw.nl

Who is Bram?

Poll• Who had dinner?• Who are developers?• Who developed on social solutions?• Who played around with the Activity Feed API?• Who extended the Activity Feed for customer

based solutions?

Agenda• User Profiles and My Site• Activity Feeds• Extending the Activity Feed• Demo

USER PROFILES AND MY SITEExtending the My Site activity feed with external blog posts

User Profiles and My Site• User Profiles

– User Profile Service Application– Tight relation with MMS, BCS and Search– My Site Host (mandatory) provides My Profile and My

Newsfeed pages• My Site

– Personal Site Collection (personal storage)– “Content” tab on My Profile page

Logical Architecture Components

My Site Host My Site Site Collections

My Web Application Web Application

UPA MMS Search Service Applications

My Networ

kPages / Navigation

MyProfile

MyConten

t

ACTIVITY FEEDSExtending the My Site activity feed with external blog posts

Activity Feeds• Aggregates colleague activity as feed• Natively displays user profile changes, tagging

and notes activity• Security trimmed, you can only see what you are

allowed to see• Can be extended via Activity Feed API

Data aggregation• Two types of activities

– User profile changes such as job title, colleague changes, shared interest and anniversary reminders

– Social feedback events such as tags, notes, ratings and personal blog posts

• Gathering by timer job and broadcasted to colleagues

Timer Jobs• Activity Feed job (Hourly)• Pre-computes activities to be shown in users' activity

feeds.• Aggregates user profile changes and social feedback

• Activity Feed Cleanup job (Daily)– Cleans up pre-computed activities used in activity

feeds which are older than 14 days. This job does not affect the User Profile Change Log.

Before and after Service Pack 1 (SP1)• Enable Activity Feed job

– RTM: disabled by default– SP1: enabled by default

• Additional setting in UPA » Setup My Sites

Activity Feed types• Consolidated feed

– Activities from everything I trackhttp://<my>/_layouts/activityfeed.aspx?consolidated=true

• Published feed– My activities

http://<my>/_layouts/activityfeed.aspx– Activities by publisher

http://<my>/_layouts/activityfeed.aspx?publisher=<accountname>

Consolidated feed• Activities from everything I track

Activities I am following…• Activity feed depends on interests defined in Edit

Profile page• Custom activity applications will be shown here

as well

Published feed• Account related activities / my activities

EXTENDING THE ACTIVITY FEEDExtending the My Site activity feed with external blog posts

Extending activity feed• Why extend the activity feed?

– ECM activities within SharePoint environment– xRM/CRM activities– External data (WordPress, Facebook, Twitter)

• Activity Feed API for extending the activity feed– Microsoft.Office.Server.UserProfiles.dll– Microsoft.Office.Server.ActivityFeed namespace– API deprecated in SharePoint 2013!

Activity feed architecture

Activity Feed - Profile DB

Change log - Profile DB

Social database

Custom Timer Job

Custom gatherer

Activity Timer JobProfile and social

gatherers

Activity Feed

Activity Feed classesActivity

Application

Blog Activity Application

Activity Type

Blog Post Added

Comment Added

Activity Template

Type Display

Single Value Template

Multi Value Template

Activity Event

Event

DEMO OVERVIEWExtending the My Site activity feed with external blog posts

Blog Activity Application

Activity Feed - Profile DB

Change log - Profile DB

Social database

Custom Timer JobActivity Timer JobProfile and social

gatherers

BlogPostTimerJob

Activity Feed

Custom gathererBlogPostGatherer

Activity Templates• Type Display

– ActivityFeed_Blog_BlogPostAdded_Type_Display– “Posted a new blog post”

Activity Templates• Single Value Template

– ActivityFeed_Blog_BlogPostAdded_SV_Template– “{Publisher} has written a new post {Link} on blog

{Link2}.”

Activity Templates• Multi Value Template

– ActivityFeed_Blog_BlogPostAdded_MV_Template– “{Publisher} has written {Size} new posts on blog

{Link}. <br/> {List}”

DEMO TIME!!Extending the My Site activity feed with external blog posts

Recap: Key Points• Activity Feed types

– Consolidated feed– Published feed

• Extending the activity feed– Don’t just add everything, like Twitter (overload

database)– Because you can, doesn’t mean you must!

Resources• MSDN

– User Profiles and Social Data Code Sampleshttp://msdn.microsoft.com/en-us/library/ff512773.aspx

– Microsoft.Office.Server.ActivityFeed namespace • Wes Hackett’s blog

– http://weshackett.com • SharePoint Guidance

– SharePoint Logger– http://spg.codeplex.com

You’re the pilot. Take Control.

Bram de Jagerbram.de.jager@macaw.nl

Macaw Beechavenue 140 1119 PR Schiphol-Rijk +31 20 8510 510 www.macaw.nl | www.cloudaviator.nl

Recommended