Advertisement
Advertisement

More Related Content

More from Dragan Panjkov(20)

Recently uploaded(20)

Advertisement

Configure your SharePoint Development Environment in the Cloud

  1. Getting Started with Office 365 Development Speaker: Dragan Panjkov 15th November 2014 Host: Matthew Hughes
  2. O365EU Sponsors
  3. Dragan Panjkov  Learning SharePoint since 2007  www.dragan-panjkov.com  www.twitter.com/panjkov  PlanB. d.o.o.  www.planb.ba  New Office User Group BiH  www.1sug.com  www.mscommunity.ba  MCSD – SharePoint Applications  MVP for Office365 (april 2014)
  4. Agenda Apps for Office Apps for SharePoint Office 365 REST APIs
  5. Apps for Office
  6. Office 2013 development options
  7. Office 2013 development scenarios Business processes Sales and marketing, finance, and HR Team collaboration Content and project management Workflow Document approval and expenses App for Sharepoint Document template App for Office App for Office App for Office App for Office Translation, definitions, dictionary, help, research Business data lookup (CRM), contextual forms (surveys) Rich web content YouTube video and photo gallery Data visualization, analysis and mashups Maps, custom charts, and lookups Reference tools Content authoring and publishing Contextual content and services Workflow and collaboration Doc builders and print services Project tracking, coauthoring App for Office Content authoring Resumes and contracts Dashboards Data analysis and data mashups Forms and reports Legal forms and financial reports Document template App for Office App for Office App for Office App for Office
  8. Apps for Office - dev fundamentals  App components:  App manifest  Web site  Office JavaScript API (Office.js)  Referenced on Microsoft CDN or deployed locally  API updates are versioned  It’s web development!  Use all JS/CSS frameworks you want!  Same origin policy applies  Secure dev practices needed (SSL, input validation etc.)
  9. Build your first App for Office Demo
  10. App shapes for Office Task pane App adjacent to the document Content App in the body of the document Mail Inline pane on an email or appointment item
  11. App shapes for Office Task pane App adjacent to the document Content App in the body of the document Mail Inline pane on an email or appointment item
  12. App shapes for Office Task pane App adjacent to the document Content App in the body of the document Mail Inline pane on an email or appointment item
  13. Apps for Office samples Demo
  14. Apps for SharePoint
  15. SharePoint apps - recap Code is isolated from SharePoint, using remote APIs  Client-side: JavaScript in user’s browser  Server-side: CSOM code in Azure/IIS/other
  16. Custom client code _api JavaScript library Silverlight library .Net CLR library Execute query REST/ OData … SearchSites, Lists and Libs Taxonomy BCSWorkflow The SharePoint client APIs
  17. Packaging and publishing apps Packaging apps .app file extension—a package typically includes the following files: AppManifest.xml AppIcon.png Solution file Data tier application package Publishing apps Office Store App catalogs
  18. Build your first App for SharePoint Demo
  19. App shapes for SharePoint Full page Implement complete app experiences to satisfy business scenarios Parts Create app parts that can interact with the SharePoint experience UI command extensions Add new commands to the ribbon and item menus
  20. App shapes for SharePoint Full page Implement complete app experiences to satisfy business scenarios Parts Create app parts that can interact with the SharePoint experience UI command extensions Add new commands to the ribbon and item menus
  21. App shapes for SharePoint Full page Implement complete app experiences to satisfy business scenarios Parts Create app parts that can interact with the SharePoint experience UI command extensions Add new commands to the ribbon and item menus
  22. App for SharePoint sample Demo
  23. Office 365 APIs
  24. Available REST Endpoints Exchange & Outlook.com Calendar Contacts Mail OneDrive OneDrive for Business Active Directory Users Groups SharePoint Client API Search Sites, Lists and Libs Taxonomy BCSWorkflow … Sites
  25. Common Consent Framework for Office 365 • Single Authentication flow for O365 • Azure AD Graph, Exchange, SharePoint • Device apps and web apps • Admin and end-user consent • Secure protocol • OAuth 2.0 • No capturing user credentials • Fine-grained access scopes • Supports MFA and federated user sign-in • Long-term access through refresh tokens
  26. Discovering endpoints and API’s 36 Office 365 discovery services Automatically determine URL of O365 services Supports device app and website flows Secured using Azure AD authentication Serves information stored about services in AAD Rich service metadata Lists all Entities, Collections, Actions, Complex Types, Enums and their Properties. https://outlook.office365.com/api/v1.0/$metadata
  27. • .NET SDK to build many types of apps using Visual Studio .NET Windows Store Apps Windows Forms Application WPF Application ASP.NET MVC Web Application ASP.NET Web Forms Application Xamarin Android and iOS Applications Multi-device Hybrid Apps (Cordova) • Android SDK & iOS SDK’s Rich Tooling
  28. Get the tools https://visualstudiogallery.msdn.microsoft.com/a15b85e6-69a7-4fdf-adda-a38066bb5155?SRC=VSIDE
  29.  Permissions  Read, Read+Write, Send  Entities, Collections, Actions  Samples  https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/  https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$top=1  https://outlook.office365.com/api/v1.0/Me/SendMail/ Mail Entity Collection Actions Folder Folders CRUD, Copy, Move Message Messages CRUD, Copy, Move, Reply, ReplyAll, Forward, Send, CreateReply, CreateReplyAll, CreateForward Attachment Attachments CRUD
  30.  Permissions  Read, Read+Write  Entities, Collections, Actions  Samples  https://outlook.office365.com/api/v1.0/Me/Calendar  https://outlook.office365.com/api/v1.0/Me/Calendar/Events?$top=1  https://outlook.office365.com/api/v1.0/Me/CalendarView?startDateTime=2014-10-01T01:01:01Z & endDateTime=2014- 11-01T01:01:01Z Calendar Entity Collection Actions CalendarGroup CalendarGroups CRUD Calendar Calendars CRUD Event Events CRUD, Accept, Decline, TentativelyAccept CalendarView N/A Read Attachment Attachments CRUD Collection Entity No client-side recurrence expansion required 
  31.  Permissions  Read, Read+Write  Entities, Collections, Actions  Samples  https://outlook.office365.com/api/v1.0/Me/ContactFolders(‘Contacts’)/  https://outlook.office365.com/api/v1.0/Me/Contacts/  Use AAD Graph API to find users in a tenant. Contacts Entity Collection Actions ContactFolder ContactFolders Contact Contacts CRUD
  32.  Permissions  Read, Read+Write  Entities, Collections, Actions  Samples  https://contoso-my.sharepoint.com/_api/v1.0/me/drive  https://contoso-my.sharepoint.com/_api/v1.0/me/drive/files Files Entity Collection Actions Drive Read File Files CRUD, Upload, Download Folder CRUD
  33.  Permissions  Read, Read+Write  Entities, Collections, Actions  Samples  https://graph.windows.net/contoso.com/users?api-version=1.5  https://graph.windows.net/contoso.com/groups?api-version=1.5 Users + Groups Entity Collection Actions User Users CRUD Groups Groups CRUD
  34. Rich Query Syntax using OData Scenario URL Get 5 messages from Inbox https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$top=5 Get the next 10 messages https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$top=10&$skip=5 Get top 10 messages sorted by DateTimeCreated https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$top=10&$orderby=DateTi meCreated Get selective properties on messages https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$top=5&$select=From,Dat eTimeCreated,Subject Get events starting after a particular DateTime https://outlook.office365.com/api/v1.0/Me/Events?$top=5&$select=Subject,Start,End&$filter=St art ge 2014-09-22T20:00:00Z Get Inbox messages with subject and attachment info https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages?$format=application/json;o data.metadata=none&$select=Subject&$expand=Attachments Get # of messages with attachment(s) https://outlook.office365.com/api/v1.0/Me/Folders/Inbox/Messages/$count?$filter=HasAttachm ents eq true Get count and selective props on messages with attachment(s) https://outlook.office365.com/v1.0/Me/Folders/Inbox/Messages?$format=application/json;odat a.metadata=none&$select=Subject&$filter=HasAttachments%20eq%20true&$count=true Get contact with a given name https://outlook.office365.com/v1.0/Me/Contacts/?$filter=Givenname eq ‘John’
  35. 45
  36. Getting Started: Office 365 APIs starter Project – Visual Studio Demo
  37. Recap Embed your customization in Office and SharePoint user experience using Apps Manipulate data in Office 365 from your standalone apps using REST APIs
  38. Resources • Microsoft Virtual Academy http://www.microsoftvirtualacademy.com/product-training/office- development • TechEd Europe 2014 sessions http://www.dragan-panjkov.com/getting-started-with-office-365- development-teched-europe-2014-session-resources • ITUnity Article (Getting Started) http://www.itunity.com/article/programming-office-365-apis-general- availability-release-678 • GitHub Office Dev Repository https://github.com/OfficeDev • Office Dev portal dev.office.com
  39. Questions? www.dragan-panjkov.com www.twitter.com/panjkov

Editor's Notes

  1. Cloud-only scenarios: Dev, Test or Demo environments
  2. http://technet.microsoft.com/en-us/library/cc262485(v=office.15)#section4
  3. DPDEV14
  4. https://github.com/Azure/azure-sdk-tools-samples http://autospinstaller.codeplex.com/ https://autospinstallergui.codeplex.com/
  5. http://www.ashokraja.me/post/Develop-SharePoint-2013-Napa-App-In-Local-Dev-Environment-Configuring-On-Premises-without-DNS.aspx http://msdn.microsoft.com/en-us/library/fp179923(v=office.15)
  6. http://blog.karstein-consulting.com/2013/01/08/create-provider-hosted-high-trust-app-for-sharepoint-2013-short-guide/
Advertisement