Office 365 - Disable Clutter Feature Globally

O365.png

In a conversation today, I was asked about Clutter, what it was, why it was there... The short answer it, it is your inbox learning from your patterns on messages you are likely to ignore. To me, this is pretty similar to the Junk E-Mail folder. I know technically they are completely handled differently, however an End User ask this question

Why do I have to check mail in three spots, Inbox, Junk, and now Clutter?

That being said, it maybe useful to turn off the Clutter Feature accross the board. Anyone who has been in IT for any length of time knows how many times the phrase "Did you check your Junk Folder" is said. Instead of adding "Did you check the Clutter Folder" we could just turn it off.

The hard part is, there is no global function to disable Clutter, it is considered a "Per user" feature. This is where we need to turn to powershell. Keep in mind you need to connect your powershell to Office 365\Exchange Online. Instructions for that could be found here.

For this script, I merely created a variable and added the users, then used that variable in the Set-Clutter CMDlet. I was forced down this path as the Set-Clutter CMDLet doesn't accept a pipe to it.

#########################################
#                                       #
#        Connect to Office 365          #
#                                       #
#########################################
$msolcred = get-credential
connect-msolservice -credential $msolcred
#########################################
#                                       #
#            Exchange Online            #
#                                       #
#########################################
$UserCredential = $msolcred
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/?proxymethod=rps -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
#########################################
#                                       #
#        Change Clutter on\off          #
#                                       #
#########################################

# Disable Clutter processing for a mailbox
Set-Clutter -Identity MAILBOXID -Enable $False

# Check that it's done
Get-Clutter -Identity MAILBOXID | Format-List

# Globally
$users = Get-MsolUser
$users | foreach { Set-Clutter -Identity $_.UserPrincipalName -Enable $False}

References: Clutter Notifications in Outlook - Microsoft Connect to Exchange Online Remote Powershell - Microsoft