목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표

SQL 쿼리

IP 전화와 연결된 모든 DN 나열

DN 및 연결된 IP 전화 나열

디바이스 정보 및 연결된 파티션이 있는 DN 나열

회선 수준 사용자 연결이 있는 전화기 찾기

회선 수준 사용자 연결이 없는 전화 찾기

장치 수준 사용자 연결이 있는 전화기 찾기

소개

이 문서에서는 최종 사용자 연결과 함께 IP Phone과 연결된 DN(Directory Number) 및 파티션을 얻기 위해 CLI에서 실행할 수 있는 SQL(Structured Query Language) 쿼리를 제공합니다.

사전 요구 사항

요구 사항

CUCM(Cisco Unified Communications Manager)에 대한 지식이 있는 것이 좋습니다.

사용되는 구성 요소

이 문서의 정보는 CUCM 버전 8.X 이상을 기반으로 하지만 이전 버전에서도 작동할 수 있습니다.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다. 이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다. 현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

표

SQL 쿼리는 다음 테이블의 데이터로 구성됩니다.

- 디바이스 - 이 표에는 IP 전화 및 게이트웨이와 같은 디바이스 레벨 정보가 포함되어 있습니다.

- NumPlan - 이 표에는 CUCM에 구성된 모든 패턴에 대한 정보가 포함되어 있습니다.

- DeviceNumPlanMap - 이 테이블에는 디바이스 테이블의 데이터와 NumPlan 테이블 간의 매핑이 포함됩니다.

- RoutePartition - 이 테이블에는 CUCM에 구성된 모든 파티션에 대한 정보가 포함됩니다

- EndUser - 이 표에는 최종 사용자와 관련된 정보가 포함되어 있습니다.

- DeviceNumPlanMapEndUserMap - 이 테이블에는 DeviceNumPlanMap 테이블의 데이터와 EndUser 테이블 간의 매핑이 포함됩니다.

- EndUserDeviceMap - 이 테이블에는 Device 테이블과 EndUser 테이블의 데이터 간의 매핑이 포함됩니다.

이러한 테이블에 대한 자세한 내용은 해당 버전의 CUCM 데이터 사전을 참조하십시오.

SQL 쿼리

쿼리는 이해하기 쉽도록 한 번에 하나의 연관을 찾기 위해 작성됩니다.

IP 전화와 연결된 모든 DN 나열

다음은 IP Phone과 연결된 모든 DN을 나열하도록 설계된 쿼리입니다.

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

참고: tkclass = 1은 IP 전화에 사용됩니다. dnorpattern은 전화기/헌트 파일럿/VM 포트/경로 패턴/CTI RP와 연결된 DN이 있는 테이블 numplan의 열입니다.

DN 및 연결된 IP 전화 나열

다음은 DN 및 연결된 IP Phone을 나열하도록 설계된 쿼리입니다.

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

특정 모델 IP Phone의 세부사항을 나열하기 위해 tkmodel 번호를 추가하면 쿼리를 수정할 수 있습니다. 다음은 IP Phone Model 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'

모든 IP Phone 모델에 대한 tkmodel 값을 얻기 위한 쿼리는 다음과 같습니다.

run sql select name,tkmodel from TypeProduct

참고: 원하는 정보만 포함하도록 모든 필드를 필터링할 수 있습니다. 예를 들어, DN에서 필터링하려면 쿼리 마지막에 이를 추가합니다. 여기서 n.dnorpattern은 '8%'와 같습니다.

이 쿼리는 8로 시작하는 DN이 있는 모든 항목을 나열합니다. 형식은 <column name>이 '<value>%'와 같은 형식입니다.

참고: 유용한 정보(PKID(Primary Key Identifier)가 아니라 사용자가 읽을 수 있는 정보)를 제공하는 일부 다른 필드를 이 쿼리에 추가할 수 있습니다. 'run sql select' 및 'as DN' 사이에 추가할 수 있는 필드입니다.

d.tkmodel - 각 모델의 값을 가져오려면 이전 주석에 설명된 질의를 사용합니다.

d.tkdeviceprotocol - SCCP(Skinny Call Control Protocol)의 경우 값은 0이고 SIP(Session Initiation Protocol)의 경우 값은 11입니다.

디바이스 정보 및 연결된 파티션이 있는 DN 나열

디바이스 정보 및 DN과 관련 파티션을 나열하도록 설계된 쿼리입니다.

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

참고: 파티션이 없는 모든 DN은 여기에 나열되지 않습니다.

쿼리에 테이블이 더 추가되므로 조인을 사용하는 것이 더 쉽습니다. 이전 쿼리도 작성할 수 있습니다.

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

특정 모델 IP Phone의 세부사항을 나열하기 위해 tkmodel 번호를 추가하면 쿼리를 수정할 수 있습니다. IP Phone Model 7945의 경우 쿼리의 끝에 d.tkmodel='435'를 추가합니다.

모든 IP Phone 모델에 대한 tkmodel 값을 가져오려면 다음을 입력합니다.

run sql select name,tkmodel from TypeProduct

참고: 원하는 정보만 포함하도록 모든 필드를 필터링할 수 있습니다. 예를 들어, DN에서 필터링하려면 쿼리 끝에 이를 추가합니다. 여기서 n.dnorpattern은 '8%'와 같습니다.

이 쿼리는 8로 시작하는 DN이 있는 모든 항목을 나열합니다. 형식은 <column name>이 '<value>%'와 같은 형식입니다.

참고: 유용한 정보를 제공하는 일부 다른 필드(PKID가 아니라 사용자가 읽을 수 있음)를 이 쿼리에 추가할 수 있습니다. 'run sql select' 및 'as DN' 사이에 추가할 수 있는 필드입니다.

d.tkmodel - 각 모델의 값을 가져오려면 이전 주석에 설명된 질의를 사용합니다.

d.tkdeviceprotocol - SCCP의 경우 값은 0이고 SIP의 경우 값은 11입니다.

회선 수준 사용자 연결이 있는 전화기 찾기

다음은 라인 레벨 사용자 연결이 있는 전화기를 찾기 위해 설계된 쿼리입니다.

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

이 쿼리는 DN이 파티션에 있는 경우에만 정보를 제공합니다. None Partition(없음 파티션)에 항목을 포함하려면 다음을 입력합니다.

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

특정 모델 IP Phone의 세부사항을 나열하기 위해 tkmodel 번호를 추가하면 쿼리를 수정할 수 있습니다. IP Phone Model 7945의 경우 쿼리의 끝에 d.tkmodel='435'를 추가합니다.

모든 IP Phone 모델에 대한 tkmodel 값을 가져오려면 다음을 입력합니다.

run sql select name,tkmodel from TypeProduct

이 쿼리에 추가할 수 있는 유용한 정보(PKID가 아니라 사용자가 읽을 수 있음)를 제공하는 다른 필드가 있습니다. 'run sql select' 및 'as DN' 사이에 추가할 수 있는 필드입니다.

- eu.이름

- eu.middlename

- eu.lastname

- eu.manager

- eu.부서

- eu.telephonenumber

- eu.mailid

- eu.mobile

- eu.homephone

- eu.title

- d.tkmodel - 각 모델의 값을 가져오려면 앞에서 설명한 쿼리를 사용합니다.

- d.tkdeviceprotocol - SCCP의 경우 값은 0이고 SIP의 경우 값은 11입니다.

참고: 원하는 정보만 포함하도록 모든 필드를 필터링할 수 있습니다. 예를 들어, DN에서 필터링하려면 쿼리 끝에 이를 추가합니다. 여기서 n.dnorpattern은 '8%'와 같습니다.

이 쿼리는 8로 시작하는 DN이 있는 모든 항목을 나열합니다. 형식은 <column name>이 '<value>%'와 같은 형식입니다.

회선 수준 사용자 연결이 없는 전화 찾기

다음은 회선 수준 사용자 연결이 없는 전화기를 찾기 위해 디자인된 쿼리입니다.

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

이 쿼리는 DN이 파티션에 있는 경우에만 정보를 제공합니다. None Partition(없음 파티션)에 항목을 포함하려면 다음을 입력합니다.

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

특정 모델 IP Phone의 세부사항을 나열하기 위해 tkmodel 번호를 추가하면 쿼리를 수정할 수 있습니다. IP Phone Model 7945의 경우 쿼리의 끝에 d.tkmodel='435'를 추가합니다.

모든 IP Phone 모델에 대한 tkmodel 값을 가져오려면 다음을 입력합니다.

run sql select name,tkmodel from TypeProduct

이 쿼리에 추가할 수 있는 유용한 정보(PKID가 아니라 사용자가 읽을 수 있음)를 제공하는 다른 필드가 있습니다. 'run sql select' 및 'as DN' 사이에 추가할 수 있는 필드입니다.

- eu.이름

- eu.middlename

- eu.lastname

- eu.manager

- eu.부서

- eu.telephonenumber

- eu.mailid

- eu.mobile

- eu.homephone

- eu.title

- d.tkmodel - 각 모델의 값을 가져오려면 앞에서 설명한 쿼리를 사용합니다.

- d.tkdeviceprotocol - SCCP의 경우 값은 0이고 SIP의 경우 값은 11입니다.

참고: 원하는 정보만 포함하도록 모든 필드를 필터링할 수 있습니다. 예를 들어, DN에서 필터링하려면 쿼리 끝에 이를 추가합니다. 여기서 n.dnorpattern은 '8%'와 같습니다.

8로 시작하는 DN이 있는 모든 항목이 나열됩니다. 형식은 <column name>이 '<value>%'와 같은 곳입니다.

장치 수준 사용자 연결이 있는 전화기 찾기

다음은 장치 수준 사용자 연결이 있는 전화기를 찾기 위해 설계된 쿼리입니다.

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

이 쿼리는 DN이 파티션에 있는 경우에만 정보를 제공합니다. None Partition(없음 파티션)에 항목을 포함하려면 다음을 입력합니다.

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

특정 모델 IP Phone의 세부사항을 나열하기 위해 tkmodel 번호를 추가하면 쿼리를 수정할 수 있습니다. IP Phone Model 7945의 경우 쿼리의 끝에 d.tkmodel='435'를 추가합니다.

모든 IP Phone 모델에 대한 tkmodel 값을 가져오려면 다음을 입력합니다.

run sql select name,tkmodel from TypeProduct

이 쿼리에 추가할 수 있는 유용한 정보(PKID가 아니라 사용자가 읽을 수 있음)를 제공하는 다른 필드가 있습니다. 'run sql select' 및 'as DN' 사이에 추가할 수 있는 필드입니다.

- eu.이름

- eu.middlename

- eu.lastname

- eu.manager

- eu.부서

- eu.telephonenumber

- eu.mailid

- eu.mobile

- eu.homephone

- eu.title

- d.tkmodel - 각 모델의 값을 가져오려면 앞에서 설명한 쿼리를 사용합니다.

- d.tkdeviceprotocol - SCCP의 경우 값은 0이고 SIP의 경우 값은 11입니다.

참고: 원하는 정보만 포함하도록 모든 필드를 필터링할 수 있습니다. 예를 들어, DN에서 필터링하려면 쿼리 끝에 이를 추가합니다. 여기서 n.dnorpattern은 '8%'와 같습니다.

8로 시작하는 DN이 있는 모든 항목이 나열됩니다. 형식은 <column name>이 '<value>%'와 같은 곳입니다.