a única solução que encontrei é usando o método mailContact. Isso é um incômodo porque você tem duas listas, os usuários do AD e os novos contatos. Não há necessidade de exportar o catálogo de endereços do Domino, pois todos os usuários já estão no AD e possuem o atributo mail configurado. Então, o que eu fiz foi criar um script PowerShell que lê o AD e cria um novo contato para cada usuário do AD. Ele removerá os contatos existentes antes de adicionar o novo para manter a lista atualizada. Eu vou executar isso em um cronograma. Não é a melhor maneira, mas parece ser a única maneira de fazer isso.
#
# list all email addresses in active directory and create mail contacts
#
# Created By Thomas Wheeler
# [email protected]
#
$WarningPreference = "SilentlyContinue"
$VerbosePreference = "SilentlyContinue"
add-pssnapin Microsoft.Exchange.Management.PowerShell.E2010
$strFilter = "(&(objectCategory=User) )"
$objDomain = New-Object System.DirectoryServices.DirectoryEntry
$objSearcher = New-Object System.DirectoryServices.DirectorySearcher
$objSearcher.SearchRoot = $objDomain
$objSearcher.PageSize = 1000
$objSearcher.Filter = $strFilter
$objSearcher.SearchScope = "Subtree"
$colProplist = "name", "mail"
foreach ($i in $colPropList){
$objSearcher.PropertiesToLoad.Add($i)
}
$colResults = $objSearcher.FindAll()
foreach ($objResult in $colResults){
$objItem = $objResult.Properties;
if($objItem.mail -ne $null ){
#Write-Host $objItem.name " (" $objItem.mail " )" $objItem.sAMAccountType
$name = $objItem.name | Out-String
$email = $objItem.mail | Out-String
Remove-MailContact -Identity $name.trim() -Confirm:$false
New-MailContact -Name:$name.trim() -ExternalEmailAddress $email.trim()
}
}