Un calendrier partagé dans Teams
En discutant avec Sébastien Place (https://splc.be/), Modern Classroom Expert chez Microsoft, nous cherchions une solution pour fournir des calendriers et/ou agendas exploitables sous Teams à destination des écoles. Suite à nos échanges, j’en étais arrivé à écrire l’article sur l’usage de documents Excel ou Word pour rendre ces calendriers disponibles : https://blog.teamy.be/index.php/2020/04/18/les-agendas-et-calendriers-dans-teams/
Mais Sébastien a voulu suivre une autre voie, une approche permettant d’exploiter le calendrier partagé de Teams, bien que celui-ci ne soit pas disponible dans Teams. En combinant nos efforts et compétences, je pense que nous sommes parvenus à proposer une solution qui mérite de s’y attarder
Structure de Teams
Sans rentrer dans les détails, voici un schéma qui explique quels sont les bases technologiques de Teams
Lorsque Microsoft a déployé Teams, ils se sont basés sur une technologie existante, les Groupes Office 365 (Unified Group). D’ailleurs, ces Groupes Office 365 sont toujours disponibles et vous pouvez même construire une équipe Teams sur base d’un groupe existant.
Les groupes Office 365 ou Modern Group, proposent toujours la notion de calendrier partagé, mais dans Teams ceux-ci ne sont pas disponibles. En fait ce n’est pas tout à fait vrai. Ce qui est vrai, c’est qu’il n’existe pas d’interface dans Teams pour visualiser et manipuler ce calendrier partagé, mais il reste disponible.
Ma démarche se base sur les faits suivants
- Une équipe Teams est construite en partie sur base d’un Groupe Office 365 qui lui propose un calendrier partagé
- Une équipe Teams est construite en partie sur une base SharePoint, pour chaque équipe il existe un site SharePoint
- Le calendrier partagé provenant du Groupe Office 365, est disponible dans l’espace SharePoint
Création d’une page SharePoint
Depuis Teams, sur base d’une équipe, il me suffit d’accéder au site SharePoint associé
Le premier élément à vérifier, sont les paramètres régionaux du site SharePoint, car si on veut manipuler le calendrier partagé, il faut s’assurer que le fuseau horaire est correctement configuré. J’ouvre donc l’interface des « Paramètres du site »
A partir de là, nous allons vérifier les « Paramètres régionaux »
Si nécessaire, il faut rectifier le fuseau Horaire et autres paramètres des calendriers.
Maintenant, nous allons créer une page SharePoint, Page de site, pour afficher le calendrier partagé
A vous de configurer cette page en fonction de vos besoins.
Dans mon cas, j’ai effectué les adaptations suivantes :
- Donner un titre à la page : « Calendrier Partagé »
- J’ai supprimé l’auteur de la page
- J’ai désactivé les commentaires
- J’ai retiré le bandeau visuel d’entête de la page
A ce stade-ci, il ne reste qu’à ajouter un composant, « Calendrier de Group » sur votre page
Une fois le composant mis sur la page, je vous invite à augmenter le nombre d’évènements visibles sur la page
Il ne reste qu’à publier la page pour la rendre disponible
Dans Teams
Passons à Teams, maintenant
Dans les onglets, via l’icône « + », nous allons ajouter un nouvel onglet de type SharePoint
Et sélectionner la page qui affiche notre calendrier partagé.
Voici le résultat
Vous pouvez maintenant ouvrir le calendrier de votre équipe via l’interface Outlook pour y ajouter quelques évènements !
Attention de bien sélectionner le calendrier de votre équipe, au moment d’ajouter des évènements. Je vous laisse le soin d’ajouter quelques évènements dans ce calendrier partagé.
Avec deux ou trois évènements, cela suffit pour tester le rendu visuel dans Teams. Il vous faudra peut-être demander la synchronisation du calendrier pour voir apparaitre vos nouveaux évènements.
Remarque
Il faut tout de même noter qu’en l’état on parle d’un calendrier partagé. Ce qui signifie que tous les membres de votre équipe y ont accès en lecture et modification. Ils peuvent donc eux-mêmes y inscrire des évènements.
Je vous propose maintenant un petit script PowerShell pour rendre ce calendrier accessible uniquement en lecture à vos membres, donc dans le cas d’une classe à vos élèves.
#Input Parameters Param ( [Parameter (Mandatory= $false)] [String] $Login="admin@contoso.com", [Parameter (Mandatory= $false)] [String] $Password="", [Parameter (Mandatory= $false)] [String] $UnifiedGroup ="2e9536d0-5331-4e81-8e57-264578929bf8" ) #Authentification $SecurePassword = ConvertTo-SecureString "$Password" -AsPlainText -Force $credential = new-object System.Management.Automation.PSCredential $Login, $SecurePassword -ErrorAction SilentlyContinue -ErrorVariable $AuthenticationFailed if($AuthenticationFailed.Count -ne 0){ Write-Host "Credential Error $AuthenticationFailed[0]" -f Yellow} #Open Exchange Session to get all Teams Properties $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "https://outlook.office365.com/powershell-liveid/" -Credential $credential -Authentication Basic -AllowRedirection -ErrorAction Stop Import-PSSession $Session -DisableNameChecking -ErrorAction Stop Set-UnifiedGroup -Identity $UnifiedGroup -CalendarMemberReadOnly:$true Get-UnifiedGroup -Identity $UnifiedGroup -IncludeAllProperties | Format-List *Calendar* Get-PSSession | Remove-PSSession -ErrorAction SilentlyContinue
Les paramètres $Login et $Password, n’ont pas besoin d’explication, mais vous devez renseigner un compte administrateur Microsoft 365
Par contre le paramètre $UnifiedGroup doit lui être renseigné avec la valeur GroupId de votre équipe Teams.
Pour le trouver, rien de compliqué, Teams vous le fournit.
Depuis Teams – Obtenir un lien vers l’équipe
Copier le lien, et coller le dans un fichier texte, vous obtiendrez ceci :
https://teams.microsoft.com/l/team/19%3aea378b2defca435cbb2b8c39c34a0667%40thread.tacv2/conversations?groupId=2e9536d0-5331-4e81-8e57-264578929bf8&tenantId=7697c276-436a-484c-88e7-073acedg94e2
Le GroupId est disponible dans le lien !
La commande Set-UnifiedGroup va vous renvoyer un warning, stipulant qu’aucune propriété n’a été mise à jour, car en effet -CalendarMemberReadOnly:$true ne fait que changer un « switch ».
Mais via la commande Get-UnifiedGroup -Identity $UnifiedGroup -IncludeAllProperties | Format-List *Calendar*, vous allez pouvoir vérifier la valeur de CalendarMemberReadOnly
Donc voici une approche différente, pour mettre en place un calendrier de devoirs, un agenda de cours, ou tout autre type d’évènement.
En espérant que cette approche puisse vous servir. Merci de votre lecture.
[…] Nouveau: Une solution intégrée dans Sharepoint est développée sur le blog neomytic en collaboration avec le responsable éducation de Microsoft: ici. […]
Super, j’ai réussi à créer mon agenda Teams. Mais comme je ne suis pas programmeur, je n’ai pas compris comment faire pour qu’il soit en lecture seule… Est-ce qu’il y aurait quelques informations complémentaires qui pourrait aider une pauvre néophyte?
Bonjour, après avoir suivi toute la procédure dans sharepoint j’ai beau cherché.. Je ne vois pas le nom du groupe dans outlook pour lequel je veux gérer un calendrier partagé … donc je crée bien des événements mais pour mon compte….
Bonjour,
très instructif et fonctionnel, Merci.
une question, est-il possible de « partager » les catégories, pour que tous mes utilisateurs voient les mêmes couleurs ?