Skip to content

Microsoft Teams service issues and Message Center notifications as Teams posts and to SharePoint lists.

License

Notifications You must be signed in to change notification settings

tobiheim/teams-health-feature-monitoring

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 

Repository files navigation

teams-health-feature-monitoring

About The Project Usage Prerequisites Installation

Microsoft Teams Message Center and Service Health Notifications as Teams posts and stored to SharePoint lists. With just one Power Automate flow (including a SharePoint site and Teams channel), you can stay informed about anything important for Microsoft Teams.

Table of Contents

About The Project

The project includes one simple Power Automate solution to stay informed about the Microsoft Teams Service issues and upcoming changes to the service that may require administrator or end-user attention. 🚀

Intro

The Power Automate will fetch every 20 Minutes the latest updates from the Office 365 Service Health Status and the Message Center using the Graph API and post them to Teams (if required) and store the information to SharePoint lists.

‼️ TIP: The solution is designed for Microsoft Teams but can also be used for all other Office 365 services by simply changing the filters inside the flow.

Built With

Getting Started

To get a local copy up and running follow these simple steps.

Prerequisites

The solution require an Office 365 subscription including the following:

  • Microsoft Teams license
  • Power Automate license (Premium Connector)
  • SharePoint license
  • PnP PowerShell Module (SharePoint Online)
  • Access to Azure AD to create App Registration

Installation

1. Clone the repo or download the files directly

Clone the repo:

git clone https://github.com/tobiheim/teams-health-feature-monitoring.git

1. Create an App Registration in Azure AD

First open the Azure AD Portal (https://aad.portal.azure.com) and select App registrations.

Create App Registration

Create a new registration:

Create App Registration

Provide a name to your new app and select the supported account type as shown in the screenshot below. Now you can register the app.

Name and register App Registration

Also copy the Application ID and the Tenant ID from the overview section.

Copy app id and tenant id

Next you need to add permissions to your app registration.

View permissions

Select Add a permission

Add permissions

Select Graph API

Select Mgmt API

Next select Application permissions

Select app permissions

Select the permissions listed in the screenshot below:

Select the required permissions

After selecting the permissions, click Add permission.

Don't forget to grant admin consent for your organization.

Grant admin permissions

As last step you need to create a client secret for your app.
Note: It is up to you what name and expiration time you select based on your requirements.

Create client sec

Make sure to copy the client secret. You will need it later.

Copy client sec

2. Create a SharePoint site

To create a new SharePoint page navigate to SharePoint Online using the menu in the top right corner.

Navigate to SP

Create SP site

Select a Modern Team Site and add the required members and owners.

Select Teams site

Note: You can also use a already existing modern SharePoint site.

Copy the URL of the SharePoint site. You will need it later.

Create SP site

3. Import the SharePoint lists

After the new site is created you can apply the list template. The template includes two lists for the service issues and the message center notifications.

Make sure to install the PnP PowerShell module.
https://pnp.github.io/powershell/

Install-Module -Name PnP.PowerShell

Connect-PnPOnline -Url "https://{Vanity domain host name}.sharepoint.com/sites/{Your site name} -Interactive

Connect to SP site

The list template is part of this repo. You can apply it using the following cmdlet.

Invoke-PnPSiteTemplate -Path C:\Temp\SP_Lists_Template_TeamsHealthandFeatureMon_v2.xml -Handlers Lists

Apply the SP template

After you applied the template you should see the following newly created lists. If not, please refresh the browser.

Verify the lists

4. Import the Power Automate flow

Navigate to the Power Automate portal (https://us.flow.microsoft.com) and go to My flows.

Select Import to add the flow template to your environment.

Select flow import

When you import the flow you need to make sure to replace the existing connections as shown below:

Replace the connections

More details how to replace the connections can be found here:
https://docs.microsoft.com/en-us/power-automate/add-manage-connections
https://docs.microsoft.com/en-us/power-automate/create-team-flows#modify-a-connection

The included connections are used for the following reasons:

Connections Description
SharePoint Online This connector is used to connect, read and write to the SharePoint lists.
Microsoft Teams Required to post messages to a Teams channel.
Content Conversion Required to convert HTML to plain text.

After you replaced all the connections the import screen should look like this:

flow import view

Finally you can import the flow to your environment.

final view after flow import

flow successful import

5. Adjust the values in the Power Automate

As very last step you need to adjust the SharePoint and Teams connections inside the flow.

First you need to adjust the app registration information as showing in the following example:
Logo path

You need to adjust 6 times the SharePoint steps (Make sure to select the correct list).

The flow is divided into two trees, each to control a specific aspect of the monitoring:
a. Left hand side tree to monitor a product health status (in this case Microsoft Teams and SfBO)
b. Right hand side tree to monitor the Message Center Notifications

The flow is shipped with two SharePoint lists that you imported earlier, in the service issues side of the flow-tree, you need to point all SharePoint lists flow steps to Service Health Notification SharePoint List, the same for the Message Center Notification flow-tree but by pointing to the Message Center Notification SharePoint list instead.

Logo path

Logo path

Last but not least you need to adjust the Teams steps to your channel (4 times).
Logo path

Note: You could separate the incident posts from the message center posts into different channels if needed.

🎉 Let's go! Try it.

Usage

Service Issues:
The flow will check for any Microsoft Teams related issues that are classified as Service Degradation and store this information to a SharePoint list.

As you can see the list template is configured with conditional formatting to highlight every degraded (red) and restored (green) service.

In addition to the list the flow will also post directly to a defined Teams channel. This way the admins stay informed without the need of checking the service health section in the Office 365 admin center all the time or subscribe to the notification mails that spams their inbox.

Feature Updates:
The message center notification follows the same logic. Every Teams related entry will be stored in a SharePoint list. The list also includes pre-defined conditional formatting to highlight every entry that is tagged a "Plan for Change". Updates to the service will also be posted to Teams in case they require admin or user attention.

Here two examples:

SharePoint List MC SP

Teams Post
MC Post

Other Workloads

You can use the flow also for any other M365 Workload. All you need to do is to adjust the following filters in flow:

MC Post

Next you need to adjust the HTML of the Teams posts (only the Title) to reflect the correct workload.

Follow-ups (Tasks)

If you want to take action on any of the Teams posts then use Tasks in Teams.

Tasks01

Tasks02

Roadmap

The following item are on the Roadmap:

  • Currently nothing planned.

See the open issues for a list of proposed features (and known issues).

License

Distributed under the MIT License. See LICENSE for more information.

Contact

Tobias Heim - @saibothe

Thanks a lot to:
Mostafa Eid @Lyncdude for contributing to the documentation.

About

Microsoft Teams service issues and Message Center notifications as Teams posts and to SharePoint lists.

Topics

Resources

License

Stars

Watchers

Forks