La documentazione per questo prodotto è stata redatta cercando di utilizzare un linguaggio senza pregiudizi. Ai fini di questa documentazione, per linguaggio senza di pregiudizi si intende un linguaggio che non implica discriminazioni basate su età, disabilità, genere, identità razziale, identità etnica, orientamento sessuale, status socioeconomico e intersezionalità. Le eventuali eccezioni possono dipendere dal linguaggio codificato nelle interfacce utente del software del prodotto, dal linguaggio utilizzato nella documentazione RFP o dal linguaggio utilizzato in prodotti di terze parti a cui si fa riferimento. Scopri di più sul modo in cui Cisco utilizza il linguaggio inclusivo.
Cisco ha tradotto questo documento utilizzando una combinazione di tecnologie automatiche e umane per offrire ai nostri utenti in tutto il mondo contenuti di supporto nella propria lingua. Si noti che anche la migliore traduzione automatica non sarà mai accurata come quella fornita da un traduttore professionista. Cisco Systems, Inc. non si assume alcuna responsabilità per l’accuratezza di queste traduzioni e consiglia di consultare sempre il documento originale in inglese (disponibile al link fornito).
In questo documento viene descritto come ottenere il numero di messaggi e le dimensioni di una cassetta postale utente con query SQL (Structured Query Language) tramite la CLI. I dati possono essere recuperati anche con lo strumento User Data Dump dalla pagina Strumenti di Cisco Unified Communications.
Cisco raccomanda la conoscenza di Cisco Unity Connection (CUC).
Le informazioni fornite in questo documento si basano sulle versioni 8.X e successive di CUC, ma possono essere utilizzate anche nelle versioni precedenti.
Le query SQL vengono formate con i dati di questi database:
Le query SQL vengono formate con i dati di queste viste. Una vista è una tabella costituita da una combinazione di due o più tabelle oppure dagli stessi dati in una singola tabella.
Nel database di UnityDirDB vengono utilizzate le seguenti visualizzazioni:
Nel database UnityMbxDB1 vengono utilizzate le seguenti visualizzazioni:
In questa sezione vengono descritte le varie query SQL che è possibile utilizzare in CUC.
Immettere questo comando per ottenere un elenco del numero totale di messaggi con un alias noto:
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='Anirudh')
messages
--------
3
Questa query è una query di database doppio ad alta complessità che interessa più tabelle. Per i server con database e caselle di posta di dimensioni molto grandi, potrebbe trascorrere un periodo di tempo prolungato prima che venga visualizzato un output, anche oltre un'ora, il che non è la soluzione ideale. In questi scenari è possibile utilizzare la query seguente:
admin:run cuc dbquery unitymbxdb1 select count (*) as Messages from vw_message
where mailboxobjectid in (select mailboxobjectid from vw_mailbox where
description='Anirudh')
messages
--------
3
La prima query restituisce i dati quando viene specificato un alias, ovvero Univoco. La seconda query restituisce i dati quando viene indicata la descrizione, che NON è univoca.
Nota: Al momento della creazione della cassetta postale, la descrizione corrisponde all'alias; tuttavia, quando l'alias viene aggiornato, la descrizione non viene aggiornata. Per i database di piccole dimensioni, la prima query è ideale. Per dimostrare che la descrizione non viene modificata dopo la modifica dell'alias, test3 viene modificato in Atest3 e utilizzato per le sezioni successive.
Immettere questo comando per ottenere un elenco di utenti con il numero totale di messaggi:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, 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) group by alias order by
messages desc
userid messages
---------------------------- --------
Anirudh 3
Atest3 2
undeliverablemessagesmailbox 1
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as Messages from
vw_message, vw_mailbox where vw_mailbox.mailboxobjectid =
vw_message.mailboxobjectid group by description order by messages desc
description messages
---------------------------- --------
Anirudh 3
test3 2
undeliverablemessagesmailbox 1
Nota: Nella seconda query, la descrizione non cambia da test3 ad Atest3 dopo la modifica dell'alias.
Immettere questo comando per ottenere un elenco di utenti con il numero totale di messaggi basato sul primo carattere di un alias:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as messages from
vw_message, unitydirdb:vw_mailbox, unitydirdb:vw_user where deleted='0' and
mailboxobjectid in (select mailboxid from vw_mailbox where unitydirdb:
vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) and alias like 'A%' group by
alias order by messages
userid messages
------- --------
Atest3 2
Anirudh 3
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as Messages from
vw_message, vw_mailbox where vw_mailbox.mailboxobjectid =
vw_message.mailboxobjectid and description like 'A%' group by description order
by messages
Di seguito sono riportate alcune note importanti su questa query:
Di seguito sono riportati alcuni esempi di condizioni:
Le query menzionate finora vengono utilizzate per ottenere il totale dei messaggi (posta in arrivo ed elementi eliminati). Nella sezione successiva vengono descritte le query utilizzate per ottenere il numero totale di messaggi nella cartella Posta in arrivo e di elementi eliminati.
Immettere questo comando per ottenere un elenco di utenti con il totale dei messaggi della posta in arrivo:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as
inboxmessages from vw_message, unitydirdb:vw_mailbox, unitydirdb:vw_user
where deleted='0' and mailboxobjectid in (select mailboxid from vw_mailbox
where unitydirdb:vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) and
alias like 'A%' group by alias order by inboxmessages
userid inboxmessages
------- -------------
Atest3 2
Anirudh 3
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as InboxMessages
from vw_message, vw_mailbox where vw_mailbox.mailboxobjectid =
vw_message.mailboxobjectid and deleted = '0' and description like 'A%' group by
description order by InboxMessages
Di seguito sono riportate alcune note importanti su questa query:
Di seguito sono riportati alcuni esempi di condizioni:
Nota: Nell'esempio, viene utilizzata una condizione per limitare gli utenti con un alias o una descrizione che inizia con la lettera A.
Di seguito sono riportate alcune varianti della query:
Immettere questo comando per ottenere un elenco di utenti con il totale dei messaggi eliminati:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as
deletedmessages from vw_message, unitydirdb:vw_mailbox, unitydirdb:vw_user
where deleted='1' and mailboxobjectid in (select mailboxid from vw_mailbox
where unitydirdb:vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) and
alias like 'A%' group by alias order by deletedmessages
No records found
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as
deletedmessages from vw_message, vw_mailbox where vw_mailbox.mailboxobjectid=
vw_message.mailboxobjectid and deleted = '1' and description like 'A%' group
by description order by deletedmessages
Nota: In questo esempio non sono presenti messaggi eliminati, quindi l'output verrà visualizzato come Nessun record trovato.
Di seguito sono riportate alcune note importanti su questa query:
Di seguito sono riportati alcuni esempi di condizioni:
Nota: Nell'esempio, viene utilizzata una condizione per limitare gli utenti con un alias o una descrizione che inizia con la lettera A.
Di seguito sono riportate alcune varianti della query:
Immettere questo comando per ottenere un elenco di utenti con il totale, la cartella Posta in arrivo e i messaggi eliminati:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as messages,
sum(case when deleted='0' then 1 else 0 end) as Inboxmessages, sum(case when
deleted='1' then 1 else 0 end) as Deletedmessages 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)
group by alias order by messages desc
userid messages inboxmessages deletedmessages
---------------------------- -------- ------------- ---------------
Anirudh 3 3 0
Atest3 2 2 0
undeliverablemessagesmailbox 1 1 0
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description as UserID, count (*) as
messages, sum(case when deleted='0' then 1 else 0 end) as Inboxmessages, sum
(case when deleted='1' then 1 else 0 end) as Deletedmessages from vw_mailbox
join vw_message on vw_message.mailboxobjectid=vw_mailbox.mailboxobjectid
group by description order by messages desc
Di seguito sono riportate alcune note importanti su questa query:
Di seguito sono riportati alcuni esempi di condizioni:
Nota: Nell'esempio, viene utilizzata una condizione per limitare gli utenti con un alias o una descrizione che inizia con la lettera A.
Di seguito sono riportate alcune varianti della query:
Questa query può essere utilizzata per determinare se i processi pianificati per la pulizia delle cassette postali hanno effetto:
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as messages,
min(arrivaltime) as OldestMessageTime 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) group
by alias order by messages desc
userid messages oldestmessagetime
---------------------------- -------- -----------------------
Anirudh 3 2013-03-19 14:38:14.459
Atest3 2 2013-01-18 05:49:45.355
undeliverablemessagesmailbox 1 2012-07-05 01:10:19.961
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as Messages,
min(arrivaltime) as OldestMessageTime from vw_message, vw_mailbox where
vw_mailbox.mailboxobjectid = vw_message.mailboxobjectid group by description
order by messages desc
Nota: Per ottenere l'ora dell'ultimo arrivo per le query nelle sezioni precedenti, aggiungere min(arrivaltime) come OldestMessageTime subito dopo count(*) come Messaggi.
Di seguito sono riportate alcune varianti della query:
Immettere questo comando per ottenere un elenco del numero di messaggi utente con l'ora di arrivo del messaggio meno recente e le dimensioni della cassetta postale (senza durata totale):
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as messages,
min(arrivaltime) as OldestMessageTime, vw_mailbox.bytesize from vw_message,
vw_mailbox, unitydirdb:vw_mailbox, unitydirdb:vw_user where
vw_message.mailboxobjectid=vw_mailbox.mailboxobjectid and
vw_mailbox.mailboxobjectid in (select mailboxid from vw_mailbox where
unitydirdb:vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) group by
alias, vw_mailbox.bytesize order by messages desc
userid messages oldestmessagetime bytesize
---------------------------- -------- ----------------------- --------
Anirudh 3 2013-03-19 14:38:14.459 93319
Atest3 2 2013-01-18 05:49:45.355 59890
undeliverablemessagesmailbox 1 2012-07-05 01:10:19.961 317003
Nota: per ottenere la durata totale dei messaggi: aggiungere ", sum(duration/1000) as TotalDuration_In_sec" prima di "from_vw_message". Non dimenticare la virgola prima di sum. Questa opzione può essere utilizzata anche per le query nelle sezioni precedenti.
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as Messages,
min(arrivaltime) as OldestMessageTime, vw_mailbox.bytesize from vw_message,
vw_mailbox where vw_mailbox.mailboxobjectid = vw_message.mailboxobjectid
group by description, vw_mailbox.bytesize order by messages desc
Nota: Per ottenere la durata totale dei messaggi: aggiungere ", sum(duration/1000) as TotalDuration_In_sec" prima di "from_vw_message". Non dimenticare la virgola prima di sum. Questa opzione può essere utilizzata anche per le query nelle sezioni precedenti.
Di seguito sono riportate alcune varianti della query:
Immettere questo comando per ottenere un elenco della posta in arrivo dell'utente e del numero di messaggi eliminati con l'ora di arrivo del messaggio meno recente e le dimensioni della cassetta postale (senza durata totale):
admin:run cuc dbquery unitymbxdb1 select alias as UserID, count (*) as
TotalMessages, sum(case when deleted='0' then 1 else 0 end) as Inbox,
sum(case when deleted='1' then 1 else 0 end) as Deleted, min
(arrivaltime) as OldestMessageTime, vw_mailbox.bytesize from vw_message,
vw_mailbox, unitydirdb:vw_mailbox, unitydirdb:vw_user where
vw_message.mailboxobjectid=vw_mailbox.mailboxobjectid and
vw_mailbox.mailboxobjectid in (select mailboxid from vw_mailbox where
unitydirdb:vw_user.objectid = unitydirdb:vw_mailbox.userobjectid) group
by alias, vw_mailbox.bytesize order by TotalMessages desc
userid total inbox deleted oldestmessagetime byte
messages size
---------------- -------- ----- ------- ----------------------- ------
Anirudh 3 3 0 2013-03-19 14:38:14.459 93319
Atest3 2 2 0 2013-01-18 05:49:45.355 59890
undeliverable 1 1 0 2012-07-05 01:10:19.961 317003
messagesmailbox
Nota: Per ottenere la durata totale dei messaggi: aggiungere ", sum(duration/1000) as TotalDuration_In_sec" prima di "from_vw_message". Non dimenticare la virgola prima di sum. Questa opzione può essere utilizzata anche per le query nelle sezioni precedenti.
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, count (*) as
TotalMessages, sum(case when deleted='0' then 1 else 0 end) as Inbox,
sum(case when deleted='1' then 1 else 0 end) as Deleted, min(arrivaltime)
as OldestMessageTime, vw_mailbox.bytesize from vw_message, vw_mailbox
where vw_mailbox.mailboxobjectid = vw_message.mailboxobjectid group by
description, vw_mailbox.bytesize order by TotalMessages desc
Nota: per ottenere la durata totale dei messaggi: aggiungere ", sum(duration/1000) as TotalDuration_In_sec" prima di "from_vw_message". Non dimenticare la virgola prima di sum. Questa opzione può essere utilizzata anche per le query nelle sezioni precedenti.
Di seguito sono riportate alcune varianti della query:
Immettere questo comando per ottenere il numero totale di messaggi per tutte le cassette postali combinate:
admin:run cuc dbquery unitymbxdb1 select count(*) as messages
from vw_message
messages
----------
6
Immettere questo comando per ottenere le dimensioni della cassetta postale dell'utente con limiti di invio e ricezione:
admin:run cuc dbquery unitydirdb select alias as UserID,bytesize,send,receive,
warning from vw_user,unitymbxdb1:vw_mailbox where vw_user.objectid in (select
userobjectid from vw_usermailboxmap where
vw_usermailboxmap.mailboxid=unitymbxdb1:vw_mailbox.mailboxobjectid and
alias='Anirudh')
userid bytesize send receive warning
------- -------- -------- -------- --------
Anirudh 93319 13000000 14745600 12000000
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, bytesize,send,receive,
warning from vw_mailbox where description ='Anirudh'
Immettere questo comando per ottenere tutte le dimensioni della cassetta postale dell'utente con limiti di invio e ricezione:
admin:run cuc dbquery unitydirdb select alias as UserID,bytesize,send,receive,
warning from vw_user,unitymbxdb1:vw_mailbox where vw_user.objectid in (select
userobjectid from vw_usermailboxmap where
vw_usermailboxmap.mailboxid=unitymbxdb1:vw_mailbox.mailboxobjectid) order by
bytesize desc
userid bytesize send receive warning
---------------------------- -------- -------- -------- --------
undeliverablemessagesmailbox 317003 13000000 14745600 12000000
Anirudh 93319 13000000 14745600 12000000
Atest3 59890 13000000 14745600 12000000
Solomon 0 13000000 14745600 12000000
UnityConnection 0 50000000 50000000 45000000
Suvir 0 13000000 14745600 12000000
dsas 0 13000000 14745600 12000000
test1 0 13000000 14745600 12000000
Atest2 0 13000000 14745600 12000000
operator 0 13000000 14745600 12000000
Per gli stessi motivi indicati nella sezione Elenca il numero totale di messaggi con un alias noto, è possibile utilizzare anche questa query:
admin:run cuc dbquery unitymbxdb1 select description, bytesize,send,receive,
warning from vw_mailbox order by bytesize desc
Come variante di questa query per elencare tutti gli utenti con alias che iniziano con la lettera A, aggiungere un alias come 'A%' nella prima query subito dopo vw_usermailboxmap.mailboxid=unitymbxdb1:vw_mailbox.mailboxobjectid e prima ) ordina per condizione oppure aggiungere una descrizione where come 'A%' nella seconda query immediatamente prima della condizione order by . Verificare che l'aggiunta sia eseguita nella posizione corretta o che la query non abbia esito positivo.
Immettere questo comando per ottenere le dimensioni totali di tutte le cassette postali combinate:
admin:run cuc dbquery unitymbxdb1 select sum (bytesize) from vw_mailbox
(sum)
-------
2683210
admin: