Introduction
Microsoft Planner est un outil puissant pour la gestion des tâches collaboratives dans l'écosystème Microsoft 365. Toutefois, le suivi des tâches inachevées peut devenir un défi pour les administrateurs système et les utilisateurs avancés. Cet article explique en détail comment automatiser la génération et l'envoi d'un email hebdomadaire détaillant les tâches inachevées dans Planner.
Bon à savoir
Pour implémenter cette solution, vous aurez besoin d'utiliser l'SDK PowerShell Microsoft Graph, ainsi que de configurer un compte d'automatisation Azure avec les autorisations nécessaires.
Analyse des Tâches Incompletes
L'objectif de ce processus est de centraliser l'information sur les tâches inachevées pour chaque membre d'une équipe. Voici les étapes fondamentales :
- Identifier un groupe de sécurité contenant les membres ciblés.
- Rechercher tous les plans associés aux Groupes Microsoft 365 auxquels appartient chaque membre.
- Récupérer les tâches ouvertes (non complétées) dans ces plans.
- Envoyer un email personnalisé à chaque utilisateur avec une synthèse des tâches ouvertes, incluse sous forme de lien direct vers chaque tâche.
Utilisation de l'API Microsoft Graph avec PowerShell
Dans ce contexte, nous utilisons le module Planner de Microsoft Graph PowerShell SDK. Voici les cmdlets clés :
Get-MgGroupPlannerPlan: Obtenir les plans associés à un groupe Microsoft 365.Get-MgPlannerPlanTask: Récupérer les tâches d'un plan spécifique.Get-MgPlannerPlanBucket: Obtenir les sous-divisions (buckets) d'un plan.
Exemple de Script pour Récupérer les Tâches Inachevées
1[array]$Tasks = Get-MgPlannerPlanTask -PlannerPlanId $Plan.Id -All -PageSize 500 -Property Id, Title, CompletedDateTime, StartDateTime, DueDateTime, BucketId, Assignments -ErrorAction Stop2 3$IncompleteTasks = $Tasks | Where-Object { $null -eq $_.CompletedDateTime }Attention
L'API Graph pour Planner a des limitations majeures, telles que l'impossibilité de filtrer directement sur les propriétés comme percentComplete. Ce filtrage doit être effectué côté client.
Configuration d'Automatisation Azure
Une fois le script testé en mode interactif, il doit être intégré dans un runbook d'Azure Automation. Voici les étapes principales :
Créer un Compte d'Automatisation Azure
Connectez-vous au portail Azure et créez un compte d'automatisation pour héberger le script.
Affecter les Permissions nécessaires
Assurez-vous que le compte d'automatisation possède les autorisations pour accéder à Microsoft Graph. Cela inclut les permissions pour Planner et Groupes Microsoft 365.
Importer les Modules Requis
Ajoutez les modules nécessaires à votre compte d'automatisation, y compris le module Microsoft Graph PowerShell SDK.
Tester et Planifier le Runbook
Exécutez le runbook de manière interactive pour valider son fonctionnement, puis programmez son exécution. Par exemple, configurez-le pour s'exécuter chaque samedi à 7h du matin.
Envoi Automatisé de Rapports par Email
Le script génère un résumé des tâches inachevées sous forme d'email et inclut :
- Titre de la tâche.
- Date de début et date d'échéance.
- Lien hypertexte vers la tâche dans l'application Planner.
Extrait de Code : Envoi d'un Email
1Send-MailMessage -To $UserEmail -Subject "Rapport Hebdomadaire : Tâches Inachevées" -Body $EmailBody -SmtpServer "smtp.office365.com" -Credential $SMTPAuthLimitations de l'API Graph pour Planner
Bien que l'API Graph soit une interface robuste, certaines limitations subsistent :
- Absence de recherche ou de tri des tâches au sein des plans.
- Pas de méthode pour lister les plans où un utilisateur a des tâches assignées. Cette opération nécessite une navigation à travers les groupes Microsoft 365.
Astuce
Utilisez des méthodes côté client pour structurer et filtrer les données après récupération. Cela garantit une flexibilité accrue dans le traitement des résultats.
Conclusion
Automatiser la gestion des tâches inachevées dans Planner est un processus qui combine PowerShell et les capacités d'Azure Automation. En dépit des défis posés par les limitations de l'API, cette approche permet d'améliorer la productivité des équipes tout en assurant un suivi structuré.
En tant qu'administrateur système ou ingénieur cloud, vous pouvez adapter ce script à d'autres scénarios métier en vous appuyant sur les fonctionnalités de Microsoft Graph PowerShell SDK et Azure Automation.
Important
Assurez-vous de sécuriser vos paramètres d'authentification et de respecter les politiques de sécurité de votre organisation lorsque vous configurez l'automatisation.



