Introducción
Este documento describe cómo eliminar un usuario final de la GUI web de Cisco Unity Connection (CUC) cuando se indica el error "Object not found User" (Objeto no encontrado Usuario).
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
- Cisco Unity Connection (CUC)
- Lenguaje de consulta estructurado (SQL)
Componentes Utilizados
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Problema
Hay casos en los que se le solicita que elimine un usuario final de la página Administración de CUC y se muestra el error "Objeto no encontrado Usuario" sin la posibilidad de eliminarlo.

Solución 1
Paso 1. Navegue hasta el CUC principal a través de CLI. Inicie sesión allí y ejecute el comando: run cuc dbquery unitydirdb SELECT objectId, dtmfaccessid from vw_User WHERE alias = "user_alias"
Este comando obtiene el identificador de objeto asociado al usuario final.
Nota: Tenga en cuenta que la consulta SQL distingue entre mayúsculas y minúsculas.
admin: run cuc dbquery unitydirdb SELECT objectId, dtmfaccessid from vw_User WHERE alias = "Lusky"
objectid dtmfaccessid
------------------------------------ ------------
644d3092-ed63-4694-a2ad-e0a5d2c8ad63 803103
Paso 2. Continúe con la ejecución de la sentencia delete, con el comando: run cuc dbquery unitydirdb execute procedure csp_userdelete(pobjectid="ObjectID_from_first_command")
Este comando se puede ejecutar correctamente con las filas de mensaje: 1 o con un error.
Una vez hecho esto, vuelva a la página CUC Administration > Users > Users y confirme que el usuario ha sido eliminado; si no es así, intente eliminarlo de nuevo desde la página GUI.
Sin embargo, si el problema continúa y el usuario final no puede eliminarse o el comando produce un error, continúe con los pasos de solución de problemas.
Solución 2
Paso 1. Valide si hay controladores de llamadas asociados al uso con el comando: run cuc dbquery unitydirdb select objectid, displayname from vw_callhandler where recipient_subscriberobjectid = "ObjectID_from_first_command"
Paso 2. Elimine la referencia con el comando: run cuc dbquery unitydirdb EXECUTE PROCEDURE csp_callhandlerDelete (pObjectId ="ObjectId_from_the_previous_step")
Paso 3. Elimine el usuario con el comando: run cuc dbquery unitydirdb EXECUTE PROCEDURE csp_UserDelete (pObjectId = "ObjectID_from_first_command")
Vuelva a la página Administración de CUC > Usuarios > Usuarios y confirme que el usuario se ha eliminado. De lo contrario, intente eliminarlo de nuevo desde la página GUI.
Solución 3
admin:run cuc dbquery unitydirdb execute procedure csp_userdelete(pobjectid='644d3092-ed63-4694-a2ad-e0a5d2c8ad63')
Key value for constraint (informix.pk_tbl_scheduleset) is still being referenced.
Command failed
Como se ve en el resultado, el error muestra que se hace referencia al usuario en las tablas de programaciones.
Paso 1. Ejecute este comando SQL para obtener la información de la tabla de planificación: ejecute cuc dbquery unitydirdb y seleccione displayname, objectid de vw_scheduleset donde owner_subscriberobjectid ="ObjectID_from_first_command"
admin:run cuc dbquery unitydirdb select displayname, objectid from vw_scheduleset where owner_subscriberobjectid ='644d3092-ed63-4694-a2ad-e0a5d2c8ad63'
displayname objectid
-------------------------------------------------------------- ------------------------------------
Notification Schedule for 645b0777-d6f4-4f99-9d1c-62916e8f0bb5 e44b5344-0889-4f75-8a6f-778eab98988e
Paso 2. Con el nuevo Objeto Identificado de la tabla Programación de Notificación, puede suprimir la referencia entre el usuario y la tabla Dispositivo de Notificación. ejecute cuc dbquery unitydirdb delete from tbl_notificationdevice where subscriberobjectid="ObjectID_from_the_previous_command"
admin:run cuc dbquery unitydirdb delete from tbl_notificationdevice where subscriberobjectid='2a6ba228-cd2c-43fb-b43f-72ffb45b16b7'
Rows: 5
Paso 3. Valide que no haya referencias cruzadas con la configuración del usuario. Ejecute el comando: run cuc dbquery unitydirdb select * from vw_subscriberreference where objectid IN (select objectid from vw_subscriber where alias = "user_alias")
admin:run cuc dbquery unitydirdb select * from vw_subscriberreference where objectid IN (select objectid from vw_subscriber where alias = "Lusky")
objectid displayname referencetype referrerobjectid referrerobjecttype
------------------------------------ ----------- ------------- ------------------------------------ ------------------
2a6ba228-cd2c-43fb-b43f-72ffb45b16b7 Lusky Recipient cbc63641-2eb6-4590-93a1-9bbdaeabbb63 3
Paso 4. Valide que el usuario no está asociado a ningún administrador de llamadas con la consulta SQL: ejecute cuc dbquery unitydirdb select objectid from tbl_callaction where targethandlerobjectid IN (seleccione callhandlerobjectid from vw_subscriber where fn_tolower(alias) = fn_tolower("user_alias"))
admin:run cuc dbquery unitydirdb select objectid from tbl_callaction where targethandlerobjectid IN (select callhandlerobjectid from vw_subscriber where fn_tolower(alias) = fn_tolower("Lusky"))
No records found
Nota: Si se encontraron registros, elimine la referencia con el comando run cuc dbquery unitydirdb delete from tbl_callaction where objectid="ObjectID_from_the_previous_command"
Paso 5. Valide que el usuario no tiene ninguna entrada del asistente automático de otras extensiones con la consulta SQL: ejecute cuc dbquery unitydirdb select displayname from vw_callhandler where objectid = (seleccione callhandlerobjectid de vw_menuentry donde targethandlerobjectid IN (seleccione callhandlerobjectid de vw_subscriber donde fn_tolower(alias) = lower("user_alias")))
admin:run cuc dbquery unitydirdb select displayname from vw_callhandler where objectid = (select callhandlerobjectid from vw_menuentry where targethandlerobjectid IN (select callhandlerobjectid from vw_subscriber where fn_tolower(alias) = lower('Lusky')))
No records found
Nota: Si se encontraron registros, elimine la referencia con el comando run cuc dbquery unitydirdb delete from vw_callhandler where objectid="ObjectID_from_the_previous_command"
Paso 6. Confirme que el usuario forma parte de la pertenencia al almacén de correo con el comando: run cuc dbquery unitydirdb select alias,objtid,object_globaluserobjectid from tbl_alias where object_globaluserobjectid="ObjectID_from_first_command"
admin:run cuc dbquery unitydirdb select alias,objectid,object_globaluserobjectid from tbl_alias where object_globaluserobjectid='813af2a0-fce7-42ad-ac4e-d150e769a26e'
alias objectid object_globaluserobjectid
----- ------------------------------------- ----------------------------------------
Lusky 96a1f758-432e-4b9e-ac89-daa0c06489ad 644d3092-ed63-4694-a2ad-e0a5d2c8ad63
Ansky 92eefd9-6ee0-4afc-9567-50726bf3b41f 644d3092-ed63-4694-a2ad-e0a5d2c8ad63
Como se ve, se asigna el mismo identificador de objeto a dos usuarios. Por lo tanto, continúe con la eliminación del segundo usuario, que tiene un alias diferente del que desea eliminar con el comando: run cuc dbquery unitydirdb select objectid,dtmfaccessid from tbl_Globaluser where alias='second_user_alias'
admin: ejecute cuc dbquery unitydirdb select objectid,dtmfaccessid from tbl_Globaluser where alias='2861'
filas: 1
Vaya de nuevo a la página CUC Administration > Users > Users y elimine el usuario que desea eliminar de la GUI web.