Archives / 2015 / November
  • What's new on the Office Roadmap - 2015-11-20

    Tags: Office 365

    Updates! Yes, updates! After some awesome announcements at the Connect(); 2015 conference the Office Roadmap is updated with some news, and a decent bunch of additions, specifically some nice new stuff in the In Development bucket. Love the Yammer updates - looks like someone has been listening after all, or have they - read the fine prints…

    Changes 2015-11-20

    Now Launched

    • Contact sync for Outlook for Android: Outlook for Android now syncs contacts to the native contacts application. Finally, this is great news. (New)
    • Enforce Office 365 Identity in Yammer: An important and long anticipated (it only took a couple of years) update to Yammer and identities. No need for separate Yammer SSO settings. Click here for more information. (New)
    • EU Model Clauses and HIPAA BAA Availability for All Yammer Customers: Another Yammer update, also this one is VERY important. With this update Yammer is getting aligned with the rest of Office 365 in terms of customer data protection. (New)
    • Outlook +1Likes Coming to Outlook on the web: No more +1 e-mails? We're certainly on the right path at least (From Rolling out)
    • Mentions Available in Outlook on the web: Make it possible to @mention people in OWA. (From Rolling out)
    • Multi-select Attachments in Outlook 2016: Surprised this feature actually wasn't in there. Use Ctrl to multi select attachments (New)
    • Persian calendar support in Outlook 2016: More calendar options, now with Persian support (New)
    • Set Automatic Replies in Outlook for iOS & Android: You can now set Automatic replies in Outlook on your fruitphones or droids. (from In Development)

    Rolling Out

    • Designer: Described as "a feature that will essentially allow you to deliver beautiful and impactful presentations with little to no experience". This is a bit weird, it is the same description as the new "PowerPoint Designer - Desktop"  feature below. (New)
    • New Office 365 Admin Center Preview: The new Admin center rolls out. For more info see Marcs great post on IT-Unity. (From Launched!)
    • November Improvements in Excel Mobile for Windows: This is something you don't see often, updates to mobile apps on Windows (New)
    • Office 365 ISO 27001 and 27018 Audit Report: information  security reports. I doubt any other cloud productivity provider are even close to what Microsoft and Office 365 is doing now (New)
    • Office 365 Video - Yammer settings per channel: Finally! No more posts of secured video details onto public Yammer groups… (New)
    • PowerPoint Designer - Desktop: The PowerPoint people get some love, it's not all Sway yet. For more information see (New)
    • PowerPoint Morph - Desktop: The second part of the new PowerPoint awesomeness. For more information see (New)
    • Preview_Office 365 Customer Security Considerations Refrence Guide: A new part of the Service Trust Portal in form of a security considerations reference guide. (New)

    In Development

    • Add-in only authorization policy for Project Online: AppOnly policies for Project Online. This opens up quite a few new Project Online opportunities. (New)
    • Archive button in Outlook 2016: The Outlook 2016 client will get the same nifty archive button as the mobile Outlook clients have.
    • Browse and join Groups in Outlook 2016: You will in the future not only see your Groups in Outlook 2016. You will now also be able to see the ones you have not joined, and then join them. Hooray! (New)
    • Circular Yammer User Profile Pictures: One of these important Yammer updates! I'm glad they are spending money on A/B testing a circular picture instead of a square one. Seriously, just do it and move on with more important stuff, such as USING THE PICTURE FROM OFFICE 365!!! (new)
    • Dark theme for Outlook 2016: Get your darker sides on in Outlook 2016. (New)
    • Directory pictures in Outlook 2016 search suggestions: This is a nice feature, see profile pictures when searching for people (New)
    • Exchange Online Protection- Zero Day auto-purge: The Exchange team continues to impress with handling different kind of threats. (New)
    • New Yammer group experiences: More Yammer UX updates. Each Group will now have its own inbox - wow… (New)
    • Office 365 Video - Analytics, phase one: Insights on your videos - awesome (New)
    • Office 365 Video - Channel Recycle Bin: Channels are just site collections and we will be able to recover the channels just as normal site collections
    • Office 365 Video - Choose Your Own Thumbnail: choose one of several auto-generated thumbnails or upload your own (New)
    • Office 365 Video - Deploy in US Government zone (GCC) & China datacenters: China and US Government can soon build their own Video portals. (New)
    • Office 365 Video - Improved upload experience: The video portal will get a centralized upload center, with more details about the upload (New)
    • Office 365 Video - Owner and People Metadata: This will be great improvement to the service and hopefully make search even more interesting. (New)
    • Office 365 Video - Upload your own subtitle files: Subtitles! Office 365 Video is becoming a real video portal (webvtt format). This will also be integrated with search so you can search in videos. Cool! (New)
    • Optimizing Yammer Inbox for Team Collaboration: Yammers attempt to change the way the inbox works. Removal of the "Mark as Unread" and replace it with a "Read Later". Holy crap! So they didn't listen to the massive feedaback on a "Mark all as read" feature. I think I just the last little hope for Yammer… (New)
    • Sites Tile Page Update - Recent and Suggested Sites: The Sites tile in the App Launcher and Sites page will get a long anticipated face lift with the inclusion of a "Recent sites" feature. (New)
    • Yammer Group Administrator Onboarding: A Yammer group admin guide. Is this really necessary? If it is needed then something else in creating a group is wrong. (New)
    • Yammer Group Inbox View: Third update on basically the same topic. Yammer is redoing the Inbox… (New)

  • Enhancing your Office 365 Groups using custom Connectors and Cards for Groups

    Tags: Office 365, Office 365 Groups

    Wow, what a day for developers in the Office 365 land! Tons of new features was announced at the Microsoft Connect(); 2015 virtual conference. We've seen the GA of the Microsoft Graph and a bunch of new API's added to the Microsoft Graph beta end-point and more. One of the features that I really have been waiting for is the Office 365 Connectors for Groups and the  Office 365 Connector Cards.

    The Office 365 Connectors for Groups allows users of Office 365 Groups to add integrations to their Office 365 Groups. Connectors can be seen as services and events that you subscribe to and then the services when certain events happens posts information to the Group activity feed. There are a set of pre-configured Connectors that anyone can add or you can create your own Connector and customize it for your needs. For instance there are built-in Connectors for Twitter, Github, RSS feeds and Trello. The possibilities for this is endless!

    In this post I will show you how to create your own Connector and Connector Card. In this sample we assume that we have a CRM system that monitors incoming requests, such as RFI's and RFP's, and we want these events to be posted to a Group in Office 365.

    Enabling Connectors

    First of all, the Connector framework are in preview so in order to start working with them we need to enable this preview. This is done by navigating to a Group in Office 365 and then append &EnableConnectorDevPreview=true to the URL.

    Enabling Connectors

    Once we have enabled the Connector preview you will find a new option called Connectors under the "…" menu. Click on that to start configuring your Connectors. In the task pane that is shown you can see all the different default Connectors which you can add and configure without doing any kind of development.

    The Connectors

    Creating an Incoming Webhook

    In our case we want to do a completely custom Connector. We create these by choosing the "Incoming Webhook" Connector and then click Add.

    Incoming Webhook

    To configure our Incoming Webhook we need to give it a name and optionally add an image for the Connector. Once that is done we need to click on Create to create the Webhook. When it is created you will see an input box with a URL in it. This is the Webhook and we need this URL in our custom Connector handler. The URL is unique for this Group and Webhook and we can of course remove the Webhook if we want to disable it.

    Note that when the Webhook is created a notification of this will be sent to the Activity feed, the notification contains the Webhook URL.

    Posting a message to the Webhook

    Once we have the Incoming Webhook URL we can build our own custom solution that posts messages to the Activity feed within the Office 365 Group.

    All we need to do is to issue a POST request with JSON payload to this URL. There is no need for authentication - we assume that this URL is as unique and no one figures it out :) It is a Guid folks!

    The JSON payload describes the Connector Card. The Connector Card can have simple properties such as title, text, images and a color and more advanced properties such as actions and sections with facts. The image below shows a Connector card with (1) the Connector info, (2) the Connector card title and text, (3) a section with activity details and (4) facts connected to the section and finally (5) actions.

    Connector Card

    This Connector card can be added to the Office 365 using any kind of tool that can send a post request. Let's see how it can look like when doing it using Node.js. You can find a more exhaustive example at

    var request = require('request')
        method: 'POST',
        uri: '',
            'content-type': 'application/json',
        body: JSON.stringify({
            'title': 'New RFI added to CRM',
            'text': 'A new RFI from [Contoso]( has arrivied',
                "@context": "",
                "@type": "ViewAction",
                "name": "Lookup Contoso in CRM",
                "target": [""]
    }, function(error, response, body){

    We create a new HTTP POST request and as URL we use the Webhook URL that we generated previously. Then we need to make sure that we use application/json as the content type for the request. The body of the request is a JSON formatted payload. In the example above we provide a title and a text (note the Markdown formatting) as well as an action. The JSON payload is thoroughly described in the Outlook Dev Center, so there is no need to delve into that to much. When the request is sent it will return a status code of 200 if successful. If not successful you will see response code 400 if you have used the wrong format, 404 if you specify the wrong Webhook URL and you can even get throttled (429) if you send to many requests.


    That was so easy! With just a few lines of code and a simple configuration we can make the Office 365 Groups experience into something integrated into your or your customers organization. Imagine the possibilities with this.

    I'm really impressed with how Microsoft build their products and services now, how they adhere to modern development techniques, how they innovate and how they make my job so much more fun! I've said it before - Groups are here to stay and they do it big time!

  • What's new on the Office Roadmap - 2015-11-05

    Tags: Office 365

    Office Roadmap updates again! This time I'm reporting this from the MVP summit in Redmond. A couple of new and exciting things added to the In Development list!

    Changes 2015-11-05

    Now Launched

    • Clutter for your inbox on by default:  For tenants/users that have the Clutter feature it will from now on be on by default
    • Create and collaborate on Visio diagrams using Office-like experience: Visio is getting even sexier with dark themes, Delve and High DPI support
    • FastTrack | Providing the customer success service: Get Microsofts help to start your Office 365 experience
    • Getting started experience in Visio: Visio n00b improvements
    • Information Rights Management (IRM) protection now added for Visio files: We now have direct support in Visio to protect our most valuable assets
    • Keyboard access for Shape Panel in Visio: use F6 to work faster in Visio
    • Optimized file picker in Outlook on the web: Pretty soon OWA will be favored over Outlook
    • Outlook for Android opens IRM protected emails: Really important feature rolled out for Android
    • Quick data linking in Visio: Make your Visio diagrams rock
    • Refreshed stencils and smart shapes in Visio: New and slick stencils for architecture draqwings
    • SharePoint Online will start to transition to using TLS to send email securely in our datacenters: internal service change but a really important one
    • Sway for Windows Document Import: Something with Sway
    • Yammer to use Azure Media Services for Video Encoding: Ooops, a Yammer update

    Rolling out

    • Compliance Search Conditions: Improved Compliance search is rolling out
    • Delve People Experiences - Praise: The Praise features is now rolling out in the Delve experience.
    • FastTrack | Project Online Onboarding: FTC will now start onboarding Project projects
    • Inline OneDrive attachment preview for Outlook on the web: Awesome new OWA features
    • Mentions Available in Outlook on the web: Another of the social features are now in OWA
    • Office 365 detailed usage reports: Even more detailed reports are rolling out. I can't wait to see how we can use this to improve the adoption rate
    • Office 365 My Account updates: The new My Account page gives you great details and control of you Office 365 accounts
    • OneNote Online: Record Audio clips & Insert File: New OneNote features are being rolled out. New on the Roadmap
    • PowerPoint Online: Ongoing improvements: New on the road map and it promises to make formatting better, include more symbols and faster slide interaction
    • Word Online: Improving feature capabilities: Also new on the road map. Improvements in Word that includes image resize handlers, improved autosave and more, but most interestingly a lot of improvements in co-authoring performance

    In Development

    • Delve Analytics: Brand new addition on the road map and a really cool one. For E5 customers (or E1/E3 with an add-on) you will get awesome analytics on how you organization collaborates
    • FastTrack | Data migration to OneDrive from Google Drive: New option get the h**l out of Google Drive
    • FastTrack | Data migration to OneDrive for Business from File Shares: New FastTrack migration option from file share to users OneDrives
    • FastTrack | Data migration to SharePoint Online Team Sites from File Shares: Same as above but for Team Sites (Groups?)
    • FastTrack | Improving Intune onboarding with MDM: FastTrack will support Intune when doing onboarding.
    • Multiple timeline bars in Project Online: I have no idea how this is supposed to work but it looks like you can add heatmaps and other stuff… (was previously called New Timeline view in Project)
    • Project Online content pack for PowerBI: Bring Project Online data directly into PowerBI. Sounds neat
    • SharePoint/OneDrive for Business file activity report: Admin reports that allows you to see what your users do in SharePoint and OneDrive for Business


    Moved off into the Previously released list

    • Inline Service Health for Support Request Creation
    • Proactive notification of Outlook version - weird, this is moved from In Development! Did it ever roll out?

  • Announcing gulp-spsync - A Gulp plugin that syncs local files with a SharePoint site

    Tags: Visual Studio Code, Gulp, SharePoint Online

    I have to admit it I have succumbed to Visual Studio Code and now also Gulp tasks, well almost at least. I was working the other day with some display templates and page layouts and needed a more efficient way than uploading the files to SharePoint Online. Open with Explorer could have worked, but since I used a customers Office 365 tenant I did not want to store credentials and do all the required voodoo to get that to work. Instead I decided to explore Gulp and see if I could automate this, and the result is a Gulp plugin called gulp-spsync.

    You can find gulp-spsync in this Github repo: 

    For you who have not used Gulp, the short description is that it is a task runner that runs tasks on command or at build. In this case it will copy local files to a SharePoint site.

    This is how gulp-spsync looks like in practice in Visual Studio Code. As soon as I edit one of my files and saves it, the file will be uploaded to SharePoint. In the sample below it is a Display Template html file, once saved it will be uploaded, and then in SharePoint converted to the .js correspondent file.


    To use this you need a copy of Visual Studio Code and full access to a SharePoint Online Site Collection. How to configure it all is documented in the repo, so I will not rehash it. But the basic outline is that you open up a folder on your local machine. Create a folder in that one where you create sub folders representing the sites libraries and catalogs. Then comes the tricky part, this task requires that you register an App in the Site Collection and give that App permissions. Once you have the App details you install the gulp-spsync plugin and then configure Gulp. All that then is left is to start working with your files.

    I hope more people than me get some use of this one and any feedback is welcome.

About Wictor...

Wictor Wilén is the Nordic Digital Workplace Lead working at Avanade. Wictor has achieved the Microsoft Certified Architect (MCA) - SharePoint 2010, Microsoft Certified Solutions Master (MCSM) - SharePoint  and Microsoft Certified Master (MCM) - SharePoint 2010 certifications. He has also been awarded Microsoft Most Valuable Professional (MVP) for seven consecutive years.

And a word from our sponsors...