Powershell script to check mailboxes that are at or close to quota and send the mailbox an email to advise:
$smtpserver = ""
$replyemailadd = ""
$mailboxserver = ""
$users = Get-MailBoxStatistics -Server $mailboxserver | where {"IssueWarning","ProhibitSend","MailboxDisabled" -contains $_.StorageLimitStatus}
foreach ($objItem in $users)
{
$mailbox1 = $objItem.displayName + " item count: " + $objItem.itemcount + ", using " + $objItem.totalitemsize.value.ToMB() + "MB`n"
$mailbox2 = get-mailboxfolderstatistics $objItem.displayName | ft FolderPath, ItemsInFolder, @{Label="FolderSize(MB)";expression={$_.FolderSize.ToMB()} } -auto | Out-String
$mailbox3 = "Please contact ... if you have any questions regarding your mailbox quota.`n"
$messagesubject = "Quota Warning for " + $objItem.displayName + ", Size " + $objItem.totalitemsize.value.ToMB() + "MB used"
$mailboxfinal = $mailbox1 + $mailbox2 + $mailbox3
$temp = get-mailbox -identity $objItem.DisplayName
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$smtp.Send($replyemailadd, $temp.PrimarySmtpAddress,$messagesubject,$mailboxfinal)
}
Popularity: 5% [?]
