Archivo

Posts Tagged ‘contacts’

Poblando Office Communicator con todos los contactos

Hace poco llevamos a toda nuestra oficina a la solución de Microsoft Office Communications 2007. Es espectacular ver que los usuarios, que al principio bromeaban con sus cintillos, encontraban la ventaja de cambiar el telefono análogo por estos aparatitos que cuestan 4 veces menos.
Si bien ha sido beneficioso este cambio, se ha vuelto una necesidad tener la lista completa de los usuarios en cada cliente communicator, debido a que necesitas tener el contacto para realizar la llamada. Se puede realizar una llamada marcando el anexo del usuario, pero seria ocupar el servidor de mediacion para trabajos que en la práctica no le corresponden. Asi que finalmente decidimos poblar todos los usuarios de mi empresa con todos los contactos, como somos una empresa de menos de 100  personas, el trabajo es realizable sin mayores complejidades, pero no lo recomiendo para empresas más grandes sin primero realizar una separación de roles, áreas y grupos de contactos.

1era parte. Obteniendo la lista de usuarios del dominio

Yo tengo una fascinación con las consultas de Active Directory 🙂 , son simples, rápidas y aseguran un resultado completo. En este caso realice una consulta simple que me retornara los SIP de cada unos de los usuarios. ¿Como supe que buscar?, entre con el ADSIEDIT, abrí mi usuario y busqué un registro que contuviera el dominio SIP antecedido por el tipo de servicio (algo como sip:usuario@dominio.com). En este caso el registro que encontré fue: msRTCSIP-PrimaryUserAddress

image

Teniendo este registro simplemente creé una consulta que buscara en todo mi dominio por objetos que tuvieran este registro poblado y estuvieran habilitados:

Dsquery * domainroot -attr msRTCSIP-PrimaryUserAddress -filter (msRTCSIP-UserEnabled=TRUE) > usuariosSIP.txt

Esto me retornó todos los usuarios con SIP (incluyendo los contactos de Exchange) en este formato:

msRTCSIP-PrimaryUserAddress                                
sip:caguilera@dominio.cl                              
sip:usuario2@dominio.cl                                
sip:usuario3@dominio.cl                                
…..

Si lo quiero hacer un poco mas enfocado, y tengo mis usuarios separados por OU, puedo hacer una consulta a cada OU para poder ordenar la informacion de mejor forma:

dsquery * “OU=Chile,OU=Users,DC=dominio,DC=dom” -attr msRTCSIP-PrimaryUserAddress -filter (msRTCSIP-UserEnabled=TRUE) > c:\usuarios\Resultado_a_Texto.txt

2da. parte: Creando los contactos

Con esto elimine la primera línea (msRTCSIP-PrimaryUserAddress) para que no me diera error al importar y elimine los contactos de Exchange Unified Messaging. El siguiente paso ahora es instalar el Kit de recursos de OCS (lo pueden descargar desde acá) en el servidor de Front End de OCS. Una vez instalado, abro una consola (Start – Run – cmd – Enter) y voy a la siguiente dirección:

%ProgramFiles%\Microsoft Office Communications Server 2007\ResKit\WMI Samples (si instalaron el kit de recursos en otro directorio deberán reflejar esa dirección)

image  (en mi caso tengo instalado OCS en una máquina de 64 bits, por si se preguntan sobre el x86 en la direccion)

Nota: Antes copie el archivo “UsuariosSIP.txt” en esa misma dirección

Una vez ahi se debe ejecutar el siguiente comando

CScript LCSAddContacts.wsf /usersfile:UsuariosSIP.txt /contactsfile:UsuariosSIP.txt /contactsgroup:MiEmpresa

usersfile: archivo que contiene la lista de usuarios a cargar
contactsfile: archivo que contiene la lista de contacto que se agregarán a cada usuario
contactsgroup: el nombre del grupo que contendrá los nuevos contactos

Reutilice el archivo UsuariosSIP.txt para la lista de usuarios y la lista de contactos, ya que estoy agregando todos los usuarios.

No cerrar la ventana una vez que termine el proceso!!!!

3era. parte: Auto-aceptando los nuevos contactos

Como he asociado automáticamente los usuarios, debo auto-aceptar a todos para que puedan ver la información de disponibilidad de todos. Sin aceptar, solo podrán ver la información básica y no la información por ejemplo de disponibilidad.

En este caso creé un nuevo archivo de texto en el mismo directorio que los anteriores pero con una sola línea:

domain MiDominio.cl Allow Allow

Lo guardo como ACE.txt en el mismo directorio en donde ejecute el comando anterior.
Como NO cerré la ventana de comandos (espero que hayan leído todo antes de comenzar, para que hayan visto la nota que dejé) ejecuto la siguiente línea: 

CScript LCSAddACEs.wsf /usersfile:UsuariosSIP.txt /acesfile:ACE.txt

Una vez terminado, ya todos mis usuarios tienen la lista completa de contactos en su Office Communicator 🙂

Espero que les sirva, y si lo vana  ocupar en clientes, traten de modificar los archivos acorde a los requerimientos de la empresa, ya que no todos quieren ver a todos (me imagino todos en Microsoft teniendo a Bill Gates en su contacts list).

Saludos

Anuncios