To change the room mailbox details we need to connect to Exchange Online with PowerShell. Use the PowerShell commands below:
$credObject = Get-Credential
This will display a prompt to authenticate you and store your credentials.
Import the PowerShell commands:
$ExchOnlineSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $credObject -Authentication Basic -AllowRedirection Import-PSSession $ExchOnlineSession
To show the subject and organizer we first need to give all the users limited access to the calendar. This will display the subject and location of the meeting. You need to use the following Set-MailboxFolderPermission command:
Set-MailboxFolderPermission -Identity Meetingroom:\calendar -User default -AccessRights LimitedDetails
To display also the Organiser of the meeting in the calendar we need to set the following for the Mailbox:
Set-CalendarProcessing -Identity Meetingroom -AddOrganizerToSubject $true -DeleteComments $false -DeleteSubject $false
By default, the subject is deleted, so after we set Delete subject to false, only new meeting requests are affected. For existing meetings you will see the organizer and the location, new meetings will also have the subject displayed as you can see below:
If you have multiple Room mailboxes you might want to changes them all at ones, instead of changing the settings for each Room independently. First, we need to get all the Room Mailboxes:
$rooms = Get-Mailbox -RecipientTypeDetails RoomMailbox
Before we proceed let’s check if we have the correct mailboxes:
$rooms | ft
This will result in a list (table: ft = formatTable) of the room mailboxes.
To change the settings on these mailboxes we will loop through them with the following PowerShell command:
# First set the AccessRights $rooms | %{Set-MailboxFolderPermission $_":\Calendar" -User Default -AccessRights LimitedDetails}
# Display the meetings details $rooms | %{Set-CalendarProcessing $_ -AddOrganizerToSubject $true -DeleteComments $false -DeleteSubject $false}
When finished, type the following command to close the session:
Remove-PSSession $ExchOnlineSession