2009年6月24日 星期三

CCME Digit manipulation

 

CCME have several method to perform digit manipulation. It depends on the actual requirement you wish to accomplish to choose the appropriate method.

Here is the list:

  1. exp-num (Global)
  2. digit-strip (POTS)
  3. translation-profile (VoIP & POTS)
  4. prefix (POTS)
  5. forward-digit (POTS)

If multiple of digit manipulation methods is applied, they are executed as the order shown above. So be careful when you mix them together.

 

Translation profile configuration example:

Configuration of voice translation profile is divided into 2 parts.

1. create voice translation-rules and associate them to voice translation-profile with appropriated target (calling or called number)

Router(config)# voice translation-rule rule number
Router(cfg-translation-rule)# rule 1 /match/ /set/
Router(cfg-translation-rule)# rule 2 /match/ /set/
Router(cfg-translation-rule)# rule 3 /match/ /set/ ...and so on

Router(config)# voice translation-profile CHANGE_DID
Router(cfg-translation-profile)# translate ?
called           Translation rule for the called-number
calling          Translation rule for the calling-number
redirect-called  Translation rule for the redirect-number
redirect-target  Translation rule for the redirect-target
Router(cfg-translation-profile)# translate called ?
<1-2147483647>  Translation rule tag
Router(cfg-translation-profile)# translate called 1

2. apply the voice translation-profile on the appropriate dial-peer with appropriate direction (incoming or outgoing).

Router(config)# dial-peer voice 100 pots
Router(config-dial-peer)# translation-profile incoming CHANGE_DID

Reference: CCNA Voice

Basic Voice Port Configuration note

 

Analog Voice Port

FXS

signal loopstart | groundstart

cptone <contrycode>

station-id name “Name of Station”

station-id number 1234567

FXO

signal loopstart | groundstart

cptone <contrycode>

dial-type dtmf|pulse

ring number <number>  - Specify the number of ring that should pass before the router answers the incoming call to the FXO port.

 

Digital Voice Port

Configuring T1 CAS voice interface

controller T1 0/0/0
linecode b8zs
framing esf
ds0-group 1 timeslots 1-24 type e&m-wink-start

Configuring T1 CCS voice interface

isdn switch-type primary-5ess
controller t1 1/0
pri-group timeslots 1-24

What is dial-peer 0?

dial-peer 0 is a default dial-peer for inbound call when no other specific dial-peer is matched.

There are several parameters used to match a inbound call within dial-peer configuration mode. They are matched in the following order.

  1. incoming-called number (DNIS:Dialed Number Identification Service)
  2. answer-address (ANI:Automatic Number Identification)
  3. destination-pattern (ANI)
  4. port (For inbound POTS call only)
  5. dial-peer 0

Dial-peer 0 will be matched automatically if all the above 4 parameters are not exist.

Once dial-peer is matched the following “default condition” also applied and not tunable.

  • accept any voice codec
  • NO DTMF relay
  • Voice Packets marked as IP precedence 0
  • VAD enabled
  • NO RSVP support
  • Fax-rate voice: The router will limit the bandwidth available to fax signals to the
    maximum allowed by the VoIP codec. This could devastate fax calls if you are using
    a low-bandwidth compressed codec.
  • No application support: Dial peer 0 cannot refer calls to outside applications, such
    as an Interactive Voice Response (IVR) system.
  • NO DID support

As dial-peer bring some bad effect for voice call, configure your dial-peer to avoid it as possible as you can.

2009年6月13日 星期六

CCME - 讓你的 IP Phone 顯示中文

在 CUCM 中要使用繁體中文的 locale 是相當簡單的, 只需要下載相對應版的的繁體中文 locale file, 放到 SCP Server 上, 然後到 CUCM OS Administration 進行安裝即可。

但是在 CCME 的環境中, 由於組成的檔案眾多, 又是以指令的方式來設定, 所以要安裝 Locale 是一件相當複雜的工作,幸好到了 7.0.1 以後, 有了 Locale installer 的支援, 讓過程可以簡化許多。 以下介紹在 CCME 7.1 的版本, 安裝繁體中文 Locale 的步驟
環境說明:

  • Cisco 3825 (D:512M/F:128M)
  • IOS 12.4(24)T (IP Voice with GW feature) with CCME 7.1 full
  • Phone 7962
  • Basic CCME configuration

在設定好基本的 CCME config 之後, 要調整 cnf-file 的設定。
在預設的情況下,CCME 會以 phonetype 為單位,並且會將 phone 的 config file 存放於 system:its 路徑之下。如下所示, 看不到以 SEPXXXXXXXXXXXX.cnf.xml 的設定檔,只看得到 phonetype 的 xml file. 代表它是以 perphonetype 的方式來存放設定檔。

Directory of system:its/vrf1/

略 ...

428 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7914-1.cnf.xml
453 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7914-2.cnf.xml
433 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7915-12-1.cnf.xml
458 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7915-12-2.cnf.xml
438 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7915-24-1.cnf.xml
463 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7915-24-2.cnf.xml
443 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7916-12-1.cnf.xml
468 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7916-12-2.cnf.xml
448 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7916-24-1.cnf.xml
473 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962-7916-24-2.cnf.xml
423 -rw- 0 Jun 12 2009 17:31:18 +08:00 XMLDefault7962.cnf.xml

略 ...

如果想要啟用 user defined 的 locale 時, 必須改變此一預設值,也就是以 perphone 為單位來存放設定檔。

1. 先宣告 cnf-file 儲存於 flash: (另外一個選擇是 external tftp server, 在此先不討論)

"cnf-file location flash:" 實際上會儲存於 flash:its 之下

2. 宣告 cnf-file 是以 perphone 的方式來儲存 phone 的 config file

"cnf-file perphone"


此時再觀察一次 phone config xml 會發現 SEPXXXXXXXXXXXX.cnf.xml 出現了。

GK#dir flash:its/vrf1/
Directory of flash:/its/vrf1/
176 -rw- 2827 Jun 12 2009 11:56:18 +08:00 XMLDefault.cnf.xml
177 -rw- 1394 Jun 12 2009 13:52:40 +08:00 SEP0022900XXXXA.cnf.xml
169 -rw- 1394 Jun 12 2009 13:52:38 +08:00 SEP0022900XXXX4.cnf.xml
198 -rw- 1345 Jun 12 2009 13:56:18 +08:00 SEP001E37CXXXX6.cnf.xml
128180224 bytes total (5582848 bytes free)

接下來,便可以開始用 Locale Installer 來安裝我們所需的 locale 了。在安裝之前得先下載對應的 locale file, 我想安裝的是繁體中文的 locale, 可以在這裏取得。下面是我使用的 locale file。

CME-locale-zh_TW-Chinese-7.0.1.1.tar
CME Locale support files for Chinese-Tawainese (zh_TW) for CME 7.0(1) and later. This new 7.0.1.1 package enhances localization via simplifying the localization process.

用 tftp 上傳至 flash:its/ 路徑下。(***一定要放這裏)

再來就可以把它 load 進來,這裏就是使用到 locale installer 的部份。如果沒有先完成前面的 "cnf-file location" 和 "cnf-file perphone", 就無法看到下面的藍色字體的選項。

GK(config-telephony)#user-locale ?
<0-4> user locale index 0 to 4 (0 is default)
DE Germany
DK Denmark
ES Spain
FR France
IT Italy
JP Japan
NL Netherlands
NO Norway
PT Portugal
RU Russian Federation
SE Sweden
U1 User defined user-locale 1
U2 User defined user-locale 2
U3 User defined user-locale 3
U4 User defined user-locale 4
U5 User defined user-locale 5
US United States

GK(config-telephony)#user-locale U1 ?
WORD User Defined Language Code
load Load the locale package

GK(config-telephony)#user-locale U1 load ?
WORD <WORD> Locale package name

GK(config-telephony)#user-locale U1 load CME-locale-zh_TW-Chinese-7.0.1.1.tar
Updating CNF files

LOCALE INSTALLER MESSAGE:Loading Locale Package...
LOCALE INSTALLER MESSAGE: VER:1
LOCALE INSTALLER MESSAGE: Langcode:zh_TW
LOCALE INSTALLER MESSAGE: Language:Chinese
LOCALE INSTALLER MESSAGE: Filename: 7905-dictionary.xml
LOCALE INSTALLER MESSAGE: Filename: 7905-font.xml
LOCALE INSTALLER MESSAGE: Filename: 7905-kate.xml
LOCALE INSTALLER MESSAGE: Filename: 7921-dictionary.xml
LOCALE INSTALLER MESSAGE: Filename: 7921-font.dat
LOCALE INSTALLER MESSAGE: Filename: 7921-kate.utf-8.xml
LOCALE INSTALLER MESSAGE: Filename: 7921-kate.xml
LOCALE INSTALLER MESSAGE: Filename: 7960-tones.xml
LOCALE INSTALLER MESSAGE: Filename: be-sccp.jar
LOCALE INSTALLER MESSAGE: Filename: g3-tones.xml
LOCALE INSTALLER MESSAGE: Filename: gp-sccp.jar
LOCALE INSTALLER MESSAGE: Filename: mk-sccp.jar
LOCALE INSTALLER MESSAGE: Filename: SCCP-dictionary.utf-8.xml
LOCALE INSTALLER MESSAGE: Filename: SCCP-dictionary.xml
LOCALE INSTALLER MESSAGE: Filename: SCCP-dictionary-ext.xml
LOCALE INSTALLER MESSAGE: Filename: tags_file
LOCALE INSTALLER MESSAGE: Filename: tc-sccp.jar
LOCALE INSTALLER MESSAGE: Filename: td-sccp.jar
LOCALE INSTALLER MESSAGE: Filename: utf8_tags_file
LOCALE INSTALLER MESSAGE: New Locale configured

Processing file:flash:/its/user_define_1_tags_file

Processing file:flash:/its/user_define_1_utf8_tags_file
CNF files updating complete

GK(config-telephony)#reset all

phone 在 reset 後就會看到畫面有出現 "Update Locale", 最後就可以看到話機顯示繁體中文了。

呼~~~ 不要懷疑, 這真的是比較簡單的設定方式,有機會要再來試試家裏的 dynamips - 3745 CCME: ver 4.1(0) 看看到底是會多麼的複雜。

reference: Cisco Unified Communications Manager Express System Administrator Guide ]

2009年6月11日 星期四

CCME shared line 的幾種 config Mode

Shared line 指的是不同的話機使用相同的分機號碼(extension number).

在 CCME 的設定中, 分機號碼並不直接綁定(binding) 在 ephone 上, 而是綁定在 ephone-dn 上。然後在 ephone 的設定下, 再把 phone button associate 至所需的 ephone-dn tag 來達成分機號碼的指派。

由於模組化的設定方式, 因此讓 shared line 的運用多了些彈性。

以下是幾種 shared line 的 config scenario:

1. Different phones associated their phone button to same ext. with same ephone-dn tag

在這個模式下, 當有來話(incoming call)時, 所有 phone 上的 shared line 都會 ring。一旦某一台電話應答(Answer) 後, 所有話機的 share line 都會處於使用中的狀態, 其它的使用者便無法使用這一條 shared line. 即使這些使用者都是在 available 的狀態。

Example:

Voice(config)# ephone-dn 10 dual-line
Voice(config-ephone-dn)# number 1010
Voice(config)# ephone 8
Voice(config-ephone)# button 1:10
Voice(config-ephone)# restart
Voice(config-ephone)# exit
Voice(config)# ephone 9
Voice(config-ephone)# button 1:10
Voice(config-ephone)# restart
Voice(config-ephone)# exit

因此, 為了讓 shared line 的使用更有彈性, 另外一種設定方式是把分機號碼綁定至不同的 ephone-dn tag, 讓每一個 ephone-dn 都是獨立運作的個體.。

2. Different phones associated their phone button to same ext. with different ephone-dn tag

在這個種設定方式下, 雖然可以提高 shared-line call out 的彈性,(即不同的 phone user 可以使用相同的 share-line 來 call-out), 但是在 call-in 時卻會問題。

Example:

Voice(config)# ephone-dn 10 dual-line
Voice(config-ephone-dn)# number 1010
Voice(config)# ephone-dn 11 dual-line
Voice(config-ephone-dn)# number 1010
Voice(config)# ephone 8
Voice(config-ephone)# button 1:10
Voice(config-ephone)# restart
Voice(config-ephone)# exit
Voice(config)# ephone 9
Voice(config-ephone)# button 1:11
Voice(config-ephone)# restart
Voice(config-ephone)# exit

不同於前一個模式, 當有 in-coming call 時, 只有其中一支 phone 會 ring 而且是 unpredictable。其次,由於 ephone-dn 是 dual-line 的, 因此如果又有一個 new in-coming call 到目前正 active 的 line 上時, call-waiting 會運作, 因此其它 available 的 phone user 反而不能處理這個 new in-coming call。

如果希望 phone 的 ring out 是 pridictable, 就必須利用 huntstop 或 overlay option 來延伸 shared_line 的運作模式。

2.1 Dual-line ephone-dn with preference & huntsotp

利用 "preference" 來調整 ring-out 的 priority (the lower value is prefered).

再利用 "huntstop channel" 避免 dual-line 的 dn 進入 call-waiting 狀態.

最後再利用 "no huntstop" 來跳至下一個 available 的 dn.

Example:

Voice(config)# ephone-dn 10 dual-line
Voice(config-ephone-dn)# number 1010
Voice(config-ephone-dn)# preference 0
Voice(config-ephone-dn)# huntstop channel
Voice(config-ephone-dn)# no huntstop
Voice(config)# ephone-dn 11 dual-line
Voice(config-ephone-dn)# number 1010
Voice(config-ephone-dn)# huntstop channel
Voice(config-ephone-dn)# preference 1

這適合 in-coming call 固定由一特定順序的人來接收的情況下使用,假如有 user A、B、C 三人, 則先 ring A, 如果 A busy 則 ring B, 如果 B busy 則 ring C。

2.2 Single-line ephone-dn with button overlay & huntsotp

如果不希望 in-coming call 是依特定順序來 ring 的話,而是希望所有人都一起 ring 的模式時, 則要使用 button overlay.

Example:

Voice(config)# ephone-dn 10
Voice(config-ephone-dn)# number 1010
Voice(config-ephone-dn)# preference 0
Voice(config-ephone-dn)# no huntstop
Voice(config)# ephone-dn 11
Voice(config-ephone-dn)# number 1010
Voice(config-ephone-dn)# preference 1
Voice(config-ephone-dn)# exit
Voice(config)# ephone 8
Voice(config-ephone)# button 1o10,11
Voice(config-ephone)# exit
Voice(config)# ephone 9
Voice(config-ephone)# button 1o10,11

如此一來, 當有 in-coming call 時, 所有的 Phone 都會 ring.

接下來要來去做 Lab 練習看看囉~

Reference: CCNA_Voice by Jermey Cioara

2009年6月10日 星期三

Setting Up basic CCME

 

Maximum phones and directory numbers

max ephone & max ephone-dn

Firmware load files

share the phone loads with “tftp-server” command

"tftp-server flash:/phone/7942-7962/apps42.8-3-1-22.sbn alias apps42.8-3-1-22.sbn"

load phone loads under telephony-service configuration mode

"load 7962 SCCP42.8-3-2S" (*** DO NOT include the suffix ".loads" or ".bin", I spent lot of time for troubleshooting when I lab it the first time.)

Even you specified the wrong “loads” or “bin” file, the phone can still register to CCME with error message “File NOT Found….”.

Source IP address information

"ip source-address x.x.x.x”

Generated configuration files

"create cnf-files" (Should be created automatically)

2009年6月9日 星期二

Cisco 7962 IP Phone Factory Default Reset How to

Performing a Factory Reset

When you perform a factory reset of the Cisco Unified IP Phone, the following information is erased or reset to its default value:

CTL file—Erased

LSC—Erased

User configuration settings—Reset to default values

Network configuration settings—Reset to default values

Call histories—Erased

Locale information—Reset to default values

Phone application—Erased (phone recovers by loading the term62.default.loads file or the term42.default.loads file, depending on the phone model)

Before you perform a factory reset, ensure that the following conditions are met:

The phone must be on a DHCP-enabled network.

A valid TFTP server must be set in DHCP option 150 or option 66 on the DHCP server.

The term62.default.loads file or the term42.default.loads and the files specified in that file should be available on the TFTP server that is specified by the DHCP packet.

To perform a factory reset of a phone, perform the following steps:

Procedure


Step 1 Unplug the power cable from the phone and then plug it back in.

The phone begins its power-up cycle.

Step 2 While the phone is powering up, and before the Speaker button flashes on and off,

press and hold #.

Continue to hold # until each line button flashes on and off in sequence in amber.

Step 3 Release # and press 123456789*0#.

You can press a key twice in a row, but if you press the keys out of sequence, the factory reset will not take place.

After you press these keys, the line buttons on the phone flash red, and the phone goes through the factory reset process.

Do not power down the phone until it completes the factory reset process, and the main screen appears.

Reference:

http://www.cisco.com/en/US/docs/voice_ip_comm/cuipph/7962g_7942g/7_0/english/administration/guide/7962trb.html#wp1031705

2009年6月4日 星期四

Powering up Cisco IP Phones

There are several options to power up cisco ip phones.

  1. PoE switches - (Cisco Prestandards / 802.3af)
  2. Power Patch Panel (Cisco Inline Power)
  3. Power Injector (Power coupler, one per Powered Device)
  4. Power Brick (AC to DC power conditioner)

PoE detection process

There are tow types of PoE.

1. Cisco PreStandard
2. 802.3af

One of the major difference between them is the detection process.
Detection process is used by PoE swtich to understand if the connected device need power provision.

1. Cisco PreStandard -
FLP (Fast Link Pause) sent from PoE switch, PoE device will loop it back to Switch.
In Cisco PreStandard PoE, CDP is used to negotiate the power level. Switch provide minimal power (6.3W) at first, then adjust to the value(up to 10W) derived from the power level negotiation.

2. 802.3af -
Small DC current constantly applied to line, PoE devices have resistor and will returned a specific level of resistence to the line. Non-PoE devices will not be harmed by this current.
The resistence level also determined which Power classes is needed by devices.



Reference:
CCNA Voice by Jeremy Cairo
http://en.wikipedia.org/wiki/Power_over_Ethernet
Troubleshooting Cisco PoE
Cisco Catalyst 4000 inline power solution