Top Banner
Social Architecture of SharePoint Paul J. Swider CTO Level: Intermediate
44

Social Architecture of SharePoint 2013 for Developers

Dec 05, 2014

Download

Technology

Paul Swider

Short version for Sharing the Point South America
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Social Architecture of SharePoint 2013 for Developers

Social Architecture of SharePoint

Paul J. SwiderCTO

Level: Intermediate

Page 2: Social Architecture of SharePoint 2013 for Developers
Page 3: Social Architecture of SharePoint 2013 for Developers

Agenda Community Sites

Template Creation and ManagementDiscussions and ModerationDiscovery and MembershipReputation Model

Page 4: Social Architecture of SharePoint 2013 for Developers

Agenda (Continued) My Site

Microblogging, statusFollowingTasks

OM and Programming API’s

Page 5: Social Architecture of SharePoint 2013 for Developers

MY SITE

Page 6: Social Architecture of SharePoint 2013 for Developers

My Site Host – Home Page

Page 7: Social Architecture of SharePoint 2013 for Developers

Profile (person.aspx)

Page 8: Social Architecture of SharePoint 2013 for Developers

My Site Hubs

• Hubs are found in global navigation• Newsfeed (security trimmed)

– Following – Everyone– Mentions

• SkyDrive– Recent Documents on Office 365

• Sites

Page 9: Social Architecture of SharePoint 2013 for Developers

Search Posts and Feeds

• Can be used instead of REST• Developer topics

Page 10: Social Architecture of SharePoint 2013 for Developers

Following Sites and People

Page 11: Social Architecture of SharePoint 2013 for Developers

• Following Infrastructure is the same as 2010– Stored in User Profile Database– 2 Million Items per UP Database

• Integration with Consolidated Feeds Web part

• People can see who are their followers

Following People

Page 12: Social Architecture of SharePoint 2013 for Developers

• Ability for users to receive system notifications for a site

• Site conversations and activities are received in consolidated feeds web part

• Site Admin can control at library level

Following Sites

Page 13: Social Architecture of SharePoint 2013 for Developers

• Track and get information on document changes and activities

• When a document or metadata changes new system feed is posted– People following get notified– Not meant to replace alerts

Document Following

Page 14: Social Architecture of SharePoint 2013 for Developers

Document Call Out

Page 15: Social Architecture of SharePoint 2013 for Developers

• A single aggregated view of all SharePoint, Exchange and Project task items

• Work Management Service Application• Aggregated tasks can be synced with

Exchange

My Tasks

Page 16: Social Architecture of SharePoint 2013 for Developers

My Site, Profile Data

• Data stored in personal site and velocity cache• Two lists: Microfeed list and Social List• Profile database still used for following people and tags

Page 17: Social Architecture of SharePoint 2013 for Developers

• Used to store user generated activities• Users control system activities which

show as activity feeds• User activity available to all authenticated

users, some system activities are security trimmed

• New events trigger a new item in the list and the Velocity Cache

Microfeed List

Page 18: Social Architecture of SharePoint 2013 for Developers

Distributed Cache in SharePoint 2013

Page 19: Social Architecture of SharePoint 2013 for Developers

• Aggregation of most social activities• Doesn’t work without a My Site• Can create limited social experience

Social List

Page 20: Social Architecture of SharePoint 2013 for Developers

COMMUNITY SITES

Page 21: Social Architecture of SharePoint 2013 for Developers

Communities

Page 22: Social Architecture of SharePoint 2013 for Developers

Communities Design

Page 23: Social Architecture of SharePoint 2013 for Developers

• Community site template Id=62• CommunityEventReceiver fires when activated• Asynchronous updates - beware of save

conflicts• The Community Site provides a forum

experience and reputation model. It does not expose a specific API– Use SharePoint site and list APIs directly to extend its

functionality– Discussion Board Template Type = 108

Community Template

Page 24: Social Architecture of SharePoint 2013 for Developers

Categories

Page 25: Social Architecture of SharePoint 2013 for Developers

• Ratings and comments not in socialdb• Reputation is based on Community silos• Can use Feature Stapling to add

reputation functionality across the communities

Ratings and Reputation

Page 26: Social Architecture of SharePoint 2013 for Developers

• Points• Configurable• Gift Badges

Badges

Page 27: Social Architecture of SharePoint 2013 for Developers

OM AND API FOR MY SITE AND SOCIAL

Page 28: Social Architecture of SharePoint 2013 for Developers

My Site Social API

• Working with social feeds• Following people and content (documents, sites, and tags),

• Working with social data• Working with user properties. • Add social features to a custom app or extend the social features

Page 29: Social Architecture of SharePoint 2013 for Developers

Extending Social Features

Page 30: Social Architecture of SharePoint 2013 for Developers

API’s for Social Features

Page 31: Social Architecture of SharePoint 2013 for Developers

2013 App Model

Page 32: Social Architecture of SharePoint 2013 for Developers

App Permission Scopes

Page 33: Social Architecture of SharePoint 2013 for Developers

UserProfiles and People• New client-side UserProfile Object

• Provides methods you can use to create a personal site

• Does not contain the user properties that the server-side UserProfile object contains.

• Use the PersonProperties object and its UserProfileProperties property for Server Side

Page 34: Social Architecture of SharePoint 2013 for Developers

New Objects for People• SocialActor object represents users (and

other entities) for feed and following activities• SPSocialActor used for server OM

• PersonProperties object contains general user properties and user profile properties

• PersonProperties is the primary API for accessing user properties from client-side code

Page 35: Social Architecture of SharePoint 2013 for Developers

• CSOM: SocialFollowingManager• JSOM: SocialFollowingManager• REST:

http://<mySiteUri>/_api/social.following• SSOM: SPSocialFollowingManager

Instance of Following Manager

Page 38: Social Architecture of SharePoint 2013 for Developers

• http://<mySiteUri>/– Maps back to My Site host

• http://<siteUri>/– Any site within the scope of the User Profiles service

application

• _Api always on the right of the path

REST API

Page 39: Social Architecture of SharePoint 2013 for Developers

REST Services for Social Features• Social features in the REST service• http://<mySiteUri>/_api/social.feed• http://<mySiteUri>/_api/social.following• http://<siteUri>/_api/

SP.UserProfiles.PeopleManager

Page 40: Social Architecture of SharePoint 2013 for Developers

• HTML and JavaScript control• Supports Claims• Same Properties as Server Control• SPClientPeoplePicker

Client-side People Picker

Page 41: Social Architecture of SharePoint 2013 for Developers

• // Get the people picker object from the page.

var peoplePicker = this.SPClientPeoplePicker.SPClientPeoplePickerDict.peoplePickerDiv_TopSpan;

• // Get information about all users.

var users = peoplePicker.GetAllUserInfo(); var userInfo = ''; for (var i = 0; i < users.length; i++) { var user = users[i]; for (var userProperty in user) { userInfo += userProperty + ': ' + user[userProperty] + '<br>'; } } $('#resolvedUsers').html(userInfo);

Code for People Picker

Page 42: Social Architecture of SharePoint 2013 for Developers

Deprecated Features

• Microsoft.Office.Server.ActivityFeed

• Activityfeed.aspx replaces with REST API

• Recent Activities Web Part replace with Newsfeed web Part

Page 43: Social Architecture of SharePoint 2013 for Developers

Deprecated Features

• Some Activity events

• SocialFollowingManager replaces much of Colleagues

• Organization Profiles

• My Links

Page 44: Social Architecture of SharePoint 2013 for Developers

THANK YOU!

Questions?

[email protected]

@pswider