Download presentation
Presentation is loading. Please wait.
Published byBarbara Knopp Modified over 6 years ago
1
MEC 2014 11/23/ :42 PM © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
2
Apps for Outlook Evolved
11/23/ :42 PM EXT302 Apps for Outlook Evolved Andrew Salamatov Senior Program Manager Microsoft © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
3
Mail Apps – a brief intro
4
New extensibility model for Outlook
Loosely coupled to client; based on web technologies Appear contextually, based on entities or patterns OneDrive
5
Key value points Cross platform Loosely coupled with client versions
Outlook, Outlook Web App, OWA app for iPad and iPhone Messages and appointments Loosely coupled with client versions Acquired by end-users or admins for entire org
6
Managing Apps End-users can… Exchange Admins can…
Install apps from marketplace (Restricted or ReadItem only) Enable/Disable apps installed by admins Install apps from marketplace or individual manifests from any other location Install apps for entire org or individual users Block users from installing apps Provide other users the ability to install individual manifests from any location
7
Useful PowerShell Commands
//Install a mandatory app for all users New-App –OrganizationApp –Url “ -DefaultStateForUser AlwaysEnabled //Set a marketplace app enabled for some users Get-App –OrganizationApp |fl displayname,AppID Set-App –OrganizationApp –Identity [AppId] –DefaultStateForUser enabled –ProvidedTo specificusers –UserList alias1,alias2,alias3 //List which users have an a specific app installed Get-App –OrganizationApp –Identity [AppId] |fl displayname,userlist //List which apps a user has installed Get-App –mailbox alias1 //Remove an organization app Remove-App –OrganizationApp –Identity [AppId] Documentation on cmdlets can be found here:
8
What’s new
9
What’s new Body and attachment access Commerce Compose
End-users can install apps from the store that access message body and attachments Commerce Sell, give away or provide subscriptions for your mail apps Compose Create apps to be used while reading a message or appointment, composing, or both
10
Body and attachment access
11
Attachments Demo Andrew Salamatov
12
Accessing attachments in 2013 RTM
App forwards the message to an SMTP endpoint Endpoint parses the message and extracts the attachments App requires highest permission level, admin-installable only mailbox.makeEwsRequest( <XML EWS REQUEST> ); App in Outlook Message forwarded by Exchange Endpoint retrieves attachments
13
New approach goals End-user apps can access body and attachments
Optimize for client bytes over the wire
14
The design JS APIs to access metadata, token and EWS URL
Available with ReadItem permission App requests attachment metadata, callback token and EWS URL via JS APIs APP App Backend Outlook Exchange
15
The design App code passes metadata + token to its backend
Callback token is short-lived, item bound App passes attachment id, token and EWS URL to its backend APP App Backend Outlook Exchange
16
The design App backend uses EWS to retrieve attachment
EWS Managed API support coming soon APP App Backend Outlook App backend calls EWS to get attachment Exchange
17
A few notes on the callback token
Extends concept that apps can read any property on the current item Item and session bound Self-signed by Exchange, bearer token Bound to current item (EWS operations only allowed on item that the app was launched on) “Bound” to session – is valid for 5 minutes Allowed EWS APIs GetAttachments GetItem
18
Attachments code demo Andrew Salamatov
19
Saving attachment to SharePoint (O365)
Register mail app as a web server app in AAD Users grant permission via OAuth flow Backend will get access token to call into OneDrive
20
OAuth flow App opens new window to Azure AD to ask for consent SP
Grant Consent APP Launch OAuth SP Outlook App Backend
21
App’s redirect html page
OAuth flow Azure AD redirects to the redirect URL, providing access code as query URI parameter Azure AD App’s redirect html page Grant Consent APP Launch OAuth SP Outlook App Backend
22
App’s redirect html page
OAuth flow App extracts access code and passes it to its backend App’s redirect html page APP Launch OAuth SP Outlook App Backend
23
OAuth flow App backend exchanges access code for refresh token and access token from Azure AD and calls into SP APP 1. Exchange for refresh and access token Azure AD Launch OAuth SP Outlook 2. Call SP with access token App Backend
24
Code demo Andrew Salamatov
25
Resources Documentation Related Sessions
Accessing attachments from a mail app: Creating a WebAPI backend service for a mail app: Directory service: Integrating app with AAD: Related Sessions Website app registration and auth: EXT.301 Building a business process app: EXT.304 Code will be posted to this session in Yammer after the talk
26
Commerce
27
Paid Mail Apps Developers can sell mail apps in Office store
TechReady 18 11/23/2018 Paid Mail Apps Developers can sell mail apps in Office store Model supports: Trial mode Subscription Individual purchase Entitlement is validated server-side Documentation: © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
28
Compose
29
Compose demo Andrew Salamatov
30
Compose mail apps Activation Capabilities Permissions
31
Activation Apps can appear in messages and/or appointments
Compose apps are across Desktop, Tablet and Mobile
32
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties User Identity Token Make EWS requests Settings User Profile
33
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties Get/set/add recipients or attendees Get/set the subject
34
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties Add file or item attachments
35
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties Prepend to the body Overwrite current selection in body
36
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties Get/set start or end time Get/set location Get/set/add attendees
37
Compose mail app capabilities
Use core JS APIs Read/Write recipients Read/Write subject Add attachments Write to the body R/W appointment properties Custom item properties Saved on the sent item Can be used to mark a composed message (eg “Tracked” in CRM)
38
Permissions Restricted ReadItem ReadWriteItem ReadWriteMailbox
App can access data from limited entities Regular expressions are blocked JS API limits item data access ReadItem App can access data from all entities Regular expressions allowed Read JS APIs are allowed EWS calls are not allowed ReadWriteItem All JS APIs are allowed ReadWrit box Limited EWS methods are allowed Admins can install End-users can install
39
Compose code demo Andrew Salamatov
40
Possibilities…
41
Scenarios Assist with writing a message Frequently written snippets
Multiple signatures Insert meeting location details Hierarchical Address Book Book Workspace Address Book Bob Costas Jane Smith John Doe
42
Scenarios Template messages and meetings
Create a message based on a template Attach an invoice
43
Scenarios Kick-off workflows Document signing
Request approval for marketing campaign Record conversation for innovation management Newsletter Approval Select documents for approval:
44
Resources Demo code will be posted to #EXT.302 Yammer discussion directly after the session Documentation available on MSDN Related talks Experts Unplugged: Exchange Extensibility: EXT.UN.301 Experts Unplugged: Outlook 2013: USX.UN.301 Website app registration and auth: EXT.301 Building a business process app: EXT.304
45
Pre-Release Programs Team Be first in line!
Go to the Pre-Release Programs Booth Tell us about your Office 365 environment/or on premises plans Get selected to be in a program Try new features first and give us feedback! Start now at:
47
11/23/ :42 PM © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.