Introducing Office Web Apps as a Tool for Developing Content Rich Applications

Post on 02-Jun-2015

1.903 views 3 download

Tags:

description

Office Web Apps was introduced with SharePoint 2010 as a service used to provide browser-based access to Office documents. Office Web Apps (OWA) 2013 modifies the service architecture significantly, enabling the exposure of document interactions through a browser to be customized and expanded within SharePoint as well as outside of SharePoint. With this architecture change, we need to review the capabilities from a new perspective and question how we can best leverage this service. To start, we need to understand the new architecture changes. From there, how do we manage the health of OWA and apply updates? How do we leverage OWA to build additional capabilities into our applications? How do we expand OWA capabilities? What are the differences in OWA on-prem and OWA Office 365? In this session, we'll be answering these questions and more. We'll look at the new 2013 architecture and understand how to deploy the service on-prem and manage it properly. We will then look at how to extend the service and take advantage of the new capabilities in both our SharePoint and non-SharePoint solutions. You'll leave the session with a deeper understanding of OWA capabilities, and ready to incorporate OWA into your solution architectures!

Transcript of Introducing Office Web Apps as a Tool for Developing Content Rich Applications

INTRODUCING OFFICE WEB APPS AS A TOOL FOR DEVELOPING CONTENT RICH

APPLICATIONSRyan McIntyre

MCITP, MCPD

Director, Portals & Collaboration

@ryanmcintyre

Introducing Contoso

View & Edit Documents While Mobile

View & Edit Documents While Mobile

• Frustrated with available apps and additional licensing• Owns Office and wants to leverage existing platforms• Look at how to extend OWA to support their needs

Introduction to OWA

•What is OWA•How OWA can be Consumed•Licensing

OWA vs Excel Services

Excel Web App• Separate farm• Create/Edit in browser• Limited BI• /_layouts/15/xlviewer.aspx?id=

Excel Services• Dedicated Service Application within

SharePoint farm• Requires Enterprise• Supports BI

• External data connections• PivotChart/PivotTable• Power View

• /_layouts/15/WopiFrame2.aspx?sourcedoc=

Disable Excel Web App: New-SPWOPISuppressionSettingExcel Services Compared to Excel Web App: http://bit.ly/1bAWC42

2010 vs 2013

2010• Simple architecture• Separate install• View & Edit Office

documents in a browser

2013• Dedicated farm• Licensing enforcement• Additional Office features

• Track changes• Comments• Co-authoring• Others

• Create New documents• Extensible

Let’s See How We Can Use It

Consuming from SharePoint Demo

Consuming on Custom Apps & Mobile

How Do We Pay For This Thing?

Licensing

•External or Internal?•Anyone can view• Internal users with Office licenses can edit•External users can edit•Don’t trust me!•http://bit.ly/1du0pzN

Let’s Get Technical!

Architecture

•OWA Architecture•Office365 vs On-prem•Applying Updates

Simple Architecture

Office Web Apps

SharePoint Farm

Office Web App

HTTP/SHTTP/S

HTTP/S

High Availability Architecture

Office Web App

Office Web Apps

NLB

SharePoint Farm

NLB

WOPI What??

WOPI What??

Web Application Open Platform Interface

OWA Architecture

OWA Architecture

How do we update our Office Web Apps farm?

Applying Patches & Updates

• Standard MSI patching• Server has to be disconnected from farm to be able to

patch it• Use PowerShell - Remove-OfficeWebAppsMachine / New-OfficeWebAppsMachine

• In place major version upgrades are not supported• Previous Office Web Apps Server installation has to be removed before new version can be installed

• Schema will be kept intact within major version, but not necessarily with cross major versions

• Upgraded Office Web Apps server will work with older WOPI host

Patched Office Web Apps Farm

Office Web Apps Farm

Patching Process for Minimal Downtime

NLB

Office Web App

WOPI server request

OWA Architecture

Now let’s look at how we can leverage this architecture in our applications

OWA Customizations

•Extension Points•Development Technologies•How to get Started

Extension Points

• Scenario: Programmatically create a new Word document using Word Web App and save in a library

• Scenario: Open and edit an Office document using OWA behind the scenes based on an action initiated by a user in our application

Extension Points

Custom WOPI Host

Store documents in non-SharePoint environment and provide access to users through WOPI

1. Two required (minimum) REST endpoints1. GET file information - CheckFileInfo2. GET file stream - GetFile

2. Discovery XML located at /hosting/discovery3. Access token4. Unique IDs for files5. Wrap it up in a page

Custom WOPI Client

Use our OWA farm to display non-Office documents

1. Discovery XML used when WOPI binding created from the host1. Defines our Apps and Actions

2. Create the viewer page (aspx)3. Deploy (e.g. Simple IIS website)4. Bind from WOPI host (New-SPWOPIBinding)

Summary

• OWA Overview• Architecture• Customizations

Call to Actions

• Read MSDN docs• Read Wictor’s blog series for WOPI Client

• http://bit.ly/1bILKlN

• WOPI Host sample from Shawn Cicoria• http://bit.ly/1gtsYm1

• Create O365 demo tenant• Install a farm locally or on Azure, and play

Contoso Revisited

Thank You!• MS-WOPI Specification: http://bit.ly/18XJOak• Taxonomy workshop plug (contact me if interested)

ryan.mcintyre@neudesic.com@ryanmcintyrehttp://blog.randomdust.com