概要
このドキュメントは、エンド ユーザ アソシエーションとともに IP フォンに関連付けられる電話番号(DN)とパーティションを取得するための、CLI で実行できる Structured Query Language(SQL)クエリについて説明します。
前提条件
要件
このドキュメントの読者は Cisco Unified Communications Manager(CUCM)に関する知識を持っていることを推奨します。
使用するコンポーネント
このドキュメントの情報は、CUCM バージョン 8.X 以降に基づいていますが、以前のバージョンでも同様に機能する場合もあります。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
テーブル
SQL クエリは、次のテーブルのデータを使用して形成されます。
- Device:このテーブルには IP フォンやゲートウェイなどのデバイスレベルの情報が含まれます。
- NumPlan:このテーブルには CUCM で設定されているすべてのパターンについての情報が含まれます。
- DeviceNumPlanMap:このテーブルには Device テーブルと NumPlan テーブルのデータ間のマッピングが含まれます。
- RoutePartition:このテーブルには CUCM で設定されているすべての Partition についての情報が含まれます。
- EndUser:このテーブルにはエンド ユーザに関する情報が含まれます。
- DeviceNumPlanMapEndUserMap:このテーブルには、DeviceNumPlanMap テーブルと EndUser テーブルのデータ間のマッピングが含まれます。
- EndUserDeviceMap:このテーブルには、Device テーブルと EndUser テーブルのデータ間のマッピングが含まれます。
これらのテーブルに関する詳細については、それぞれのバージョンの CUCM データ辞書を参照してください。
SQL クエリ
クエリは、1 つのアソシエーションを一度に見つけるために書き込まれ、簡単に把握できるようにします。
IP フォンに関連付けられたすべての DN を一覧表示
IP フォンに関連付けられたすべての 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 フォンの一覧表示を指定するクエリを次に示します。
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 フォンの詳細を一覧表示するには、tkmodel の番号を追加すればクエリを変更できます。IP フォン モデル 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 フォン モデルの tkmodel 値を取得するクエリを次に示します。
run sql select name,tkmodel from TypeProduct
注:どのフィールドも必要な情報のみが含まれるようにフィルタリングできます。たとえば、DN でフィルタリングするには、クエリの最後にwhere n.dnorpattern like '8%' を加えます。
このクエリは、8で始まるDNを持つすべてのエントリをリストします。形式はwhere <column name> like '<value>%'です。
注:有用な情報を提供する他のフィールド(ユーザが読み取り可能で、Primary Key Identifiers(PKID)ではない)は、このクエリに追加できます。[run sql select] と[as DN] の間に追加します。追加できるフィールドは次のとおりです。
d.tkmodel:各モデルの値を取得するには、上記の注に記載があるクエリを使用します。
d.tkdeviceprotocol:Skinny Call Control Protocol(SCCP)の値は 0 で、Session Initiation Protocol(SIP)の値は 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 フォンの詳細を一覧表示するには、tkmodel の番号を追加すればクエリを変更できます。IP フォン モデル 7945 の場合、クエリの最後に and d.tkmodel='435' を追加します。
すべての IP フォン モデルの tkmodel 値を取得するには、次のように入力します。
run sql select name,tkmodel from TypeProduct
注:どのフィールドも必要な情報のみが含まれるようにフィルタリングできます。たとえば、DN でフィルタリングするには、クエリの最後にwhere n.dnorpattern like '8%' を加えます。
このクエリは、8で始まるDNを持つすべてのエントリをリストします。形式はwhere <column name> like '<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 フォンの詳細を一覧表示するには、tkmodel の番号を追加すればクエリを変更できます。IP フォン モデル 7945 の場合、クエリの最後に and d.tkmodel='435' を追加します。
すべての IP フォン モデルの tkmodel 値を取得するには、次のように入力します。
run sql select name,tkmodel from TypeProduct
役立つ情報(ユーザが読み取り可能、PKID 以外)を提供する、このクエリに追加することができるその他のフィールドがいくつかあります。[run sql select] と[as DN] の間に追加します。追加できるフィールドは次のとおりです。
- eu.firstname
- eu.middlename
- eu.lastname
- eu.manager
- eu.department
- eu.telephonenumber
- eu.mailid
- eu.mobile
- eu.homephone
- eu.title
- d.tkmodel:各モデルの値を取得するには、上記の注に記載があるクエリを使用します。
- d.tkdeviceprotocol:SCCP の値は 0、SIP の値は 11 です。
注:どのフィールドも必要な情報のみが含まれるようにフィルタリングできます。たとえば、DN でフィルタリングするには、クエリの最後にwhere n.dnorpattern like '8%' を加えます。
このクエリは、8で始まるDNを持つすべてのエントリをリストします。形式はwhere <column name> like '<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 フォンの詳細を一覧表示するには、tkmodel の番号を追加すればクエリを変更できます。IP フォン モデル 7945 の場合、クエリの最後に and d.tkmodel='435' を追加します。
すべての IP フォン モデルの tkmodel 値を取得するには、次のように入力します。
run sql select name,tkmodel from TypeProduct
役立つ情報(ユーザが読み取り可能、PKID 以外)を提供する、このクエリに追加することができるその他のフィールドがいくつかあります。[run sql select] と[as DN] の間に追加します。追加できるフィールドは次のとおりです。
- eu.firstname
- eu.middlename
- eu.lastname
- eu.manager
- eu.department
- eu.telephonenumber
- eu.mailid
- eu.mobile
- eu.homephone
- eu.title
- d.tkmodel:各モデルの値を取得するには、上記の注に記載があるクエリを使用します。
- d.tkdeviceprotocol:SCCP の値は 0、SIP の値は 11 です。
注:どのフィールドも必要な情報のみが含まれるようにフィルタリングできます。たとえば、DN でフィルタリングするには、クエリの最後にwhere n.dnorpattern like '8%' を加えます。
これは、8で始まるDNを持つすべてのエントリをリストします。形式は、where <column name> like '<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 フォンの詳細を一覧表示するには、tkmodel の番号を追加すればクエリを変更できます。IP フォン モデル 7945 の場合、クエリの最後に and d.tkmodel='435' を追加します。
すべての IP フォン モデルの tkmodel 値を取得するには、次のように入力します。
run sql select name,tkmodel from TypeProduct
役立つ情報(ユーザが読み取り可能、PKID 以外)を提供する、このクエリに追加することができるその他のフィールドがいくつかあります。[run sql select] と[as DN] の間に追加します。追加できるフィールドは次のとおりです。
- eu.firstname
- eu.middlename
- eu.lastname
- eu.manager
- eu.department
- eu.telephonenumber
- eu.mailid
- eu.mobile
- eu.homephone
- eu.title
- d.tkmodel:各モデルの値を取得するには、上記の注に記載があるクエリを使用します。
- d.tkdeviceprotocol:SCCP の値は 0、SIP の値は 11 です。
注:どのフィールドも必要な情報のみが含まれるようにフィルタリングできます。たとえば、DN でフィルタリングするには、クエリの最後にwhere n.dnorpattern like '8%' を加えます。
これは、8で始まるDNを持つすべてのエントリをリストします。形式は、where <column name> like '<value>%'です。