簡介
本檔案介紹如何在Cisco Unified Communications Manager Express(CME)上設定和疑難排解目錄服務。
由Srinivasa Dee Conda撰寫,由Cisco TAC工程師Ramiro Amaya編輯。
必要條件
需求
思科建議您對以下主題有基本瞭解:
採用元件
本檔案所述內容不限於特定軟體版本。但是本文檔中使用的元件有:
背景資訊
1.本地目錄
- CME會建立一個本地目錄,該目錄會呈現給每個註冊的IP電話。
- 此本地目錄包括在CME中建立的所有電話DN。
- 此外,CME管理員還可以將號碼手動新增到本地目錄中。
- 電話使用者可通過以下方式瀏覽此目錄:
- 按電話上的Directories功能按鍵
- 選擇本地目錄
- 鍵入要搜尋的目標使用者的名字/姓氏。如果這些欄位留空,將顯示本地目錄中的所有使用者
- 本地目錄頁面以XML格式顯示給電話使用者,使用HTTP訪問時沒有密碼保護。按下Directories按鈕後,電話會向CME傳送HTTP請求,請求URL http://#CME-IP#/localdirectory。CME解析URL並使用XML one做出響應。
- 在電話註冊過程中,此URL作為電話配置檔案的一部分提供給電話目錄功能按鈕。
2.外部目錄
- IP電話中的每個功能按鈕(消息、目錄、設定等)都支援URL關聯
- 按鈕的功能基於關聯的URL
- 根據此情況,您可以將外部URL指定給目錄功能按鈕。完成此操作後,IP電話將瀏覽外部目錄,而不是CME中的本地目錄
- 建立外部目錄URL後,在CME中自動禁用本地目錄服務
附註: 需要重置IP電話才能獲取新URL
3.被叫名稱顯示
- 此功能允許在被叫方電話上顯示被叫方名稱
- 從本地目錄獲取被叫方名稱。該名稱可以是分配給ephone DN或手動新增到本地目錄的名稱。
- 如果電話DN名稱和手動目錄條目之間發生重疊,則手動條目優先。
組態
telephony-service
service dnis dir-lookup
directory entry 1 3011 name Test-Phone1
!
ephone-dn 1 dual-line
number 3011
name Test-Phone1
配置模板
ip http server
!
telephony-service
directory {first-name-first | last-name-first} !!!... Change the display mode of directory entries
directory entry {directory-tag number name name | clear} !!!... Manually add directory entries
no service local-directory !!!... Manually disable local directory services
url directories url !!!... Configure external directory URL
service dnis dir-lookup !!!... Enable called-name display feature
!
voice register global
url directory url
!
ephone-dn dn-tag
name name
!
voice register dn dn-tag
name name
限制
- 配置外部目錄服務僅適用於基於Java的非電話。任何基於Java的電話都會顯示以下內容的重複目錄:
- 如果您想使用CUCM作為外部目錄,應該在CUCM中配置電話以實現其MAC地址。對於電話來說,無需註冊到CUCM或分配DN,但必須針對MAC地址進行配置。
疑難排解
在CME上收集封包擷取,並在CME上收集「debug ip http all」,以檢查CME和IP電話之間對本地目錄服務的互動。
以下片段說明ip電話和CME之間用於目錄搜尋的逐步互動。
成功的搜尋方案
1.按電話上的「目錄」按鈕
Router2811#
101245: Mar 24 07:29:24.992: %RITE-5-CAPTURE_START: Started IP traffic capture for interface FastEthernet0/0
101246: Mar 24 07:29:33.424: lds_urlhook, url=/localdirectory
101247: Mar 24 07:29:33.424: Mon, 24 Mar 2014 07:29:33 GMT 10.65.47.115 /localdirectory ok
Protocol = HTTP/1.1 Method = GET Query = locale=English_United_States&name=SEP000000000002
101248: Mar 24 07:29:33.424:
101249: Mar 24 07:29:33.428: local_directory_search_get_action: minor = 0, uri_index =locale=English_United_States&name=SEP000000000002
101250: Mar 24 07:29:33.428: ipkeyswitch_ldir_send_file 1: page 0
101251: Mar 24 07:29:33.428: ipkeyswitch_ldir_send_file 3: to send prologue
Router2811#
2.選擇目錄
Router2811#
101252: Mar 24 07:29:54.696: lds_urlhook, url=/localdirectory/query
101253: Mar 24 07:29:54.696: Mon, 24 Mar 2014 07:29:54 GMT 10.65.47.115 /localdirectory/query ok
Protocol = HTTP/1.1 Method = GET
101254: Mar 24 07:29:54.696:
101255: Mar 24 07:29:54.700: local_directory_search_get_action: minor = 1, uri_index =
101256: Mar 24 07:29:54.700: ipkeyswitch_ldir_send_file 1: page 1
101257: Mar 24 07:29:54.700: ipkeyswitch_ldir_send_file 3: to send prologue
Router2811#
3. 輸入使用者的名字並按提交 (示例名字=測試)
Router2811#
101258: Mar 24 07:30:15.909: lds_urlhook, url=/localdirectory/search
101259: Mar 24 07:30:15.909: Mon, 24 Mar 2014 07:30:15 GMT 10.65.47.115 /localdirectory/search ok
Protocol = HTTP/1.1 Method = GET Query = f=Test
101260: Mar 24 07:30:15.909:
101261: Mar 24 07:30:15.913: local_directory_search_get_action: minor = 2, uri_index =f=Test
101262: Mar 24 07:30:15.913: ipkeyswitch_ldir_send_file 1: page 2
101263: Mar 24 07:30:15.913: ipkeyswitch_ldir_send_file 3: to send prologue
101264: Mar 24 07:30:15.913: ipkeyswitch_dir_search_result 1: f=Test
101265: Mar 24 07:30:15.913: ipkeyswitch_dir_search_result 2: f=Test
101266: Mar 24 07:30:15.913: ipkeyswitch_dir_search_result token:f=Test, l=, p=
101267: Mar 24 07:30:15.913: ipkeyswitch_dir_search_result length:f=4, l=0, p=0
101268: Mar 24 07:30:15.913: valid_ephone_dn check for number: 3001
101269: Mar 24 07:30:15.913: valid_ephone_dn check for number: 3002
101270: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3003
101271: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3004
101272: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3005
101273: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3006
101274: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3007
101275: Mar 24 07:30:15.917: valid_ephone_dn check for number: 19990000
101276: Mar 24 07:30:15.917: valid_ephone_dn invalid dn 9 number: 19990000
101277: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3101
101278: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3102
101279: Mar 24 07:30:15.917: valid_ephone_dn check for number:
101280: Mar 24 07:30:15.917: valid_ephone_dn check for number: 28282
101281: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3998
101282: Mar 24 07:30:15.917: valid_ephone_dn check for number: 3457
101283: Mar 24 07:30:15.921: valid_ephone_dn check for number:
101284: Mar 24 07:30:15.921: valid_ephone_dn check for number: 3011
101285: Mar 24 07:30:15.921: ip_keyswitch_search_ephone_dn:
f=Test-Phone1, l=
101286: Mar 24 07:30:15.921: ip_keyswitch_search_ephone_dn:
matches: 1
101287: Mar 24 07:30:15.921: valid_ephone_dn check for number: 3012
101288: Mar 24 07:30:15.921: ip_keyswitch_search_sip_phone:
f=cisco, l=
101289: Mar 24 07:30:15.921: ip_keyswitch_search_sip_phone:
f=Harp, l=Test
101290: Mar 24 07:30:15.921: ip_keyswitch_search_directory_entry :
f=Test-Phone1, l=
101291: Mar 24 07:30:15.921: ip_keyswitch_search_directory_entry: 2