La libreta de direcciones en Lync: Comportamientos, errores y pasos para solucionarlos.

Algunos de los casos más frecuentes con los que nos encontramos están relacionados con la libreta de direcciones. No siempre son problemas sino que en ocasiones es simplemente un comportamiento que no se ajusta a las necesidades. Hay diferentes comportamientos posibles con la libreta de direcciones en Lync 2010. A continuación plasmamos los pasos y pruebas que pueden realizarse para acotar el problema. Esto aplica a Communicator 2007, Lync 2010 y 2013.

 

En primer lugar, es necesario entender algunos conceptos importantes.

 

A nivel de servidor, ABServer.exe genera un fichero con el contenido completo de la libreta de direcciones, y posteriormente genera hasta 29 ficheros llamados Delta que incluyen la actualización del dia anterior con extensión .lsabs

También se generan ficheros .dabs para clientes con espacio limitado como el Communicator Phone Experiencecon las mismas características.

La localización de estos ficheros se encuentra en la carpeta compartida que creamos al configurar el servidor. lyncserverlyncshare1-WebServices-1ABFiles

Los ficheros se mantienen 30 días y llegan a ser unos 1800 en la carpeta, las full y la delta de cada full.

En cuanto a cliente, al conectarse al servidor detecta las URL de la libreta de direcciones ya sea la interna o la externa. Si obtiene un acceso denegado y está dentro del entorno aparecerá un icono con el mensaje de error de la descarga, y si es externo se solicitarán las credenciales.

 

Si conecta correctamente y no existe ningún fichero a nivel local intenta descargarse la versión full del servidor, y los días posteriores se descargará la delta de esa versión full. Si pasan más de 30 dias sin conectarse se descargará la versión full. La descarga se produce si han pasado 24 horas desde la última vez, pero si permanece conectado se actualizará a las 00:00 GMT si es Communicator o a la 1:30 AM GMT si es Lync.

 

La localización de los ficheros a nivel local se encuentran en: <unidad de disco> :%LOCALAPPDATA%MicrosoftCommunicator <user>

  

Maneras de solucionar e identificar problemas con la libreta de direcciones:

 

-En primer lugar, y es bastante importante, es identificar el comportamiento y saber si es un error. En este sentido no es lo mismo que la libreta no se descargue, a que los contactos permanezcan o contengan datos inexactos. Este punto es importante por lo siguiente; Lync se integra completamente con Outlook. Hemos tenido reportados casos donde los datos no eran precisos en Lync pese a que se refrescaba la libreta y a nivel de servidor todo era correcto. El motivo es que si el contacto existe en Outlook, mostrará los datos en Lync. Imaginemos que se elimina un contacto de Directorio Activo y sigue apareciendo en Lync al hacer
la búsqueda. El contacto seguirá mostrándose. Por ello es importante comprobar antes el tipo de comportamiento que se tiene y ver la posible relación con Outlook.

 

-Otro comportamiento que puede ser objeto de consulta son los contactos federados. Por diseño, Lync 2010 no muestra en la búsqueda los contactos externos a menos que se escriba la dirección SMTP completa. La solución es agregar el contacto en Outlook para que disponga de la suficiente información como para hacer la búsqueda, y no simplemente tener un contacto agregado en Lync. Otra alternativa es migrar a Lync 2013 donde el cliente ya permite la búsqueda de contactos externos.

 

En cuanto a otros errores:

 

-Comprobar el visor de eventos a nivel de servidor y cliente.

-Actualizar el cliente de Lync a la última versión disponible. En cuanto al servidor, actualizar si es posible a la última actualización acumulativa. https://technet.microsoft.com/en-us/lync/gg131945.aspx

-Comprobar si los contactos de Outlook aparecen en los contactos de Lync (para comprobar la integración).

-Comprobar si la dirección SIP es la misma que la dirección SMTP.

-Comprobar si aparecen todos los datos o sólo algunos.

-Eliminar los ficheros locales y forzar la replicación.

-Forzar la replicación del cliente con el siguiente comando: reg add HKLMSoftwarePoliciesMicrosoftCommunicator /v GalDownloadInitialDelay /t REG_DWORD /d 0 /f

 

Si continúan los problemas podemos comprobar algunos tema a nivel de servidor:

En servidor, ejecutar los siguientes comandos:

 

Test-csAddressBookService

Para comprobar el servicio de address book.

Si no da errores, actualizar la base de datos de contactos para forzar la sincronización:

 

Update-CsUserDatabase

Update-csAddressbook

Como análisis extendido, sería interesante comprobar el lsabs, para ello hay que copiar el fichero .lsabs del share y pegarlo en la ubicación del ABServer:

‘C:Program FilesMicrosoft Lync Server 2010ServerCoreABServer.exe’

Y ejecutar este comando: Abserver –dumpfile [ultimo fichero que exista].lsabs c:dumpfile.txt

Con este TXT se pueden buscar usuarios que por ejemplo no aparezcan a nivel de cliente.

 

En relación a los campos que se replican en Lync desde AD:

Aunque pueda parecer que sirve para trasladar campos de AD a Lync, realmente la finalidad es introducir dichos datos en la base de datos de Lync. Lo que no hace es introducir dichos datos en la libreta de direcciones. La finalidad es por ejemplo que en determinados entornos se hagan scripts que ataquen a dicha base de datos para obtener cualquier tipo de utilidad pero no para ser utilizado como campos de la libreta.

 

En relación a los campos que se replican, tal y como indica la documentación:

 

Administering the Address Book Service in Lync Server 2013 (aplicable a 2010)

https://technet.microsoft.com/en-us/library/gg429711.aspx

 

Los únicos campos soportados para albergar números, y que la libreta va a utilizar para construirse en base a los datos de AD son:

 

-Telephonenumber

-Homephone

-Mobile

-Other Telephone

 

Estos son los únicos campos de AD que Lync puede utilizar para construir y normalizar los números que se pongan. La recomendación es que se pongan los números de teléfono ya normalizados en AD. Haciendo esto se van a evitar posibles errores y la investigación de comportamientos cuando no se obtienen los resultados deseados.

 

En el caso de que no se introduzcan los números normalizados en AD, tendréis que editar las reglas de normalización del fichero: Company_Phone_Number_Normalization_Rules.txt

Cualquier número que no se normalice correctamente aparecerá en el fichero “Invalid AD PHone Numbers” y no se mostrará en la libreta de direcciones de Lync.

Sobre el valor del campo “LineUri” que aparece en el panel de control de Lync asociado a un usuario, tampoco aparecerá en la libreta sino el que aparezca en AD.

 

Otro tema importante es destacar que la única manera soportada de introducir números de teléfono en AD, es haciéndolo a través de Users And Computers de AD, y no mediante el uso de ADSIEDIT o de cualquier otra herramienta similar.

Paralelamente ha habido algunos bugs relacionados con la normalización de números y extensiones de AD que también puede dar lugar a resultados que no son los esperados por tanto hay que ser muy cautelosos para disponer de la configuración recomendada así como de las últimas actualizaciones de cliente y servidor. También hay que tener cuidado cuando se mezclen contactos de Outlook porque puede dar lugar a confusiones sobre el origen de los datos que muestra la libreta como se ha comentado anteriormente.

 

Esperamos que sea utilidad.