Speakers: Martina Grom, Toni Pohl; How to build development Solutions without your own Servers, only by using Office 365. In this session we will see how to use the new development model for building cool Office Apps. What is NAPA and how to use it. This session will provide an overview of the new developer features for Office and SharePoint.
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Office apps in Office 365 - Napa the next big thing
1. Office apps in Office 365
MARTINA GROM
TONI POHL, ATWORK
SHAREPOINT AND PROJECT CONFERENCE ADRIATICS
ZAGREB, 11/28/2012
2. About us
Martina Grom Toni Pohl
CEO atwork CTO atwork
mg@atwork.at tp@atwork.at
blogs.technet.com/austria blogs.technet.com/austria
Microsoft Office365 codefest.at
Blog, cloudusergroup.at cloudusergroup.at
@magrom @atwork
4. Agenda
How to program for Office 365
The tools
Automating Office 365 now (Development)
showcase Agenda
Office and SharePoint Apps
Architecture and Napa Demo
9. What we need
• Office 365
https://portal.microsoftonline.com
• Visual Studio 2010 or 2012
10. What we need else…
• SharePoint Client Object (SharePoint Foundation 2010)
www.microsoft.com/download/en/details.aspx?id=5970
• Exchange Web Services Managed API
www.microsoft.com/download/en/details.aspx?id=13480
• Lync 2010 SDK
www.microsoft.com/download/en/details.aspx?id=18898
• Claims-Based Authentication for SharePoint
http://code.msdn.microsoft.com/windowsdesktop/Remote-
Authentication-in-b7b6f43c (Code)
http://blogs.solidq.com/sharepoint/Post.aspx?ID=142 (Fix)
11. SharePoint Client Object
• Microsoft SharePoint Foundation 2010
http://www.microsoft.com/download/en/details.aspx?i
d=5970
• SharePoint 2010 Reference: Software Development
Kit
http://www.microsoft.com/download/en/details.aspx?
displaylang=en&id=12323
• (…or from SharePoint 2010)
C:Program FilesCommon FilesMicrosoft
12. Implementing Claims-Based Authentication with
SharePoint Server 2010
• http://www.microsoft.com/download/en/details.aspx?id=27569
(HowTo)
• http://code.msdn.microsoft.com/windowsdesktop/Remote-Authentication-in-
b7b6f43c
(Sample Code)
• http://msdn.microsoft.com/en-us/library/ie/ff953202.aspx
(Claims Tips)
• http://msdn.microsoft.com/en-us/library/ie/gg252020.aspx (Walktrough)
• http://www.microsoft.com/download/en/details.aspx?id=27289
(Guide 2nd Edition)
• http://msdn.microsoft.com/en-us/security/aa570351
(Windows Identity Foundation Simplifies User Access for Developers)
• http://msdn.microsoft.com/en-us/evalcenter/dd440951
(Download Microsoft Windows Identity Foundation)
13. Exchange Web Services Managed API
SPO Exchange SPO Lync
Website Online Access Online
Services
14. Exchange Web Services Managed API
• http://msdn.microsoft.com/en-
us/library/dd633710(EXCHG.80).aspx
• http://go.microsoft.com/fwlink/?LinkId=255472
• [ Version 1.2 (Exchange SP2 Support) ]
http://msdn.microsoft.com/en-
us/library/dd633710(EXCHG.80).aspx
18. “For Lync to securely call another application in the contextual context,
the hosting machine needs to be aware of the called application.
This is done through the local registry.”
26. Technologies: Microsoft only
• Windows Azure: • jQuery (open source, in ASP.NET included)
1-2 Worker Role(s), 1-2 Web Role(s) • SignalR (ASP.NET Fall Release-brand new)
• Microsoft .NET 4.0, C# • PowerShell Cmdlets
• ASP.NET • Exchange Web Services Managed API
• Web Essentials 2012 for ASP.NET (Bundeling • SharePoint Client Object API
for good performance & optimizing)
• Claims-Based Authentication for SharePoint
• Azure Table Storage
• SQL Server 2012 (Pivot)
• Azure BLOBs
• Excel Pivot
• Azure Queues
• Made with Visual Studio 2012
• Azure Caching & a lot of KnowHow
• Azure SnowFlake
27. Security!
• Limited Office 365-Accounts -> user pool
• Securing Outlook Web Access -> new users
• Policies: no changes allowed
• Securing SharePoint Online -> read only
• Securing website: against scripts & Denial of Service attacks (DOS)
• Dynamic IP-Blocking (only 10 testers from one IP within 30 minutes)
• Permanent IP-Blocking (against DOS)
• Reporting (IPs, Time)
• Logging of Worker Role: errors in communication with Office 365 services
• SLA
34. A new class of apps Embracing web Deploy and maintain
enabling new standards to provide your apps publically
scenarios and user developers with or internally with
experiences. choice and flexibility. flexibility and control.
35. What are apps? New class of apps
New model enables a new class of apps for
Office and SharePoint.
New scenarios
Combine cloud services and web technologies
with apps from within the UI of Office and
SharePoint.
New user experiences
Enhance productivity by enabling new ways of
working with information in Office and
SharePoint.
40. Types of Apps for SharePoint
Shape Description Example
Immersive App App that implements a new Resource Tracking,
(Full Page) scenario for customers Budgeting
App Part Provides new parts you can add Weather, , News
to your sites
Extension App Add new actions for documents Display Document
(Custom Action) and items Visualization, Print to
Print Service Vendor
41. Types of Apps for Office
• Task Pane App for Office (Document-centric)
• Assists user working with one or more documents
• Works in Word, Excel and Project
• Content App for Office (Document-centric)
• Adds embedded content/functionality into document
• Only used in Excel Application and Excel Web Application
• Mail App for Office (Mailbox-centric)
• Outlook Client and Outlook Web App (OWA)
• Extends Outlook items with custom UI and behaviors
• Outlook items can be messages and events
• Require Exchange 2013
42. App for Office Anatomy
Web Page App Manifest
<script src="Office.js"/> <XML>
43. Developing Apps
Use any tools you like
Any editor that can manipulate text files
Notepad, UltraEdit, Eclipse, etc.
Visual Studio 2012 Experience
App project templates
Excellent productivity features
One tool to accomplish all of your development needs
Great Looking Apps
We will provide CSS, controls and templates
45. App Deployment
Web Page App Manifest
<script src="Office.js"/> <XML>
Web Server Catalog Server
46. App Deployment
Developer
App manifest (.xml)
or .app package
Document
Office Store or Sharing
App Catalog
Consumers &
Corporate Users
Web Server
(Internet or Intranet)
47. Links
http://technet.microsoft.com/en-
us/library/cc263199.aspx
Office and Office365.com
SharePoint dev.office.com
Apps http://blogs.technet.com/b/austria/
Windows 8 App: Office 365 Blog News
48. Call 2 action: next steps
Test Office 365
Office365.com
dev.office.com
Risk analysis
POC
Zweck der Folie: Mit den nächsten vier Folien erläutern Sie, wie Office 365 die Zusammenarbeit verbessert. Geben Sie dem Publikum Gelegenheit, Fragen zu stellen oder das Thema zu vertiefen. So präsentieren Sie diese Folie: Besprechen Sie die einzelnen Stichpunkte, und geben Sie dann weiterführende Informationen anhand der nachfolgenden Punkte.Übersicht: Um produktiv zu sein und sich von Mitbewerbern abzusetzen, benötigen Sie Technologien, die eine einfache und effektive Zusammenarbeit innerhalb des Unternehmens sowie mit Partnern und Kunden ermöglichen.Erkenntnisse austauschen – verbesserter Informationsfluss:Um gemeinsam produktiv arbeiten zu können, müssen Sie Erkenntnisse austauschen und den Informationsfluss optimieren können.In SharePoint können Sie sämtliche Dokumente, Bilder, Bestandsdatenbanken, Besprechungsnotizen sowie eine Projektzeitachse an einem zentralen Ort speichern und allen Mitarbeitern zugänglich machen. Somit lassen sich Erkenntnisse, Echtzeitdaten, Kenntnisse und Meldungen zum Projektstatus effektiver austauschen.Ermöglichen Sie externen Benutzern den sicheren Extranet-Zugriff auf Projekt-Websites und Dokumente, um vertrauliche Informationen und größere Dateien problemlos mit Partnern und Kunden austauschen zu können.
Office 365 in der Portaloberfläche und Online zum herzeigenExchange Online zu testenSharePoint Online zum herzeigenLync Online: kein AnwendungsfallOffice Pro Plus: kein Anwendungsfall
Steuerungs-System (PC oder VM)Script für User (Beschreibung, Step-by-step Anleitung für Aktionen)Office 365 Administration (Portalzugriff)Demouser (5)Demo-DomainMailbox-TestdatenSharePoint Demo vertikalisiertLync Online DemoSzenario: Tenant-Reset alle N Std. (12 oder 24)
Zweck der Folie: Mit den nächsten vier Folien erläutern Sie, wie Office 365 die Zusammenarbeit verbessert. Geben Sie dem Publikum Gelegenheit, Fragen zu stellen oder das Thema zu vertiefen. So präsentieren Sie diese Folie: Besprechen Sie die einzelnen Stichpunkte, und geben Sie dann weiterführende Informationen anhand der nachfolgenden Punkte.Übersicht: Um produktiv zu sein und sich von Mitbewerbern abzusetzen, benötigen Sie Technologien, die eine einfache und effektive Zusammenarbeit innerhalb des Unternehmens sowie mit Partnern und Kunden ermöglichen.Erkenntnisse austauschen – verbesserter Informationsfluss:Um gemeinsam produktiv arbeiten zu können, müssen Sie Erkenntnisse austauschen und den Informationsfluss optimieren können.In SharePoint können Sie sämtliche Dokumente, Bilder, Bestandsdatenbanken, Besprechungsnotizen sowie eine Projektzeitachse an einem zentralen Ort speichern und allen Mitarbeitern zugänglich machen. Somit lassen sich Erkenntnisse, Echtzeitdaten, Kenntnisse und Meldungen zum Projektstatus effektiver austauschen.Ermöglichen Sie externen Benutzern den sicheren Extranet-Zugriff auf Projekt-Websites und Dokumente, um vertrauliche Informationen und größere Dateien problemlos mit Partnern und Kunden austauschen zu können.
Zweck der Folie:Mit dieser Folie fordern Sie Ihre Kunden zum Handeln auf. Bieten Sie ihnen verschiedene Anreize, auf das Angebot zurückzukommen. So präsentieren Sie diese Folie:Passen Sie diese Folie individuell an, indem Sie Handlungsaufforderungen einfügen, die Ihrem Publikum angemessen sind. Beispiele für weitere SchritteVereinbaren Sie eine kostenlose IT-BeratungSehen Sie sich eine Office 365-Produktdemo anTesten Sie den Dienst kostenfrei und unverbindlich unter www.office365.de.Lesen Sie die Erfahrungsberichte unter www.whymicrosoft.com.
Zweck der Folie:Mit dieser Folie fordern Sie Ihre Kunden zum Handeln auf. Bieten Sie ihnen verschiedene Anreize, auf das Angebot zurückzukommen. So präsentieren Sie diese Folie:Passen Sie diese Folie individuell an, indem Sie Handlungsaufforderungen einfügen, die Ihrem Publikum angemessen sind. Beispiele für weitere SchritteVereinbaren Sie eine kostenlose IT-BeratungSehen Sie sich eine Office 365-Produktdemo anTesten Sie den Dienst kostenfrei und unverbindlich unter www.office365.de.Lesen Sie die Erfahrungsberichte unter www.whymicrosoft.com.