building solutions with office graph
TRANSCRIPT
Online Conference
June 17th and 18th 2015
WWW.COLLAB365.EVENTS
Building Solutions with Office Graph
André Vala|create|it|
WWW.COLLAB365.EVENTS
André Vala
Email: [email protected]: atomicveeLinkedIn: /in/andrevalahttp://blogit.create.pt/andrevala
SharePoint Solutions Architect at Create IT (Portugal)Working with SharePoint for 9 yearsRegular speaker in Microsoft and Community eventsMember of Office 365 PT Member of SharePoint User Group PT
Contact Details
WWW.COLLAB365.EVENTS
DisclaimerSome of the content presented in this session refers to preview features which can be changed before becoming generally available. While in preview these features should not be used in production systems.
WWW.COLLAB365.EVENTS
Arthur C. Clarke
Any sufficiently advanced technology is indistinguishable from magic
WWW.COLLAB365.EVENTS
Office Grap
h
Office
Delve
GQL Querie
s
Roadmap
Unified API
Next
Steps
Agenda
WWW.COLLAB365.EVENTS
Office Graph
WWW.COLLAB365.EVENTS
GraphMathematical concept used in computer science as a data structure, composed of nodes connected by edges. An edge can have a direction and an associated value.
AC
BD
WWW.COLLAB365.EVENTS
Manager
Direct report
Works with
Emailed to me
Shared with me
Presented to me
Liked by me
Viewed by me
WWW.COLLAB365.EVENTS
Manager
Direct report
Works with
Emailed to me
Shared with me
Presented to me
Liked by me
Viewed by me
WWW.COLLAB365.EVENTS
Manager
Direct report
Works with
Emailed to me
Shared with me
Presented to me
Liked by me
Viewed by me
Commented on Works
with
Modified by Alan Brewer
Works with
Modified by Jim Geist Emailed to
me
Trending aroundNancy Anderson
Emailed to me
Trending aroundJenny Gottfried
Modified byJenny Gottfried
Modified byJenny Gottfried
Commented on
Liked byJim Geist
WWW.COLLAB365.EVENTS
70 PETABYTESOF ENTERPRISE DATA
8 BILLIONRELATIONSHIPS
4 TRILLIONNODES
60 BILLIONATTACHMENTS
25 PERCENT RELATIONSHIPS
ARE PERSON-TO-PERSON
850 MILLIONMEETINGS
PER MONTH
Office 365
WWW.COLLAB365.EVENTS
Content and signals from all of O365 auto-populate Office Graph insights.
EXCHANGEFILES YAMMERSHAREPOINT SOCIALLYNC
Insights are calculated with machine learning
for proactive and intelligent experiences
Office Graph Insights
WWW.COLLAB365.EVENTS
Messages sent to the Office Graph when users act on some of the components of Office 365• SharePoint Online, Exchange Online, Office Delve,
One Drive for Business, Azure Active Directory Soon, it will be possible to inject signals from
external systems• Yammer, Dynamics CRM, Salesforce
Signals
WWW.COLLAB365.EVENTS
Office Delve
WWW.COLLAB365.EVENTS
Office Delve Originally named Oslo Experience Search & Discovery experience Based on the Office Graph Recently added to the Office 365
family Designed to be the personal
homepage on Office 365
WWW.COLLAB365.EVENTS
Office DelveWaffleButton
Delve App
WWW.COLLAB365.EVENTS
Home PageContents that might interest me
People I work with
Card
WWW.COLLAB365.EVENTS
Me PageContents directly related to me Trending
around me
WWW.COLLAB365.EVENTS
Profile PageUser Profile (from Active Directory and SharePoint)
Profile information
My place in the organization
structure
WWW.COLLAB365.EVENTS
BoardsShows cards tagged with a common term
Similar concept to Pinterest
Boards are public and can be used by multiple persons
WWW.COLLAB365.EVENTS
Office DelveDEMO
WWW.COLLAB365.EVENTS
Demo Summary Accessing Office Delve Personalized Search & Discovery experience Home Page Me Page (Activity and Profile) Cards and Boards Working With and Trending Around Permissions
WWW.COLLAB365.EVENTS
Queries with GQL
WWW.COLLAB365.EVENTS
GQL = Graph Query Language Language to query the Office Graph Similar syntax to FQL (FAST Query
Language) Used by Office Delve Works on top of the Search REST API
WWW.COLLAB365.EVENTS
Core Concepts
Manager
Direct report
Works with
Emailed to me
Shared with me
Presented to me
Liked by me
Viewed by me
Nodes
Edges
WWW.COLLAB365.EVENTS
Core Concepts
Actor ObjectEdge
Source nodeActorId: int
RelationshipActionType: intTime: stringWeight: int
Target nodeObjectId: int
WWW.COLLAB365.EVENTS
Sample REST Query
https://<tenant URL>/_api/search/query?QueryText='*'
&Properties='GraphQuery:actor(21894957\,action\:1033)'
&SelectProperties='DocId,Title'
&RowLimit=100
Content search query (KQL)
Properties to return for each result Maximum result count (default
is 10)
Office Graph query (GQL)
WWW.COLLAB365.EVENTS
GQL ExamplesACTOR(<ActorId> [, filter])Actor is the only operator in GQLACTOR(ME)Items related to the current user
ACTOR(1234, action:1003)Items modified by user 1234ACTOR(1234, OR(action:1001, action:1003))Items modified or viewed by user 1234ACTOR(ME, AND(action:1003, time:datetime(2015-10-07)))Items modified on October 7th 2015 by the current userAND(ACTOR(1234, action:1003), ACTOR(5678, action:1003))Items modified by user 1234 and by user 5678
WWW.COLLAB365.EVENTS
Available ActionsAction Type Description Visibili
tyID Weight
PersonalFeed The actor's personal feed as shown on their Home view in Delve.
Private 1021
A sequence number.
Modified Items that the actor has modified in the last three months.
Public 1003
Number of modifications.
OrgColleague Everyone who reports to the same manager as the actor. Public 1015
Always 1.
OrgDirect The actor's direct reports. Public 1014
Always 1.
OrgManager The person whom the actor reports to. Public 1013
Always 1.
OrgSkipLevelManager
The actor's skip-level manager. Public 1016
Always 1.
WorkingWith People whom the actor communicates with or works with frequently.
Private 1019
A relevance score.
TrendingAround Items popular with people whom the actor works with or communicates with frequently.
Public 1020
A relevance score.
Viewed Items viewed by the actor in the last three months. Private 1001
The number of views.
WorkingWithPublic A public version of the WorkingWith edge. Public 1033
Number of modifications.
WWW.COLLAB365.EVENTS
Get Actor ID
https://<tenant_address>/_api/search/query?
Querytext='Username:alexd'
&SourceId='b09a7990-05ea-4af9-81ef-edfab16c4e31'
&SelectProperties='UserName,DocId'
Username to search for
People Search Result Source ID
DocId is the property where the ActorId will be returned
WWW.COLLAB365.EVENTS
Sorting
https://<tenant_address>/_api/search/query?Querytext='*'
&Properties='GraphQuery:ACTOR(ME\, action\:1003),
GraphRankingModel:{"features"\:[{"function"\:"EdgeTime"}]}'
&RankingModelId='0c77ded8-c3ef-466d-929d-905670ea1d72'
Required when using the
GraphRankingModel
Allowed options:• EdgeTime• EdgeWeight
Results ordered by modification date
WWW.COLLAB365.EVENTS
Queries with GQLDEMO
WWW.COLLAB365.EVENTS
Demo Summary Invoking the Search REST API to get the
Actor ID Invoking the Search REST API with GQL• Items related to the current user• Items related to another user• Using the TrendingAround action• Using the WorkingWith action• Get colleagues ordered by proximity
WWW.COLLAB365.EVENTS
Unified API
WWW.COLLAB365.EVENTS
Unified API Your App
USERS FILES MAIL CALENDAR TASKSGROUPS
graph.microsoft.com
Insights and relationships from Office Graph
All of O365AuthenticationFederation
WWW.COLLAB365.EVENTS
Using the Unified APIhttps://graph.microsoft.com/beta/<tenant name>Currently, the Unified API is still in Preview hence the /beta URL.https://graph.microsoft.com/beta/meReturns the profile of the current user
https://graph.microsoft.com/beta/contoso.com/users/[email protected] the profile of the user [email protected]
https://graph.microsoft.com/beta/me/managerReturns the manager of the current user
https://graph.microsoft.com/beta/me/directReportsReturns the persons that report directly to the current user
https://graph.microsoft.com/beta/contoso.com/users/[email protected]/filesReturns the files of the user [email protected]
WWW.COLLAB365.EVENTS
Using the Unified APIhttps://graph.microsoft.com/beta/me/trendingAroundReturns the items related to the current user
https://graph.microsoft.com/beta/me/workingWithReturns the persons that actively collaborate with the current user
WWW.COLLAB365.EVENTS
Unified APIDEMO
WWW.COLLAB365.EVENTS
Demo Summary Using the Unified API
• Retrieve items related to the current user• Retrieve items related to another user• Retrieve the manager of the current user• Retrieve the items trending around a user• Retrieve the people that work with a user
Tools• Graph Explorer
https://graphexplorer2.azurewebsites.net/• Office 365 API Sandbox
https://apisandbox.msdn.microsoft.com/
WWW.COLLAB365.EVENTS
Roadmap
WWW.COLLAB365.EVENTS
Evolution of Delve
Office Graph
External
Content
+People Group
sOrganization
WWW.COLLAB365.EVENTS
Extensibility
WWW.COLLAB365.EVENTS
Roadmap
REST / OData APIClient SDKsType ExtensibilityConnectorsCustom AnalyticsNotificationsLicensing
New User ProfileInline ConversationsPraiseGroup InsightsOrganizational Insights
SOON
NEARFUTURE
FUTURE
SOON
SOON
NEARFUTURE
NEARFUTURE
FUTURE
FUTURE
FUTURE
Office Graph
Office Delve
SOON
NEARFUTURE
WWW.COLLAB365.EVENTS
Next Steps
WWW.COLLAB365.EVENTS
Next StepsLearn about Office Graphhttp://dev.office.com/officegraph
Create apps with the Office 365 REST API and Unified APIWorkingWith and TrendingAroundhttps://msdn.microsoft.com/en-us/office/office365/api/api-catalog
Test the Office Graph preview APIhttp://msdn.microsoft.com/en-us/library/office/dn783218(v=office.15).aspx
WWW.COLLAB365.EVENTS
Stay tuned for more great sessions …
Thanks for watching!