Envoyer facilement une notification sur Teams avec PowerShell
Table des matière
Introduction
En tant qu’admin système nous adorons avoir des notifications surtout quand il y’a beaucoup d’automatisation dans nos procédures, avant il y’avait les mails, maintenant il y’a les applications de communication collaboratives, tel que Slack ou Teams pour les deux leaders. Dans cet article je l’ai fait avec Teams, mais il est aussi possible de le faire avec Slack, cela viendra dans un prochain article.
Créer un canal dans Teams
- Se connecter à Teams via l’application ou la version Web.
- Dans son équipe, cliquer sur le menu « … » et sélectionner « Ajouter un canal »
3. Donner un nom à votre canal et une description, si besoin configurer la confidentialité et cliquer sur Ajouter
4. Cliquer sur le menu « … » et sélectionner « Connecteurs »
5. Sélectionner Webhook entrant et cliquer sur Ajouter
6. Cliquer sur ajouter
7. Entrer un nom pour ce Webhook et changer l’icône si vous désirez l’identifier, puis cliquer sur Créer
8. Après 1-2 secondes une URL apparaît, cette URL sera utilisée par notre script pour envoyer les messages à Teams
9. Valider par OK, puis fermer la popup, nous avons finis de configurer la partie Teams
Le script Send-ToTeams.ps1
Ce script est simplement un exemple, dans l’entreprise où je travaille j’ai adapté ce script afin de remonter d’autres informations en fonctions des variables de séquences de tâches dont j’avais besoin, mais il peut très bien être utilisé de façon autonome sans ConfigMgr.
Téléchargement depuis GitHub
Configuration de base
- Il faut entrer l’URL du Webhook entrant de l’étape 8 de la partie Teams
- Entrer l’URL d’un logo
- Si vous désirer utiliser des variables de séquence de tâche de SCCM, il faudra dé-commenter le code se trouvant dans le rectangle bleu, toutes les variables peuvent-être utilisée, y compris vos personnalisées, il faudra juste veiller à les appeler par leurs bons noms 😉
- Possible d’ajouter d’autres informations, récupérer via WMI, Registre ou autres commandes PowerShell
- Pour les points 3 et 4 libres à vous d’en ajouter ou supprimer ce script est simplement un exemple fonctionnel de ce qu’il est possible de faire
Fonction Send-ToTeams
La fonction Send-ToTeams est appelée à la fin de chaque création de message, il envoie à l’URI ($uri) de Teams, le JSON qui a été généré pour le message ($body)
Création d’un message
Status réussi
Si mon paramètre -Status est à 1, je génère le message suivant, pour les caractères spéciaux, ne pas oublier de les encoder en HTML
Exécution du script
PowerShell.exe -ExecutionPolicy Bypass -File .\Send-ToTeams.ps1 -Status 1
Résultat
Status réussi
Si mon paramètre -Status est à 0, je génère le message suivant, pour les caractères spéciaux, ne pas oublier de les encoder en HTML
Exécution du script
PowerShell.exe -ExecutionPolicy Bypass -File .\Send-ToTeams.ps1 -Status 0
Résultat
Documentation Teams
Envoyer un message aux connecteurs et Webhook: https://docs.microsoft.com/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using
Fondateur de StevenBart.com – Suisse.
Je suis dans l’informatique depuis 2001, je travaille en tant qu’architecte poste de travail et m’occupe principalement de l’administration de MEMCM (SCCM), du déploiement en masse de postes de travail et d’applications. En savoir plus sur moi.