Since the policy grabs data from AD in whatever case it is in, you need to apply this custom prefix, which basically says Replace A for a, B for b etc
%rAa%rBb%rCc%rDd%rEe%rFf%rGg%rHh%rIi%rJj%rKk%rLl%rMm%rNn%rOo%rPp%rQq%rRr%rSs%rTt%rUu%rVv%rWw%rXx%rYy%rZz
You can use this with firstname.Surname@yourdomain.com thusly:
%rAa%rBb%rCc%rDd%rEe%rFf%rGg%rHh%rIi%rJj%rKk%rLl%rMm%rNn%rOo%rPp%rQq%rRr%rSs%rTt%rUu%rVv%rWw%rXx%rYy%rZz%g.%s@yourdomain.com
Sweet. But it will not change the case of current email addresses. Dunno why.
For this you can use this powershell PS1 script
$MailboxList = Get-Mailbox -ResultSize unlimited $MailboxList | % { $LoweredList = @() $RenamedList = @() foreach ($Address in $_.EmailAddresses){ if ($Address.prefixstring -eq "SMTP"){ $RenamedList += $Address.smtpaddress + "TempRename" $LoweredList += $Address.smtpaddress.ToLower() } } Set-mailbox $_ -emailaddresses $RenamedList -EmailAddressPolicyEnabled $false Set-mailbox $_ -emailaddresses $LoweredList #Without this line the "Reply To" Address could be lost on recipients with more than one proxy address: Set-mailbox $_ -PrimarySmtpAddress $_.PrimarySmtpAddress }