Be careful when converting Room mailboxes, or why are messages automatically deleted

Another interesting issue I encountered on Experts Exchange: messages sent to shared mailbox were being deleted immediately after arriving in the Inbox. None of the common suspects were the cause (rules, add-ins, mobile devices, etc). The only thing left uncertain (and unverified by the author) was the automatic processing options, the ones visible/configurable via Get-CalendarProcessing/Set-CalendarProcessing.

Here are the default settings for a room mailbox:

PS C:\> Get-CalendarProcessing wc | fl @{n='Recipient Type'; e={(Get-Recipient $_.Identity).RecipientTypeDetails }}, AutomateProcessing, DeleteNonCalendarItems

Recipient Type         : RoomMailbox
AutomateProcessing     : AutoAccept
DeleteNonCalendarItems : True

Well, the important bits at least. The DeleteNonCalendarItems does what it says, but on its own, it’s a pretty harmless setting. It is actually configured to True for all mailboxes, even user ones. Yet you don’t see messages disappearing from a user mailbox, as there’s a major difference in the settings:

PS C:\> Get-CalendarProcessing vasil | fl @{n='Recipient Type';e={(Get-Recipient $_.Identity).RecipientTypeDetails}}, AutomateProcessing, DeleteNonCalendarItems

Recipient Type         : UserMailbox
AutomateProcessing     : AutoUpdate
DeleteNonCalendarItems : True

So here’s the real villain. Setting AutomateProcessing to AutoAccept means that both the Calendar Attendant and Resource Booking Attendant are enabled on the mailbox, which in turn means that some of the ‘dormant’ settings will take effect. Now, the safeguard here is that you cannot switch to AutoAccept for any non-resource mailbox. For example, trying to do so against a user mailbox will return the following error:

PS C:\> Set-CalendarProcessing vasil -AutomateProcessing AutoAccept
AutoAccept can only be enabled on resource mailboxes.
+ CategoryInfo          : InvalidData: (vasil:ADObjectId) [Set-CalendarProcessing], ResourceOnlyException
+ FullyQualifiedErrorId : [Server=DBXPR03MB617,RequestId=c3383cd0-738f-4554-a766-93d13caa6a2a,TimeStamp=4/8/2015 8:45:39 AM] [FailureCategory=Cmdlet-ResourceOnlyException] E4B882CD,Microsoft.Exchange.Management.StoreTasks.SetCalendarProcessing
+ PSComputerName        : outlook.office365.com

The same applies to Shared mailboxes as well. But there is a catch: if you convert a mailbox from Room to Shared (or user), you will end up with the AutoAccept setting configured! Here’s the proof:

PS C:\> Get-CalendarProcessing  bathroom | fl @{n='Recipient Type';e={(Get-Recipient $_.Identity).RecipientTypeDetails}}, AutomateProcessing, DeleteNonCalendarItems

Recipient Type         : SharedMailbox
AutomateProcessing     : AutoAccept
DeleteNonCalendarItems : True

So, long story short: be careful when converting mailboxes (especially if originally provisioned as room mailbox) and always double-check the settings. Might save you some head-scratching.

1 thought on “Be careful when converting Room mailboxes, or why are messages automatically deleted

  1. Kenneth Henseler says:

    Good article! Exactly the sort of thing I just encountered. Your article confirms my findings with regards to the -AutomateProcessing parameter. I just completed a migration of the Rooms from Exch 2007 to 2013. What we’re seeing is that the Rooms mailboxes are not automatically processing meeting cancelations nor aut0-accepting new requests. PITA! Now, I’ll have to manually clean-up these events from the past week.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.