All you need to know about WMS

Preview:

DESCRIPTION

Maxim Zhvirblya and Natallia Makarevich have presented on Belarus SharePoint User Group meetup and shared their experience in configuring, implementing, and working with Work Management Service Application in SharePoint 2013.

Citation preview

All you need to know about

Work Management Service

Maxim Zhvirblya

Natallia Makarevich

Belarus SharePoint User GroupMinsk 2014

Agenda

OverviewHigh-level architectureWorking demoWMS for developersExchange integrationOur experience

About us:

Maxim ZhvirblyaSenior Software Maintenance EngineerBass guitar player

Natallia MakarevichLead Software EngineerDancer

Overview

Work Management Service ApplicationAggregate tasks to a central locationon a SharePoint server from

ExchangeProject ServerSharePoint

Overview

Users view and track their to-dos and tasks

Tasks in users personal site

Tasks can sync to Outlook

Provider model (possible integrations in the future)

Overview

Manage sites to display tasks from

Overview

Manage sites to display tasks from

Overview

OOB feature which goes with My Site

Dependencies: Search Service Application User Profile Service Application

• Configuration

High level architecture

Adding own task providers in not supported at the moment.

Tasks sync architecture

Tasks sync architecture

SharePoint/Project Server:Refresh every 5 minutesNo timer jobs

Exchange: Every minuteJob "Work Management Synchronization with Exchange"

Location and hints

Locations - where providers are looking for new tasks and get the updates.Hints - collection of locations for providers.Personal tasks - tasks on My Site w/o locations.Promotion - personal task can be promoted to location (only once).

Aggregation Tasks List

Actually, My Tasks is not a list...Welcome WmaAggregatorList_User !

Aggregation Tasks List

WMA aggregates tasks from SharePoint lists created in SharePoint Server (internally called TasksWithTimelineAndHierarchy-171) plus upgraded SharePoint lists from earlier versions of SharePoint (internally called Task-107 or GanttTasks-150).

Additionally, WMA aggregates all task items (whether or not in a SharePoint list) created in a library that supports the task content type. For more information, see: Turn on support for multiple content types in a list or library.

Note: The Task content type should be marked as the Default Content Type for your custom list in order for the tasks to be aggregated by the service.

How to configure it properly (to the end)

create Work Management Service ApplicationStart ServiceAdd wms account to UPS full controlGrant My Site app pool acount access to content DBs

$w = Get-SPWebApplication -identity http://<WebApplication>$w.GrantAccessToProcessIdentity("<Domain>\<Username>")

DEMO: how it works

WMS for DEVS

Available APINo REST endpointsSSOM

Microsoft.Office.Server.WorkManagement.dll

CSOMMicrosoft.SharePoint.WorkManagement.Client.dll

WMS for DEVS

Querying tasks listCreate/Edit/Delete tasksInitiate provider refreshPin/Unpin from timeline

WMS for DEVS

Querying tasks

Filters

CustomAttributeFilter FieldFilter KeywordFilter LastModifiedDateRangeFilter

LocationFilter

PinnedFilter

PrivacyFilter

WMS for DEVS

• <sp:TaskListRefreshControl runat="server"></sp:TaskListRefreshControl>.

• Querying active tasks.

• Grouping tasks based on the location type: site collection templates and personal tasks.

Our Custom Implementation

WMS for DEVS

Custom implementationFollow guidelines when configuringPlan integration with Exchange 2013Use provided APIWmaAggregatorList_User is not customizableDoes not support App Authentication

Tasks aggregation and Exchange

Pre-requisites• Exchange Server Web Services API on SharePoint Servers

msiexec /i EwsManagedApi.msi addlocal="ExchangeWebServicesApi_Feature,ExchangeWebServicesApi_Gac"

IISReset

DO NOT PUT Microsoft.Exchange.WebServices.dll into GAC (this is strongly forbidden)

• Add Exchange certificate to trust in SP

• establish an OAuth trust on the Exchange Server.

\Configure-EnterprisePartnerApplication.ps1 -ApplicationType Sharepoint -AuthMetadataUrl https://<SP_FQDN>/_layouts/15/metadata/json/1

Tasks aggregation and Exchange

Synchronization from SharePoint to Outlook

After enabling synch to Outlook, all SP tasks will appear in Outlook folder in 1 minute

Tasks aggregation and Exchange

Tasks appearing in Outlook folders

Tasks aggregation and Exchange

Synchronizing tasks created in Outlook with SharePoint

All new Outlook tasks will appear on “My Tasks” page on user’s personal site in 5 minutes under Personal tasks

Tasks aggregation and Exchange

Good to know!If tasks synchronization was configured and personal site has been moved or re-created for this user, synchronization for these tasks will stop working.If Outlook folder corresponding to the SharePoint site has been renamed, synchronization for these tasks will stop working.

Our Experience

Configuration troublesCustom implementationOdds: not shown tasksProduction server migrationJuly CU side-effect: permissions

Questions?

Thank you!