How to bulk import / migrate contacts into Microsoft Exchange

Discussion in 'Microsoft Exchange' started by Latest Questions, Apr 15, 2014.

  1. Latest Questions

    Latest Questions postmaster & search

    Joined:
    Dec 1, 2013
    Messages:
    294
    Likes Received:
    1
    Do you know anything about importing contacts into an Exchange server?

    One of my customers wants me to build a contacts ("address book") migration tool for CommuniGate to Exchange. I've got the CommuniGate side covered (it turns out you can export CG contacts with IMAP in vCard format...cool).

    But I am at a loss for how to import vcards for multiple users into Exchange. Google is full of articles about individual users importing vcards using Outlook but I can't find anything about a command-line utility that does something like this:

    <import> <user> <vcard>

    You'd think that every mail server would have something like this and most of the ones I have worked with do have it.
     


  2. popowich

    popowich EQ Forum Admin Staff Member

    Joined:
    Aug 12, 2008
    Messages:
    8,983
    Likes Received:
    120
    There are some third party apps, but a well crafted CSV file and csvde.exe are a good way to go.
     

  3. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    >a well crafted CSV file and csvde.exe are a good way to go.

    I'll look into csvde.

    Thanks, Rick
     
  4. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    Does importing contacts through csvde result in personal contact or global ones? I've found this about csvde:

    objectClass,displayName,DN,mailNickname,targetAddress,proxyAddresses,msExchPoliciesExcluded,mail

    Example:

    contact,Aaron Adams,"CN=Aaron Adams,OU=Category, OU=Distribution, DC=Domain, DC=com", aadams, SMTP:aadams@domain.com,SMTP:aadams@domain.com,{26491CFC-9E50-4857-861B-0CB8DF22B5D7},aadams@domain.com

    CSVDE -F CONTACTS.CSV -R "(objectclass=contact)"

    How to use Csvde to import contacts and user objects into Active Directory

    This says to me that csvde is creating global (not personal) contacts in Active Directory. :mad:

    That's not what the customer wants as he needs to migrate each CommuniGate user's personal address book to that user's personal addressbook on Exchange. Not load a global address book on Exchange.

    The only thing I have come up with in Google searches is how a user can import a vcard into his Outlook address book.

    Is there a way to load an Exchange user's personal address book from the server? Or is that info stored in a PST file on the user's PC?

    -Rick
     
  5. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    I have asked the customer to clarify his requirements by answering the following questions.

    Do you want to migrate contact information from the Communigate address book in LDAP to the Exchange address book in Active Directory?

    Or do you want to migrate contacts from each Communigate user's personal address book ("contacts mailbox") to the user's Outlook personal address book?
     
  6. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    1.) There are no existing Microsoft utilities which permit an administrator to import contacts for multiple users. Users can import them using the Import/Export tool in Outlook but it is a manual process.

    2.) It is possible to develop a script using PowerShell to load contacts for multiple Outlook users. According to Microsoft's tech bulletins you must first create a PST file with a user's contacts and then execute a 'New-MailboxImportRequest' command for each user.
     
  7. JhonH

    JhonH Greylisted

    Joined:
    Apr 21, 2014
    Messages:
    1
    Likes Received:
    0
    You can try the below given cmdlet to bulk import/migrate contacts into MSExchange :


    Import-Csv .\ExternalContacts.csv|
    foreach-object{if (Get-MailContact -anr $_.name) {write-host $_.name 'is a duplicate entry!!!'}
    else {New-MailContact -Name $_.Name -DisplayName $_.Name -ExternalEmailAddress $_.ExternalEmailAddress -FirstName $_.FirstName -LastName $_.LastName}
    }


    and Export-Mailbox -Identity UserB -IncludeFolders ‘\Contacts’ -TargetFolder Backup -TargetMailbox UserA
     
  8. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    Thanks, JhonH! I will check it out.

    Rick
     
  9. rfs9999

    rfs9999 IMAP Tools

    Joined:
    Oct 27, 2013
    Messages:
    114
    Likes Received:
    6
    Are those the only fields supported in the csv fields or can you add fields like telephone, postal address, company name, etc? If so can someone point me to documentation so I can build a vCard to csv map?

    Thanks,
    Rick
     

Want to reply or ask your own question?

It only takes a minute to sign up (and it's free!). Click the orange sign up button to choose a username and then you can ask your own questions on the forum.
Loading...