none
Excluir contatos do Address Book RRS feed

  • Pergunta

  • Pessoal,

    quebrei a cabeça durante vários dias para resolver um "problema" com o OCS e como achei poucas informações e muitas solicitações semelhantes, resolvi compartilhar o conhecimento.

    Em minha empresa temos uma rotina que faz o "Disable" dos usuários demitidos. O problema é que os usuários desabilitados no AD continuam sendo apresentados no Address Book do OCS/Lync. Com isso, fica um "lixo" visual no catalogo e vários usuários questionam: "O usuário X foi demitido, entretanto, aparece no catalogo".

    Pelo que pesquisei nos fóruns a solução que davam era excluir o usuário do AD, só assim ele sairia do Address Book dos clientes.

    Na verdade o que é necessário é apenas remover os atributos de Telefonia e do OCS dos usuários desabilitados no AD, são eles os atributos: (telephoneNumber;mobile;MobilePhone;PhoneNumber;msRTCSIP-PrimaryHomeServer;msRTCSIP-PrimaryUserAddress;msRTCSIP-UserEnabled)

    Você poderá utilizar o ADSIEdit ou então PowerShell. Eu costumo otimizar as rotinas e criei o Script abaixo.
    OBS: Executo o script com o PowerGUI, basta fazer o download do Software e baixar o template de adm do AD e executar o script. O mesmo está comentado para os que teem dificuldade com a tecnologia.

    -------------------------------------------------------------------------------------------

    #Adiciona a Biblioteca do Active Directory do Powershell para executar o script em Command Prompt


    Add-PSSnapin

    Quest.ActiveRoles.ADManagement



    #Consulta no Active Directory todos os usuários desabilitados que possuem os atributos consultados pelo Address Book que estão preenchidos e os exporta para o arquivo C:\Scripts\PS\DisableOCSUsers.csv


    Get-QADUser

    -Disabled-SizeLimit10000 -IncludeAllProperties| where{$_.'msRTCSIP-PrimaryHomeServer'-cne$null-or$_.'msRTCSIP-PrimaryUserAddress'-cne$null-or$_.'msRTCSIP-UserEnabled'-cne$null} | selectSamAccountName, Description| Export-CsvC:\Scripts\PS\DisableOCSUsers2.csv-Encodingunicode-NoTypeInformation



    #Importa o arquivo DisableOCSUsers.csv e define como $null os campos consultados no Address Book do OCS/Lync


    Import-Csv

    C:\Scripts\PS\DisableOCSUsers.csv| Foreach{Set-QADUser$_.SAMAccountName -ObjectAttributes@{telephoneNumber='';mobile='';MobilePhone='';PhoneNumber='';'msRTCSIP-PrimaryHomeServer'='';'msRTCSIP-PrimaryUserAddress'='';'msRTCSIP-UserEnabled'='';}}

     


    Patrick Albuquerque - MCP MCDST MCSA ITIL Foundations

    terça-feira, 6 de março de 2012 18:08

Respostas

  • #Adiciona a Biblioteca do Active Directory do Powershell para executar o script em Command Prompt
    Add-PSSnapin Quest.ActiveRoles.ADManagement
    
    #Consulta no Active Directory todos os usuários desabilitados que possuem os atributos consultados pelo Address Book que estão preenchidos e os exporta para o arquivo C:\Scripts\PS\DisableOCSUsers.csv
    Get-QADUser -Disabled -SizeLimit 10000 -IncludeAllProperties | where {$_.'msRTCSIP-PrimaryHomeServer' -cne $null -or $_.'msRTCSIP-PrimaryUserAddress' -cne $null -or $_.'msRTCSIP-UserEnabled' -cne $null} | select SamAccountName, Description | Export-Csv C:\Scripts\PS\DisableOCSUsers2.csv -Encoding unicode -NoTypeInformation
    
    #Importa o arquivo DisableOCSUsers.csv e define como $null os campos consultados no Address Book do OCS/Lync
    Import-Csv C:\Scripts\PS\DisableOCSUsers.csv | Foreach {Set-QADUser $_.SAMAccountName -ObjectAttributes @{telephoneNumber='';mobile='';MobilePhone='';PhoneNumber='';'msRTCSIP-PrimaryHomeServer'='';'msRTCSIP-PrimaryUserAddress'='';'msRTCSIP-UserEnabled'='';}}

    Como ficou ruim a visualização no post, segue novamente a resposta.

    Patrick Albuquerque - MCP MCDST MCSA ITIL Foundations

    terça-feira, 6 de março de 2012 18:10
  • Outro Ponto...

    Apos executar o Script, caso queira visualizar o resultado de imediato, você deverá executar a sincronização manual do OCS Address Book através do command prompt do servidor FrontEnd: C:\Program Files\Microsoft Office Communications Server 2007 R2\Server\Core>ABServer.exe -syncnow

    O próximo passo é fazer com que o cliente OCS faça o download do Address Book imediatamente ao realizar o logon. Para isso deve adicionar a chave de registro:

    HKCU\Software\Policies\Microsoft\Communicator, inserir o valor "GalDownloadInitialDelay" do tipo DWORD com o valor "0".

    Após isso acessar a pasta %userprofile%\AppData\Microsoft\Communicator\sip_%user@domain.com e excluir o arquivo GALContacts.db

    Apos isso, você poderá visualizar os resultados.

    :D


    Patrick Albuquerque - MCP MCDST MCSA ITIL Foundations

    terça-feira, 6 de março de 2012 18:26

Todas as Respostas

  • #Adiciona a Biblioteca do Active Directory do Powershell para executar o script em Command Prompt
    Add-PSSnapin Quest.ActiveRoles.ADManagement
    
    #Consulta no Active Directory todos os usuários desabilitados que possuem os atributos consultados pelo Address Book que estão preenchidos e os exporta para o arquivo C:\Scripts\PS\DisableOCSUsers.csv
    Get-QADUser -Disabled -SizeLimit 10000 -IncludeAllProperties | where {$_.'msRTCSIP-PrimaryHomeServer' -cne $null -or $_.'msRTCSIP-PrimaryUserAddress' -cne $null -or $_.'msRTCSIP-UserEnabled' -cne $null} | select SamAccountName, Description | Export-Csv C:\Scripts\PS\DisableOCSUsers2.csv -Encoding unicode -NoTypeInformation
    
    #Importa o arquivo DisableOCSUsers.csv e define como $null os campos consultados no Address Book do OCS/Lync
    Import-Csv C:\Scripts\PS\DisableOCSUsers.csv | Foreach {Set-QADUser $_.SAMAccountName -ObjectAttributes @{telephoneNumber='';mobile='';MobilePhone='';PhoneNumber='';'msRTCSIP-PrimaryHomeServer'='';'msRTCSIP-PrimaryUserAddress'='';'msRTCSIP-UserEnabled'='';}}

    Como ficou ruim a visualização no post, segue novamente a resposta.

    Patrick Albuquerque - MCP MCDST MCSA ITIL Foundations

    terça-feira, 6 de março de 2012 18:10
  • Outro Ponto...

    Apos executar o Script, caso queira visualizar o resultado de imediato, você deverá executar a sincronização manual do OCS Address Book através do command prompt do servidor FrontEnd: C:\Program Files\Microsoft Office Communications Server 2007 R2\Server\Core>ABServer.exe -syncnow

    O próximo passo é fazer com que o cliente OCS faça o download do Address Book imediatamente ao realizar o logon. Para isso deve adicionar a chave de registro:

    HKCU\Software\Policies\Microsoft\Communicator, inserir o valor "GalDownloadInitialDelay" do tipo DWORD com o valor "0".

    Após isso acessar a pasta %userprofile%\AppData\Microsoft\Communicator\sip_%user@domain.com e excluir o arquivo GALContacts.db

    Apos isso, você poderá visualizar os resultados.

    :D


    Patrick Albuquerque - MCP MCDST MCSA ITIL Foundations

    terça-feira, 6 de março de 2012 18:26