Samstag, 15. November 2014

Delve and the Office Graph for IT-Pros & Admins

There are a couple of really good post from Richard Dizerega, Elio Struyf, Mikael Svenson  and Waldek Mastykarz. But everyone is talking about dev. stuff or end-user perspective.
In this article I will show the idea of Delve, the Graph and how it is working and what can be done from an IT-Pro / Administrator perspective.

Basics

We can enable or disable Delve and control access to the Office graph in SharePoint Online administration. To do this we had to navigate to Admin > SharePoint > Settings. Under Office graph, select one of the following options:
-          Don’t allow access to the Office graph

-          Allow access to the Office graph
Delve can also be disabled or enabled per user. To do this the user must go to Office 365 > Delve > Delve settings.
To store this setting we have a new property in User Profile Store: OfficeGraphEnabled.
The OfficeGraphEnabled property is only used when a user actively turns off Delve for themselves.
The property also results in a crawled and managed property which can be used in Search.
So the Administrator can query that property in Search to find out all people within his organization who turned off Delve.
This can be useful to get an overview about Delve usage in you organization.
We have several other properties in the User Profile service used by Delve.
·         SPS-UserType
·         SPS-HideFromAddressLists
·         SPS-RecipientTypeDetails

The SPS- properties are there to help the Office graph to determine if user in Exchange Online is a non-person entity such as a meeting room.
Users aren’t able to set these properties directly in their SharePoint Online profiles.

Working with Delve for IT-Pro´s and Admin

From IT-Pro & Administrator perspective Delve is a kind of service we have to write code to tweak it. Actually there are no out-of-the-box WebParts etc. we can use to work with Delve.
But we have a bunch of preconfigured code snippets, examples, SharePoint Apps and tools which can be very useful also for Admins and IT-Pros.


SharePoint 2013 Search Query Tool

The SharePoint 2013 Search Query Tool support with version 2.2 also GQL (Graph Query Language). For more details about GQL follow this link: http://msdn.microsoft.com/en-us/office/office365/howto/query-Office-graph-using-gql-with-search-rest-api


Office graph queries within your SharePoint search center

Elio Struyf did a great job with his code sample to use SharePoint search center to visualize Graph Queries.
All you need is a Script WebPart, a Search Box WebPart and a Search Result Webpart. The script is overriding the default Srch.U.fillKeywordQuery function, manipulating some parameters and doing a call to the original fillKeywordQuery function. The scripts and details can be found here: http://www.eliostruyf.com/office-graph-search-queries-sharepoint-search-center/
The result looks like this:
We can use this script to fire queries against the Graph. Modifying the “Me or Actor ID” field give us an option to impersonate the query. The Graph always respects your privacy so we cannot see private object from another person. Details see here:  Privacy in Delve and Office Graph
But we can see all public objects for a given Actor ID to verify our security concept works well.
In my example I fire the query as user “Oliver Hardy”:


SharePoint Apps around Delve

In the SharePoint App store we can find a bunch of useful Apps around Delve and the Graph. Most of them are from Mavention / my MVP colleague Waldek Mastykarz. To test Delve and work with the Graph the most useful is the Office Graph Query Tester
This app showes the query which is used to get a result. This query can then be used and modified in the SharePoint 2013 Search Query Tool.


SharePoint 2013 Search API Results Webpart

I have a codeplex project for an experimental SharePoint 2013 Search API Results Webpart. This WebPart is visualizing the JSON result comming from search service as a simple list. Modifying the query in the script you can use this script to show Graph results where ever you have to.
Here I use the script in a Script WebPart to visualize the following query: ACTOR(ME)
This can be useful to show Graph results as part of you intranet landing page which is maybe not SharePoint etc.

Further information and events

·         More and further information about Delve can be found at IT-Unity: http://www.itunity.com/delve
·         IT-Unity also hosts a survey about delve: First Impressions of Office Delve
·         and there is a upcoming webinar series about Delbe at IT-Unity homepage: http://www.itunity.com