Cisco Unified Communications Manager Express Overview
When Cisco first entered the IP telephony space, it did so with its flagship CallManager product line. CallManager was a dedicated server or servers that was a custom fit for medium to large businesses deploying thousands of phones at a single site or multiple locations. Although CallManager (now known as Cisco Unified Communications Manager) provided a cost-effective solution for these larger businesses, the startup price was far beyond the range that was affordable by small businesses.
As the CallManager product line developed, Cisco released a product known as Survivable Remote Site Telephony (SRST), which allowed a router to act as a failover device for Cisco IP phones if their CallManager server was unreachable. SRST was so fantastic, Cisco eventually turned it into a standalone solution (rather than just a failover solution) that could support a small office environment. The product was initially named IOS Telephony Service (ITS), which then became CallManager Express, which then became the Unified Communications Manager Express (CME) product used today.
Depending on the platform used, Cisco Unified CME can scale to support an environment of up to 240 IP phones. Table 4.2 gives the Cisco Unified CME IOS platforms available and the current maximum number of IP phones supported.
Table 4.2. Current Cisco Unified Communications Manager Express Platform Limitations
Maximum Number of Phones
Cisco 1861 Integrated Services Router
Cisco IAD2430 Integrated Access Device
Cisco 2801 Integrated Services Router
Cisco 3250 Ruggedize Services Router
Cisco 3270 Ruggedize Services Router
Cisco 2811 Integrated Services Router
Cisco 2821 Integrated Services Router
Cisco 2851 Integrated Services Router
Cisco 3725 Multiservice Access Router
Cisco 3745 Multiservice Access Router
Cisco 3825 Integrated Services Router
Cisco 3845 Integrated Services Router
The Cisco Unified CME system supports features you would come to expect from a time-division multiplexing (TDM) PBX or key system. These features can be divided into four categories: system, phone, trunk, and voice mail features. The major features in each category are included in the following list (current as of CME Version 4.3):
- Account codes and Call Detail Record (CDR) field entry
- Callback busy subscriber and camp-on
- Per-phone call coverage rules
- Call hold and retrieve
- Call park: personal and directed
- Call transfer and park recall
- Call park assign to extension
- Call pickup directed
- Call pickup local group
- Call pickup explicit group
- Call transfer: consultative and blind
- Call waiting
- Computer telephony integration (CTI) with Microsoft CRM and Outlook using Cisco IOS Software Telephony Services Provider (TSP)
- E911 with two emergency location numbers per zone, unlimited zones per site
- Eight-party impromptu conferencing
- Directory services using XML
- Hunt groups: sequential, circular, parallel (blast), and longest idle
- Hunt-group dynamic login and logout
- Hunt-groups statistics: daily and hourly
- Meet-me conferencing (32 party)
- Music on Hold (MOH): internal or external source
- Night service bell or call forwarding
- Overlay extensions for enhanced call coverage
- Called-name display for overlay extensions
- Paging: internal through IP phones or to external system
- Per-call caller ID blocking
- Secondary dial tone
- Standards-based network call transfer and call forwarding using H.450
- Additional system speed-dial option through XML service
- Time-of-day and day-of-week call blocking
- Customizable called-name display
- Support of SRST fallback service phone auto-registration
- Basic automatic call distributor (B-ACD) (three queues) with auto-attendant and call statistics
- Display of number of calls in queue on IP phone
- Agent login and logout of B-ACD hunt group
- Integration with Cisco Unified Contact Center Express 5.0 for advanced call center features with support for up to 50 agents, agent supervisors, call recording, silent monitoring, and reporting features
- Secure Real-Time Protocol (SRTP), providing media encryption for calls on the IP network
- Secure voice IP phone certificate authentication and provisioning plus secure device signaling using Transport Layer Security (TLS)
- Maximum 250 phones per system
- Up to 34 line appearances per phone
- Attendant console functions using Cisco Unified IP Phone Expansion Module 7914
- Fast transfer: blind or consult
- Busy lamp
- Silent ringing options
- Automatic line selection for outbound calls
- Call forward on busy, no answer, and all (internal or external)
- Call-forward-all restriction control
- Do not disturb (DND)
- Feature ring with DND set
- IP phone display of DND state
- Dial-plan pattern load on SIP phones
- Diversion of calls directly to voice mail
- Customization of softkeys
- Enable and disable call-waiting notification per line
- Call waiting with overlay directory number
- Call-waiting ring
- Dual or 8 call line appearances per button
- After-hours toll-bar override
- Auto-answer with headset
- European date formats
- Hook flash passthrough across analog PSTN trunks
- Idle URL: periodically push messages or graphics on IP phones
- Last-number redial
- Live record to Cisco Unity Express mailbox
- Local name directory lookup
- On-hook dialing
- Station speed dial with configuration changes from IP phone
- System speed dial for 10,000 numbers
- Silent and feature ring options
- SIP-based line-side subscribe, providing basic presence of phone status
- Transfer to voice mail softkey
- Call barge with privacy on shared lines
- Access features using softkeys or feature access codes
- Remote teleworker IP phone support
- Dynamic hunt-group join or leave
- Support for analog phones using Cisco ATA 186 Analog Telephone Adapter or Cisco VG224 Analog Phone Gateway in SCCP mode
- Support for fax machines on Foreign Exchange Station (FXS) ports or ATA using H.323, SCCP, or SIP
- XML application services on Cisco Unified IP display phones
- Station-to-station video with voice using Cisco Unified Video Advantage or Cisco Unified IP Phone 7985G endpoints
- Extension mobility within the single site
- Wideband audio (G.722) and iLBC codec
- Analog Foreign Exchange Office (FXO) loop and ground start
- Ear and mouth (E&M)
- Basic Rate Interface (BRI) and Primary Rate Interface (PRI) support (NI2, 4ESS, 5ESS, EuroISDN, DMS100, and DMS250) and several other switch types currently supported in Cisco IOS Software
- Caller ID name and number
- Automatic number identification (ANI)
- Digital trunk support (T1/E1)
- Direct inward dialing (DID)
- Direct outward dialing
- E1 R2 support
- Dedicated trunk mapping to phone button
- H.323 trunks with H.450 support
- H450.12 automatic detection of H.450 support for remote H.323 endpoints
- H.323-to-H.323 hairpin call routing for non-H.450-compliant H.323 endpoints
- SIP trunks and RFC 2833 support
- Transcoding with G.711, G.729a, and iLBC
- ISDN Q.SIG supplementary services of basic calls, including call forwarding busy, no answer, all; calling name and line identification (CLIP and CNIP); connected line and name identification (COLP and CONP); message waiting indicator (MWI) and message center support; MWI passthrough QSIG-to-TDM voice mail
Voice Mail Features
- Integrated voice mail and auto-attendant solution with Cisco Unity Express
- Integration with Cisco Unity Voice Mail and Cisco Unity Unified Messaging, or third-party voice mail integration (H.323, SIP, or dual-tone multifrequency [DTMF])
This and other upcoming chapters will discuss many of these features in depth.
Figure 4.1 displays the network diagram built in the previous chapter.
Figure 4.1 VoIP Network Diagram
The Cisco Unified CME router in the upper right of Figure 4.1 provides connectivity to the PSTN (allowing for incoming and outgoing PSTN calls) and to the Internet. Cisco designed CME with capabilities to be an all-in-one device. With this one router, you could operate both your data and voice networks.
The network diagram pictured in Figure 4.1 shows a separate router connecting to the corporate branch offices. From a design standpoint, this functionality could be integrated into the Cisco Unified CME router as well. CME is able to integrate into other VoIP or TDM network environments. Figure 4.2 illustrates potential integration scenarios.
Figure 4.2 CME Integration Scenarios
A network using the design shown in Figure 4.2 would be able to place calls between any of the network systems shown using the IP WAN as a transport. The PSTN would still exist at each of these locations but would be used as a backup connection should a WAN failure at any or all of the locations occur.
Licensing and Models for Cisco Unified CME
Alas, all is not free in the world of IP telephony. To legally operate a Cisco Unified CME system, you must purchase three types of licenses:
- IOS license: The CME router must be licensed to run a version of Cisco IOS that is capable of supporting the CME software.
- Feature license: The feature license (also known as seat license) grants the CME router the ability to support a specific number of IP phones. These licenses are sold in incremental blocks
- Phone user licenses: You must purchase one phone user license for each Cisco IP phone supported by the CME system.
Often, vendors bundle the licenses with the Cisco Unified CME products being sold. For example, when you purchase a Cisco IP phone, it will come with a phone user license, allowing it to connect to a Cisco Unified CME or Cisco Unified Communications Manager system. The vendor may also bundle the CME router with the IOS license and a 24-seat feature license. Table 4.3 shows the current feature licenses available for the CME system.
Table 4.3. Cisco Unified Communications Manager Express Feature Licenses
Number of Phones
You can add feature licenses incrementally to your system. For example, you might start with a network of 80 IP phones and purchase an FL-CCME-96 license, allowing the network to grow up to 96 IP phones. Once you grow beyond that, you could add on a FL-CCME-SMALL license incrementally to add an additional 24 phones per license purchase.
Once all your licensing is in place, you can begin to plan the model you would like to use for Cisco Unified CME. CME supports three different models of configuration:
Choosing a model does not “lock you in” to one configuration or another; rather, the model represents more of a design that you can use for your company. This section describes each of the three models.
Using a PBX model of configuration gives most of the IP phones in your system a unique extension number, as shown in Figure 4.3.
Figure 4.3 Cisco Unified CME PBX Model
In this model, users can dial each other using their own, unique extension numbers. To get an outside line to the PSTN, the user would first dial a 9 (or some other access code) and receive a second dial tone. A local receptionist or auto-attendant system running on the Cisco Unified CME router is responsible for distributing incoming calls from the PSTN to the users. If the company is large enough to warrant a Direct Inward Dial (DID) block of phone numbers, the CME can route incoming PSTN calls directly to the users.
Using a keyswitch model of configuration mirrors the TDM keyswitch environment, which provided shared numbers to the phones supported by the system. Figure 4.4 illustrates a keyswitch model design.
Figure 4.4 Cisco Unified CME Keyswitch Model
The receptionist is not included in the design in Figure 4.4 because keyswitch environments typically provide a 1:1 ratio between directory numbers on phones and PSTN circuits. For example, if an office has three incoming PSTN lines, the three lines on each phone map directly to one of these lines. When the Cisco Unified CME router receives an incoming call on the first PSTN line, it rings the first line of all the IP phones connected to the system. A receptionist may be present in the office; however, the office would be small enough that any employee could answer any line.
In a keyswitch environment, intra-office calls are rare because the office environment is small enough for a user to walk to another cubical or yell, “Hey Beth, pick up line 1!” over a cubical wall.
The hybrid model is useful for environments that want a keyswitch feel, where each line maps directly to a PSTN line, but also want to allow simple intra-office calling. In a pure keyswitch environment with three lines on each phone, an intra-office call between two employees would use up two of the lines, leaving only one line remaining for incoming or outgoing PSTN calls. In the hybrid model, each user would receive a unique extension in addition to the shared “keyswitch” lines, as shown in Figure 4.5.
Figure 4.5 Cisco Unified CME Hybrid Model
Depending on your configuration, the extension unique to each user may or may not be able to reach the PSTN. If you have a limited number of PSTN lines available at the office, you may want to restrict PSTN access from the unique extension on each phone. You can also have this unique extension be the default active line when the user picks up the phone so that a user does not temporarily tie up one of the shared, PSTN lines each time the receiver is lifted.
Installing Unified CME on a Cisco Router
One advantage of Cisco IOS is the ease of installation and upgradability. To perform an IOS installation or upgrade, you can set up a TFTP server on your PC, download IOS from Cisco.com, and then enter a command similar to the following:
Router# copy tftp://172.16.2.5/c2801-adventerprisek9-mz.124-19.bin flash:
Assuming your TFTP server is working correctly and assigned the IP address 172.16.2.5, the single BIN IOS file would copy over. Once you reboot the router, you would be running the new IOS version.
Installing Cisco Unified CME is not quite as simple. Rather than being an all-in-one BIN file, the CME software is a series of files, which breaks down into the following categories:
- Basic files: The core files needed to run CME. This file set includes the firmware files that the Cisco IP phones need to operate.
- GUI files: The files required to power the CME web-based management utility.
- XML template file: The file that dictates the structure of the CME web-based management utility. Editing this file allows you to create different levels of administrators (such as a CME administrator who can only modify IP phone configurations through the web-based utility).
- MOH files: Audio files used for Music on Hold (MOH).
- Script files: Various Tool Command Language (Tcl) script files to provide more advanced functionality to CME (such as auto-attendant and automatic call distributor [ACD] functions).
- Miscellaneous files: Additional files that allow you to have custom ringtones or different backgrounds on select models of Cisco IP phones.
Performing a full installation of the Cisco Unified CME software adds around 150 files to the flash memory of your router. If you were to download each of these files manually and copy them one by one, it could be an all-day process just to get the CME files in place. To save you some pain, Cisco has introduced the archive command in the IOS syntax, which allows you to extract a group of files to flash all at once.
To perform an installation of the CME files on your router, you must first download the appropriate files from the Cisco website. Figure 4.6 gives you an idea of what the CME file download area looks like.
Figure 4.6 CME Software Download Page
As you can see, Cisco offers many different “packs” of files, such as the basic files, GUI files, or MOH files. In addition, there is also a full CME pack of files, which includes all the files in the previous bulleted list in a single TAR archive.
Cisco offers these different file packs as options for you to download and install. These CME file packs give you flexibility to install only the files you want. For example, you may only have enough flash memory on your router for the CME basic and GUI files. In this case, you can install just those components. Likewise, some may prefer to manage the CME system solely from the command line. In this case, there is no reason to use up valuable router flash space with the CME GUI files.
To install the full CME software package onto a router, obtain the full TAR file from Cisco and place the file on your TFTP server (which should be accessible from your Cisco router). Then issue the command shown in Example 4.1.
Example 4.1. Installing CME Files into Flash Memory
CME_Voice# archive tar /xtract tftp://172.16.2.5/cme-full-126.96.36.199.tar flash: Loading cme-full-188.8.131.52.tar from 172.16.2.5 (via FastEthernet0/0): ! bacdprompts/ (directory) 0 (bytes) extracting bacdprompts/app-b-acd-184.108.40.206-ReadMe.txt (18836 bytes) extracting bacdprompts/app-b-acd-220.127.116.11.tcl (24985 bytes) extracting bacdprompts/app-b-acd-aa-18.104.22.168.tcl (35485 bytes) extracting bacdprompts/en_bacd_allagentsbusy.au (75650 bytes) extracting bacdprompts/en_bacd_disconnect.au (83291 bytes) extracting bacdprompts/en_bacd_enter_dest.au (63055 bytes)! extracting bacdprompts/en_bacd_invalidoption.au (37952 bytes) extracting bacdprompts/en_bacd_music_on_hold.au (496521 bytes)!! extracting bacdprompts/en_bacd_options_menu.au (123446 bytes) extracting bacdprompts/en_bacd_welcome.au (42978 bytes) extracting bacdprompts/en_bacd_xferto_operator.au (34794 bytes)! extracting CME43-full-readme-v.2.0.txt (22224 bytes) Desktops/ (directory) Desktops/320x212x12/ (directory) extracting Desktops/320x212x12/CampusNight.png (131470 bytes) extracting Desktops/320x212x12/CiscoFountain.png (80565 bytes)! extracting Desktops/320x212x12/List.xml (628 bytes) extracting Desktops/320x212x12/MorroRock.png (109076 bytes) extracting Desktops/320x212x12/NantucketFlowers.png (108087 bytes) extracting Desktops/320x212x12/TN-CampusNight.png (10820 bytes) extracting Desktops/320x212x12/TN-CiscoFountain.png (9657 bytes) extracting Desktops/320x212x12/TN-Fountain.png (7953 bytes) extracting Desktops/320x212x12/TN-MorroRock.png (7274 bytes)! extracting Desktops/320x212x12/TN-NantucketFlowers.png (9933 bytes) extracting Desktops/320x212x12/Fountain.png (138278 bytes) gui/ (directory) extracting gui/Delete.gif (953 bytes) extracting gui/admin_user.html (3845 bytes) extracting gui/admin_user.js (647358 bytes)!!! !output omitted
As you can see, the cme-full-22.214.171.124.tar file is expanded into the flash of the router. The output shown in Example 4.1 is only one page out of five pages of files that would copy into the router’s flash. Now imagine copying each one of those files one by one using the copy command. No thanks!
Configuring the Cisco Unified CME Router as a TFTP Server
Now that you have the Cisco Unified CME files installed into the router flash, you can configure the CME router as a TFTP server. Before diving right into the syntax, let’s review why we are making the CME router a TFTP server. The following is the boot process of a Cisco IP phone:
- The Cisco IP phone connects to an Ethernet switchport. If the IP phone and switch support PoE, the IP phone receives power through either Cisco Proprietary PoE or 802.3af PoE.
- As the Cisco IP phone powers on, the Cisco switch delivers voice VLAN information to the IP phone using CDP as a delivery mechanism. The Cisco IP phone now knows what VLAN it should use.
- The Cisco IP phone sends a DHCP request asking for an IP address on its voice VLAN. The router connecting to the voice VLAN receives this DHCP request and, through the ip helper-address command, forwards the request directly to the DHCP server.
- The DHCP server responds with an IP address offer. When the Cisco IP phone accepts the offer, it receives all the DHCP options that go along with the DHCP request. DHCP options include items such as default gateway, DNS server information, domain name information, and so on. In the case of Cisco IP phones, a unique DHCP option is included known as Option 150. This option directs the IP phone to a TFTP server.
- When the Cisco IP phone has the IP address of the TFTP server, it contacts the TFTP server and downloads its firmware and configuration files. Included in the configuration file is a list of valid call processing agents (such as Cisco Unified Communications Manager or CME agents).
- The Cisco IP phone attempts to contact the first call processing server (the primary server) listed in its configuration file to register. If this fails, the IP phone moves to the next server in the configuration file. This process continues until the IP phone registers successfully or the list of call processing agents is exhausted.
Chapter 3 completed up through Step 4 of the boot process. The Cisco IP phone received its IP address information from the DHCP server and now has the IP address of the TFTP server (from DHCP Option 150), which is going to be the Cisco Unified CME router. But, as of yet, the CME router is not acting as a TFTP server. The CME router needs to hand out both the phone firmware (for whichever applicable Cisco IP phone models you are using) and the necessary phone configuration files. Otherwise, the Cisco IP phones will reach Step 5 of the boot process and stop.
Cisco routers will allow you to turn them into TFTP servers to serve files from the router’s flash memory. Now, you do not want to serve up the entire flash memory of your router to the TFTP service. Otherwise, unauthorized users could download copies of your router’s IOS or other sensitive files stored in flash. Instead, you must specify exactly what files are served from the flash memory.
In the “old days” of the CME software, this used to be a major challenge, because CME would dump all its software files into a flat directory in your router flash. That’s right; you would enter dir flash: and see 100+ CME files without any subdirectories to organize them. You would then have to weed through the files and use extensive documentation to figure out which firmware files belonged to each phone (the firmware files have names such as P00308000500.bin, so it was not obvious just based on the filename). Thankfully, in the newer versions of CME software, that has all changed. The phone firmware files are all organized in subdirectories that make it clear which files belong to each. Example 4.2 shows the directory listings of the router’s flash after installing the CME full TAR package.
Example 4.2. Verifying Installed CME Files
CME_Voice# dir flash: Directory of flash:/ 1 -rw- 32999900 May 12 2008 21:28:00 -07:00 c2801-adventerprisek9-mz.124- 19.bin 2 drw- 0 Jun 10 2008 14:57:20 -07:00 bacdprompts 14 -rw- 22224 Jun 10 2008 14:57:30 -07:00 CME43-full-readme-v.2.0.txt 15 drw- 0 Jun 10 2008 14:57:30 -07:00 Desktops 28 drw- 0 Jun 10 2008 14:57:36 -07:00 gui 46 -rw- 496521 May 12 2008 21:30:00 -07:00 music-on-hold.au 47 drw- 0 May 12 2008 21:30:00 -07:00 phone 128 drw- 0 May 12 2008 21:35:46 -07:00 ringtones 129996800 bytes total (28583936 bytes free) CME_Voice# dir flash:/phone Directory of flash:/phone/ 48 drw- 0 May 12 2008 21:30:00 -07:00 7945-7965 57 drw- 0 May 12 2008 21:30:34 -07:00 7937 59 drw- 0 May 12 2008 21:31:12 -07:00 7914 61 drw- 0 May 12 2008 21:31:12 -07:00 7906-7911 70 drw- 0 May 12 2008 21:31:46 -07:00 7920 72 drw- 0 May 12 2008 21:31:52 -07:00 7931 80 drw- 0 May 12 2008 21:32:24 -07:00 7942-7962 89 drw- 0 May 12 2008 21:32:58 -07:00 7921 97 drw- 0 May 12 2008 21:33:54 -07:00 7940-7960 102 drw- 0 May 12 2008 21:34:02 -07:00 7970-7971 111 drw- 0 May 12 2008 21:34:36 -07:00 7975 119 drw- 0 May 12 2008 21:35:12 -07:00 7941-7961 129996800 bytes total (28583936 bytes free) CME_Voice# dir flash:/phone/7940-7960 Directory of flash:/phone/7940-7960/ 98 -rw- 129824 May 12 2008 21:33:56 -07:00 P00308000500.bin 99 -rw- 458 May 12 2008 21:33:56 -07:00 P00308000500.loads 100 -rw- 705536 May 12 2008 21:34:00 -07:00 P00308000500.sb2 101 -rw- 130228 May 12 2008 21:34:00 -07:00 P00308000500.sbn 129996800 bytes total (28583936 bytes free)
As you dig deeper in the router flash directory listing, you can find the actual firmware files that are used for the IP phones. Example 4.3 shows output for the Cisco 7940 and 7960 IP Phone models. Now that you know the names of the firmware files, you can make them available through TFTP.
Example 4.3. Configuring Router-Based TFTP Services for IP Phone Firmware Files
CME_Voice# configure terminal Enter configuration commands, one per line. End with CNTL/Z. CME_Voice(config)# tftp-server flash:/phone/7940-7960/P00308000500.bin alias P00308000500.bin CME_Voice(config)# tftp-server flash:/phone/7940-7960/P00308000500.loads alias P00308000500.loads CME_Voice(config)# tftp-server flash:/phone/7940-7960/P00308000500.sb2 alias P00308000500.sb2 CME_Voice(config)# tftp-server flash:/phone/7940-7960/P00308000500.sbn alias P00308000500.sbn
The alias syntax that follows the tftp-server command allows the firmware file to be requested simply by asking for the aliased filename. This is necessary in the newer CME versions, which organize the firmware files into subdirectories. The Cisco IP phones do not know the full path to the firmware file; they only ask for the firmware filename.
The firmware files for the Cisco 7940 and 7960 IP Phones are now available via TFTP from the Cisco Unified CME router. You can repeat this process as many times as necessary to make the firmware files available for the additional models of IP phones you have on your network.
Configuring the Cisco Unified CME System-Level Functions
Now that the Cisco Unified CME router is serving up the correct firmware files, you can get into the configuration of the CME system itself. You can configure just about all of the CME settings from the telephony-service configuration mode, which you access simply by entering telephony-service from global configuration mode.
Four key system-level functions need to be specified in order for the CME router to begin supporting IP phones:
- Maximum phones and directory numbers
- Firmware load files
- Source IP address information
- Generated configuration files
The following sections describe each system-level function.
Maximum Phones and Directory Numbers
Before the Cisco Unified CME router can begin registering and supporting IP phones, it needs to know the number of phones and directory numbers it will be supporting. By default, both values are set to zero, so the router will not support any VoIP devices. To configure this value, you can use the syntax shown in Example 4.4.
Example 4.4. Provisioning CME Phone and Directory Number Support
CME_Voice(config)# telephony-service CME_Voice(config-telephony)# max-ephones ? <1-30> Maximum phones to support CME_Voice(config-telephony)# max-ephones 24 CME_Voice(config-telephony)# max-dn ? <1-150> Maximum directory numbers supported <cr> CME_Voice(config-telephony)# max-dn 48
The max-ephones parameter configures the maximum number of IP phones the router will support, whereas the max-dn parameter specifies the maximum number of directory numbers.
Firmware Load Files
In the section “Configuring the Cisco Unified CME Router as a TFTP Server,” you saw how to configure the CME router to serve the phone firmware files via TFTP. You must now tell the telephony service which firmware files it should use for the various models of Cisco IP phones it will be supporting. This can be done under the telephony-service configuration mode by using the load command, as shown in Example 4.5.
Example 4.5. Specifying Firmware Loads for Cisco IP Phones
CME_Voice(config-telephony)# load ? 12SP Select the firmware load file for 12SP+ and 30VIP phones 7902 Select the firmware load file for 7902 7905 Select the firmware load file for 7905 7910 Select the firmware load file for Telecaster 7910 phones 7912 Select the firmware load file for 7912 7914 Select the firmware load file for sidecar 7914 7920 Select the firmware load file for 7920 7935 Select the firmware load file for 7935 Conference Station 7936 Select the firmware load file for 7936 7960-7940 Select the firmware load file for Telecaster 7960 & 7940 phones 7970 Select the firmware load file for 7970 7971 Select the firmware load file for 7971 ATA Select the firmware load file for ATA CME_Voice(config-telephony)# load 7960 ? WORD firmware filename for Telecaster 7960 & 7940 [without .bin] CME_Voice(config-telephony)# load 7960 P00308000500 Updating CNF files CNF files updating complete CME_Voice(config-telephony)#
Notice that after you enter the load ? command, the CME router displays all supported Cisco IP phone models. You need to enter a unique load command for each IP phone model you are using in your Cisco Unified CME system. Only enter the firmware filename; do not enter the .bin extension.
To put all the pieces into place, the syntax in Example 4.6 walks through the complete TFTP server and load configuration for the Cisco 7970 and 7971 IP Phones.
Example 4.6. Configuring CME for 7970 and 7971 Firmware Loads
CME_Voice# dir flash:/phone Directory of flash:/phone/ 48 drw- 0 May 12 2008 21:30:00 -07:00 7945-7965 57 drw- 0 May 12 2008 21:30:34 -07:00 7937 59 drw- 0 May 12 2008 21:31:12 -07:00 7914 61 drw- 0 May 12 2008 21:31:12 -07:00 7906-7911 70 drw- 0 May 12 2008 21:31:46 -07:00 7920 72 drw- 0 May 12 2008 21:31:52 -07:00 7931 80 drw- 0 May 12 2008 21:32:24 -07:00 7942-7962 89 drw- 0 May 12 2008 21:32:58 -07:00 7921 97 drw- 0 May 12 2008 21:33:54 -07:00 7940-7960 102 drw- 0 May 12 2008 21:34:02 -07:00 7970-7971 111 drw- 0 May 12 2008 21:34:36 -07:00 7975 119 drw- 0 May 12 2008 21:35:12 -07:00 7941-7961 129996800 bytes total (28583936 bytes free) CME_Voice# dir flash:/phone/7970-7971 Directory of flash:/phone/7970-7971/ 103 -rw- 2494499 May 12 2008 21:34:14 -07:00 apps70.8-3-2-27.sbn 104 -rw- 547706 May 12 2008 21:34:16 -07:00 cnu70.8-3-2-27.sbn 105 -rw- 2456051 May 12 2008 21:34:28 -07:00 cvm70sccp.8-3-2-27.sbn 106 -rw- 530601 May 12 2008 21:34:32 -07:00 dsp70.8-3-2-27.sbn 107 -rw- 538527 May 12 2008 21:34:34 -07:00 jar70sccp.8-3-2-27.sbn 108 -rw- 638 May 12 2008 21:34:36 -07:00 SCCP70.8-3-3S.loads 109 -rw- 642 May 12 2008 21:34:36 -07:00 term70.default.loads 110 -rw- 642 May 12 2008 21:34:36 -07:00 term71.default.loads 129996800 bytes total (28583936 bytes free) CME_Voice# configure terminal Enter configuration commands, one per line. End with CNTL/Z. CME_Voice(config)# tftp-server flash:/phone/7970-7971/apps70.8-3-2-27.sbn alias apps70.8-3-2-27.sbn CME_Voice(config)# tftp-server flash:/phone/7970-7971/cnu70.8-3-2-27.sbn alias cnu70.8-3-2-27.sbn CME_Voice(config)# tftp-server flash:/phone/7970-7971/cvm70sccp.8-3-2-27.sbn alias cvm70sccp.8-3-2-27.sbn CME_Voice(config)# tftp-server flash:/phone/7970-7971/dsp70.8-3-2-27.sbn alias dsp70.8-3-2-27.sbn CME_Voice(config)# tftp-server flash:/phone/7970-7971/jar70sccp.8-3-2-27.sbn alias jar70sccp.8-3-2-27.sbn CME_Voice(config)# tftp-server flash:/phone/7970-7971/SCCP70.8-3-3S.loads alias SCCP70.8-3-3S.loads CME_Voice(config)# tftp-server flash:/phone/7970-7971/term70.default.loads alias term70.default.loads CME_Voice(config)# tftp-server flash:/phone/7970-7971/term71.default.loads alias term71.default.loads CME_Voice(config)# telephony-service CME_Voice(config-telephony)# load ? 12SP Select the firmware load file for 12SP+ and 30VIP phones 7902 Select the firmware load file for 7902 7905 Select the firmware load file for 7905 7910 Select the firmware load file for Telecaster 7910 phones 7912 Select the firmware load file for 7912 7914 Select the firmware load file for sidecar 7914 7920 Select the firmware load file for 7920 7935 Select the firmware load file for 7935 Conference Station 7936 Select the firmware load file for 7936 7960-7940 Select the firmware load file for Telecaster 7960 & 7940 phones 7970 Select the firmware load file for 7970 7971 Select the firmware load file for 7971 ATA Select the firmware load file for ATA CME_Voice(config-telephony)# load 7970 SCCP70.8-3-3S.loads Updating CNF files CNF files update complete CME_Voice(config-telephony)# load 7971 SCCP70.8-3-3S.loads Updating CNF files CNF files update complete
Source IP Address Information
Before the Cisco Unified CME router can respond to the Cisco IP phones it is supporting, it must know what source IP address to use when communicating. This is specified using the command ip source-address from the telephony service configuration mode. Based on the network diagram shown earlier in Figure 4.1, the CME router should use the source IP address 172.16.1.1, which also acts as the default gateway for the Cisco IP phones in the network, as follows:
CME_Voice(config-telephony)# ip source-address 172.16.1.1
If the Cisco Unified CME router supports IP phones on multiple VLANs or has multiple interfaces the IP phones could use to reach the CME router, it is common to use a loopback interface as the source IP address. A loopback interface is a virtual interface on the router that is reachable as long as the router is online. The previous syntax set the CME source IP address to 172.16.1.1, which will work as long as the FastEthernet 0/0.10 interface is online. However, if that interface were to go offline, the CME router would not be able to provide service to IP phones through any other interface. Example 4.7 shows how to create a loopback interface on a Cisco router.
Example 4.7. Configuring the CME Source IP Address
CME_Voice# configure terminal Enter configuration commands, one per line. End with CNTL/Z. CME_Voice(config)# interface loopback ? <0-2147483647> Loopback interface number CME_Voice(config)# interface loopback 0 CME_Voice(config-if)# ip address 172.16.254.254 255.255.255.255 CME_Voice(config-if)# exit CME_Voice(config)# telephony-service CME_Voice(config-telephony)# ip source-address 172.16.254.254
A few items to note about this configuration: first, notice the range of loopback interface numbers. Cisco enables you to create more than two billion loopback interfaces. Your router would most likely run out of memory if you tried this; however, this enables you to create as many loopback interfaces as you could practically use on the router.
Second, take a look at the subnet mask on the loopback interface IP address. This is known as a host mask. The router now knows that the loopback interface connects to only a single IP address instead of using up an entire subnet, as it would if you were to use a less-specific subnet mask. For example, if you used a Class C subnet mask (255.255.255.0 or /24) on the loopback interface, the router would now believe that the loopback interface connects to an entire Class C subnet of addresses. You would not be able to use the 172.16.254.0/24 addresses on any other interfaces of your router.
Finally, loopback interfaces come up automatically as long as the router is running. There is no need to enter the no shutdown command unless the loopback interface was manually shut down.
Once you create the loopback interface, you can then change the ip source-address command on the router to use the new loopback interface as a means of communicating with the IP phones.
Generated Configuration Files
The last area of configuration focuses on generating configuration files for the Cisco IP phones. Think back to the IP phone boot process: once the IP phone gets an IP address and TFTP server information from the DHCP server, it then attempts to contact the TFTP server to download its configuration file and firmware. Up to this point, there has been no discussion about that configuration file. So what is it?
The IP phone uses its configuration file to determine which IP address to use when contacting the CME router (specified via the ip source-address command in the previous section), the firmware file it should download, the IP phone’s extension number (if it has one), and many other configuration items. You may have noticed the following output when looking through the previous syntax examples:
Updating CNF files CNF files update complete
That output represents the Cisco Unified CME router updating the configuration files that are sent to the IP phones. This process occurs any time a change is made to the CME router that would affect the IP phone boot process (such as specifying new firmware files or source-address information). If you ever want to manually instruct the router to create the configuration files, use the command shown in Example 4.8 from telephony service configuration mode.
Example 4.8. Generating IP Phone Configuration Files
CME_Voice(config-telephony)# create cnf-files CNF file creation is already On Updating CNF files CNF files update complete
At this point, the CME router does not have any configured IP phones, so it generates only generic configuration files. These generic configuration files allow IP phones to reach the CME router and download the necessary firmware files, but not much else. Once you configure the router to support IP phones, the CME router generates a unique configuration file for each phone with the information specific to the IP phone. Let’s take a look at the generic configuration files generated so far, shown in Example 4.9.
Example 4.9. Verifying Files Served by the CME TFTP Service
CME_Voice# show telephony-service tftp-bindings tftp-server system:/its/SEPDEFAULT.cnf tftp-server system:/its/SEPDEFAULT.cnf alias SEPDefault.cnf tftp-server system:/its/XMLDefault.cnf.xml alias XMLDefault.cnf.xml tftp-server system:/its/ATADefault.cnf.xml tftp-server system:/its/united_states/7960-tones.xml alias United_States/7960- tones.xml tftp-server system:/its/united_states/7960-font.xml alias English_United_States/ 7960-font.xml tftp-server system:/its/united_states/7960-dictionary.xml alias English_United_ States/7960-dictionary.xml tftp-server system:/its/united_states/7960-kate.xml alias English_United_States/ 7960-kate.xml tftp-server system:/its/united_states/SCCP-dictionary.xml alias English_United_ States/SCCP-dictionary.xml
The show telephony-service tftp-bindings command shows all the files the CME service itself is serving to the IP phones via TFTP. This is in addition to the files manually specified using the tftp-server command in global configuration mode. There is one file specifically that is of interest right now: XMLDefault.cnf.xml. This is the default configuration file handed out to any IP phone that does not have an existing configuration in the CME router (which is all IP phones at this point). Notice that all these files are located on the system: drive of your router. This drive represents the router’s RAM. Each time the router is rebooted, these configuration files are rebuilt by the CME process using the configuration you have saved in NVRAM and placed back into the router’s memory.
Using the more command, you can dig deeper into the contents of the XMLDefault.cnf.xml file, as shown in Example 4.10.
Example 4.10. Inspecting the IP Phone Generic Configuration File
CME_Voice# more system:/its/XMLDefault.cnf.xml <Default> <callManagerGroup> <members> <member priority="0"> <callManager> <ports> <ethernetPhonePort>2000</ethernetPhonePort> </ports> <processNodeName>172.16.1.1</processNodeName> </callManager> </member> </members> </callManagerGroup> <loadInformation6 model="IP Phone 7910"></loadInformation6> <loadInformation124 model="Addon 7914"></loadInformation124> <loadInformation9 model="IP Phone 7935"></loadInformation9> <loadInformation8 model="IP Phone 7940">P00308000500</loadInformation8> <loadInformation7 model="IP Phone 7960">P00308000500</loadInformation7> <loadInformation20000 model="IP Phone 7905"></loadInformation20000> <loadInformation30008 model="IP Phone 7902"></loadInformation30008> <loadInformation30002 model="IP Phone 7920"></loadInformation30002> <loadInformation30019 model="IP Phone 7936"></loadInformation30019> <loadInformation30006 model="IP Phone 7970">SCCP70.8-3-3S.loads </loadInformation30006> <loadInformation119 model="IP Phone 7971">SCCP70.8-3-3S.loads </loadInformation119> <loadInformation30018 model="IP Phone 7961"></loadInformation30018> <loadInformation30007 model="IP Phone 7912"></loadInformation30007> </Default>
As you can see, XML files are formatted into various tags (if you have had experience with HTML, this is very similar). Each configuration item will have an open and close tag. For example, consider the following line:
This line tells the Cisco IP phone the IP address of the Cisco Unified CME router. The <processNodeName> tag opens the line and the </processNodeName> tag closes the line. The IP address information of the CME router is in between the tags. Looking through this default configuration file, you can see that three pieces of information are provided to the IP phone:
- The correct Ethernet port to use (which is always 2000, by default)
- The CME router IP address
- Phone firmware information
The Cisco Unified CME router has been configured with the correct firmware information only for the Cisco 7940, 7960, 7970, and 7971 IP Phone models, so the XMLDefault.cnf.xml file displays only these firmware images.
If you were to connect a Cisco IP phone to the network at this point, it would boot, retrieve the correct VLAN information, get its IP address, contact the TFTP server, and download the generic configuration and firmware files. If you were to look at one of these devices, the display screen would look like the image shown in Figure 4.7.
Figure 4.7 Cisco IP Phone Using the CME Router Generic Configuration File
You can see that the phone has registered, is receiving the correct date and time information, and has active softkeys on the bottom of the display window. However, there is no line information shown next to the line buttons. When the handset of the phone is lifted, no dial tone is played. You learn more about this topic in Chapter 5, “Basic CME IP Phone Configuration,” where you will configure the IP phones in the CME router.