Introduction
Access control groups are pre configured on Cisco Unified Communications Manager and associated standard roles are automatically added once you added the required access group to the list.
Pre-requisites
- A gateway management profile mapped to a resource.
- Create credentials with type as HTTP before assigning a template to a resource.
Discovery using the gateway
The administrator can deploy a gateway to support Cisco UCM agentless monitoring. The gateway establishes a connection to the database using the management profile, collects metrics from the templates, and starts monitoring.
To monitor Cisco UCM:
- Associate appropriate database credentials to the discovered database.
- Assign one or more database-specific global templates on the device.
Choose one of the following management mechanisms to discover MongoDB servers and add them to your inventory:
- WMI
- SSH
- SNMP
- (Optional) Manually add a database server to the infrastructure inventory.
- Select Infrastructure.
- Click the Settings icon.
- Select Resource > Add.
- In the Add Device window, enter the required details Device Type and any additional properties you want.
- Click Save.
Permissions required for Cisco UCM monitoring
- Click Cisco Unified Communication Manager.

- Select Navigation as Cisco Unified CM Administration.
- Enter the Username and Password then click Login.

- On the User Management menu, click Application User.

- Click + Add New.

- In the Application User Information, enter the below details:
Functionality | Description |
---|---|
User ID | Enter a User ID. |
Password | Enter the password. |
Confirm Password | Re-enter the password. |
Digest Credentials | Enter the digest credentials. |
Confirm Digest Credentials | Re-enter the digest credentials. |
BLF Presence Group | Select the BLF presence group from the dropdown menu. |
User Rank | Select the user rank from the drop down menu. |

- Navigate to the permissions information section and click Add to Access Control Group.
- Select the below mentioned groups:
- Standard Audit Users
- Standard CCM Server Monitoring
- Standard CCM Super Users
- Standard RealtimeAndTraceCollection
- Standard TabSync User Role
Note: Above access control groups are pre configured on Cisco Unified Communications Manager and associated standard roles are automatically added once you added the required access group to the list.
- Click Add Selected.
Sample Request XML:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://schemas.cisco.com/ast/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:PerfmonCollectCounterData>
<Host xsi:type="xsd:string">10.90.236.10</Host>
<Object xsi:type="ns1:ObjectNameType">Processor</Object>
</ns1:PerfmonCollectCounterData>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Sample Response XML:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:PerfmonCollectCounterDataResponse xmlns:ns1="http://schemas.cisco.com/ast/soap/" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<ArrayOfCounterInfo xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" soapenc:arrayType="ns1:CounterInfoType[45]" xsi:type="soapenc:Array">
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\% CPU Time</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\IOwait Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\Idle Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\Irq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\Nice Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\Softirq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\Steal Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\System Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(0)\User Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\% CPU Time</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\IOwait Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\Idle Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\Irq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\Nice Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\Softirq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\Steal Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\System Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(1)\User Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\% CPU Time</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\IOwait Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\Idle Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\Irq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\Nice Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\Softirq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\Steal Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\System Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(2)\User Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\% CPU Time</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\IOwait Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\Idle Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\Irq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\Nice Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\Softirq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\Steal Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\System Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(3)\User Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\% CPU Time</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\IOwait Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\Idle Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\Irq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\Nice Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\Softirq Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\Steal Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\System Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
<item xsi:type="ns1:CounterInfoType">
<Name xsi:type="ns1:CounterNameType">\\10.90.236.10\Processor(_Total)\User Percentage</Name>
<Value xsi:type="xsd:long">0</Value>
<CStatus xsi:type="xsd:unsignedInt">1</CStatus>
</item>
</ArrayOfCounterInfo>
</ns1:PerfmonCollectCounterDataResponse>
</soapenv:Body>
</soapenv:Envelope>
Configure and install the integration
- From All Clients, select a client
- Go to Infrastructure > Resources.
- Click the Settings button and select Add.

- The Add Device page appears, enter the below details:
Functionality | Description |
---|---|
Host Name | Enter the host name for the device. Example: Enter UCM Credentials as the host name. |
Resource Name | Enter the resource name for the device. |
Alias Name | Enter an Alias name. |
Description | Enter a description for the device. |
IP Address | Enter the required IP address. |
Make | Enter the make of the device. |
Model | Enter the model number of the device. |
DNS Name | Enter the DNS name. |
OS | Enter the OS version details. |
Purchase Date | Select the purchase date. |
Warranty Expiration Date | Select the warranty expiration date. |
Device Type | Select the device type from the drop-down list. Example: Select HTTP as the device type. |
Keyboard Type | Select the keyboard type from the drop-down list box. Note:By default US104 is selected. |
Encoding Type | Select the encoding type from the drop-down list box. Note: By default UTF8 is selected. |
Owner | Select the ownership from the drop-down list box. |
Location | Select the location details from the drop-down list box. |
Management Type | Select the management type from the drop-down list box. |
Credentials | Select the credentials. |
- Click Save.

View the Cisco UCM details
The Cisco UCM integration is displayed in the Infrastructure > Resources > Network Device. You can navigate to the Attributes tab to view the discovery details, and the Metrics tab to view the metric details for Cisco UCM.


The device types Cisco UCM, Cisco Contact Center Express, Cisco Unity, Cisco IM & Presence Server supports SOAP protocol to get the data. SOAP is an XML-based protocol for accessing web services over HTTP, preparing an XML request, querying the device and will get the response that is also in XML.
Supported templates
Troubleshooting
Login to gateway CLI.
Troubleshooting steps for Performance metrics
Replace the IPAddress word with actual IP address of UCM device and then save below performance data request with data.xml name
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns1="http://schemas.cisco.com/ast/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:PerfmonCollectCounterData>
<Host xsi:type="xsd:string">IPAddress</Host>
<Object xsi:type="ns1:ObjectNameType">Processor</Object>
</ns1:PerfmonCollectCounterData>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Replace UserName, IPAddress, Port in the below command and then execute it and verify whether it is getting a response or not.
curl -X POST -d @data.xml -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction: http://schemas.cisco.com/ast/soap/#PerfmonCollectCounterData" -k -u <userName> https://<IPAddress>:<port>/perfmonservice/services/PerfmonPort -vvv
Troubleshooting steps for Performance metrics
Replace the IPAddress word with ip address of UCM device and then save below service data request with sdata.xml file name.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soap="http://schemas.cisco.com/ast/soap">
<soapenv:Header/>
<soapenv:Body>
<soap:soapGetServiceStatus>
<soap:ServiceStatus/>
</soap:soapGetServiceStatus>
</soapenv:Body>
</soapenv:Envelope>
Replace UserName, IPAddress, Port in the below command and then execute it and verify whether it is getting a response or not.
curl -X POST -d @sdata.xml -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction: http://schemas.cisco.com/ast/soap/action/#ControlCenterServices" -k -u <userName> https://<IpAddress>:<port>/controlcenterservice/services/ControlCenterServicesPort -vvv