Last Updated: 2018-07-06
This script creates a new room mailbox and security two groups for full mailbox access and for send-as delegation. The security groups are created using a configurable naming convention. If required by your Active Directory team, you can add group prefixes or department abbreviations as well.
The script uses an XML configuration file to simplify changes for variables unique to your environment.
High-level steps executed by the script:
- Create a new room mailbox
- Create a new mail-enabled security group for full access delegation
- Assign a full access security group for full access to the room mailbox
- Create a new mail-enabled security group for send-as delegation
- Assign send-as permissions to a send-as security group
- Create a new mail-enabled security group for allowed users to book the new room mailbox
- Set calendar processing to AutoAccept, if required
- Set resource capacity, if required
XML settings file
The calendar-booking security group feature is currently not available. But will be available in an upcoming release.
The following example creates a room mailbox for a Conference Room with empty security groups.
.\New-RoomMailbox.ps1 -RoomMailboxName "MB - Conference Room" -RoomMailboxDisplayName "Board Conference Room" -RoomMailboxAlias "MB-ConferenceRoom" -RoomMailboxSmtpAddress "ConferenceRoom@mcsmemail.de" -DepartmentPrefix "C"
You can simplify the use of the script by using a parameterized helper script named Run-NewRoomMailbox.ps1.
The following Run-NewRoomMailbox.ps1 script simplifies the process of creating a team mailbox even more.
$roomMailboxName = 'MB-Conference Room' $roomMailboxDisplayName = 'Board Conference Room' $roomMailboxAlias = 'MB-ConferenceRoom' $roomMailboxSmtpAddress = 'ConferenceRoom@mcsmemail.de' $departmentPrefix = 'C' $groupFullAccessMembers = @('JohnDoe','JaneDoe') # Empty = @() $groupSendAsMembers = @() $groupCalendarBookingMembers = @() $RoomCapacity = 0 $RoomList = 'AllRoomsHQ' $Language = 'en-GB' .\New-RoomMailbox.ps1 -RoomMailboxName $roomMailboxName
-RoomMailboxDisplayName $roomMailboxDisplayName -RoomMailboxAlias $roomMailboxAlias -RoomMailboxSmtpAddress $roomMailboxSmtpAddress -DepartmentPrefix $departmentPrefix -GroupFullAccessMembers $groupFullAccessMembers -GroupSendAsMembers $groupSendAsMembers -RoomCapacity $RoomCapacity -AutoAccept -RoomList $RoomList-Language $Language
- 1.0, Initial community release
- 1.1, Some PowerShell hygiene, issue #2 closed
- 1.2, CalenderBooking, Language added
- Download and follow at Github: https://github.com/Apoc70/New-RoomMailbox?
- Twitter @stensitzki