One of our clients had an issue where their Unified Messaging arbitration mailbox had become corrupted.  We were unable to change the audio files on the auto-attendants and we were seeing errors like this in the application logs:

Event ID 1431
UM can’t save the Call Data Record message to the EDiscovery mailbox. More information “The number of call data record messages being processed in the Unified Messaging pipeline has exceeded the maximum limit. Please check whether the EDiscovery mailbox with DistinguishedName CN=SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9},CN=Users,DC=domain,DC=com or MailboxDatabase CN=UM-Mailbox-DB,CN=Databases,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=domain,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=domain,DC=com is down.”.

Event ID 1099
User “SYSTEM” attempted to modify a custom prompt for auto attendant “AA 001”. The operation failed. Make sure that the user is assigned the UM Prompt role or UM Management role. More information: “An error occurred while accessing the custom prompt publishing point. The underlying connection was closed: An unexpected error occurred on a send.”.

After unsuccessful attempts to repair the arbitration mailbox we deleted and recreated the mailbox.  First we removed the arbitration mailbox:

Disable-Mailbox “SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}” -Arbitration

Note: We did not opt to delete the user account associated with the UM mailbox in this particular case.  If both the UM arbitration mailbox and user account are somehow corrupted then it may also be necessary to delete the “SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}” user account under the AD Users folder after disabling the mailbox.  To recreate that user run “setup.exe /PrepareAD” from the Exchange installation folder and the user will be created again.

Then we recreated the mailbox:

Enable-Mailbox -Arbitration -Identity “SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}”

Then we set the display name to the correct value “Microsoft Exchange”, because the default setting was wrong:

Set-Mailbox -Arbitration -Identity “SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}” -DisplayName “Microsoft Exchange”

Everything appeared to be fixed at this point until we attempted to change the audio file for one of the auto-attendants and we had new errors:

Make sure that an organization mailbox is available to store UM call data records and auto attendant and dial plan prompts.

No organization mailbox with ‘UMDataStorage’ capability was found.

There was one more command that needed to be run in order to set the UMDataStorage attribute:

$(get-mailbox “SystemMailbox{e0dc1c29-89c3-4034-b678-e6c29d823ed9}” -Arbitration) | set-mailbox -Arbitration  -UMDataStorage:$true

Once this command was applied all was fixed!