230 likes | 320 Vues
One Newsfeed to Rule Them All. Jeff C. Kelly Practice Area Lead, Intranets & Business Productivity non~linear creations. Jeff C. Kelly Practice Lead, Intranets & Business Productivity jkelly@nonlinear.ca 647-776-2556. www.nonlinearcreations.com www.nonlinearcreations.com/blog
E N D
One Newsfeed to Rule Them All Jeff C. Kelly Practice Area Lead, Intranets & Business Productivity non~linear creations
Jeff C. Kelly Practice Lead, Intranets & Business Productivity jkelly@nonlinear.ca 647-776-2556 www.nonlinearcreations.com www.nonlinearcreations.com/blog www.jeffkelly.com
NLC Executive Summary • Founded in 1995 • 75+ full-time specialists • Toronto, Ottawa, Regina, Calgary and Vancouver • New York, NY • Florianopolis, Brazil Microsoft Gold Partner NLC has been a Microsoft partner for more than 5 years. We help our clients effectively deliver their technology solutions and tap into the power of technologies to generate value for their businesses. Microsoft FAST Certified Partner FAST, A Microsoft Subsidiary, is the leading global provider of best-in-class enterprise search technologies for the most demanding applications. Sitecore Worldwide Partner Sitecore has, developed content management systems which allow companies in a simple and manageable fashion to control the content of their websites and intranets while integrating with external IT systems.
| Client logos, client logos everywhere TORONTO | OTTAWA | CALGARY | REGINA | NEW YORK
About me • Consultant, writer, blogger, speaker since the 20th century • ECM, DM, KM, Enterprise Social Computing, Forms/Workflow/Portals/EAI, Enterprise Search … • Former web developer (1995-2000) • Grey backgrounds, <blink> tag, rainbow horizontal dividers, “Under Construction” animated GIFs, etc. • Former SharePoint developer (2000-2007-ish) • Former SharePoint solutions architect (2005-ish-2010-ish) • Current challenge: • managing and growing a SharePoint consulting/ implementation practice across three countries
{Speaker} delivered the presentation {PresentationTitle} at the conference {NameOfConference}.
Activities, activities everywhere • Twitter • LinkedIn • Yammer • SharePoint 2010 • Events • Status Updates • Facebook • Activities • Status Updates • Blogs/RSS • Bacn email
What did he just say? • “Microsoft: SharePoint 2013 Will Suck at Social – Get Something Else!” • http://blog.furuknap.net/microsoft-sharepoint-2013-will-suck-at-social-get-something-else • “I would say as a customer don’t wait for Wave15, unless you’ve got a really slow social media strategy or unless you want to use some really baseline features … I would start going ahead with our platform and Newsgator on top.” --Johnathan Barrett, Microsoft Australia
Make sure newsfeeds are enabled • Activity Feed Timer Job must be enabled and scheduled • New in Service Pack 1: Activity Feeds must be enabled in User Profile Service Application Set up My Sites
Why not web parts or Tweetdeck/Hootsuite ?? • Lots of HTTP traffic back and forth to those public feeds • URLs may be blocked by usage policies • So then why is it okay to retrieve items separately and deliver them to users? • Approved list of sites/feeds (LinkedIn, not Facebook – or maybe Facebook) • Depends on the reason for the policy – if it’s a bandwidth thing, our approach is great • Asynchronous approach – separate server retrieves items in batches – users are reading data from your SP database, not the Web • Don’t have to install/support/worry about desktop apps
Anatomy of a Feed ActivityManager Has a collection of Is an instance of
Steps to inject our own Activities • Register a custom ActivityApplication using a Farm-scoped Feature • Register INTO this ActivityApplication a new ActivityType (‘update’ or ‘tweet’) • Register users’ credentials (per user/external app) in Secure Store • Deploy a Timer Job that will collect and inject Activities into users’ newsfeeds • The Timer Job will call into a custom Gatherer object
How can we “gather” from multiple sites … • … when they all have different schemas?
THIS APPROACH ASSUMES: • We are not tracking any activity other than “said” (status updates, ‘tweets’) • In a non-generic (tailored connection) approach, we can specify the activity (e.g., “Shannon Ryan created a new team site<link to team site>.” • No matter the source (Twitter, LinkedIn, etc.), we are only grabbing three fields and mapping them to our generic ones: • Display name or handle of the updater • URL to the updater’s profile page (e.g., twitter.com/shannonryan) • Body of the update or tweet
THIS APPROACH ASSUMES (cont’d): • THIS APPROACH ASSUMES (cont’d): • Any status update is called a ‘tweet’ for the purposes of this presentation
Steps to create a multi-source hub • InfoPath/aspnet registration form for employees • Collect form-based credentials and store them in Secure Store (“Individual”) • For oAuth or other ticket/secret-based authentication – user must authenticate and provide the secret for you to store in SSS
Resources • http://weshackett.com/2011/06/extending-the-activity-feed-with-enterprise-content/ • http://archive.msdn.microsoft.com/activityfeedsconsole