You can integrate Cisco CME with network management applications by using the Cisco CME XML Layer (AXL) application programming interface (API). The AXL API provides a mechanism for inserting, retrieving, updating, and removing data from the Cisco CallManager database using an XML SOAP interface. The AXL API allows programmatic access to Cisco CallManager data in XML form instead of using a binary library or a Dynamic Link Library (DLL). The AXL API methods, or requests, are performed using a combination of HTTP and SOAP. The HTTP payload is encapsulated in SOAP, which is essentially an XML remote procedure call protocol. User requests send XML data to the Cisco CallManager server, which returns an AXL response encapsulated in a SOAP message.
Cisco CME extends the AXL/SOAP capabilities by providing XML APIs for monitoring and configuring IP phones and extensions. A Network Management System (NMS) might use the Cisco CME AXL/SOAP APIs to poll the Cisco CME network elements (NEs), including IP phones and extensions. As with the AXL protocol, communication between an NMS and Cisco CME is based on an HTTP data exchange and can be initiated only by polling from the NMS. However, Cisco CME can enable or disable the sending of data, as well as control the polling interval.
AXL/SOAP APIs for NMS configuration and monitoring are supported only by Cisco CME, not by Cisco UE.
The next sections describe the features supported by the Cisco CME AXL/SOAP APIs and a test procedure to check if your Cisco CME is set up properly to respond to the AXL/SOAP queries.
The Cisco CME AXL/SOAP Interface
The Cisco CME AXL/SOAP APIs provide many capabilities for monitoring and configuring IP phones and extensions.
For monitoring, Cisco CME AXL/SOAP APIs support the following:
ISgetGlobalGets global information
ISgetDeviceGets device information
ISgetExtensionGets extension information
ISgetEvtCountsGets the number of events recorded in the buffer
ISgetDevEvtsGets device events if IP phones are in the register, unregister, or decease state
ISgetExtEvtsGets extension events (the virtual voice port is up or down)
ISsetKeyPhonesSets the "key" phone
ISexecCLIExecutes the CLI
The following are supported CLI commands that can be executed by the ISexecCLI API. You might execute all the subcommands under each of these configuration mode commands with the ISexecCLI API.
You might get more information on supported Cisco CME AXL/SOAP APIs by going to Cisco.com and searching for "XML Developer Guide for Cisco CME."
Testing the Cisco CME AXL/SOAP Interface
You might use the test page (xml-test.html) that is available with the Cisco CME GUI files to verify that the Cisco CME router is set up correctly to respond to AXL/SOAP requests. The following are the steps to set up and run the test page:
Load xml-test.html into Flash.
Configure the following on the Cisco CME router:
router(config)#ip http server router(config)#ip http path:flash router(config)#telephony-service mode router(config)#log password abcd router(config)#xmltest
Enter the following URL in the browser:
http://ip-address of router/ISApi/AXL/V1/soapisapi.is
When the Login window opens, log on as follows:
username: any non-empty string password: abcd
In the test page, input content into the form. The XML request is written to the form at the bottom. Go to the bottom of the page and click Submit.
Try the preceding steps on your system. If you receive any errors, the following debugs on the router might help:
router#debug ip http appinout router#debug ip http appdetail
The xml-test.html file is a test program for you to check that the Cisco CME router can respond to AXL/SOAP requests. You must disable the test program when polling from an NMS using the Cisco CME AXL APIs with the following configuration:
router(config)#telephony-service router(config-telephony)#no xmltest
A polling request from an NMS must be sent in clear-text format.
For developer services support, go to the Cisco Developer Support site at http://www.cisco.com/cgi-bin/dev_support/access_level/product_support. You must be a Cisco.com registered user to access this site.
Monitoring Cisco IPC Express
Part I: Cisco IP Communications Express Overview
Introducing Cisco IPC Express
Building a Cisco IPC Express Network
Cisco IPC Express Architecture Overview
Part II: Feature Operation and Applications
Cisco IP Phone Options
Cisco CME Call Processing Features
Cisco CME PSTN Connectivity Options
Connecting Multiple Cisco CMEs with VoIP
Integrating Cisco CME with Cisco CallManager
Cisco IPC Express Automated Attendant Options
Cisco IPC Express Integrated Voice Mail
Cisco CME External Voice Mail Options
Additional External Applications with Cisco CME
Part III: Administration and Management
Cisco IPC Express General Administration and Initial System Setup
Configuring and Managing Cisco IPC Express Systems
Cisco IPC Express System Configuration Example
Part IV: Maintenance and Troubleshooting
Troubleshooting Basic Cisco IPC Express Features
Troubleshooting Advanced Cisco CME Features
Troubleshooting Cisco CME Network Integration
Troubleshooting Cisco UE System Features
Troubleshooting Cisco UE Automated Attendant
Troubleshooting Cisco UE Integrated Voice Mail Features
Part V: Appendixes
Appendix A. Cisco IPC Express Features, Releases, and Ordering Information
Appendix B. Sample Cisco UE AA Scripts
Appendix C. Cisco Unity Express Database Schema