Uno de los problemas más comunes que encontramos cuando tratamos de sincronizar el directorio de CallManager al Attendant Console, es cuando la sincronización falla debido a que el número del teléfono del usuario contiene algún carácter especial (ya sea que realmente lo contenga o que por algún motivo Attendant Console lo identifique como tal, puede ser un guion, espacio, etc).
Esto nos lleva a tener un directorio con menos en Attendant Console que el se desea tener.
Como primer paso, queremos verificar cuantos usuarios con un número de teléfono asignado existen en CUCM (solo usuarios que tengan un número de teléfono asignado serán sincronizados) y compararlo contra la cantidad de usuarios que se han importado a la base de datos de CUxAC.
Para saber cuál es la cantidad de usuarios en CUCM con un número de teléfono, podemos utilizar el siguiente comando vía CLI:
run sql select count(*) from enduser where telephoneNumber != ''
![CUCM1.JPG](/legacyfs/online/legacy/5/9/3/144395-CUCM1.JPG)
Luego, uno de los comandos que podemos correr en SQL y que nos va a dar información para este paso y para el siguiente es:
use ATTCFG
select * from dbo.Contact_Header order by Source_Unique_ID desc
Por medio de este comando, uno de los detalles que podemos ver cuántos usuarios han sido importados:
![SQL1.JPG](/legacyfs/online/legacy/6/9/3/144396-SQL1.JPG)
Si el resultado es menor en MSQL que en CUCM (en las imágenes este no es el caso, la idea es ilustrar solamente como se debe ver), debemos encontrar cual fue el ultimo usuario que se importo. Usando los resultados del comando anterior, se toma al último usuario que ha sido importado (en este caso va a ser el primero que se muestre en la lista) y se extrae el valor del "Source_Unique_ID", que representa el PKID del usario en CUCM.
![SQL2.JPG](/legacyfs/online/legacy/7/9/3/144397-SQL2.JPG)
En CUCM por medio de línea de comandos corremos la siguiente consulta:
run sql select first 1 * from enduser where pkid > '120a8a02-1db0-4fea-8e6a-29efdc85ce37' (este valor que aparece dentro de las comillas es el que se obtiene de la base de datos de Attendant Console, bajo el valor de"Source_Unique_ID”)
Este comando anterior nos muestra el siguiente usuario a ser importado basado en el PKID. Adicional al nombre, nos va a mostrar si el usuario posee algún caracter especial en el campo de número de teléfono en la base de datos de CUCM.
Si hay un caracter especial, se puede actualizar la información del usuario en la base de datos de CUCM (Tome en cuenta que esto es una solución temporal si CUCM está integrado con AD, pues en el momento que se haga una sincronización CUCM – AD, estos valores volverán a su estado anterior, conteniendo los caracteres especiales)
Se recomienda que si existe tal integración, los usuarios con el problema sean modificados en AD y luego este se haga una sincronización con CUCM. Si desea una solución temporal, puede proceder de la siguiente manera:
En CUCM, igualmente por CLI, correr el siguiente comando:
run sql update enduser set telephonenumber='11 3724-8000' where pkid like '120a8a02-1db0-4fea-8e6a-29efdc85ce37' ---> En este caso el caracter especial fue encontrado en el campo de "telephonenumber", y el número de teléfono que aparece en las '' es el que se va a establecer temporalmente.
Este proceso se tiene que hacer las veces que sean necesarias hasta que ningún usuario tenga caracteres especiales o hasta que todo el directorio este populado correctamente.
Después de cada actualización en la base de datos, se tiene que reiniciar el servicio "LDAP plug-in" para poder sincronizar los nuevos usuarios.
Se pueden utilizar los mismos dos comandos del inicio en CUCM y CUxAC para verificar el número de usuarios que se han importado (después de cada cambio) versus el numero que existe en CUCM.
Abajo tambien pueden encontrar diferentes comandos para ver informacion de cierto usuario. (En medio de las '' se escribe el nombre tal y como aparece el UserID en CUCM)
run sql select * from enduser where userid = '' ---> Muestra informacion como pkid, firstname, lastname, manager, department, telephonenumber, etc.
run sql select userid,pkid from enduser where userid = '' ---> Muestra el pkid de el usuario.
Existe ya un defecto creado CSCuh35880. Para más información referirse al siguiente enlace:
http://tools.cisco.com/Support/BugToolKit/search/getBugDetails.do?method=fetchBugDetails&bugId=CSCuh35880
Nota: Si en el directorio de CUCM los usuarios no tienen el 'telephonenumber' establecido, el usuario no se sincronizara con la base de datos de Attendant Console ya que esto es un requisito.