Quantcast
Channel: Blog
Viewing all 429 articles
Browse latest View live

Office Dev PnP Web Cast – Azure AD for Office 365 developer

$
0
0

In this PnP Web Cast we concentrated on Azure Active Directory from the Office 365 developer perspective.

Azure Active Directory is used in numerous different ways as part of the cloud development and it's important for the developers to understand it's capabilities. It's used for example to manage the permissions for applications which are using Office 365 APIs and Microsoft Graph.

In the demo we'll have a look on the using Azure AD to grant permissions for the Microsoft graph API and how you can access available data from the graph.

Presentation used in this web cast is available from http://docs.com/OfficeDevPnP.


Video at PnP Channel 9.

Additional resources

See following links for additional details around covered topics.



What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this weekly Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft


Office add-ins for work or school accounts

$
0
0


We’re pleased to announce a new capability for Office add-ins – the ability to associate an Office add-in with work or school accounts.

Before this capability, users needed to sign in with a personal Microsoft account to access owned add-ins on all of their devices: the list of add-ins associated with a particular account was stored along with a user’s personal Microsoft account. We had received feedback that this inhibited certain organizations from allowing users to access and use Store add-ins, because IT professionals in these organizations lacked visibility into what add-ins were being used in their organizations.

With this feature, Office 365 users in the enterprise will have Store add-ins associated with their work or school accounts, and will be able to use these add-ins on all devices where they sign in using these accounts. In cases where users have already associated a Microsoft account for Store add-ins, any new add-ins will automatically be associated with their work or school accounts if that is the primary account used to sign in to Office. Users will be able to view all add-ins on the My Add-ins dialog box.

This feature is now enabled for all users of the Office 2016 and Office 365 desktop applications (Word, Excel, PowerPoint and Project) and we plan to enable this functionality in the future for Office Online and Office for iPad – allowing more users to access and use Office add-ins.

Office Dev PnP Web Cast – Property bag trick for CSOM to enable additional configurations

$
0
0

In this PnP Web Cast we concentrated on so called "property bag trick" with CSOM or REST to adjust and change additional settings in site or in list level. This is something which we have mentioned few times in the PnP Yammer group discussions, but have never truly covered in guidance or in any of the previous videos.

"Property bag trick" means alternative way to adjust some of the list or site properties by directly manipulating them in the property bag of the particular object. In many cases when you update properties in these objects, those values are stored in the property bag of the object, rather than truly stored as separate property. Good example is SPWeb.NoCrawl property, which simply stores the current value to SPWeb.Properties collection for internal usage. NoCrawl property however was introduced also to updated CSOM package with the 2015 December Nuget release, so that's no longer needed, but is good example of the oob behavior and pattern.

By using the property bag trick approach you can possibly overcome critical business requirements even though needed properties or capabilities are not specifically exposed using CSOM. Good example of these kind of settings are following.

  • Configure available page layouts and site templates for publishing site
  • Configure list rating settings for a list in publishing site
  • Configure property bag entries to be crawled by search - See this blog post
  • Configure records management settings in list level

Code example used in the demo is available from the PnP sample library and is called as Core.ListRatingSettings and it's originally implemented by Akhilesh Nirapure from RapidCircle.  

Presentation used in this web cast is available from http://docs.com/OfficeDevPnP.


Video at PnP Channel 9.

Additional resources

See following links for additional details around covered topics.



What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this weekly Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

Office 365 Developer Patterns and Practices – January 2016 release

$
0
0

Office 365 Developer Patterns and Practices (PnP) January 2016 release is out with new contributions from community for the community. This post contains all the details related on what was included with the release and what else has been happening in the PnP world during the past month.

 

What is Office 365 Developer Patterns and Practices (PnP)?

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under 'dev' branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the PnP Core team and we are looking to extend the Core team with more community members.

Notice that since this is open source community program, there’s no SLAs for the support what we provide from program. There is however highly active PnP Yammer group, where you can get fast support on any questions around the existing materials. If you are interested on getting more closely involved, please check the following guidance from our GitHub wiki.

Some key statistics around PnP program from January release

Main resources around PnP program

January 2016 monthly community call

Agenda for the Tuesday 12th of January community call:

If you have any questions, comments or feedback, please participate in our discussions in the Office 365 Patterns and Practices Yammer group at http://aka.ms/OfficeDevPnPYammer. We already have more than 3.600 members in this group with lively discussions on different SharePoint and Office 365 related topics from on-premises and cloud perspective. This is the most active developer group in the Office 365 Technical network and we are definitely proud and thankful of that.


New PnP Weekly Web Cast

We started new PnP Weekly Web Cast with video series with new video on each Monday around key topics around the guidance or around hot topics from the community. Videos will be released to the PnP Channel 9 section. Here's list of videos released since last monthly communications.

PnP repositories in GitHub

There are quite a few different GitHub repositories under the PnP brand since we wanted to ensure that you can easily find and reuse what's relevant for you. We do also combine multiple solutions to one repository, so that you can more easily sync and get latest chanages of our released guidance and samples. In general we do recommend you to use the PnP sample search tool at dev.office.com for locating relevant material for you. This should be easier and faster than trying to locate relevant material from GitHub.

Here's the current repository structure, including short description for each of them.

  • PnP - Main repository for SP add-in, Office 365, Unified API etc. samples
  • PnP-Guidance - Guidance, presentations and articles which are partly sync'd to MSDN
  • PnP-Sites-Core - Office Dev PnP Core component
  • PnP-PowerShell - Office Dev PnP PowerShell Cmdlets
  • PnP-Provisioning-Schema - Community driven remote provisioning schema design and assets - PnP provisionign engine implements this schema
  • PnP-Tools - New repository for tools and scripts targeted more on on-premises (SP2013 & 2016) and hybrid scenarios
  • PnP-Office-Addins - Office Add-in samples and models
  • PnP-Partner-Pack - Packaged guidance with detailed instructions on setting things up in Office 365 and in Azure
  • PnP-Transformation - Material specifically for the transformation process. Currently includes samples and guidance around InfoPath replacement.

Latest changes

Provisioning Engine

The first version of the PnP remote provisioning engine was released with the April 2015 release. For the January 2016 release we have continued to add new supported capabilities and made improvements from stability perspective for both Office 365 and on-premises. This list contains the main updates that have been added in the January release:

  • Overall quality and performance improvements
  • Selectable object handlers - you can chose which of the elements are processed using code or PowerShell
  • Support for new 201512 provisioning schema
  • WebSettings section for site level settings like ReqeustAccessEmail, NoCrawl, WelcomePage, SiteLogo, MasterPage, CustomMasterPage. Some were previously under the composed look, but relocated here.
  • Folders in libraries and in lists
  • Security for files, folders, items and pages
  • Home page extraction
  • Composed Look updates with new logic
  • Localization design implemented in schema - engine implementation coming in february release
  • Support for custom token definitions via providers

Notice that engine does have backward compatibility, so all template files created with the old schema are still fully supported and if you re-serialized old schema file, it will be automatically transformed to use the latest schema version.

PnP library

We have done general cleaning in the repository related on Nuget package updates and also removed some samples, which are no longer releavant. We are planning to continue these cleaning activities during the next months as well to streamline the repository and to combine some samples for reducing the overall number of similar samples and ot make more room for Graph and Office 365 API related content. Currently repository is still heavily bias for the SharePoint related samples.

There's also significant amount of general updates on the existing samples done by the community on the code and documentation, which is great way to contribute as well.

  • PnP Core: Lots of re-factoring done to improve code quality and completeness:
    • Version increased to 2.0 and assemblies are signed for easier consumption
    • provisioning engine updates (see above)
    • Support for web browser based login to Office 365
    • Improvements to ADFS based login for on-premises
    • General bug fixing and quality improvements
    • Removal of deprecated methods
    • Build and test automation improvements
    • Nuget package for SPO has also dependency on AppForSharePointOnlineWebToolkit to get SharePointContext and TokenHelper automatically
    • Both PnP Core Nuget packages (cloud and on-premises) have been also updated accordingly.
  • New solution BusinessApps.HelpDesk demonstrates combining various Office 365 and Azure resources into a single application that can be consumed simultaneously. The application includes functionality and data from Azure Active Directory, Microsoft Graph, SQL Azure, Yammer, and SharePoint Online.
  • New sample UserProfile.BatchUpdate.API demonstrates usage of new User Profile Batch Update API. This capability is designed to handle mass updates cross multiple user profiles in the SharePoint Online. API makes it faster and more efficient to synchronize custom attributes from miscellanious systems to user profile properties.
  • New sample Office.TypeScriptAddin demonstrates extending the Visual Studio 2015 template for an Office task pane add-in with TypeScript and TypeScript type definitions.
  • Updated sample Core.JavaScript is a consolidated set of JavaScript examples for use in your SharePoint/Patterns and Practices projects.
  • Updated PnP-PowerShell Commands with new CommandLets and with few fixes
    • Overall quality improvements
    • PowerShell Cmdlets are signed for easier consumption
    • Support for web browser based login to Office 365
    • Updated documentation for CmdLets
  • Updates to the PnP Partner Pack
    • Code polishing
    • Included simple start-up templates
    • Improved documentation based on community input

PnP Guidance articles

The PnP Guidance repository has been setup for working on articles. Part of these articles are already available on MSDN and more will follow. Everyone can contribute or update these articles via updating them in GitHub and the changes will flow back to MSDN once the synchronization setup has been completed.

During this month we did some general updates on the articles, but there's no actual new guidance published. You can easily find the relevant guidance for you using our search tool at dev.office.com.

There's already a significant amount of articles that has been added to the PnP MSDN section at http://aka.ms/OfficeDevPnPMSDN

PnP Guidance videos

We did release one new guidance video during this month on top of the new web cast videos mentioned already above in this blog post. You can find all PnP videos from our Channel 9 section at http://aka.ms/OfficeDevPnPVideos. This location contains already significant amount of detailed training material, demo videos and community call recordings.

Key contributors for the January 2016 release

Here’s the list of active contributors (in alphabetical order) during past month in PnP repositories. This was holiday season and still we had significant amount of contributions from the community, whcih we are highly greatful. PnP is really about building tooling togther with teh community for the community, so your contributions are highly valued cross the Office 365 customers, partners and obviously also at Microsoft.

Thank you for your assistance and contributions from the behalf of the community. You are making a difference!

Here’s the list of Microsoft people who have been closely involved on the PnP work during last month.

Latest statistics

Here's some statistics from the PnP, PnP PowerShell and PnP Sites Core (core component) repository. There's visible impact of the GitHub re-structuring, which means that traffic and contributions are divided between multiple repositories. Due holiday season small drop on the visitor numbers, but that's as expected.

Contributions at PnP repository



Traffic at PnP repository

  

Contributions at PnP Sites Core repository



Traffic from PnP Sites Core repository



Contributions at PnP PowerShell repository



Traffic from PnP PowerShell repository

See About Repository Graphs for more details on above statistics.


Next steps

  • January 2016 monthly community call is on 12th of January at 8 AM PST for latest release details with demos - Download invite from http://aka.ms/OfficeDevPnPCall.
  • Following master merge will happen on 5th of February and February community call is on 9th of February 2016

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

Microsoft Graph WebHooks Update - January 2016

$
0
0

Hi, Gareth Jones here.  I recently joined the Microsoft Graph team from our friends over in OneNote. I'm beyond excited at the wonderful enthusiasm you've shown for the Microsoft Graph since we launched at Connect(); back in 2015 (wow, that sounds so retro now).


One area we didn't talk about too much at launch time was our preview of WebHooks for the API, so we wanted to dive in and explain a little more what you can do with the preview and talk about an upcoming breaking change to validate endpoints. If you're already using webhooks, skip ahead to the what's changing section at the end.


What's a webhook?

Webhooks are callbacks for the web. They let you create web apps that respond efficiently to change in your user's data. For example, if you want to keep up with changes to all the email messages in a user's Vacation folder, perhaps to extract hotel or flight information, you can create a webhook subscription and get notified whenever there's something new to process. This saves your app from having to regularly poll for changes.


So how do I get started?


If you're already coding with the Microsoft Graph API, you'll have an app registered, so you can authenticate and get an OAUTH token. If not, there's a walkthrough here.


Currently we support webhooks on mail, calendars and contacts, so you'll need to make sure you have requested one of the matching scopes: Mail.Read, Calendars.Read, or Contacts.Read.


Then you'll POST a request to the /subscriptions endpoint like so



POST https://graph.microsoft.com/beta/subscriptions
Content-type: application/json
Authorization: Bearer <YourOAuthToken>
{
  "changeType": "Created",
  "notificationUrl": "https://<YourAppURLHere>/api/webhookCallback",
  "resource": "me/messages"
}

This request asks for all changes to the user's mail to be sent to the '/api/webhookCallback' path on your app. Note that the URL for your app MUST be https. You can also ask for 'me/contacts" or "me/events" or a specific folder, such as 'me/folders('vacation')/messages'.

If all goes well, you'll get a 201 Created response with the details of the subscription including an expiration time. You'll need to replace your subscription after the expiration time with a new one. In future we'll allow renewing an existing subscription. Here's an example response:



HTTP/1.1 201 Created
{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#subscriptions/$entity",
  "subscriptionId":"7f105c7d-2dc5-4530-97cd-4e7af6534c07",
  "resource":"me/messages",
  "changeType":"Created",
  "notificationUrl":"https://<YourAppURLHere>/api/webhookCallback",
  "subscriptionExpirationDateTime":"2015-11-20T18:23:45.9356913Z"
}

What do I get?

As change to the user's email happens, your webhook callback will then start receiving notification packets. We'll send them batched up for efficiency, so you'll typically see an array:



POST https://<YourAppURLHere>/api/webhookCallback
Content-type: application/json
{
  "value":[
    {
      "subscriptionId":"7f105c7d-2dc5-4530-97cd-4e7af6534c07",
      "subscriptionExpirationDateTime":"2015-11-20T18:23:45.9356913Z",
      "changeType":"Created",
      "resource":"Users/ddfcd489-628b-7d04-b48b-20075df800e5@1717622f-1d94-c0d4-9d74-f907ad6677b4/messages/AAMkADMxZmEzMDM1LTFjODQtNGVkMC04YzY3LTBjZTRlNDFjNGE4MwBGAAAAAAAr-q_ZG7oXSaqxum7oZW5RBwCoeN6SYXGLRrvRm_CYrrfQAAAAAAEMAACoeN6SYXGLRrvRm_CYrrfQAACvtMe6AAA=",
      "resourceData":{
        "@odata.type":"#Microsoft.Graph.Message",
        "@odata.id":"Users/ddfcd489-628b-7d04-b48b-20075df800e5@1717622f-1d94-c0d4-9d74-f907ad6677b4/messages/AAMkADMxZmEzMDM1LTFjODQtNGVkMC04YzY3LTBjZTRlNDFjNGE4MwBGAAAAAAAr-q_ZG7oXSaqxum7oZW5RBwCoeN6SYXGLRrvRm_CYrrfQAAAAAAEMAACoeN6SYXGLRrvRm_CYrrfQAACvtMe6AAA=",
        "@odata.etag":"W/\"CQAAABYAAACoeN6SYXGLRrvRm+CYrrfQAACvvGdb\"",
        "Id":"AAMkADMxZmEzMDM1LTFjODQtNGVkMC04YzY3LTBjZTRlNDFjNGE4MwBGAAAAAAAr-q_ZG7oXSaqxum7oZW5RBwCoeN6SYXGLRrvRm_CYrrfQAAAAAAEMAACoeN6SYXGLRrvRm_CYrrfQAACvtMe6AAA="
      }
    }
  ]
}

That's all there is to it! From there you can go and retrieve more details about the changed messages.


As a note, webhooks currently only work with app+user tokens, as all subscriptions are for changes in data belonging to a specific user. You can find more details about Microsoft Graph webhooks here.


What's changing

As a preview, we're always taking feedback and making minor adjustments to our APIs as we get them ready for production primetime in future. In the coming week, we'll be tightening up our anti-spam protection a little with an extra validation check required before notifications start flowing.


As part of the act of subscribing, we'll send a POST request to validate that there's a real live callback URL waiting to receive the notifications.



POST https://<YourAppURLHere>/api/webhookCallback?validationtoken=<token>

We expect the <token> value to be echoed back in the response as plain/text within 10 seconds.


As ever, please let us know how you like Microsoft Graph and webhooks in particular.

Microsoft Graph Changelog

$
0
0

Announcing today the Microsoft Graph Changelog, from now on you will have access to all the changes, updates, and fixes happening to Microsoft Graph. In the first release of the changelog, we are providing you a simple experience to find out all new additions and fixes in since the launch and during the month of December 2015. Going forward we will be adding changes to the changelog as well, so stay tuned! And let us know your feedback.  

Check out the change log at 
https://graph.microsoft.io/changelog.

Office Dev PnP Web Cast – Help Desk application with Microsoft Graph

$
0
0

In this PnP Web Cast we concentrated on Help Desk web application solution available from the PnP sample/solution gallery. This solution demonstrates how to build single page app using ASP.net MVC model which connects to different services in the Office 365.

The idea behind the Help Desk is to provide a dashboard that a group of Help Desk Operators could utilize to manage requests from users.  A user sends an e-mail to the Operations Help Desk requesting assistance.  When the e-mail arrives, it's displayed on the Help Desk dashboard to let the Operators know that there's a new pending request.  From there, the e-mail can be opened and assigned to an individual Operator, where the e-mail content is automatically converted to a Support Ticket.  The Support Tickets are stored in a database.  The current Operator's screen will display the list of active Support Tickets for that particular Operator.  Additionally, the dashboard will display the Operations Yammer group feed so that if any of the Operators have questions for the other Operations engineers, they have an easy and collaborative place to have those conversations.  Finally, any Announcements from the Operations SharePoint site is also displayed on the dashboard so that the Help Desk Operators are all up to date on any current issues.

Web cast presenters: Jonathan Huss, Vesa Juvonen

Covered solution is called BusinessApps.HelpDesk and you can check more details around the structure and implementation from the PnP Sample Gallery. Jonathan also wrote nice blog post series to explain specific topics from this solution.



The Help Desk demo incorporates a few cloud based technologies, including the following:

  1. Azure Active Directory
  2. Microsoft Graph (messages, mail folders, and groups)
  3. SQL Azure
  4. Yammer
  5. SharePoint CSOM via Azure AD authentication

Presentation used in this web cast is available from http://docs.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following references for additional details

  • BusinessApps.HelpDesk - Demonstrates simple site collection provisioning using Azure WebJobs
  • The Help Desk Demo - Blog post series from Jonathan covering different areas of the solution
  • Microsoft Graph - Documentation and guidance for Microsoft Graph, including great Graph Explorer to test requests while developing your own customizations

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this weekly Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

Office Dev PnP Web Cast – SharePoint Feature Framework vs Remote Provisioning

$
0
0

In this PnP Web Cast we concentrate on the classic discussion around the flexibility and future of the SharePoint feature framework based provisioning models comparing to remote provisioning patterns. Purpose of the web cast was to explain challenges around the classic feature framework based provisioning so that these challenges won't come as a surprise and also how to potentially avoid them with remote provisioning patterns.

Feature framework usage is fully supported with SharePoint on-premises and in SharePoint Online, but it does have multiple challenges around the life cycle management of your deployments and around farm or tenant level governance. Due these issues, it's quite common that customers and partners move into code based provisioning, which in many cases is much more reliable and future proof model for your deployment. 

There are two commonly known remote provisioning frameworks available as open source, which can be used to avoid the challenges around the feature framework. Remote provisioning models are also something what we are looking into more closely in the Office 365 engineering to provide native service level capability for replacing the classic patterns. For now, here's the commonly used frameworks, which are both community and open source initiates. 

Web cast was done with three persons who all have up to 10 years' hands-on development and consulting experience with SharePoint starting at least from SharePoint 2007 version when feature framework was initially introduced. Vesa used to also own the feature framework specific topics in the legendary Microsoft Certified Master for SharePoint program during the life cycle of the MCM program (from 2008 to 2014).

Web cast presenters: Erwin van Hunen, Bert JansenVesa Juvonen

In the demo Erwin shows how you can apply required changes to existing sites using remote provisioning patterns with PowerShell. More specifically in this case demonstration shows how you can add and manipulate already provisioned lists by adding a new site column to existing list instances cross site collections in your farm or tenant. With feature framework based models, this would also require you to perform changes by running code regardless if they initial lists are provisioned using farm or sandbox solutions.
 

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around the remote provisioning models.

See following guidance article from the PnP guidance library for additional reference around the covered topics.

See following samples from the PnP sample library for additional reference around the covered topics.

  • Provisioning.Framework.Console - Demonstrates usage of the PnP provisioning engine for applying branding and needed customizations to created site collections
  • Provisioning.Framework.Cloud.Async - Provisioning solution which shows how to take advantage of the PnP provisioning engine from Azure Web Job. Simplistic UI, but shows the overall process nicely.
  • PnP Partner Pack - Starter kit for the partners and customers around the site provisioning topics. Adds for example "Save provisioning template" capability to site settings page for site collection and tenant wide templates

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft


Office Dev PnP Web Cast – oAuth and OpenID Connect for Office 365 developer

$
0
0

In this PnP Web Cast we concentrate on the Azure AD, oAuth and OpenID connect and how the plumping actually works when you are using Azure Active Directory based authorization for yours add-ins/apps which access services in Office 365 or with other services as well.

In the demo Paolo demonstrates how the authorization process works using Fiddler based on HTTP requests. This is the process which works cross any technologies connecting to Office 365 or to any Azure AD services using the OpenID connect approach. 

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around the remote provisioning models.

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

New SharePoint CSOM version released for SharePoint Online - February 2016

$
0
0

We are happy to announce availability of new SharePoint Client Side Object Model (CSOM) version targeted for the Office 365 or more specifically for SharePoint Online. This update contains new Project Online CSOM capabilities and also few updates on the existing SharePoint CSOM assemblies. You can find the latest CSOM package for SharePoint online, including now the Project Online CSOM assembly, from the NuGet gallery with an id of 'Microsoft.SharePointOnline.CSOM'. We are also working on updating the redistributable package in upcoming weeks, but you can already right now start using some of these new capabilities in your solutions.

Version of the released CSOM package is 16.1.4915.1200. Old version of the NuGet has also not been removed, so that your existing solutions will continue working without issues and you can decide when the new version is taken into use. Notice that even though the Nuget version is increased to 16.1.4915.1200, actual assembly version of the released assemblies is 16.1.0.0. You can also check the version of the assemblies from the File Version attribute, which alings with the Nuget version.



Notice. If you like to operate with SharePoint Online rather using PowerShell, also the SharePoint Online Management Shell has been updated at Microsoft download site to match the 16.0.4915.1200 version.

Project Online CSOM

We have now included the Project Online CSOM library n this NuGet package. The Project Online CSOM library includes access to all the enhancements we have made towards improving the our API. We will continue to provide newer versions of the library in the this Nuget package going forward. Project Online CSOM library assembly is named as 'Microsoft.ProjectServer.Client.dll' and will be installed on your Visual Studio projects as part the SharePoint Online CSOM package.

We will release more details on the project Online CSOM package during upcoming weeks.

New properties and methods cross assemblies

Here's a raw list of all the new properties and methods in the assemblies. Notice that some of these properties and methods are meant to be used only internally, even though they are exposed in the CSOM API. This means that their usage models might not be completely straight forward and results could be unexpected. Below list contains main changes in the particular assemblies. We have filtered out those elements which are not relevant or change is minimal. MSDN library for the CSOM assemblies will be updated to match the latest version at some point. We've included some level of description for some of the mentioned properties where needed.


Microsoft.SharePoint.Client

 

  • public class Microsoft.SharePoint.Client.CustomActionElement
  • public class Microsoft.SharePoint.Client.CustomActionElementCollection

 

  • public property Microsoft.SharePoint.Client.DlpPolicyTip.TwoLetterISOLanguageName
  • public property Microsoft.SharePoint.Client.InformationRightsManagementFileSettings.IrmEnabled
  • public property Microsoft.SharePoint.Client.List.CustomActionElements
  • public method Microsoft.SharePoint.Client.ListItem.AddHashTag
  • public method Microsoft.SharePoint.Client.RecycleBinItemCollection.DeleteAllSecondStageItems

 

  • public property Microsoft.SharePoint.Client.UserCustomAction.DescriptionResource
  • public property Microsoft.SharePoint.Client.UserCustomAction.TitleResource

 

  • public method Microsoft.SharePoint.Client.Web.GetFileByGuestUrlEnsureAccess
  • public method Microsoft.SharePoint.Client.Web.GetSharingLinkKind

 

  • public property Microsoft.SharePoint.Client.View.VisualizationInfo
  • public class Microsoft.SharePoint.Client.Visualization
  • public class Microsoft.SharePoint.Client.VisualizationField
  • public class Microsoft.SharePoint.Client.VisualizationStyleSet

Microsoft.SharePoint.Client.Publishing

 

  • public property Microsoft.SharePoint.Client.Publishing.VideoChannel.DownloadUrlVisibleMinPermission


  • public method Microsoft.SharePoint.Client.Publishing.VideoItem.GetPlaybackMetadata
  • public property Microsoft.SharePoint.Client.Publishing.VideoItem.ThumbnailSelection
  • public property Microsoft.SharePoint.Client.Publishing.VideoItem.VideoDownloadUrl


  • public class Microsoft.SharePoint.Client.Publishing.VideoPlaybackMetadata
  • public enum Microsoft.SharePoint.Client.Publishing.VideoPlaybackOrigin


 

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

Office Dev PnP Web Cast – Asynchronous operations with Office 365 using Azure WebJobs

$
0
0

In this PnP Web Cast we concentrated on asynchronous operation pattern with Office 365 using Azure WebJobs. This is really powerful pattern for performing scheduled and on-demand operations, which is commonly needed for long lasting operations. Pattern is taking advantage of continuously running Azure WebJob model with communications using Azure storage queues.

Typical use cases for asynchronous operations would be for example following:

  • Long running AppInstalled events
  • Long running remote event receiver events
  • Site collection or site provisioning
  • Long running integration scenarios for example to on-premises
  • Governance tasks towards sites and other Office 365 content


Video at PnP Channel 9.

During the web cast we demonstrated the process with simplistic sample from the PnP sample gallery called Core.QueueWebJobUsage. This sample concentrates on showing the actual pattern without any additional complexity.

Notice. Key reason for using the asynchronous pattern is simply time out handling either in SharePoint or in Azure web sites. Good example of this challenge is for example site collection provisioning which you cannot execute in the process of Azure web site, since Azure web site has 60 second time out for the process execution. This means that you'll need to offload the business logic execution to back end process which could be for example a Azure WebJob. 

Presentation used in this web cast is available from http://docs.com/OfficeDevPnP.

Additional resources

See following PnP videos for covering branding with add-in model topics.

See following samples from the PnP library for additional reference around the covered topics.

See following references for additional details around Azure WebJobs

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

Office 365 Developer Patterns and Practices (PnP) web cast series cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft

PowerApp Your Office and SharePoint Mobile Solutions

$
0
0

by Rob Lefferts, on November 30, 2015

Across Office, Office 365 and SharePoint, we are incredibly excited about people being productive. This fuels not only our passion to reinvent productivity, but also our vision to empower customers and partners to easily create their own custom solutions. This is the core of extensibility across everything in the Office family --- it is not just a set of tools for productivity, it is also a platform for you to reimagine the way the world should work. Whether that comes from custom document templates in Word, workflow and forms driving a custom document approval in SharePoint, Add-Ins powering integration between a spreadsheet and an inventory system, or a purpose-built mobile app that an HR recruiting department uses to vet candidates. All of these solutions can be super-charged by taking advantage of the broad capabilities of Office and SharePoint.

We see a broad range of solutions builders working with a broad range of tools to deliver solutions that leverage the Office platform. Across Office and SharePoint, this include roughly 3 million professional developers working as consultants, independent software vendors, solution integrators and within numerous corporate IT departments. Those developers use our native tools, open source frameworks, mobile SDKs, Visual Studio, and work in a wide array of programming languages and platforms. Our partner developer ecosystem adds a variety of capabilities for crafting business applications -- from deeper and more flexible custom forms to a wider variety of workflow conditions, actions – both within the SharePoint experience and in mobile applications. We love welcoming new ways to enhance our customer’s investments in SharePoint and Office.


This is exactly why we are excited to see the Microsoft PowerApps tool announcement today, because it opens up the range of solution builders that can work with Office. PowerApps is an enterprise software as a service for innovators everywhere to connect, create, and share business apps on any device. It couples naturally with the vision of Office as a platform and takes advantage of capabilities like mail, calendar, contacts, users, lists, and libraries from across the Office Family: Office 365, SharePoint Online, SharePoint on-premises, Excel and OneDrive. With PowerApps, you can build apps with clicks – not code – and with templates for many common app types to help you get started. It’s no longer a matter of end-users waiting for IT or a professional developer to write the code; they can easily build apps to solve their own problems. Building a solution with PowerApps on top of Office is a simple matter of (a) open the PowerApps tool, (b) connect to an Office/SharePoint data source, (c) customize the UI and (d) start using your great new app.



A mobile solution built using PowerApps showing information from a SharePoint List.
 

Here are a few simple scenarios to show the kind of things that will be possible:

  • Already storing information inside a SharePoint List? For years, users have been taking advantage of the great capabilities of SharePoint Lists to make it easy to define, share and extend data, and over 1 million developers have been using it as a platform for just that reason. One simple example is using it to store a list of images for product device inventory.

    Now imagine that you can easily build the iOS, Android and Windows application that gives you a great, seamless mobile experience customized to just how you want to view those images. Or make it easy for almost any smartphone user to update data, view information across any device, and even add new photos on the go to your list of product ideas. PowerApps makes this possible both against SharePoint Online, running in Office 365, and also against SharePoint running inside your company.

  • Need specific information on the go? Suppose you’ve got a giant set of financial data inside Excel and you would like to surface a targeted mobile experience that highlights a few of the most important pieces of information on the go. This is possible with PowerApps. Again, this is not about replacing the full Excel experience. It's about crafting the best possible experience for the mobile- and cloud-first world – letting you easily access the pieces of information you need for your particular business process, while out and about.

  • Looking to integrate your calendar? What if your sales people need a custom application that connects together a bunch of related content about the customers they’re meeting with? This could include critical information from Office 365, like their Outlook calendar and related documents in SharePoint, as well as your company’s own information about the customers they're meeting with? Again, because PowerApps has built-in connectors for these Office services, this is a very natural and easy scenario.

  • Storing documents in OneDrive and OneDrive for Business? Many key business situations require ready access to documents, whether it’s a PowerPoint deck to drive your sales pitch, a word document to define your legal contract, an Excel document to keep track of financial data, or a OneNote notebook to help you stay on top of a wide variety of notes and items. Because PowerApps easily connect to document libraries from SharePoint, OneDrive and OneDrive for business, it is very easy to build great solutions that easily surface these critical types of content.

If you are a developer using the Office platform, then you already know how to do a bunch of these things, but PowerApps will enable several things that will be great for you.

First, PowerApps allows you to create new business apps very quickly in order to address employee demands. It brings app building with Office to a much, much broader range of users, letting them fix the simple problems themselves, while professional developers focus on the really challenging issues.

Second, PowerApps builds on your existing investments by helping you connect to rich business data from a variety of sources – including Office and other popular cloud services.

Third, PowerApps provides secure management and sharing of apps consistent with your company IT policies, so you don’t have to worry about chasing down rogue applications or who has access to the information.

And finally, PowerApps offers lots of great integration points for developers to introduce new data and experiences. If you have been developing with Office and SharePoint for a while, you might naturally ask the question whether this intended as a replacement for InfoPath or SharePoint Designer. It’s a fair question, but the short answer is “no.” All of these tools are designed to help end users craft solutions, but PowerApps is really a fresh take on the problem of solution-building in a modern, cloud and mobile world. As such, we think you’ll be delighted with its natural and intuitive design experience, its real strength of building gorgeous mobile experiences, and its powerful connection to a variety of cloud services.

It will be great to see all the things that users can create against Office and SharePoint with PowerApps. It is part of our vision to support the widest possible range of users, developers and tools to create custom, compelling, fantastic solutions that take advantage of Office data, capabilities and experiences. It is also a roadmap for future investment --- over time you will see the Office family and PowerApps continue to work together to build more and more ways to unleash your imagination and vision for productivity.

For more resources check out the Channel 9 PowerApps page with all of the developer resources you will need to get started today.

Office Dev PnP Web Cast – oAuth and OpenID Connect for Office 365 developer

$
0
0

In this PnP Web Cast we concentrate on the Azure AD, oAuth and OpenID connect and how the plumbing actually works when you are using Azure Active Directory based authorization for yours add-ins/apps which access services in Office 365 or with other services as well.

In the demo Paolo demonstrates how the authorization process works using Fiddler based on HTTP requests. This is the process which works cross any technologies connecting to Office 365 or to any Azure AD services using the OpenID connect approach. 

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around the remote provisioning models.

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 1st of February 2016

New SharePoint CSOM version released for SharePoint Online - February 2016

$
0
0

We are happy to announce availability of new SharePoint Client Side Object Model (CSOM) version targeted for the Office 365 or more specifically for SharePoint Online. This update contains new Project Online CSOM capabilities and also few updates on the existing SharePoint CSOM assemblies. You can find the latest CSOM package for SharePoint online, including now the Project Online CSOM assembly, from the NuGet gallery with an id of 'Microsoft.SharePointOnline.CSOM'. We are also working on updating the redistributable package in upcoming weeks, but you can already right now start using some of these new capabilities in your solutions.

Version of the released CSOM package is 16.1.4915.1200. Old version of the NuGet has not been removed, so that your existing solutions will continue working without issues and you can decide when the new version is taken into use. Notice that even though the Nuget version is increased to 16.1.4915.1200, actual assembly version of the released assemblies is 16.1.0.0. You can also check the version of the assemblies from the File Version attribute, which alings with the Nuget version.



Notice. If you like to operate with SharePoint Online rather using PowerShell, also the SharePoint Online Management Shell has been updated at Microsoft download site to match the 16.0.4915.1200 version.

Project Online CSOM

We have now included the Project Online CSOM library n this NuGet package. The Project Online CSOM library includes access to all the enhancements we have made towards improving the our API. We will continue to provide newer versions of the library in the this Nuget package going forward. Project Online CSOM library assembly is named as 'Microsoft.ProjectServer.Client.dll' and will be installed on your Visual Studio projects as part the SharePoint Online CSOM package.

We will release more details on the project Online CSOM package during upcoming weeks.

New properties and methods cross assemblies

Here's a raw list of all the new properties and methods in the assemblies. Notice that some of these properties and methods are meant to be used only internally, even though they are exposed in the CSOM API. This means that their usage models might not be completely straight forward and results could be unexpected. Below list contains main changes in the particular assemblies. We have filtered out those elements which are not relevant or change is minimal. MSDN library for the CSOM assemblies will be updated to match the latest version at some point. We've included some level of description for some of the mentioned properties where needed.


Microsoft.SharePoint.Client

 

  • public class Microsoft.SharePoint.Client.CustomActionElement
  • public class Microsoft.SharePoint.Client.CustomActionElementCollection

  • public property Microsoft.SharePoint.Client.DlpPolicyTip.TwoLetterISOLanguageName
  • public property Microsoft.SharePoint.Client.InformationRightsManagementFileSettings.IrmEnabled
  • public property Microsoft.SharePoint.Client.List.CustomActionElements
  • public method Microsoft.SharePoint.Client.ListItem.AddHashTag
  • public method Microsoft.SharePoint.Client.RecycleBinItemCollection.DeleteAllSecondStageItems

  • public property Microsoft.SharePoint.Client.UserCustomAction.DescriptionResource
  • public property Microsoft.SharePoint.Client.UserCustomAction.TitleResource

  • public method Microsoft.SharePoint.Client.Web.GetFileByGuestUrlEnsureAccess
  • public method Microsoft.SharePoint.Client.Web.GetSharingLinkKind

  • public property Microsoft.SharePoint.Client.View.VisualizationInfo
  • public class Microsoft.SharePoint.Client.Visualization
  • public class Microsoft.SharePoint.Client.VisualizationField
  • public class Microsoft.SharePoint.Client.VisualizationStyleSet

Microsoft.SharePoint.Client.Publishing

 

  • public property Microsoft.SharePoint.Client.Publishing.VideoChannel.DownloadUrlVisibleMinPermission

  • public method Microsoft.SharePoint.Client.Publishing.VideoItem.GetPlaybackMetadata
  • public property Microsoft.SharePoint.Client.Publishing.VideoItem.ThumbnailSelection
  • public property Microsoft.SharePoint.Client.Publishing.VideoItem.VideoDownloadUrl

  • public class Microsoft.SharePoint.Client.Publishing.VideoPlaybackMetadata
  • public enum Microsoft.SharePoint.Client.Publishing.VideoPlaybackOrigin

 

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 4th of February 2016

Office Dev PnP Web Cast – Introduction to Microsoft Graph for Office 365 developer

$
0
0

In this PnP Web Cast we concentrate on the Microsoft Graph and more specifically on how you can use that without in your solutions to access user or company specific information when you are developing solutions for Office 365. In the presentation part we concentrate on covering what's in the Microsoft Grah and how you can use that in general. 

In the demo section Paolo shows what's currently provided from the Microsoft Graph in the v1.0 from the service end point and how you can access this information from ASP.net MVC application. Demonstrated Visual Studio solution is available from the PnP sample gallery and is called as OfficeDevPnP.MSGraphAPIDemo.

We would recommend of having a look on following PnP Web Cast before this one, which explains the high level technical concepts around the Microsoft Graph - PnP Web Cast - oAuth and OpenID Connect for Office 365 developer.

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around the remote provisioning models.

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under Dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 8th of February 2016


Office 365 Developer Patterns and Practices – February 2016 release

$
0
0

Office 365 Developer Patterns and Practices (PnP) February 2016 release is out with new contributions from community for the community. This post contains all the details related on what was included with the release and what else has been happening in the PnP world during the past month.

 

What is Office 365 Developer Patterns and Practices (PnP)?

PnP is community driven open source initiative where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 in general and also SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under 'dev' branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the PnP Core team and we are looking to extend the Core team with more community members.

Notice that since this is open source community program, there’s no SLAs for the support what we provide from program. There is however highly active PnP Yammer group, where you can get fast support on any questions around the existing materials. If you are interested on getting more closely involved, please check the following guidance from our GitHub wiki.

Some key statistics around PnP program from February release

Main resources around PnP program

February 2016 monthly community call

Agenda for the Tuesday 9th of February (8 AM PST) community call:

If you have any questions, comments or feedback, please participate in our discussions in the Office 365 Patterns and Practices Yammer group at http://aka.ms/OfficeDevPnPYammer. We already have more than 3.800 members in this group with lively discussions on different SharePoint and Office 365 related topics from on-premises and cloud perspective. This is the most active developer group in the Office 365 Technical network and we are definitely proud and thankful of that.


PnP Weekly Web Casts

We started new PnP Weekly Web Cast with video series with new video on each Monday around key topics around the guidance or around hot topics from the community. Videos will be released to the PnP Channel 9 section. Here's list of videos released since last monthly communications.

PnP repositories in GitHub

There are quite a few different GitHub repositories under the PnP brand since we wanted to ensure that you can easily find and reuse what's relevant for you. We do also combine multiple solutions to one repository, so that you can more easily sync and get latest chanages of our released guidance and samples. In general we do recommend you to use the PnP sample search tool at dev.office.com for locating relevant material for you. This should be easier and faster than trying to locate relevant material from GitHub.

Here's the current repository structure, including short description for each of them.

  • PnP - Main repository for SP add-in, Microsoft Graph etc. samples
  • PnP-Guidance - Guidance, presentations and articles which are partly sync'd to MSDN
  • PnP-Sites-Core - Office Dev PnP Core component
  • PnP-PowerShell - Office Dev PnP PowerShell Cmdlets
  • PnP-Tools - New repository for tools and scripts targeted more for IT Pro's and for on-premises for SP2013 and SP2016
  • PnP-Office-Addins - Office Add-in samples and models (starting)
  • PnP-Partner-Pack - Packaged guidance with detailed instructions on setting things up in Office 365 and in Azure.
  • PnP-Transformation - Material specifically for the transformation process. Currently includes samples around InfoPath replacement. Some tools coming also soon.
  • PnP-OfficeAddins - Samples for the Office Add-ins development
  • PnP-Provisioning-Schema - PnP Provisioning engine schema repository


What's supportability story around PnP material?

Following statements apply cross all of the PnP samples and solutions, including samples, core component(s) and solutions, like PnP Partner Pack.

  • PnP guidance and samples are created by Microsoft & by the Community
  • PnP guidance and samples are maintained by Microsoft & community
  • PnP uses supported and recommended techniques
  • PnP implementations are reviewed and approved by Microsoft engineering
  • PnP is open source initiative by the community – people who work on the initiate for the benefit of others, have their normal day job as well
  • PnP is NOT a product and therefore it’s not supported through Premier Support or other official support channels
  • PnP is supported in similar ways as other open source projects done by Microsoft with support from the community by the community
  • There are numerous partners that utilize PnP within their solutions for customers. Support for this is provided by the Partner. When PnP material is used in deployments, we recommend to be clear with your customer / deployment owner on the support model

Latest changes

Provisioning Engine

The first version of the PnP remote provisioning engine was released with the April 2015 release. For the February 2016 release we have continued to add new supported capabilities and made improvements from stability perspective for both Office 365 and on-premises. This list contains the main updates that have been added in the February release:

  • Significant overall quality and performance improvements
  • Export support for master pages and page layouts in publishing sites
  • Support for custom action resource handling (language support)
  • Updates on publishing site handling process
  • Updates on home page extraction process with publishing and non-publishing sites
  • Updates on feature handling process - possible exceptions logged, but process not aborted
  • Localization support for labels
  • Token parser changed to be public
  • Updated base templates for the SPO and 2016 - used in delta handling

NOTICE: February release of the PnP Core Component or specifically engine has dependency on using latest SharePoint Online CSOM package released on 4th of February.

Known issues

  • There's a known issue around JSON seriazliation in context of the CustomAction.Rights element. Team is working on getting this resolved. Propability of hitting the issue is relatively small.

PnP library

We have done general cleaning in the repository related on Nuget package updates and also removed some samples, which are no longer releavant. We are planning to continue these cleaning activities during the next months as well to streamline the repository and to combine some samples for reducing the overall number of similar samples and ot make more room for Graph and Office 365 API related content. Currently repository is still heavily bias for the SharePoint related samples.

There's also significant amount of general updates on the existing samples done by the community on the code and documentation, which is great way to contribute as well.

  • PnP Core: Lots of re-factoring done to improve code quality and completeness:
    • provisioning engine updates (see above)
    • Updates on rating controls in the lists - enable also for non-publishing sites
    • Methods for enabling and disabling Request access at web level for SPO CSOM
    • Remove field by fied ID added as new method
    • General bug fixing, performance and quality improvements
    • Removal of deprecated methods
    • Build and test automation improvements with unit test changes
    • Yammer embed support added for on-premises (SP2013)
    • Preparations for SP2016 specific version - coming in March
    • 16 nuget package includes a dependency for the WindowsAzure.Storage and Microsoft.Azure.ActiveDirectory.GraphClient nuget packages
    • Both PnP Core Nuget packages (cloud and on-premises) have been also updated accordingly.
  • New sample OutlookNotificationsAPI.WebAPI which is ASP.NET Web API project validating and responding to Outlook Notifications - created with the Outlook Notifications REST API. The sample covers the concept of subscribing for notifications, validating notification URLs and inspecting the monitoried entities by calling the Outlook REST API using persisted tokens.
  • New sample MicrosoftGraph.Office365.Generic as generic sample solution which demonstrates typical operations with Microsoft Graph towards Calendar, Contacts, Files, Unified Groups and users.
  • New sample MicrosoftGraph.Office365.Simple.MailAndFiles as simplistic ASP.net MVC application to query personal emails and files using Microsoft Graph showing also dynamic querying of the information with ajax queries. Sample uses also Office UI Fabric to provide consistent user interface experience with standardized controls and presentation.
  • New console utility JDP Remediation - CSOM which can be used to discover or address typical add-in model transformation issues using CSOM operations.
  • New farm solution Feature activation blocker which can be used to block activation of features from the UI of SharePoint farm. Feature Id's and message shown for the end users can be configured dynamically.
  • Updated PnP-PowerShell Commands with new CommandLets and with few fixes
    • Overall quality improvements and bug fixes
    • Updated documentation for CmdLets
  • Updates to the PnP Partner Pack (delayed release later this week)
    • Significant updates on the setup guidance
    • Updated to use latest CSOM Nuget package
    • Updated code to handle the provisioning time logic

PnP Guidance articles

The PnP Guidance repository has been setup for working on articles. Part of these articles are already available on MSDN and more will follow. Everyone can contribute or update these articles via updating them in GitHub and the changes will flow back to MSDN once the synchronization setup has been completed.

During this month we did some general updates on the articles, but there's no actual new guidance published. You can easily find the relevant guidance for you using our search tool at dev.office.com.

There's already a significant amount of articles that has been added to the PnP MSDN section at http://aka.ms/OfficeDevPnPMSDN

PnP Guidance videos

We did release two new guidance video during this month on top of the new web cast videos mentioned already above in this blog post. You can find all PnP videos from our Channel 9 section at http://aka.ms/OfficeDevPnPVideos. This location contains already significant amount of detailed training material, demo videos and community call recordings.

Key contributors for the February 2016 release

Here’s the list of active contributors (in alphabetical order) during past month in PnP repositories. PnP is really about building tooling togther with teh community for the community, so your contributions are highly valued cross the Office 365 customers, partners and obviously also at Microsoft.

Thank you for your assistance and contributions from the behalf of the community. You are making a difference!

Here’s the list of Microsoft people who have been closely involved on the PnP work during last month.

Latest statistics

Here's some statistics from the PnP, PnP PowerShell and PnP Sites Core (core component) repository. There's visible impact of the GitHub re-structuring, which means that traffic and contributions are divided between multiple repositories. Due holiday season small drop on the visitor numbers, but that's as expected.

Contributions at PnP repository



Traffic at PnP repository

  

Contributions at PnP Sites Core repository



Traffic from PnP Sites Core repository



Contributions at PnP PowerShell repository



Traffic from PnP PowerShell repository

See About Repository Graphs for more details on above statistics.


Next steps

  • February 2016 monthly community call is on 9th of February at 8 AM PST for latest release details with demos - Download invite from http://aka.ms/OfficeDevPnPCall.
  • Following master merge will happen on 4th of March and March community call is on 8th of March 2016 

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 8th of February 2016

Office Dev PnP Web Cast – Introduction to Authentication Manager in PnP Core Library

$
0
0

In this PnP Web Cast we concentrate on the Office 365 Dev PnP Core Component which is designed to increase the productivity of developers when you are developing applications for SharePoint Online or for SharePoint on-premises. It encapsulates numerous complex operations to more streamlined methods and usage, so that developers can more efficiently concentrate on solving business problems. PnP Core component is released as Nuget packageand can be used in provider hosted add-ins or from native windows applications, like with console applications. It's also used by the PnP PowerShell CmdLets, which enables you to take advantage of the Core Component capabilities without the need of using Visual Studio.

There are currently two different versions of the PnP Core Component, one targeted for SharePoint Online and for SharePoint 2013 on-premises. SharePoint 2016 version is coming later 2016. Different versions are released due the differences in supported CSOM operations.

One of the great capabilities in the PnP Core Component is the AuthenticationManager class, which can be used to get SharePoint ClientContext easily regardless of the used authentication models in SharePoint Online or in SharePoint on-premises. Supported authentication models for your application are following.

  • SharePoint Online - With credentials
  • SharePoint Online - With web loging
  • SharePoint Online - App Only
  • SharePoint Online - Azure Active Directory - Native Client
  • SharePoint Online - Azure Active Directory - App Only
  • SharePoint 2013 / 2016 - With credentials
  • SharePoint 2013 / 2016 - ADFS mixed authentication
  • SharePoint 2013 / 2016 - App only

In the demo section Bert concentrates on showing how to use different authentication methods when you need to gain access to SharePoint Online.

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around the remote provisioning models.

Using Azure AD with AuthenticationManager (from PnP Partner Pack)

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 15th of February 2016

Office Dev PnP Web Cast – Provider hosted add-in infrastructure setup for SharePoint on-premises

$
0
0

In this PnP Web Cast we concentrate on the different infrastructural options around setting up provider hosted add-in environment for SharePoint 2013 or SharePoint 2016. This time we do not have specific demo included in the web cast, we rather concentrate on the detailed considerations around the provider hosted add-in model environment. Covered topics are following.

  • Considerations for provider hosted add-in hardware requirements
  • Different logical network designs with provider hosted environments for on-premises
  • Considerations around using either low trust or high trust authentication options in on-premises

Classic farm or full trust code solutions will be also supported by SharePoint 2016, but we strongly recommend moving to SharePoint add-in model based implementations. This has multiple different benefits, like following:

  • They are the focus of Office engineering team moving forward
  • Greatly reduce the risk of impacting the performance of SharePoint Server farms
  • Improve the stability and reduce operational cost of the SharePoint Server farm
  • Can scale out the application without scaling out the entire SharePoint Server farm
  • Does not require dedicated farms for customizations due to application isolation
  • Does not require downtime for SharePoint to deploy updates
  • More flexible deployment patterns to improve agility and reduce time to market for the business and end users
  • Allows customers/SI's to leverage standard Web Development skills over much harder to obtain SharePoint Development skills that have been traditionally employed
  • Will run in both SharePoint Server and SharePoint Online

Web cast presenters: Vesa Juvonen, Bert Jansen

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics and for additional documentation around transforming your customization's to SharePoint add-in model.

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

We have started this Office 365 Developer Patterns and Practices (PnP) web cast series to cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 22nd of February 2016

Introducing Office Dev Patterns and Practices Office Hours and Interest Groups

$
0
0

We are excited to release additional options on getting more closely involved on the Office Dev Patterns and Practices (PnP) initiate. We have been approached numerous times during past months by offering assistance on the PnP initiate by internal and external community. Purpose of this blog post is to clarify the options for getting more closely involved in the initiate and how you can take advantage of the Office Dev PnP guidance in general.

What does Office Dev PnP initiate provide for me?

Office Dev Patterns and Practices (PnP) provide guidance, assets and samples for you to use anyway you want. All material what we have shared using different channels in the dev.office.com, GitHub, Channel 9, docs.com or in other locations; can be used anyway you want in your own work. PnP is community driven initiate for community to share their patterns and practices around Office 365, SharePoint Online and SharePoint on-premises.

All the work done in the PnP are done by the community members (internal or external) for the benefit of others. Key objective of the PnP is to provide standardized and proven patterns, which are also reviewed by Office engineering, so that we can provide consistency around the patterns used in cloud or in the on-premises. Having consistent and proven development practices for the Office 365, SharePoint Online and SharePoint on-premises development has numerous obvious benefits for the community and no doubt also for the Microsoft.

Why would I get involved on the PnP initiative?

Consuming and using the PnP guidance is absolutely valid approach as well, but we are also looking for more people to get more closely involved in the PnP initiate, so that we can provide more efficiently real-world and proven guidance together with the community. PnP initiate is open source program based on the work we do together with the community members.

Here are some benefits on getting more closely involved in the PnP initiate:

  • Get visibility in the internal and external community
  • Get acknowledge by your contributions for the benefit of others
  • Help others on their journey to recommended patterns
  • Find peers who work on similar topics and engage with customers and partners also using this channel
  • Get additional insights directly from the product engineering on the released capabilities, when they are announced

If you are interested on contributing back for the community, please see the different options later in this post.

How to get involved in the PnP initiative?

There are few different options on getting involved on the PnP initiate, depending on your availability and interest. Main purpose of the PnP is to ensure that community does not have to “reinvent the wheel” and that we have easy communication channel for the general guidance. If you only are planning to align with the recommendations and use the community to solve your specific challenges, monthly community calls and PnP Yammer group is the most useful for you. If you are however looking into giving back for the community by getting more closely involved, you have few different options:

  • Assist on the Yammer group with the community questions
  • Submit pull requests with samples or solutions in the GitHub
    • Microsoft Graph, Office 365 and Office Client solutions are highly welcome. On the SharePoint development side we have pretty good coverage already with the existing solutions, so please ping the Core team on possible contributions. We rather would like to evolve existing samples, than have too many similar ones in the PnP sample gallery.
  • Help to address and test reported issues in the GitHub repositories
  • Participate on bi-weekly PnP Office Hours for additional details on specific available tasks around different topics (see below)
  • Participate on the SharePoint Client Side Development Special Interest Group (PnP SIG) around the JavaScript based development with SharePoint (see below) 
    • We are looking to launch additional special interest groups based on the demand

Hopefully you can find suitable engagement model for you, based on your availability. We are absolutely interested on your feedback or ideas around these options as well, so feel free to suggest alternatives.

PnP Office Hours

PnP Office Hours is new bi-weekly recurrent meeting where we will talk about the on-going efforts in the PnP Core team and also around the areas where the community can assist. PnP Office hours will occur bi-weekly on Wednesday at 4 PM CET / 7 AM PST. This was the best compromise from timing perspective from world wide perspective. If there’s enough interests and demand for these, we will start doing multiple calls to better address the different time zones. Recording of the Office Hours will be released for viewing the meeting later if needed.

Key purpose of the Office hours is to address the common questions from the community to have availability for asking assistance and also on getting more insights on the topics what the Core team is working or where the community can help. Office hours will be open for anyone and you are free to have open discussion around the PnP topics during these calls. These are meant to be interactive and open discussions around the PnP initiate.

Typical agenda for the PnP Office Hours is as follows

  • What’s the PnP Core team doing current – what’s coming up with next release?
  • General roadmap items
  • Where community members can help
  • Ideas and open discussion on issues

You can download bi-weekly recurrent invite to PnP Office Hours from below link. Feel free to share the invite forward as needed.

PnP Office Hours will also be the location to talk about the specific PnP areas with the Core team. If there’s high demand for specific discussions, we can spin-up additional PnP Special Interest Groups for the specific topics. 

PnP Special Interest Groups (PnP SIGs)

Due the growing interest on getting more closely involved around specific topics in the PnP, we have already also start to work on more specific interest groups. Idea of these Special Interests Groups (SIG) is that there’s more specific discussions on more isolated topics, since Office 365 and SharePoint is such a massive topic from development perspective. Here’s the currently planned interest groups on the specific topics. We have already created specific Yammer groups for some of them to have more specific discussions and communications in the Yammer network.

  • SharePoint Client Side Development– Core component for JavaScript, TypeScript development with SharePoint, other client side topics
  • PnP Sites Core component– PnP Core component, remote provisioning engine, remote timer job engine and other similar topics
  • Office 365 APIs and Microsoft Graph– Topics around the Office 365 end points within the Microsoft Graph
  • Scripts and on-premises– Scripts and tooling for IT Pro’s and administrators. Will be a spin-off with SharePoint PnP brand to differentiate the work around on-premises and hybrid deployments.

We’ll start PnP interest groups by piloting the model with SharePoint Client Side Development interest group. This group will be lead by Patrick Rodgers (Program Manager from Office 365) and team has already specific Yammer group and weekly calls where the detailed plans are being made. We’ll release more details around the other teams and their work slightly later.

If you are interested on joining on the Office Dev PnP SIG around the SharePoint Client Side Development – please use the following resources.

Depending on the interest and how the piloting goes with the SharePoint Client team SIG, we will spin up new interest groups in the future.

Monthly community calls

We have been doing monthly community calls since December 2014 where we concentrate on covering the monthly release details. This includes all the updates from past month cross different assets and areas in the Office Dev PnP initiate.

All monthly community calls are recorded and shared from the PnP Channel 9 video blog at http://aka.ms/OfficeDevPnPVideos. This way you can easily follow up on the latest development even though you could not participate on the actual call.  Community calls consist from roughly 15-20 minutes summary and live demos from the different community members on latest contributions. See for example February 2016 monthly community call as a reference below.

See in Channel 9.

What about PnP Core team?

Office Dev PnP Core team is smaller group of people who are responsible of the practical decisions around the PnP initiate and the direction of the shared solutions, like the PnP Core Component for SharePoint. We are looking to get more community members included in this team as well, but we’ll also need to keep the team relatively small to be able to keep the decisions and work as agile as possible.

We have currently three community members in the PnP Core team who are following:

Since PnP Core team is directly linked to the Office engineering, all members need to have proper NDAs signed. This is the reason why all the current community members in the core team are also MVPs. We are though looking to extend this team gradually from the people who have been actively involved in the initiate in general.


Thanks for your interest on the PnP initiate. If you have any questions, feedback or comments around the PnP, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

Sharing is caring!


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 23rd of February 2016

Office Dev PnP Web Cast – Preparing your on-premises SharePoint 2013 or 2016 for add-in usage

$
0
0

In this PnP Web Cast we concentrated on additional configuration needed on the SharePoint on-premises farms when you start using add-in model based implementations. This is a follow up web cast for the "Provider hosted add-in infrastructure setup for SharePoint on-premises", which was released previously. Scripts and guidance shown in this web cast is targeted for both SharePoint 2013 and SharePoint 2016 environments.

This web cast concentrated on following topics.

  • How to enabled site collection creation using CSOM in on-premises
  • How to setup a low trust connection from on-premises farm to Office 365 tenant for easier development and operations around the used add-ins
  • General discussion around the low trust and high trust options for your on-premises oAuth configuration
  • Live demos and covered on the both provided scripts to automate the needed configuration in your SharePoint on-premises farm

Scripts and additional documentation on the covered topics can be found from following locations in the PnP-Tools repository. We are also looking these scripts in upcoming on-premises targeted PnP content site, which will help on finding what's also relevant for the IT Pro's and administrators from the PnP initiative. 

Web cast presenters: Vesa Juvonen, Bert Jansen

Presentation used in this web cast is available from http://doc.com/OfficeDevPnP.

Video at Channel 9.

Addition resources

See following additional links around the covered topics.

What is Office 365 Developer Patterns and Practices (PnP) web cast series?

Office 365 Developer Patterns and Practices (PnP) web cast series cover different patterns, practices and topics around development with Office 365 and SharePoint. Majority of the topics are valid for the Office 365 and SharePoint on-premises. Our objective is to release new around 30-45 minute long web cast each Monday with few slides and live demo on the covered topic. All web casts are published at the PnP Channel 9 video blog with additional references on the existing materials.

PnP is community driven open source project where Microsoft and external community members are sharing their learning's around implementation practices for Office 365 and SharePoint on-premises (add-in model). Active development and contributions happen our GitHub project under dev branch and each month there will be a master merge (monthly release) with more comprehensive testing and communications. Latest activities and future plans are covered in our monthly community calls which are open for anyone from the community. Download invite from http://aka.ms/OfficeDevPnPCall.

This is work done by the community for the community without any actual full time people. It’s been great to find both internal and external people who are willing to assist and share their learning's for the benefit of others. This way we can build on the common knowledge of us all. Currently program is facilitated by Microsoft, but already at this point we have multiple community members as part of the Core team and we are looking to extend the Core team with more community members.

If you have any questions, comments or feedback around PnP program or this blog post, please use the PnP Yammer group at http://aka.ms/OfficeDevPnPYammer.

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, Office 365, Microsoft - 29th of February 2016

Viewing all 429 articles
Browse latest View live