Global AI Bootcamp 2019 Sydney – Knowledge Mining using Azure Cognitive Search

Global AI Bootcamp Event ( took place in 130 locations worldwide. In Sydney, we had a great turnout – 150 seats got sold out 3 weeks prior to the event.

In the event, I had the opportunity to present a session on Knowledge Mining using Azure Cognitive Search.

The slides have been made available here:

Reference links:

If you have attended the session, please let me know your feedback via email or submitting a Feedback form:

MSIgnite 2019 highlights

We have received an enormous number of updates and announcement in the last week’s Microsoft Ignite event. Some of the changes will be game-changer – how we implement solutions for our business and customers. In the meetup, we shared some major highlight from the Ignite news, focusing on M365 area.

During the session, we gave a demo on Project Cortex, UI Flows and Power Virtual Agent and it was a pleasant surprise that during my demo on Power Virtual Agent, we noticed Charles Sterling, from the Engineer team at Microsoft is sitting in the audience. He took all the tricky, roadmap questions from the audience. 🙂

Thanks to SomyAyazi for the snap.

The slide decks can be found below:

Most audiences wanted some suggestion on curated links as they were overwhelmed with the amount of information exists out there. I have collated a few topics specific links that will help you to get an overview of all announcements.

Project Cortex

Power Virtual Agent

Here’s what’s coming soon to Microsoft 365

Microsoft 365 Saturday Sydney – Chatbot

Microsoft 365 Saturday Sydney held on October 26, 2019. This year the event was more targeted towards Business users and Power Users as there was a technical deep dive event (Bootcamp) happened just a few days before this event. The details around the event can be found here:

One of the best parts of attending any conference or event is to meet some highly driven people and learn from/about them. It was very nice to meet some amazing people from all over Australia and overseas! Great to hear some of the speakers’ personal journey and their bold move to entrepreneurship. Thanks to the organisers Cameron Dwyer and John Liu for making such event possible.
(Photo credit: Asish Padhy)

My slides from the presentation are made available here:

PowerShell – Prevent Teams from showing in Outlook Global Address List

If you are one of the Microsoft Teams enthusiasts and started using Teams from its early stage, you have ended up with many similar or unintended email IDs in your Outlook GAL. For each Team, Office 365 creates its own group’s email ID and it used to make the email ID available in the GAL.

After some noise in the User Voice, Microsoft stop showing those email IDs in the GAL by default. But if you already have many group email IDs showing in your GAL that you want to hide, use the following code snippets:

List all Office 365 Groups & Delete Office 365 Groups

In the tenant using Modern Authentication and/or multi-factor authentication (MFA), connect to the Exchange Online PowerShell Module to work with groups.

  • Use IE/Edge (don’t skip), go to the Exchange admin center
  • Go to Hybrid > Click the second configure >
  • In the PowerShell window enter the following to connect. Details docs are in the reference links.

Connect-EXOPSSession -UserPrincipalName

To list all Office 365:


View all the properties of the group:

Get-UnifiedGroup -Identity "My Group Name" | Format-List

Note: ExternalDirectoryObjectId is same as other group Ids (e.g. Teams GUID).

Selected properties can be exported to excel file:

Get-UnifiedGroup | Select-Object -Property DisplayName, GroupType, ExternalDirectoryObjectId, PrimarySmtpAddress, Name | Export-Csv -Path .\ExportGroups.csv -NoTypeInformation

After manipulating the excel files, the same file can be used to delete/clean-up test/unwanted Groups:

Import-CSV .\ExportGroups.csv | Foreach-Object{
Write-Host "Deleting" $_.Name
Remove-UnifiedGroup -Identity $_.Name -confirm:$false

The above is a soft-delete of the groups and will be retained for another 30 days (for admin to restore). To reuse the same group internal name, those groups need to be permanently deleted. We will need to use AzureAD PowerShell Module for this. Run the following commands and sign-in again to see the list of deleted groups.

Import-Module AzureADPreview
#The list can be exported in a excel for curation.
Get-AzureADMSDeletedGroup | Select-Object -Property DisplayName, ID | Export-Csv -Path .\DeletedGroups.csv -NoTypeInformation

After modifying the export file, same can be used to permanently delete those groups.

Import-CSV .\DeletedGroups.csv | Foreach-Object{
Write-Host "Permanently deleting" $_.DisplayName
Remove-AzureADMSDeletedDirectoryObject -Id $_.ID

Issues: if you are getting the following error, you have missed the step highlighted above in red. Use IE/Edge.
You cannot start application Microsoft Exchange Online Powershell Module from this location because it is already installed from a different location.


Office 365 Developer Bootcamp (Microsoft) – Melbourne

The Global Office 365 Developer Bootcamp is a free, one-day training event led by Microsoft MVPs with support from Microsoft and local community leaders. The bootcamps will provide hands-on labs for deep learning, and a comprehensive view of all key technologies and products on the Office 365 platform. Developers can apply these learnings to their products or solutions to achieve more right away.

Melbourne is hosting the Global Office 365 developer bootcamp with track dedicated to developers. You are free to attend topics all around Office 365 extensibility.

Technologies covered: Microsoft Graph, SharePoint Framework, Microsoft Teams, Office Add-ins, Connectors and Actionable Messages, and more.

To be successful in this workshop, you should have a general understanding of Office 365, SharePoint, Microsoft Teams and an ability to code in C# or JavaScript.

Lab Details can be found here:
Event details:

Slides are made available here:

Global Office 365 Developer Bootcamp – Melbourne

Lab 0: Prepare Your Dev Environment

npm install -g yo gulp
npm install -g @microsoft/generator-sharepoint

Lab 01: SP-Starter-Kit

Apply-PnPProvisioningHierarchy -Path starterkit.pnp -Parameters @{“SiteUrlPrefix”=”pnpdemo”}

Lab 02: SPFx with Graph API

npm i
code .

  • Modify the code as needed

gulp build
gulp bundle –ship
gulp package-solution –ship

  • Upload to AppCatalog
  • Add the App in a site Collection and add the WebPart on a page


Lab 03: Form, Flow, List

  • Create a Form that takes feedback submission anonymously
  • Create a List with the similar columns
  • Create a Flow that inserts an item into the list every time someone submits a form
  • What can you do more?

Lab 04: List Column Formatter

  • Create a list with 5 columns as per the screenshot below
  • Effort
    • Number column (minimum value: 0, maximum value: 28)
    • Effort click on the column header > Columns Settings > Format this column> Enter the following JSON and click save.

  • Status
    • Choice Column with following options:
      • Not Started
      • In Progress
      • Blocked
      • Ready For Test
      • Done

  • AssignedTo
    • People Column

Lab Optional  (Attendee asked to have a hands-on PowerApp Demo):

  • Click the following link for a step by step Power App demo
  • Replicate the app in your own environment (ask one of the speakers for help)


Sydney (Office 365 Meetup) – Microsoft Teams – What’s Next?| Extend and Build App

Microsoft Team is the hub for teamwork in Office 365 that brings together conversations, files and tools. Teams give people a single place to communicate and collaborate and also allows the team members to customise Team with apps, bots (T-Bot, Who-Bot), tabs, Planner, Forms, Flow etc. as per their needs. There is an enormous number of out-of-the-box extensibilities exist within Team. But what if you need more features that are not in the MS Team but is essential for your company, team, or project? – this is what we will discuss during the session.
The session will include some updates on the newest additions to the development and extension for the MS Team. We will also demonstrate how you can leverage the existing resources from Microsoft and build the app you need for your business.

Thanks to Ken Josling for the snap

Meetup Event:
The slides are made available here:

Melbourne – Office 365 Saturday Australia

SharePoint Framework: Best Use of the New Capabilities and Free Resources

he SharePoint Framework is the current model for building rich client-side Web Part and SharePoint customizations. Since GA, there has been many samples and solutions developed by the community that are very helpful and free to use. If you need a new Custom Web Part for your business, why not reuse some of these great resources?

In the session, we will demonstrate how we can reuse some of the existing resources with little effort, how we can change those & deploy and in general, how we can speed-up our SPFx learning & development. We will also step through some of the new capabilities that have been announced recently. Demo includes:

  • Deploying Intranet in 15 mins – containing 20+ custom WebParts and Extensions (Personalised Quick Link, Emails, Share price, Weather, WorldTime, People Directory etc)
  • Dynamic Form WebPart – Creating Form from any custom list in a few minutes.
  • Search Refiners in Modern Page
  • Modern Calendar with an external data source

Event Link:

Melbourne (MS365 Meetup) – Microsoft Teams | SharePoint – The Final Frontier

While Office 365 adoption continues to grow, some organisations are struggling to understand how to move past the traditional SharePoint and intranet-centric view of the world, and truly leverage all of the latest and greatest technology Microsoft has to offer. Microsoft Teams is a new way to focus on collaboration and communication, giving project teams and individuals the flexible features they need to get work done. This is the hub for teamwork in Office 365 that brings together conversations, files and tools. MS Teams gives people a single place to communicate and collaborate and also allows the team members to customize Team with apps, bots, tabs etc. as per their needs.

Meetup Event:

Slides are available below