/
Extending SharePoint, Lync and Extending SharePoint, Lync and

Extending SharePoint, Lync and - PDF document

piper
piper . @piper
Follow
342 views
Uploaded On 2021-01-11

Extending SharePoint, Lync and - PPT Presentation

Exchange with a custom WOPI Client DEV205 Wictor Wil ID: 828817

client wopi http server wopi client server http sharepoint file 2013 discovery post requests openwopi folders access operations web

Share:

Link:

Embed:

Download Presentation from below link

Download Pdf The PPT/PDF document "Extending SharePoint, Lync and" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

1 Extending SharePoint, Lync and Exchange
Extending SharePoint, Lync and Exchange with a custom WOPI Client DEV205 Wictor Wilén  Wictor Wilén, MCA, MCSM, MCM, MVP a Connecta AB, Sweden a http://www.connecta.se a http://www.wi

2 ctorwilen.se a wictor@wictorwilen.se a @
ctorwilen.se a wictor@wictorwilen.se a @ wictor a Author of SharePoint 2010 Web Parts in Action and co - author of Inside SharePoint 2013 Takeway from this session  I want you to le

3 arn and understand the WOPI protocol an
arn and understand the WOPI protocol and how it can enhance and extend your SharePoint solutions Agenda  WOPI this and WOPI that  [MS - WOPI]  OpenWOPI  Build a WOPI client a

4 Discovery a Client  SharePoint 2013
Discovery a Client  SharePoint 2013 Extensions Office Web Apps… Office Web Apps 2010  SharePoint 2010 Service Application  SharePoint 2010 only  Not customizable, extendab

5 le and almost never updated  docs.co
le and almost never updated  docs.com  skydrive.live.com Office Web Apps Server 2013  WAC Server 2013  Standalone  Shared with SharePoint, Exchange and Lync  Based on t

6 he open [MS - WOPI] protocol [MS - WOPI]
he open [MS - WOPI] protocol [MS - WOPI]  W eb Application O pen P latform I nterface  http://askwictor.com/WOPI  Almost fully documented  No licensing  REST like protoc

7 ol Principles  Security Discovery Cli
ol Principles  Security Discovery Client Server WOPI Client  Provide a Discovery endpoint  Reads information about files and folders  Reads content of files and folders  Wr

8 ites content of files and folders  Of
ites content of files and folders  Office Web Apps 2013 is a WOPI Client WOPI Server/Apps  Reads the WOPI Client Discovery endpoint  Responds to requests from the WOPI Client ï

9 µ Never initiates communication with the
µ Never initiates communication with the WOPI Client  SharePoint, Lync and Exchange 2013 are WOPI Servers Discovery  http[s]://&#xserv;r00; hosting/discovery  HTTP/1.1 GET R

10 equest  - z�one a
equest  - z�one a – tion ext =“ docx ” name=“edit” urlsrc =“ŜŜŜ”>  - �key Introducing OpenWOPI  A free and open WOPI Clie

11 nt a Including extensions for SharePoint
nt a Including extensions for SharePoint 2013  Available on Codeplex this week a openwopi.codeplex.com  ASP.NET MVC4 based  et’s bild it… WOPI DISCOVERY Implementing th

12 e WOPI Discovery process in the OpenWOP
e WOPI Discovery process in the OpenWOPI Client Client and Server Communication WOPI Server IFrame : WOPI Client e WOPI Server generates an Access Token and an id for the user and f

13 ile e WOPI Server renders an IFrame us
ile e WOPI Server renders an IFrame using the action urlsrc and standard parameters (GET) [friendly url ] e WOPI Client requests file info (GET) e Passing unmodified Access Token an

14 d id e WOPI Client requests file conten
d id e WOPI Client requests file content (GET) e Passing unmodified Access Token and id e WOPI Client renders document e Other WOPI Operations (GET, POST…) WOPI Client Requests  Fo

15 ur request types  Must be implemented
ur request types  Must be implemented by the WOPI Server  http[s]ś///<ŝ>/ wopi */ file&#xid00;s/ a File - level operations  http[s ]ś///<ŝ>/ wopi */ file&#xid0

16 0;s/contents a Content operations  ht
0;s/contents a Content operations  http[s ]ś///<ŝ>/ wopi */ folders/ id � a Folder - level operations  http[s ]ś///<ŝ>/ wopi */ folders/ id �/childr

17 en a Files and Folders within a folder R
en a Files and Folders within a folder Request and Response details  HTTP Headers a MUST – Authorization a MAY – X - WOPI - ClientVersion – X - WOPI - ServerVersion – X - WOPI -

18 Proof / X - WOPI - ProofOld – X - WOP
Proof / X - WOPI - ProofOld – X - WOPI - CorrelationID – X - WOPI - * – … Access Tokens and security  Access Toke&#xtoke;&#xn000;n a Must be present on all Requests as the Aut

19 horization header a Generated by the WOP
horization header a Generated by the WOPI Server a WOPI Client doesn’t have to “nderstand” it a Should expire a Should be scoped to a user and a set of resources  File or folde

20 r id &#xid00; a Must be unique  Provi
r id &#xid00; a Must be unique  Provided through the initial action request ( urlsrc ) WOPI Client Security  The Proof Key  Defined in the Discovery message  Not required 

21 Used by Server to decrypt HTTP Headers a
Used by Server to decrypt HTTP Headers a X - WOPI - Proof a X - WOPI - ProofOld  SharePoint always requires this! SENDING WOPI REQUESTS Actions  Scoped to an app  Specifies urlsr

22 c so Server can initiate request  Sp
c so Server can initiate request  Specifies name (type) and extension File operations  http[s]ś///<ŝ>/ wopi */ file&#xid00;s/ a CheckFileInfo (GET) a PutRelativeFile (POST

23 + X - WOPI - *) a Lock, Unlock, Refres
+ X - WOPI - *) a Lock, Unlock, RefreshLock , UnlockAndRelock (POST + X - WOPI - *) a DeleteFile (POST + X - WOPI - *) a ExecuteCellStorage * (POST + X - WOPI - *) a ReadSecureStore (P

24 OST + X - WOPI - *) a Get/ RevokeRestric
OST + X - WOPI - *) a Get/ RevokeRestrictedLink (POST + X - WOPI - *)  http[s]ś///<ŝ>/ wopi */ files/&#xi500;d/contents a GetFile (GET) a PutFile (POST) RETRIEVING A FILE Acti

25 on values  view  edit  mobilevi
on values  view  edit  mobileview  interactivePreview  embedview  present  formsubmit  formedit  … UPDATING A FILE Integration with SharePoint  Add - SPWOPI

26 Binding  Previews a Document Librarie
Binding  Previews a Document Libraries – JavaScript (undocumented territory) a Search Center – Display Template Exchange and Lync integration  Only allows one WOPI Client  ï

27 µ Exchange 2013 a PowerShell  Lync 20
µ Exchange 2013 a PowerShell  Lync 2013 a The Topology Builder PREVIEWS FOR REAL IN SHAREPOINT 2013 Summary  [MS - WOPI] is an open specification  Built on the HTTP protocol 

28 You can create custom viewers and edito
You can create custom viewers and editors  OpenWOPI ! a openwopi.codeplex.com Thank you for attending! Yo’ve been an awesome crowd ! Slides and Open WOPI links at http://askwi