This script uses the RemoteExchange calls for Exchange 2010:
. 'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1' Connect-ExchangeServer -auto
And the function:
function enable_mailbox_for_existing_user([string]$username)
{
$check = get-aduser -Filter { samAccountName -eq $username }
if($check -eq $null)
{
write-host "- User does not exist - ERROR" -ForegroundColor Red
}
else
{
# seems like the user exists
$mailbox_test = get-user $username | select recipienttype
if ($mailbox_test.RecipientType -eq "userMailbox")
{
write-host "- User is allready mail-enabled - WARNING" -ForeGroundColor Yellow
}
if ($mailbox_test.RecipientType -eq "User")
{
Enable-Mailbox -Identity $username -Alias $username | Out-Null
write-host "- Mailbox for user created - OK" -ForeGroundColor Green
}
}
}