Création d’une salle de réunion par script
Posté par David PEKMEZ le avril 6, 2009
Voici un petit exemple de l’automatisation de la création d’une salle de réunion avec Powershell
Les éléments de couleur et en caractères gras sont à adapter dans votre environnement
Bien entendu les options de ce script peuvent être modifiées selon vos besoins, celui-ci est un exemple,
Vous trouverez toutes les explications et options disponibles via le site technet : http://technet.microsoft.com/fr-fr/library/aa996340.aspx
$nom = Read-Host “Saisir le nom de la ressource”
$mdp = Read-Host “Saisir le mot de passe” -AsSecureString
$db = Read-Host “Saisir le nom de la base de stockage”
$objOU = “Domaine.com/Ressources”
#$objOU = GetObject(“LDAP://DC.domaine.com:389/ou=Ressources,dc=domaine,dc=com“)
# Création de la ressource
New-Mailbox -Name $nom -Alias $nom -OrganizationalUnit $objOU -UserPrincipalName “$nom@domaine.com” -SamAccountName $nom -FirstName $nom -Initials “” -LastName “” -Database “NomServeurExchange\NomStorageGroup\$db” -Room -password $mdp
# Modification des permissions
Add-MailboxPermission -Identity “CN=$nom,OU=Ressources,DC=Domaine,DC=com” -User “DOMAINE\Username” -AccessRights “FullAccess”
# Paramétrage de la ressource
Set-MailboxCalendarSettings $nom -AutomateProcessing:AutoAccept -AllowConflicts $False -BookingWindowInDays:180 -MaximumDurationInMinutes:1440 -AllowRecurringMeetings $True -EnforceSchedulingHorizon $True -ScheduleOnlyDuringWorkHours $False -ConflictPercentageAllowed:0 -MaximumConflictInstances:0 -ForwardRequestsToDelegates $True -DeleteAttachments $True -DeleteComments $True -RemovePrivateProperty $True -DeleteSubject $True -DisableReminders $True -AddOrganizerToSubject $True -DeleteNonCalendarItems $True -TentativePendingApproval $False -EnableResponseDetails $True -OrganizerInfo $True -ResourceDelegates:GroupedeDélégation -AllRequestOutOfPolicy $False -AllBookInPolicy $False -AllRequestInPolicy $True -AddAdditionalResponse $True -AdditionalResponse:’<DIV><FONT face=Tahoma size=2>Ceci est un Test </FONT></DIV>’ -RemoveOldMeetingMssages $True -AddNewRequestsTentatively $False -ProcessExternalMeetingMessages $False -DefaultReminderTime:15 -RemoveForwardedMeetingNotifications $False
# Modification des délégations
Set-MailboxCalendarSettings $nom -ResourceDelegates:GROUPEouUsername
Merci à Steven Bolzer pour cet exemple,
Steven est un de mes clients qui s’est intéressé à Powershell lors de la migration Exchange 200x vers 2007,
Ceci est un exemple de script qu’il a mis au point en quelques jours,
Powershell est vraiment extrêmement puissant et assez simple d’accès !
