Sommario

Introduzione

Prerequisiti

Requisiti

Componenti usati

Tabelle

Query SQL

Elenca tutti i DN associati ai telefoni IP

Elenca i DN e i telefoni IP associati

Elenca le informazioni sul dispositivo e i DN con le partizioni associate

Trova telefoni con associazione utente a livello di linea

Trova telefoni che non dispongono di un'associazione utente a livello di linea

Trova telefoni con associazione utente a livello di dispositivo

Introduzione

Questo documento fornisce query SQL (Structured Query Language) che possono essere eseguite sulla CLI per ottenere i numeri di directory (DN) e le partizioni associate ai telefoni IP insieme a qualsiasi associazione dell'utente finale.

Prerequisiti

Requisiti

Cisco raccomanda la conoscenza di Cisco Unified Communications Manager (CUCM).

Componenti usati

Le informazioni fornite in questo documento si basano sulle versioni 8.X e successive di CUCM, ma possono essere utilizzate anche nelle versioni precedenti.

Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

Tabelle

Le query SQL vengono create con i dati delle tabelle seguenti:

- Periferica: questa tabella contiene informazioni a livello di periferica, ad esempio telefoni IP e gateway.

- NumPlan - Questa tabella contiene informazioni su tutti i modelli configurati in CUCM.

- DeviceNumPlanMap: questa tabella contiene il mapping tra i dati nella tabella Device e nella tabella NumPlan.

- RoutePartition: questa tabella contiene le informazioni su tutte le partizioni configurate in CUCM

- EndUser - Questa tabella contiene le informazioni correlate a End Users.

- DeviceNumPlanMapEndUserMap: questa tabella contiene il mapping tra i dati della tabella DeviceNumPlanMap e della tabella EndUser.

- EndUserDeviceMap: questa tabella contiene il mapping tra i dati nella tabella Device e nella tabella EndUser.

Per ulteriori informazioni su queste tabelle, consultare il dizionario dati CUCM per la versione corrispondente.

Query SQL

Le query vengono scritte per trovare un'associazione alla volta in modo da semplificarne la comprensione.

Elenca tutti i DN associati ai telefoni IP

Di seguito è riportata una query progettata per elencare tutti i DN associati ai telefoni IP.

run sql select dnorpattern as dn from numplan where pkid IN(select fknumplan from

devicenumplanmap where fkdevice IN (select pkid from device where tkclass =

1)) order by dn

Nota: tkclass = 1 è per telefoni IP. Il dnorpattern è una colonna della tabella numplan che ha DN associati a telefoni / Hunt Pilots / VM Ports / Route Patterns / CTI RP.

Elenca i DN e i telefoni IP associati

Di seguito è riportata una query progettata per elencare i DN e i telefoni IP associati.

run sql select d.name, d.description, n.dnorpattern as DN from device as d,

numplan as n, devicenumplanmap as dnpm where dnpm.fkdevice = d.pkid and

dnpm.fknumplan = n.pkid and d.tkclass = 1

name            description                  dn

=============== ============================ ====

SEP0026CBBFF47E Line 1 - 7031; Line 2 - 7011 7011

SEP0026CBBFF47E Line 1 - 7031; Line 2 - 7011 7031

SEPC89C1DA3A5A9 Line 1 - 8021                8021

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1213

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1212

SEP503DE57D7DAC 8501                         8501

SEP0008308B289A Line 1 - 8023                8023

SEP0008308BBEBD Line 1 - 8032; Line 2 - 8012 8012

SEP0008308BBEBD Line 1 - 8032; Line 2 - 8012 8032

Per modificare la query, aggiungere il numero tkmodel in modo da elencare i dettagli dei telefoni IP del modello specifico. Di seguito è riportata una query per IP Phone modello 7945:

run sql select d.name, d.description, n.dnorpattern as DN from device as d,

numplan as n, devicenumplanmap as dnpm where dnpm.fkdevice = d.pkid and

dnpm.fknumplan = n.pkid and d.tkclass = 1 and d.tkmodel='435'

Di seguito è riportata una query per ottenere il valore tkmodel per tutti i modelli di telefoni IP:

run sql select name,tkmodel from TypeProduct

Nota: È possibile filtrare qualsiasi campo in modo da includere solo le informazioni desiderate. Ad esempio, per filtrare in base al DN, aggiungere quanto segue alla fine della query: dove n.dnorpattern è simile a '8%'.

Questa query elenca tutte le voci con un DN che inizia con 8. Il formato è dove <nome colonna> come '<valore>%'.

Nota: Alla query è possibile aggiungere altri campi che forniscono informazioni utili, ovvero identificatori chiave primaria (PKID) leggibili dall'utente. Aggiungerli tra 'esegui selezione SQL' e 'come DN'. Sono i campi che è possibile aggiungere:

d.tkmodel - Utilizzate l'interrogazione descritta nella nota precedente per ottenere il valore di ciascun modello.

d.tkdeviceprotocol - Per il protocollo SCCP (Skinny Call Control Protocol), il valore è 0, mentre per il protocollo SIP (Session Initiation Protocol), il valore è 11.

Elenca le informazioni sul dispositivo e i DN con le partizioni associate

Di seguito è riportata una query progettata per elencare le informazioni sui dispositivi e i DN con le partizioni associate.

run sql select d.name, d.description, n.dnorpattern as DN, rp.name as partition

from device as d, numplan as n, devicenumplanmap as dnpm, routepartition as rp

where dnpm.fkdevice = d.pkid and dnpm.fknumplan = n.pkid and rp.pkid =

n.fkroutepartition and d.tkclass = 1

name            description                  dn   partition

=============== ============================ ==== ===========

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1212 Internal_PT

SEP503DE57D7DAC 8501                         8501 Internal_PT

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1213 Internal_PT

SEP0008308B289A Line 1 - 8023                8023 Internal_PT

Nota: Non sono elencati tutti i DN che non dispongono di una partizione.

L'utilizzo dei join risulta più semplice se nella query vengono aggiunte più tabelle. È inoltre possibile scrivere la query precedente:

run sql select d.name, d.description, n.dnorpattern as DN, rp.name as partition

from device as d inner join devicenumplanmap as dnpm on dnpm.fkdevice = d.pkid

inner join numplan as n on dnpm.fknumplan = n.pkid inner join routepartition as

rp on n.fkroutepartition=rp.pkid and d.tkclass = 1

Per modificare la query, aggiungere il numero tkmodel in modo da elencare i dettagli dei telefoni IP del modello specifico. Per IP Phone modello 7945, aggiungere e d.tkmodel='435' alla fine della query.

Per ottenere il valore tkmodel per tutti i modelli di telefoni IP, immettere:

run sql select name,tkmodel from TypeProduct

Nota: È possibile filtrare qualsiasi campo in modo da includere solo le informazioni desiderate. Ad esempio, per filtrare in base al DN, aggiungere quanto segue alla fine della query: dove n.dnorpattern come '8%'

Questa query elenca tutte le voci con un DN che inizia con 8. Il formato è dove <nome colonna> come '<valore>%'.

Nota: È possibile aggiungere alla query altri campi che forniscono informazioni utili, ovvero che sono leggibili dall'utente e non contengono PKID. Aggiungerli tra 'esegui selezione SQL' e 'come DN'. Sono i campi che è possibile aggiungere:

d.tkmodel - Utilizzate l'interrogazione descritta nella nota precedente per ottenere il valore di ciascun modello.

d.tkdeviceprotocol: per SCCP, il valore è 0 e per SIP, il valore è 11.

Trova telefoni con associazione utente a livello di linea

Di seguito è riportata una query progettata per trovare i telefoni con un'associazione utente a livello di linea.

run sql select eu.userid, d.name, d.description, n.dnorpattern as DN, rp.name as

partition from device as d inner join devicenumplanmap as dnpm on dnpm.fkdevice =

d.pkid inner join devicenumplanmapendusermap as dnpeum on dnpeum.fkdevicenumplanmap=

dnpm.pkid inner join enduser as eu on dnpeum.fkenduser=eu.pkid inner join numplan as

n on dnpm.fknumplan = n.pkid inner join routepartition as rp on n.fkroutepartition=

rp.pkid and d.tkclass = 1

userid       name            description   dn   partition

============ =============== ============= ==== ===========

AMavilakandy SEP0008308B289A Line 1 - 8023 8023 Internal_PT

Questa query fornisce informazioni solo quando il DN si trova in una partizione. Per includere le partizioni in Nessuna partizione, immettere:

run sql select eu.userid, d.name, d.description, n.dnorpattern as DN from device

as d inner join devicenumplanmap as dnpm on dnpm.fkdevice = d.pkid inner join

devicenumplanmapendusermap as dnpeum on dnpeum.fkdevicenumplanmap=dnpm.pkid inner

join enduser as eu on dnpeum.fkenduser=eu.pkid inner join numplan as n on dnpm.fknumplan

= n.pkid and d.tkclass = 1

Per modificare la query, aggiungere il numero tkmodel in modo da elencare i dettagli dei telefoni IP del modello specifico. Per IP Phone modello 7945, aggiungere e d.tkmodel='435' alla fine della query.

Per ottenere il valore tkmodel per tutti i modelli di telefoni IP, immettere:

run sql select name,tkmodel from TypeProduct

Esistono altri campi che forniscono informazioni utili (leggibili dall'utente e non PKID) che possono essere aggiunti a questa query. Aggiungerli tra 'esegui selezione SQL' e 'come DN'. Sono i campi che è possibile aggiungere:

- eu.nome

- eu.middlename

- eu.cognome

- eu.manager

- eu.department

- eu.numerotelefonico

- eu.mailid

- eu.mobile

- eu.homphone

- eu.title

- d.tkmodel - Utilizzate l'interrogazione descritta in precedenza per ottenere il valore di ciascun modello.

- d.tkdeviceprotocol - Per SCCP il valore è 0 e per SIP il valore è 11.

Nota: È possibile filtrare qualsiasi campo in modo da includere solo le informazioni desiderate. Ad esempio, per filtrare in base al DN, aggiungere quanto segue alla fine della query: dove n.dnorpattern è simile a '8%'.

Questa query elenca tutte le voci con un DN che inizia con 8. Il formato è dove <nome colonna> come '<valore>%'.

Trova telefoni che non dispongono di un'associazione utente a livello di linea

Di seguito è riportata una query progettata per trovare i telefoni che non dispongono di un'associazione utente a livello di linea.

run sql select d.name, d.description, n.dnorpattern as DN, rp.name as partition

from device as d inner join devicenumplanmap as dnpm on dnpm.fkdevice = d.pkid

inner join devicenumplanmapendusermap as dnpeum on dnpeum.fkdevicenumplanmap!=

dnpm.pkid inner join numplan as n on dnpm.fknumplan = n.pkid inner join

routepartition as rp on n.fkroutepartition=rp.pkid and d.tkclass = 1

name            description                  dn   partition

=============== ============================ ==== ===========

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1212 Internal_PT

SEP503DE57D7DAC 8501                         8501 Internal_PT

SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1213 Internal_PT

Questa query fornisce informazioni solo quando il DN si trova in una partizione. Per includere le partizioni in Nessuna partizione, immettere:

run sql select d.name, d.description, n.dnorpattern as DN from device as d inner

join devicenumplanmap as dnpm on dnpm.fkdevice = d.pkid inner join

devicenumplanmapendusermap as dnpeum on dnpeum.fkdevicenumplanmap!=dnpm.pkid

inner join numplan as n on dnpm.fknumplan = n.pkid and d.tkclass = 1

Per modificare la query, aggiungere il numero tkmodel in modo da elencare i dettagli dei telefoni IP del modello specifico. Per IP Phone modello 7945, aggiungere e d.tkmodel='435' alla fine della query.

Per ottenere il valore tkmodel per tutti i modelli di telefoni IP, immettere:

run sql select name,tkmodel from TypeProduct

Esistono altri campi che forniscono informazioni utili (leggibili dall'utente e non PKID) che possono essere aggiunti a questa query. Aggiungerli tra 'esegui selezione SQL' e 'come DN'. Sono i campi che è possibile aggiungere:

- eu.nome

- eu.middlename

- eu.cognome

- eu.manager

- eu.department

- eu.numerotelefonico

- eu.mailid

- eu.mobile

- eu.homphone

- eu.title

- d.tkmodel - Utilizzate l'interrogazione descritta in precedenza per ottenere il valore di ciascun modello.

- d.tkdeviceprotocol - Per SCCP, il valore è 0 e per SIP, il valore è 11.

Nota: È possibile filtrare qualsiasi campo in modo da includere solo le informazioni desiderate. Ad esempio, per filtrare in base al DN, aggiungere quanto segue alla fine della query: dove n.dnorpattern è simile a '8%'.

Elenca tutte le voci con un DN che inizia con 8. Il formato è dove <nome colonna> come '<valore>%'.

Trova telefoni con associazione utente a livello di dispositivo

Di seguito è riportata una query progettata per trovare i telefoni con un'associazione utente a livello di dispositivo.

run sql select eu.userid, d.name, d.description, n.dnorpattern as DN, rp.name as

partition from device as d inner join devicenumplanmap as dnpm on dnpm.fkdevice =

d.pkid inner join enduserdevicemap as eudm on eudm.fkdevice=d.pkid inner join

enduser as eu on eudm.fkenduser=eu.pkid inner join numplan as n on dnpm.fknumplan =

n.pkid inner join routepartition as rp on n.fkroutepartition=rp.pkid and d.tkclass = 1

userid       name            description                  dn   partition

============ =============== ============================ ==== ===========

AMavilakandy SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1212 Internal_PT

AMavilakandy SEPA40CC3956C5C Line 1 - 1213; Line 2 - 1212 1213 Internal_PT

AMavilakandy SEP0008308B289A Line 1 - 8023                8023 Internal_PT

Questa query fornisce informazioni solo quando il DN si trova in una partizione. Per includere le partizioni in Nessuna partizione, immettere:

run sql select eu.userid, d.name, d.description, n.dnorpattern as DN from device

as d inner join devicenumplanmap as dnpm on dnpm.fkdevice = d.pkid inner join

enduserdevicemap as eudm on eudm.fkdevice=d.pkid inner join enduser as eu on

eudm.fkenduser=eu.pkid inner join numplan as n on dnpm.fknumplan = n.pkid and

d.tkclass = 1

Per modificare la query, aggiungere il numero tkmodel in modo da elencare i dettagli dei telefoni IP del modello specifico. Per IP Phone modello 7945, aggiungere e d.tkmodel='435' alla fine della query.

Per ottenere il valore tkmodel per tutti i modelli di telefoni IP, immettere:

run sql select name,tkmodel from TypeProduct

Esistono altri campi che forniscono informazioni utili (leggibili dall'utente e non PKID) che possono essere aggiunti a questa query. Aggiungerli tra 'esegui selezione SQL' e 'come DN'. Sono i campi che è possibile aggiungere:

- eu.nome

- eu.middlename

- eu.cognome

- eu.manager

- eu.department

- eu.numerotelefonico

- eu.mailid

- eu.mobile

- eu.homphone

- eu.title

- d.tkmodel - Utilizzate l'interrogazione descritta in precedenza per ottenere il valore di ciascun modello.

- d.tkdeviceprotocol - Per SCCP, il valore è 0 e per SIP, il valore è 11.

Nota: È possibile filtrare qualsiasi campo in modo da includere solo le informazioni desiderate. Ad esempio, per filtrare in base al DN, aggiungere quanto segue alla fine della query: dove n.dnorpattern è simile a '8%'.

Elenca tutte le voci con un DN che inizia con 8. Il formato è dove <nome colonna> come '<valore>%'.