Change Email from CAPS to lower case in Exchange Server 2010

I have a Client who is aking something strange
She has an ACtive directory which is not very Clean and and email adress policy which is: Surname.name@

she wants that every email be in the lower case format . ie: samson.siasia@test.com

How do i Transform : Samson. SIASIA@ or Samson. Siasia to samson.siasia@test.com
gazambeyIT CONSULTANTAsked:
Who is Participating?
 
Peter HutchisonSenior Network Systems SpecialistCommented:
You could use the ToLower() function to change the case of people's Email addresses
e.g.

$mbxlist = Get-Mailbox
Foreach ($user in $mbxlist)
{
  $usermail = $mail.EmailAddresses
  $newemail = ""
  Foreach ($email in $usermail)
  {
      $lowermail = $email.SmtpAddress.ToLower()
      $newemail = "$newemail$loweremail,"
  }
  $newemail = $newemail.substring(0, $newemail.length-1)
  Set-mailbox -Id $user.Identity -EmailAddresses $newemail
}
0
 
Zephyr ICTCloud ArchitectCommented:
You could try the ADModify tool to change them: http://admodify.codeplex.com/releases/view/6065#ReviewsAnchor
0
 
Scott ThomsonCommented:
Hey Gazambey,

I think this would do the trick for you?

but be careful and make sure you understand the script before you do implement it.

Any other experts also please feel free to modify it

http://blogs.technet.com/b/heyscriptingguy/archive/2008/01/08/how-can-i-modify-the-email-addresses-of-all-the-users-in-an-ou-and-its-subous.aspx

On Error Resume Next

Const ADS_SCOPE_SUBTREE = 2

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand =   CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection

objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE 

objCommand.CommandText = _
    "SELECT AdsPath FROM 'LDAP://OU=Finance,DC=fabrikam,DC=com' WHERE objectCategory='user'"  
Set objRecordSet = objCommand.Execute

objRecordSet.MoveFirst
Do Until objRecordSet.EOF
    Set objUser = GetObject(objRecordSet.Fields("AdsPath").Value)
    strEmailAddress = objUser.Mail
    strEmailAddress = LCase(strEmailAddress)
    objUser.Mail = strEmailAddress
    objUser.SetInfo
    objRecordSet.MoveNext
Loop

Open in new window

0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

 
gazambeyIT CONSULTANTAuthor Commented:
Hello Scot

What will be the manual process please?

Rgds
0
 
Scott ThomsonCommented:
I am sorry are you asking for the manual process as in you want to go through and change each email by itself..?

if not please explain further :)

Thanks
0
 
gazambeyIT CONSULTANTAuthor Commented:
YEs Scott I'm asking for the manual Process  as you said

Because the format of email is not uniform in the ACtive Directory .  If you have it please I'll be glad to hear

Rgds
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.