Kaido Jarvemets - Logo

Streamlining Configuration Manager Updates Communication with PowerShell and Microsoft Teams

Introduction

Keeping teams informed about Software Update Groups (SUGs) in Configuration Manager is essential in many IT environments. This blog post will guide you through creating a solution that integrates Configuration Manager with Microsoft Teams. It allows for the automated posting of SUG details in a Teams channel using PowerShell and Adaptive Cards.

Problem Statement

Traditionally, sharing details about Software Update Groups with team members can be a manual and time-consuming process. This solution aims to automate the process, ensuring that team members are promptly and effectively informed.

Solution Overview

The solution involves creating a custom right-click action in the Configuration Manager console that triggers a PowerShell script. This script retrieves details about a specified Software Update Group and posts this information to a Microsoft Teams channel using an Adaptive Card format.

Step-by-Step Guide

Step 1: Prepare the Custom Right-Click Action in Configuration Manager

When creating your XML configuration for the custom right-click action, it’s essential to specify the location of the PowerShell script that will be executed when the action is triggered. This is done within the <Executable> section of your XML file.

Here are the key points to consider:

  • Script Location: Decide where you will save your PowerShell script. In this case, I have chosen the C:\Scripts\ folder. Make sure this folder exists and you have the necessary permissions to save scripts there.

  • Script Path Accuracy: The file path specified in the XML must match the actual location of the PowerShell script. If there’s any discrepancy in the file path or script name, the action will fail to execute the script.

  • XML Configuration: In the <Executable> section of the XML, I specify the <FilePath> pointing to my PowerShell script. For example, if the script is named Post-MEMUpdatesDataToTeams.ps1 and is located in C:\Scripts\, the path would be C:\Scripts\Post-MEMUpdatesDataToTeams.ps1.

This section is reserved for our premium members only. Upgrade your membership to access this valuable content and unlock more benefits.

Once you have created your XML configuration for the custom right-click action, it’s important to save it in the correct location for it to be recognized and used by Microsoft Configuration Manager. The XML file needs to be saved in a specific directory where Configuration Manager looks for custom console extensions.

Script Testing

Before integrating the script into the Configuration Manager console, I make sure to test it independently to ensure it runs without errors.

File Location

  • %Admin Console Installation Location%\Microsoft Configuration Manager\AdminConsole\XmlStorage\Extensions\Actions\2853886b-cce5-4ed4-af43-df69efb2e7d8

Important Note

The GUID 2853886b-cce5-4ed4-af43-df69efb2e7d8 in the path is specific to a certain context or view within the Configuration Manager console. Ensure that this GUID corresponds to the view where you want your custom action to appear. If you are targeting a different view, the GUID might be different. If you are trying to build your own tool and you dont know the exact GUID, then use the following script to get the exact location in the Admin Console.

Step 2: Write the PowerShell Script

This script requires Microsoft Teams Webhook configuration on one of the Groups channels in Teams.

This section is reserved for our premium members only. Upgrade your membership to access this valuable content and unlock more benefits.

Step 3: Restart the Configuration Manager Console and Verify the Extension

After saving your XML configuration file in the correct directory, the next crucial step is to restart the Configuration Manager console and verify that the custom extension is working properly.

After the restart you should see the Teams Integration under the Software Updates Groups panel.

Please note that by default, Configuration Manager does not allow unsigned extensions. To use this custom extension, you’ll need to enable the option “Hierarchy approved console extensions can be unsigned” in the Configuration Manager settings. This setting allows the use of unsigned extensions that have been approved at the hierarchy level. However, always exercise caution and ensure that any custom extension you use is from a trusted source and does not pose any security risks to your environment.

Conclusion

In this post, we’ve explored a solution that links Configuration Manager with Microsoft Teams, utilizing a custom right-click action and a PowerShell script. This approach streamlines the process of sharing Software Update Group details, transforming a task that could be manual and time-consuming into one that is automated and efficient.

By integrating these tools, we’ve enhanced communication within IT teams and harnessed the capabilities of automation to ensure timely and accurate dissemination of crucial updates.

I encourage readers of this post to take this solution, adapt it to their own environments, and explore further possibilities in the realm of automation and integration.

Remember, the key to success in IT is not just about understanding the technology; it’s about understanding how to make technology work for you and your team.

Leave a Reply

Contact me

If you’re interested in learning about Streamlining Configuration Manager Updates Communication with PowerShell and Microsoft Teams. I can help you understand how this solution can benefit your organization and provide a customized solution tailored to your specific needs.

Table of Contents