Comment utiliser Set CalendarProcessing dans PowerShell

La cmdlet Set CalendarProcessing dans PowerShell peut être utilisée pour gérer les paramètres de calendrier sur les boîtes aux lettres de ressources. L'applet de commande ne peut pas être utilisée pour les boîtes aux lettres des utilisateurs ; pour cela, vous devrez utiliser leapplet de commande.

Pour les boîtes aux lettres de ressources, l'applet de commande nous permet de configurer le préposé au calendrier, l'assistant de réservation et d'autres éléments de configuration du calendrier.

Dans cet article, nous verrons comment utiliser l'applet de commande Set-CalendarProcessing dans PowerShell.

Définir le traitement du calendrier

Les calendriers de ressources sont principalement utilisés pour les salles de réunion, mais ils peuvent également être utilisés pour la réservation de matériel. L'avantage d'un calendrier de ressources par rapport à un calendrier normal est que nous pouvons configurer différentes politiques de réservation.

Avant d'examiner comment utiliser l'applet de commande, examinons d'abord brièvement les différentes options dont nous disposons en matière de calendriers de ressources.

  • Accepte automatiquement les demandes de réunion
  • Supprimer l'objet, les commentaires, les pièces jointes ou les éléments hors calendrier de la réunion
  • Ajouter un organisateur au sujet
  • Définir les délégués du calendrier
  • Définir les fenêtres de réservation (combien de jours à l’avance vous pouvez réserver)
  • Définir le comportement de conflit en réunion
  • Définir les paramètres des réunions récurrentes

Exigences

La cmdlet Set CalendarProcessing fait partie du. Donc, avant de commencer, assurez-vous d'avoir installé le dernier module EXO et connecté à Exchange Online.

Ajout d'un calendrier de salle de réunion

Comme mentionné, l'applet de commande ne peut être utilisée que sur les boîtes aux lettres de ressources. Si vous n'avez pas encore de calendrier de salle de réunion, nous devons d'abord en créer un. Vous pouvez le faire dans le Centre d'administration Microsoft 365, sousRessources>Chambres et équipements.

Nous utilisons également PowerShell pour créer une boîte aux lettres de salle de réunion avec la commande ci-dessous :

New-Mailbox -Name "Board Room" -Room

Pour afficher les paramètres de calendrier par défaut, nous pouvons utiliser la cmdlet Get-CalendarProcessing :

Get-CalendarProcessing -Identity BoardRoom | Select *

Définition des options du calendrier

Une fois notre salle de réunion créée, jetons un coup d'œil aux différentes options que nous pouvons configurer. À la fin, j'ai ajouté quelques exemples de scénarios couramment utilisés.

Détails de la réunion

Les détails de la réunion sont le sujet, les commentaires, les pièces jointes et l'organisateur de la réunion. Par défaut, tout est supprimé de l'élément de calendrier. Cela signifie que lorsque vous ouvrez le calendrier de la salle de réunion, vous voyez uniquement Occupé comme sujet de l'élément du calendrier.

Nous pouvons utiliser les paramètres suivants pour changer cela :

  • Supprimer le sujet– $true par défaut. Définir sur $false pour afficher le sujet de la réunion
  • Supprimer les commentaires– $true par défaut. Définissez sur $false pour afficher les détails de la réunion
  • Supprimer les pièces jointes– $true par défaut. Définir sur $false pour conserver les pièces jointes de la réunion
  • AddOrganizerToSubject– $true par défaut. Définir sur $false pour masquer l'organisateur

Pour conserver le sujet de l'élément de réunion, nous pouvons utiliser la commande suivante :

Set-CalendarProcessing -Identity BoardRoom -DeleteSubject $false

Note

Les paramètres SupprimerSubject, SupprimerComments et SupprimerAttachements n'affectent que les nouvelles réunions. Donc, si vous définissez DeleteSubject sur $false, le sujet n'apparaîtra pas dans les réunions existantes.

AddOrganizerToSubject est activé par défaut. Mais lorsque vous regardez le calendrier de votre nouvelle salle de réunion, vous remarquez probablement que vous ne voyez pas l'organisateur. La raison en est que par défaut, les utilisateurs disposent uniquement de l'autorisation AvailabilityOnly sur le calendrier.

Pour visualiser l'organisateur, il faudra donner un peu plus de droits à l'utilisateur « par défaut » sur le calendrier. Nous pouvons le faire avec leapplet de commande :

Set-MailboxFolderPermission -Identity BoardRoom:\calendar -User Default -AccessRights Reviewer

Accepter des réunions

La véritable force des calendriers de ressources réside dans leur capacité à accepter automatiquement les demandes de réunion en fonction de la politique de réservation. Cette politique peut être créée avec une combinaison de paramètres, vous permettant d'adapter les exigences à vos besoins.

Le paramètre le plus important est le-Automatiser le traitementparamètre. Par défaut, cette valeur est définie sur AutoAccept, qui acceptera automatiquement une demande de réunion s'il n'y a pas de conflit.

Les autres options sont :

  • Aucun– Le traitement du calendrier est complètement désactivé
  • Mise à jour automatique– Les demandes de réunion sont placées à titre provisoire et un délégué devra approuver ou refuser la réunion.
  • Acceptation automatique– Option par défaut ; les réunions sont acceptées en fonction des autres politiques.
Set-CalendarProcessing -Identity BoardRoom -AutomateProcessing AutoAccept

Autoriser les conflits

Par défaut, les conflits ne sont pas autorisés. Pour une seule demande de réunion, ce n'est souvent pas vraiment un paramètre important, car l'utilisateur verra immédiatement si une option est disponible lors de la création de l'invitation à la réunion.

Mais lorsque vous créez une réunion récurrente, vous ne pouvez souvent pas vérifier chaque date future pour voir s'il y a déjà une réunion. C'est là que leAutoriser les conflitsles paramètres entrent en jeu.

Lorsqu'il est réglé sur$vrai, cela permettra une série de réunions récurrentes, qu'il y ait ou non un conflit avec les réservations existantes. La valeur par défaut$fauxl’option est en réalité plus intéressante. Cette option refusera une série de réunions uniquement en fonction du nombre de conflits dans la série.

Pour cela, il utilise deux autres paramètres pour déterminer s’il refusera ou non la demande :ConflitPourcentageAutoriséouNombre maximal d'instances de conflits.

Le réglageNombre maximal d'instances de conflits, spécifie le nombre de conflits qu'une réunion récurrente peut avoir. Si c'est 0, alors il ne peut y avoir aucun conflit. Vous pouvez définir ce nombre sur n’importe quel nombre, mais la valeur par défaut est 0.

L'autre option estConflitPourcentageAutorisé. Il s'agit également par défaut de 0 et peut être défini sur le pourcentage de votre choix.

Set-CalendarProcessing -Identity BoardRoom -AutomateProcessing AutoAccept -AllowConflicts $false -MaximumConflictInstances 3 -EnableResponseDetails $true

Lorsque vous utilisez l'une des options ci-dessus, je recommande d'activerActiver les détails de la réponseaussi. De cette façon, l'organisateur recevra une notification pour chaque occurrence refusée dans la série de réunions.

Heures de travail uniquement

Le réglage-ScheduleOnlyDuringWorkHoursassurez-vous qu'une ressource ne peut être réservée que pendant les heures de travail. Désormais, pour que ce paramètre soit efficace, vous devrez vous assurer que les horaires de travail sont configurés pour la ressource.

Vous pouvez vérifier cela avec la commande PowerShell suivante :

Get-MailboxCalendarConfiguration -Identity boardroom

# Result
Identity  WorkDays WorkingHoursStartTime WorkingHoursEndTime WorkingHoursTimeZone
--------  -------- --------------------- ------------------- --------------------
boardroom Weekdays 08:00:00              17:00:00            W. Europe Standard Time

Assurez-vous que WorkingHoursTimeZone correspond au fuseau horaire de votre utilisateur ; sinon, les heures ne s'aligneront pas. Vous pouvez configurer les paramètres avec leSet-MailboxCalendarConfigurationapplet de commande. En savoir plus à ce sujet dans.

Activez le paramètre avec :

Set-CalendarProcessing -Identity BoardRoom -ScheduleOnlyDuringWorkHours $true

Ajout d'une réponse supplémentaire

Une fonctionnalité pratique de l'applet de commande Set-CalendarProcessing est que vous pouvez ajouter une réponse supplémentaire à l'e-mail de confirmation. Par exemple, vous pouvez ajouter des informations sur la façon d'utiliser la ressource ou donner d'autres informations supplémentaires.

Nous devrons définir deux paramètres pour cela, le premier est-AdditionalResponse. Ici, vous pouvez ajouter une chaîne avec le texte que vous souhaitez ajouter. Et le deuxième est-AddAdditionalResponseque vous devrez définir sur $true pour ajouter réellement le texte à la réponse

Set-CalendarProcessing -Identity BoardRoom -AdditionalResponse "Make sure to get your own coffee" -AddAdditionalResponse $true

Lorsqu'un utilisateur réserve la ressource, le texte s'affiche dans l'e-mail de confirmation :

Politique de réservation et de demande

Lorsque vous examinez l'applet de commande Set-CalendarProcessing, vous verrez plusieurs paramètres liés à Book in Policy et Request in Policy. Ces paramètres peuvent être un peu déroutants lorsqu'on les examine, mais ils sont utilisés pour gérer qui peut faire une demande de réservation et si la demande est automatiquement approuvée ou non.

Il y a quelques différences que vous devez connaître pour comprendre les options :

  • Demandes dans le cadre des règles– des demandes de rendez-vous qui correspondent aux règles de réservation, comme les plages horaires autorisées, pas de conflits.
  • Demandes hors politique– ne correspondent pas aux règles de réservation. Par exemple, elle est en conflit avec une autre réservation ou se situe en dehors des heures autorisées.
  • Réserver dans la politique– Ce sont des utilisateurs qui sont automatiquement approuvés s’ils respectent la politique
  • DemandeDansPolitique– Les utilisateurs de ce groupe doivent toujours obtenir l’approbation (même s’ils suivent la politique)

Pour vous aider encore plus, j'ai créé un aperçu des différents paramètres et de leur effet sur une demande de rendez-vous :

ParamètreEffet quand$vraiEffet quand$faux
Tous les livres dans la politiqueToutes les demandes des utilisateurs dans les règles sontautomatiquement approuvé.(Par défaut : $vrai)Demandes dans la stratégie de toutes les utilisateursnécessiter l'approbation du délégué.
AllRequestInPolitiqueDemandes dans la stratégie de toutes les utilisateursdoit être approuvé par un délégué.Seuls les utilisateurs dansDemandeDansPolitiquebesoin d'approbation ; d'autres sont approuvés automatiquement.
AllRequestOutOfPolicyToutes les demandes hors politique des utilisateursdoit être approuvé par un délégué.Seuls les utilisateurs dansDemandeOutOfPolicybesoin d'approbation ; d'autres sont automatiquement rejetés.
Réserver dans la politiqueDéfinitutilisateurs spécifiquesdont les demandes dans la stratégie sontautomatiquement approuvé.Ces utilisateurs suivront la valeur par défautTous les livres dans la politiqueréglage à la place.
DemandeDansPolitiqueDéfinitutilisateurs spécifiquesdont les demandes dans la politiquenécessiter l'approbation du délégué.Ces utilisateurs suivront la valeur par défautAllRequestInPolitiqueréglage à la place.
DemandeOutOfPolicyDéfinitutilisateurs spécifiquesdont les demandes hors politiquenécessiter l'approbation du délégué.Ces utilisateurs suivront la valeur par défautAllRequestOutOfPolicyréglage à la place.

Jetons un coup d'œil à quelques exemples pour mieux comprendre les différentes options et leurs relations les unes avec les autres.

Par défaut, les demandes de réservation de tous les utilisateurs sont automatiquement acceptées si elles correspondent à la règle de réservation. Cela se reflète dans le paramètre-AllBookInPolicyqui est réglé sur$vraipar défaut:

Set-CalendarProcessing -Identity BoardRoom -AllBookInPolicy $true

Exiger l'approbation pour chaque demande de réunion

Si nous voulons que chaque demande de réunion soit approuvée par un délégué, nous devons alors définir le paramètre-AllRequestInPolicyà$vraiet le-AllBookInPolicyà$faux. Vous devrez également vous assurer qu'un ou plusieurs délégués sont configurés pour le calendrier des ressources :

Set-CalendarProcessing -Identity BoardRoom -AllBookInPolicy $false -AllRequestInPolicy $true -ResourceDelegates "[email protected]"

Exiger l'approbation des demandes de réunion en dehors de la politique

Par défaut, les demandes de réunion qui ne respectent pas la politique sont automatiquement refusées. Supposons maintenant que vous disposiez d’un calendrier de ressources dans lequel les utilisateurs peuvent réserver une voiture de société. La voiture ne peut être utilisée que pendant les heures de travail, vous avez donc défini-ScheduleOnlyDuringWorkHoursà$vrai.

Si les utilisateurs souhaitent réserver la voiture en dehors des heures de travail, ils devront demander l’approbation. Pour résoudre cela, nous pouvons utiliser le paramètre-AllRequestOutOfPolicy. Nous pouvons définir cela sur$vrai, qui permettra aux utilisateurs de soumettre une demande hors politique, qui nécessite l'approbation du délégué de la boîte aux lettres des ressources.

Set-CalendarProcessing -Identity Car02 -AllRequestOutOfPolicy $true -ResourceDelegates "[email protected]" -ScheduleOnlyDuringWorkHours $true

Autoriser uniquement des utilisateurs spécifiques à réserver

Les paramètres-BookInPolicyet-RequestInPolicypermettent de configurer quels utilisateurs sont autorisés à créer/utiliser le calendrier de réservation de ressources.

Si, par exemple, vous disposez d'une salle de réunion qui ne peut être utilisée que par les responsables commerciaux ou d'une ressource qui ne peut être réservée que par des utilisateurs spécifiques, nous pouvons définir AllBookInPolicy sur$fauxet précisez les utilisateurs autorisés à faire une demande de réservation.

Utilisez leBookInPolicyparamètre lorsque vous n'avez pas besoin d'une approbation supplémentaire, et leRequestInPolicyparamètre lorsque la demande doit être approuvée par un délégué.

# Only allow Adele and Megan to book the company car
Set-CalendarProcessing -Identity Car02 -AutomateProcessing AutoAccept -BookInPolicy "[email protected]","[email protected]" -AllBookInPolicy $false

# Only allow members of the group "Sales" to book the conference room and require approval by delegate
Set-CalendarProcessing -Identity "Sales Room" -AutomateProcessing AutoAccept -RequestInPolicy "Sales Management" -AllBookInPolicy $false -ResourceDelegates "[email protected]"

Si un utilisateur qui n'est pas membre du groupe de vente essaie de réserver la salle de réunion, il recevra automatiquement un e-mail lui indiquant que la demande est refusée :

Combiner tous les paramètres

Maintenant que nous avons évoqué toutes les différentes options, intéressons-nous à la configuration complète et plus complexe pour vous montrer les possibilités.

Ci-dessous, vous verrez leset calendarprocessingconfiguration de la salle de réunion. j'ai utilisépour rendre les paramètres plus lisibles :

$roomSettings = @{
    "Identity" = "Board Room"
    "ScheduleOnlyDuringWorkHours" = $true
    "EnforceCapacity" = $true
    "AllowConflicts" = $false
    "MaximumConflictInstances" = 3
    "BookingWindowInDays" = 90
    "EnableResponseDetails" = $true
    "AutomateProcessing" = "AutoAccept"
    "BookInPolicy" = "Management"
    "AllBookInPolicy" = $false
    "RequestInPolicy" = "Sales Management"
    "AllRequestOutOfPolicy" = $false
    "RequestOutOfPolicy" = "Management"
    "ResourceDelegates" = "[email protected]"
}
Set-CalendarProcessing @roomSettings

Décomposons les paramètres pour voir l'effet sur le calendrier des ressources :

  • Uniquement pendant les heures de travail→ La salle ne peut être réservée que pendant les heures ouvrables(ScheduleOnlyDuringWorkHours = $true).
  • Pas de surréservation→ La salle ne peut être réservée au-delà de sa capacité
    (EnforceCapacity = $true).
  • Pas de réunions conflictuelles→ La pièce ne le fera pas autoriser les doubles réservations
    (AllowConflicts = $false).
  • Exceptions de conflit limitées→ Si les conflits sont autorisés, un maximum de 3 instances superposées est autorisé(Instances de conflit maximales = 3).
  • Fenêtre de réservation : 90 jours→ Les utilisateurs ne peuvent réserver que jusqu'à 90 jours à l'avance(RéservationWindowInDays = 90).
  • Envoyer des réponses détaillées→ Lorsqu'une demande est acceptée/refusée, l'e-mail de réponse comprend des détails(EnableResponseDetails = $true).
  • Accepter automatiquement les réservations→ Le système traite et accepte automatiquement les demandes de réunion qui correspondent à la politique(AutomateProcessing = « AutoAccept »).

Qui peut réserver la chambre ?

  • La direction peut réserver automatiquement→ Leurs demandes sont immédiatement approuvées à condition de respecter les règles de réservation(BookInPolicy = « Gestion »).
  • La direction des ventes a besoin d'approbation→ Même si leur demande suit les règles, un délégué doit l'approuver(RequestInPolicy = « Gestion des ventes »).
  • Tout le monde est bloqué→ DepuisAllBookInPolicy =$false, les utilisateurs qui ne sont pas dansBookInPolicyouRequestInPolicyJe ne peux pas du tout réserver la chambre.
  • La direction peut demander des réservations hors politique, mais nécessite une approbation→ Si la direction tente de réserver en dehors des règles autorisées, elle a toujours besoin de l'approbation du délégué.(RequestOutOfPolicy = « Gestion »).

Qui approuve les demandes ?

  • Jane (@elsefix.com) est la déléguée→ Elle gère les approbations pour toute demande nécessitant un examen manuel(RessourceDélégués = "[email protected]").

Conclusion

Même si nous pouvons définir quelques options dans le centre d'administration Microsoft 365 pour les boîtes aux lettres de ressources, la cmdlet set-calendarprocessing vous permet réellement d'affiner les paramètres.

J'espère que cet article vous a aidé à configurer votre calendrier de ressources. Si vous avez des questions, déposez simplement un commentaire ci-dessous.

Related Posts