cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2532
Views
10
Helpful
7
Replies

Unity user deleted but mailbox persists

Justin Westover
Level 1
Level 1

I have a strange problem, I've deleted all references to the user in Unity Connection but the mailbox is not being deleted for some reason! I've tried resyncing and adding the user back and creating the mailbox and then deleting again and it does delete successfully with no errors or warnings but the mailbox is still there. So when I try to associate another user to the same extension unity takes it and imports the user but the mailbox for that extension is still the old mailbox from the user that was deleted. I did a DB query from the unity CLI and looked for the user and couldn't find it. Not sure what else to do on this one? 

7 Replies 7

Jaime Valencia
Cisco Employee
Cisco Employee

Have you tried the bulk user delete to see if that does the trick??

HTH

java

if this helps, please rate

I haven't but the user doesn't exist anymore so would that still help? It's just the mailbox that remains and I can't figure out how to delete it. It's obviously stale in some way but i'm not sure where to go to delete it...

I know this is a little bit of an old thread. But could you walk me through the steps of trying bulk user delete to just select the one user that cannot be deleted? Do I need to download the csv for it and then just select that one?

Anirudh Mavilakandy
Cisco Employee
Cisco Employee

How did you delete all references to the user? From the database? Normally you just have to delete the user using the delete option on the CUCA page.

How did you verify if the Mailbox still exists? Did you call in to access your mailbox? Or checked via GUI or CLI?

If you called in to access your mailbox and if you have a subscriber server which takes calls, then probably it is a replication issue. You can stop the subscriber server from taking calls or send the calls to the Publisher server and test.

If you are able to add and delete the user without any issues then then I don't think there are any stale entries. 

You can check using these queries (Replace Anirudh with the alias you need),

run cuc dbquery unitydirdb select displayname, objectid, recipient_globaluserobjectid, recipient_subscriberobjectid from vw_callhandler where recipient_subscriberobjectid = (select objectid from vw_subscriber where alias='Anirudh')

 

run cuc dbquery unitydirdb select displayname, objectid, recipient_globaluserobjectid, recipient_subscriberobjectid from vw_callhandler where recipient_subscriberobjectid = (select objectid from vw_subscriber where alias='Anirudh')

 

 

The call handler entry in vw_handler should point to the correct user. The user entry in vw_ subscriber should have the correct callhandlerobjectid. this ensure routing to the right user.

 

The entry you see on the CUCA is stored in the vw_globaluser table. You check if the references are correct in the other tables:

run cuc dbquery unitydirdb select alias, objectid from vw_globaluser where alias ='Anirudh'

run cuc dbquery unitydirdb select alias, dtmfaccessid, objectid, callhandlerobjectid from vw_subscriber where alias='Anirudh'

 

run cuc dbquery unitydirdb select alias, objectid, object_globaluserobjectid, object_userobjectid from vw_alias where alias='Anirudh'

 

run cuc dbquery unitydirdb select alias, objectid from vw_user where alias ='Anirudh'

 

The objectid in vw_user, vw_globaluser and vw_subscriber should be the same.

 

You can also verify if the user has the correct Mailbox mapping:

run cuc dbquery unitydirdb select m.mailboxid, d.maildatabase from vw_mailboxmap m join vw_mailboxstoremap d on m.mailboxstoreobjectid=d.objectid and userobjectid = (select objectid from  vw_user where alias='Anirudh')

run cuc dbquery unitymbxdb1 select mailboxobjectid from vw_mailbox where description='Anirudh'

 

unitymbxdb1 is the default database name. If the user is in a different database, replace unitymbxdb1 with the correct database name from the first query.

 

HTH,

Anirudh

I am going to intrude here as this is similar to an issue I have.

The client changed the ip phone extension for a user from 'jorge' to 'lizeth'.  I performed LDAP sync in CUCM - jorge still exists as 'pending deletion' with AD account disabled.

In CUC, 'jorge' still shows as active user lynced to CUCM, although the ext. is no assigned to lizeth.  Now I can not sync up the account or purge jorge to create a new account for lizeth.

 

Here is output from commands you posted Anirudh:

 

run cuc dbquery unitydirdb select displayname, objectid, recipient_globaluserobjectid, recipient_subscriberobjectid from vw_callhandler where recipient_subscriberobjectid = jorge.portillo

run cuc dbquery unitydirdb select alias, objectid from vw_globaluser where alias ='jorge.portillo'

run cuc dbquery unitydirdb select alias, objectid, object_globaluserobjectid, object_userobjectid from vw_alias where alias='jorge.portillo'

run cuc dbquery unitydirdb select alias, objectid from vw_user where alias ='jorge.portillo'


admin:run cuc dbquery unitydirdb select alias, objectid from vw_globaluser where                                                                        alias ='jorge.portillo'

alias           objectid
--------------  ------------------------------------
jorge.portillo  15b74a20-0c20-4ab3-a4ea-bea636e47ef2

admin:run cuc dbquery unitydirdb select alias, dtmfaccessid, objectid, callhandl                                                                       erobjectid from vw_subscriber where alias='jorge.portillo'

alias           dtmfaccessid  objectid                              callhandlero                                                                       bjectid
--------------  ------------  ------------------------------------  ------------                                                                       ------------------------
jorge.portillo  3003          15b74a20-0c20-4ab3-a4ea-bea636e47ef2  bacb6b3a-4ef                                                                       3-47ec-b62f-5ac6878793a2

admin:run cuc dbquery unitydirdb select alias, dtmfaccessid, objectid, callhandlerobjectid from vw_subscriber where alias='jorge.portillo'

alias           dtmfaccessid  objectid                              callhandlerobjectid
--------------  ------------  ------------------------------------  ------------------------------------
jorge.portillo  3003          15b74a20-0c20-4ab3-a4ea-bea636e47ef2  bacb6b3a-4ef3-47ec-b62f-5ac6878793a2

admin:run cuc dbquery unitydirdb select alias, objectid from vw_globaluser where alias ='jorge.portillo'

alias           objectid
--------------  ------------------------------------
jorge.portillo  15b74a20-0c20-4ab3-a4ea-bea636e47ef2

admin:run cuc dbquery unitydirdb select alias, objectid, object_globaluserobjectid, object_userobjectid from vw_alias where alias='jorge.portillo'

alias           objectid                              object_globaluserobjectid             object_userobjectid
--------------  ------------------------------------  ------------------------------------  ------------------------------------
jorge.portillo  3cc73ed8-ebbe-4b07-80a8-7e990ea07897  15b74a20-0c20-4ab3-a4ea-bea636e47ef2  15b74a20-0c20-4ab3-a4ea-bea636e47ef2

admin:run cuc dbquery unitydirdb select alias, objectid from vw_user where alias ='jorge.portillo'

alias           objectid
--------------  ------------------------------------
jorge.portillo  15b74a20-0c20-4ab3-a4ea-bea636e47ef2

 

MAILBOX MAPPING:
run cuc dbquery unitydirdb select m.mailboxid, d.maildatabase from vw_mailboxmap m join vw_mailboxstoremap d on m.mailboxstoreobjectid=d.objectid and userobjectid ='jorge.portillo'
run cuc dbquery unitymbxdb1 select mailboxobjectid from vw_mailbox where description='jorge.portillo'

admin:run cuc dbquery unitydirdb select m.mailboxid, d.maildatabase from vw_mailboxmap m join vw_mailboxstoremap d on m.mailboxstoreobjectid=d.objectid and userobjectid ='jorge.portillo'
No records found

admin:run cuc dbquery unitymbxdb1 select mailboxobjectid from vw_mailbox where description='jorge.portillo'

mailboxobjectid
------------------------------------
cc4eec4f-b1dc-4f7b-bf34-2c58a5b4553a

 

Any pointers on correcting this issue?

Regards,
Jason

Do you still have this issue?

 

This is an AXL imported user on CUC. You could delete the entry in enduserappservermap table for this user. This will then disassociate the user from voicemail on CUCM. We could then update the CUC user's ccmid field to null. you can use BAT for this purpose. This should convert the user to a standalone unity connection user. After this you'll be able to delete the unity connection user and then import the new user from CUCM.

 

I could give the queries to delete the entries but its risky. Anyone trying those queries without knowing what it does could end up deleting entries of other users. I suggest you open a tac case to get this fixed

 

HTH

Anirudh

Anirudh, I have been following this thread and find it very useful. I have a similar problem i am facing. Customer had changed LDAP servers and initiated a resync of unity. This caused some of the users not been able to retrieve their older messages that are still waiting in the inbox. When they try to retrieve the messages, they get "Error: This message can not be retrieved", "Error: this message is not currently available".

I would like to manually download messages for a known user on unity. What is my best bet? Below is the query results,

admin:run cuc dbquery unitymbxdb1 select count (*) as Messages from vw_message, unitydirdb:vw_mailbox, unitydirdb:vw_user where mailboxobjectid in (select mailboxid from vw_mailbox where unitydirdb:vw_user.objectid = unitydirdb: vw_mailbox.userobjectid and alias='k****')
messages
--------
11

admin: run cuc dbquery unitydirdb select displayname, objectid, recipient_globaluserobjectid, recipient_subscriberobjectid from vw_callhandler where recipient_subscriberobjectid = (select objectid from vw_subscriber where alias='k****')
displayname  objectid                              recipient_globaluserobjectid          recipient_subscriberobjectid
-----------  ------------------------------------  ------------------------------------  ------------------------------------
k****      3aaf8596-6d33-46ae-943d-551d581bd508  201b04b3-d25b-41b9-a6fb-8f9e79d9aeb6  201b04b3-d25b-41b9-a6fb-8f9e79d9aeb6

admin: run cuc dbquery unitydirdb select alias, objectid from vw_globaluser where alias ='k****'
alias   objectid
------  ------------------------------------
k****  201b04b3-d25b-41b9-a6fb-8f9e79d9aeb6

admin: run cuc dbquery unitydirdb select alias, dtmfaccessid, objectid, callhandlerobjectid from vw_subscriber where alias='k*****'
alias   dtmfaccessid  objectid                              callhandlerobjectid
------  ------------  ------------------------------------  ------------------------------------
k*****  9559          201b04b3-d25b-41b9-a6fb-8f9e79d9aeb6  3aaf8596-6d33-46ae-943d-551d581bd508

admin: run cuc dbquery unitydirdb select m.mailboxid, d.maildatabase from vw_mailboxmap m join vw_mailboxstoremap d on m.mailboxstoreobjectid=d.objectid and userobjectid = (select objectid from  vw_user where alias='k****')
mailboxid                             maildatabase
------------------------------------  ------------
021c6c1c-be38-467b-ae9e-7583756bbf18  UnityMbxDb1

admin: run cuc dbquery unitymbxdb1 select mailboxobjectid from vw_mailbox where description='k****'
mailboxobjectid
------------------------------------
021c6c1c-be38-467b-ae9e-7583756bbf18

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: