public/Enable-O365Settings.ps1
<#
.Synopsis This powershell cmdlet allows you to enable mailbox features such as audilogging and in-place archiving. .Description Enable mailbox features - as of Version 1.0 you can only enable audit logging and in-place archiving. .Example Enable-O365Settings -SettingName AuditLogging .Example Enable-O365Settings -SettingName InPlaceArchive .Example Enable-O365Settings -SettingName InPlaceArchive -MailAlias "Jon Doe" #> Function Enable-O365Settings{ [cmdletbinding()] Param ( [Parameter(Position=0,mandatory=$true)] [string]$SettingName, [Parameter(Position=1)] [string]$MailAlias ) # End of Parameters Process { Test-O365Connection switch ($SettingName) { AuditLogging { $UserMailbox = ReadHost -Prompt "Input User Mailbox: " Get-Mailbox -ResultSize Unlimited -Filter {RecipientTypeDetails -eq "UserMailbox"} | Set-Mailbox -AuditEnabled $true } InPlaceArchive { $select = Read-Host -Prompt "(A) All Mailboxes ; (S) Single Mailbox " Switch($select) { A { (Get-Mailbox) | ForEach {Enable-Mailbox –identity $_.PrimarySMTPAddress –Archive} } S { If(!$MailAlias) { $MailAlias = Read-Host "Enter User Alias: " } Enable-Mailbox "$MailAlias" -Archive } default {"Invalid selection"} } } } } #End Process } |