JTAPI / CTI Secure Configuring and Troubleshooting

Please reference the following Secure CTI configuration guide for complete and official instructions for configuring the secure CTI / JTAPI integration.

Configuration

CUCM Config

  1. Enable the Certificate Authority Proxy Function (CAPF), Certificate Trust List Provider (CTL), and CTIManager services.
  2. Run the CTL client with USB eTokens on a workstation to connect to the cluster, generate a CTL file, and move the cluster to Mixed Mode.
  3. On the Device > Phone page check “Allow Control of Device from CTI” for the phone you want to monitor / control.
  4. Associate your End User or Application User with the phone.
  5. Add the user to the groups CTI Enabled, CTI Secure Connection, and CTI Allow Reception of SRTP Key Material (Note: Adding the user to the Secure CTI and SRTP Key Material groups means that this JTAPI user will ONLY be allowed to connect on the secure port of 2749 using certs. To connected on a non secure port later, remove the user from these secure groups)user-groups.png
  6. Under Users > End / Application User CAPF Profile, select the certificate operation of Install / Upgrade for the JTAPI user.capf-profile.png
  7. After restarting the CUCM server you will now have CCM listening on TCP port 2443 for secure SCCP connections and CTIManager listening on 2749 for secure JTAPI/QBE connections. The TFTP process will be providing a CTL file. The CAPF service on the publisher will be providing certificates to any client that securely connects on TCP 3804 and has a certificate operation of Install / Upgrade.

JTAPI Client Config

  1. Install the Cisco JTAPI Client on the server or client PC where JTAPI will be running. Make sure to download JTAPI for either Windows or Linux. jtapi-download.png
  2. Under either the Start Menu, or the JTAPITools directory, find the JTAPI Preferences tool.jtprefs.png
  3. If you’re trying to set this up for the first time I recommend turning on ALL the tracingjtprefs-tracing.png
  4. Add your CUCM CTIManager servers under Cisco Unified CM.
  5. Under Security set the following settings and click “Update Certificate”. The Authentication String and Instance ID must match the User’s CAPF Profile. jtprefs-security.png
  6. Now we’re ready to verify the secure connection with the JTrace tool below.

 

Troubleshooting

JTrace

Now that we have the JTAPI integration configured we want to test that it actually works! We can do this by taking control of a single device with a Cisco provided JTAPI application. If you’re ever unsure of whether the problem is with JTAPI, or a customer JTAPI application, you can use JTrace to verify.

 

In our JTAPITools directory (typically C:\Program Files\JTAPITools) look for the jtrace folder, and the readme.htm for full instructions.

 

JTrace takes arguments in the following form:

 

java jtrace.JTrace <CTI Server IP> <JTAPI user> <password> <directory number>

 

Note
JTrace does not support Instance IDs. If you have one user with multiple Instance IDs (implying mutltiple certificates) do not use JTrace, or it may invalidate your existing certificates by marking them as comprimised since a connection may be made with the wrong certificate to the wrong instance.

 

 

You launch JTrace from a cmd window in the JTAPITools directory

 

jtrace-cli.png

 

When the JTAPI connection to CTIManager is successful and the line and device are opened, two windows pop up.

 

The first window logs information about the JTAPI Provider that is opened. It will list all of the lines and devices associated with the JTAPI user selected.

 

jtrace-provider.png

 

The second window will show the actual device that is opened, and any events that JTAPI receives for that device. Here we can see the opened phone (8012001) is receiving a call from 8011111.

 

jtrace-line.png

 

The JTrace tool can help identify whether or not a JTAPI connection to the CTIManager server can be established and events received. The error messages displayed in the two new JTrace windows or the cmd window can also help diagnose any issues.

 

As a sanity check, leave security disabled in the JTAPI Client JTPrefs and run JTrace. Once a non secure connection can be established then enable security and test again. (Note: This requires adding and removing the user from the two secure CTI Groups in CCMAdmin)

 

For more advanced troubleshooting turn to the logs.

 

JTAPI Logs

The logs can be found under the JTAPITools installation directory (by default C:\Program Files\JTAPITools) They follow the format of CiscoJTAPIXX.log.

jtapi-traces-folder.png

 

Look for the following sequence of messages to verify the JTAPI client connected to the CTIManager server and logged in successfully.

 

Opening server "14.48.44.80" login "jasburns" Trying to create TLS/SSL socket connection to 14.48.44.80 JTAPITLSHandshakeCompletedListener:handshakeCompleted : javax.net.ssl.HandshakeCompletedEvent ]] sending: com.cisco.cti.protocol.ProviderOpenRequest received Response: com.cisco.cti.protocol.ProviderOpenResponse queuing com.cisco.cti.protocol.ProviderOpenCompletedEvent 

 

If at any point in the logs an error appears that is a large negative number or a large hex number starting with 0x8CC you can look it up with this magic CTI Error Decoder Ring.

 

One of the most common errors is

DIRECTORY_LOGIN_FAILED     0x8CCC0060

 

This error may appear either in the above hex, or if in decimal it can be converted using calc. The decoded text points to a problem with login credentials or the login process.

calc-hex.png

calc-dec.png

 

JTAPI Security Logs

Security logs will show important details regarding the CTL Download and the encapsulated CAPF Certificate. They follow the format of CiscoJtapiSecurityXX.log

CTIManager Logs

Pending

Packet Captures

Wireshark is a useful capture tool to analyze the steps in the secure JTAPI configuration and connection process. Almost everything about the secure JTAPI process can be learned by taking a packet capture on the PC or server where the JTAPI Client is installed.

 

The first important step happens when clicking “Update Certificate” in the JTAPI Configuration window. The JTAPI Client downloads a CTL file via TFTP (UDP port 69) from the configured TFTP server. This CTL file contains the CAPF Server Certificate

packet-tftp-capf.png

After downloading the CTL File and storing it in the keystore folder, the JTAPI Client has to make a TLS connection to the CAPF Server on TCP 3804. JTAPI compares the cert the CAPF server presents to the one embedded in the CTL file to make sure the connection is trusted. Filter on tcp.port == 3804. It will be necessary to right click any packet in this stream and select “Decode As” > “SSL” for both the source and destination ports so Wireshark knows to decode a stream on these ports as an SSL / TLS session.

packets-decode-as.png

packets-capf-certexchange.png

 

If for some reason the CAPF Certificate in the CTL file doesn’t match the CAPF certicicate presented in the TLS Handshake we need to walk through the following steps:

 

  1. Verify the Subject CN and expiration date of the CAPF cert installed in the OS Admin of the publisher server.
  2. Run the CTL Client to insert the latest CAPF certificate into the CTL file.
  3. Restart the TFTP service.

 

After the JTAPI Client makes a secure connection to the CAPF service, we walk through the operation set in the CAPF Profile. In the case above that means “Install / Upgrade”. A new Keystore will be created that contains the key and certificate obtained via CAPF in the default keystore location.

jtapi-javalib.png

Now that the JTAPI Client has a CTL File and certificate we’re ready to connect to the secure CTIManager. Fire up JTrace as mentioned earlier and filter on tcp.port == 2749. Don’t forget to decode as SSL.

packets-secureJTAPI.png

Remote Monitoring on Cisco Unified Contact Center Express 8.x

Remote Monitoring

This application, available when you purchase Unified CCX Premium, allows a supervisor to monitor an agent’s conversation. With Remote Monitoring, you can choose to monitor a call in either of these ways:

  • By resource (agent)—In this case, you identify the resource by agent extension. If the agent is on a call, monitoring will begin immediately. If the agent is not on a call, monitoring will begin when the agent is presented with a call (that is, when the agent’s phone rings) or when the agent initiates a call (that is, when the agent’s phone goes off-hook).

  • By Contact Service Queue (CSQ)—In this case, you will monitor the call of an agent who belongs to the CSQ. When you monitor by CSQ, you select the CSQ from a menu. When a call is presented to an agent who belongs to the selected CSQ, monitoring will begin for that agent and call.

Configure Remote Monitoring Application

You must configure Remote Monitoring applications when you want to use the Remote Monitoring feature to allow a supervisor to monitor an agent’s conversation. Complete these steps in order to accomplish the task:

  1. From the Unified CCX Administration menu bar, choose Applications > Application Management.

    uccx-monitor-01.gif

  2. Click Add New.

    uccx-monitor-02.gif

    The Add a New Application web page opens.

    uccx-monitor-03.gif

  3. Choose Cisco Script Application from the Application Type drop-down menu, then click Next.

    The Cisco Script Application web page appears.

    uccx-monitor-04.gif

  4. Use this web page to specify these fields:

    • Name—A name for the application. This is a mandatory field.

    • ID—Accept the automatically-generated ID, or enter a unique ID. This is a mandatory field.

    • Maximum Number of Sessions—The maximum amount of simultaneous sessions that monitoring sessions allow. This is a mandatory field.

    • Script—Select a customized Remote Monitor script or rmon.aef from the drop-down list.

    • Description—Use the Tab key to automatically populate this field.

    • Enabled—(Radio button) Accept Yes (the default).

    • Default Script—Accept System Default. The default script is executed if an error occurs with the configured application script.

  5. Click Add.

    The Remote Monitoring web page refreshes displaying the following message under the Status bar and the Add New Trigger hyperlink appears on the left navigation bar:

    The operation has been executed successfully

Add Application Triggers

After adding a new Cisco application, you need to add one or more triggers so that the application can respond to Unified CM/Unified CME Telephony calls and HTTP requests. Triggers are specified signals that invoke application scripts in response to incoming contacts. The Unified CCX system uses Unified CM/Unified CME Telephony triggers to trigger responses to telephone calls and HTTP triggers to respond to HTTP requests.

You can use either of two methods to add a trigger to an application:

  • Add the trigger from the Cisco Application web page.

  • Add the trigger from the Unified CM/Unified CME Telephony or HTTP Triggers web pages available from the Subsystem menu.

An HTTP trigger is the relative URL a user enters into the client browser to start the application. You can upload either eXtensible Style Language Transformation (XSLT) templates or Java Server Pages (JSP) templates to serve as your HTTP trigger.

This path is an example of an HTTP-triggered request (using the HTTP trigger name “/hello”):

http://www.appserver.acme.com:9080/hello

In this example, the URL starts the application with the HTTP trigger “/hello” on a web server running on port 9080 with the host name http://www.appserver.acme.com. You can add the HTTP trigger from the Cisco Script Application web page or add the trigger from the HTTP subsystem.

Note: The next step is to create a Remote Monitoring Supervisor and assign Resources and CSQs to the Supervisor.

Create a Remote Monitoring Supervisor

Complete these steps in order to create a Remote Monitoring Supervisor:

  1. From the Unified CCX Administration menu bar, choose Tools > User Management > Supervisor Capability View.

    uccx-monitor-05.gif

  2. The User Configuration web page opens displaying the list in two panes. The left pane displays the list of existing Unified CCX Supervisors and the right pane displays the list of Available Users.

    uccx-monitor-06.gif

    Change the users as required using the arrow in either direction.Your changes are dynamically displayed in this page and are effective immediately.

  3. Repeat this process as needed to assign the Supervisor capability for more than one user.

Assign Resources and CSQs to a Supervisor

For Assigning Resources and CSQs to a supervisor, use the Remote Monitor configuration web page. From this page, you can assign a supervisor a list of Resources and CSQs that he/she is allowed to monitor. Complete these steps in order to accomplish the task:

  1. From the Unified CCX Administration menu bar, choose Subsystems > RmCm > Remote Monitor.

    uccx-monitor-07.gif

    Note: The Remote Monitor web page opens to display the Supervisor, Name, and User ID of Unified CM users who are Unified CCX Supervisors.

  2. Click a User ID value. This is a Unified CM user configured as a Unified CCX Supervisor.

    uccx-monitor-08.gif

  3. Use this web page to specify these fields:

    • Contact Service Queues Name—(Check box.) CSQ names the supervisor can monitor.

    • Resources—(Check box.) User IDs of agents the supervisor can monitor.

    uccx-monitor-09.gif

  4. Click Update to apply the changes. The supervisor can now access the Unified CCX Supervisor web page and view the allowed CSQs and agents.

    Note: When running the Remote Monitoring script, you might need to provide a CSQ ID. This ID is internally generated and is only visible on the Unified CCX Supervisor page.

View CSQ IDs from the Unified CCX

Complete thse steps in order to view CSQ IDs from the Unified CCX Supervisor web page:

  1. From the Unified CCX Supervisor web page, log in as the Remote Monitoring Supervisor.

  2. Choose Tools > Plug-ins from the Unified CCX Administration menu bar.

  3. Click the Cisco Unified CCX Desktop Suites hyperlink.

  4. Click the View CSQ hyperlink to view allowed CSQs.

    uccx-monitor-10.gif

    The CSQ ID column shows the ID value that you should enter for the CSQ that you selected in the Start Monitor step.

Start Monitor Step

From the Customer Response Solutions application, use the Start Monitor step to begin a remote monitoring session.

uccx-monitor-11.gif

  • Contact—Contact that will perform remote monitoring.

  • Monitoring type:

    • Resource Extension—Remote monitoring will be performed by the agent extension.

    • Contact Service Queue—Remote monitoring will be performed by the CSQ.

  • Resource Target—Variable or expression indicating the Resource extension or the Contact Service Queue to be monitored.

  • Enable allowed agents—Check box enabling/disabling the security feature which allows only the agents associated with the remote supervisor to be monitored. Default setting is that no agents can be monitored.

  • Supervisor ID—User ID identifying the supervisor.

  • Failure Code—Variable used for storing the reason code in the event of step failure.

Issues on Call Monitoring and Recording

Problem

Intermittent issues with call recording and the monitoring tool are experienced. When a call is active on the agent desktop, and when you click on the task button to record the call, there is a delay. This delay is followed by an error message stating that an error occurred. Refer to the logs for more information.

Solution

Complete these steps in order to resolve the issue:

  1. If there is more than one IPCC server make sure the LDAP information for one of the IPPC servers is getting populated in calabrio ldap.

  2. Stop the VOIP monitor service in the second node.

  3. Restart the VOIP monitor service in the first node.

  4. Start the VOIP monitor service in the second node.

  5. Restart the Desktop Recording and Statistics services also in both the nodes.

Cisco CallManager: Troubleshooting RTMT Issues

Problem: RTMT Java Exception Error

The RTMT does not work, and these error messages appear: java.util.MissingResourceException: Can't find bundle for base name org.apache.xerces.msg.XMLMessages,. The error message appears when a user attempts to access the RTMT, or after upgrading the operating system of the CallManager server.

Solution 1

Complete these steps in order to resolve this issue:

  1. Go to the Windows Start menu and choose Programs > Administrative Tools > Internet Services Manager.

  2. Expand the CallManager server name from the Internet Information Services window and click Default Web Site.

  3. Right click the AST and select the Properties option from the left side of the window.

  4. Select the Virtual Directory tab from the AST Properties window.

  5. Verify that the Execute Permissions field under the Application Settings section is set to Script and Executables.

  6. Restart the IIS through command prompt. Use this command: C:\utils>iisreset.

Solution 2

RTMT did not work after upgrading the Windows operating system and displays the same error.

Complete these steps in order to resolve this issue:

  1. Open the urlscan.ini file from the C:\Winnt\system32\inetsrv\URLscan\ location.

  2. Change the RemoveServerHeader parameter value from 0 to 1.

Problem: Unable to Pull QRT reports using RTMT

With Cisco Unified Communications Manager 6.x, pulling the Quality Report Tool (QRT) reports using RTMT fails even though QRT is enabled on Cisco IP Phones.

Solution

Complete these steps in order to resolve this issue:

  1. In the Cisco Unified Communications Manager server, open the Cisco Unified Serviceability page.

  2. Go to Tools > Control Center – Feature Services.

  3. Check if the Cisco Extended Functions service under Voice Quality Reporter Services is activated and running. If not, start the service. If it indicates that the service is running, restart it.

Error: [RTMT-ALERT-StandAloneCluster] RouteListExhausted

This error message is reported by RTMT:

[RTMT-ALERT-StandAloneCluster] RouteListExhausted
Explanation: An available route could not be found in the indicated route list

Solution

The RouteListExhausted messages indicate that CallManager was unable to send a call to those Route Groups in a Route List. This is usually as a result of no B channels or ports being available on a gateway for routing a call. If you have a Route List with an H.323 gateway as the first Route Group, and a second Route Group that should take any overflow, then sometimes the first H.323 gateway will send a User Busy back to the CallManager if all of its channels or ports are busy. If this occurs, then the call is not forwarded to the second Route Group in the Route List.

If this is how your own Route List is configured, then go to Cisco CallManager Administration > Service > Service Parameters > Select a server > Select Cisco CallManager and configure the Stop Routing on User Busy Flag service parameter to False.

This will mean that the CallManager will try other gateways to re-route the call on a User Busy before reaching the RouteListExhausted state. However, if there are no RouteListExhausted events in the Application Log, then the RouteListExhausted messages reported by RTMT can be a result of an Unallocated number or User Busy messages from the PSTN. In this case, this message can be ignored.

Error: [RTMT-ALERT-StandAloneCluster] CriticalServiceDown

This error message is reported by RTMT:

[RTMT-ALERT-StandAloneCluster] CriticalServiceDown
Service status is DOWN. Connection Database Proxy.

Solution

This error can occur when the value of the Database Proxy: Service Shutdown Timer is set as the default value, which is zero. In order to remove this error, set the value of Database Proxy Service Shutdown Timer to a value between 0 and 999. Perform these steps:

In the Cisco Unity Connection Administration page, go to System Settings > Advanced > Connection Administration. Enter a value between 0 and 999.

Note:  If you restart the server, the remote database proxy service will remain shut off. After a system restart, turn on the service manually.

To activate the Remote Database Proxy Service, perform these steps:

  1. Go to the Cisco Unity Connection Serviceability web admin page.

  2. On the Tools menu, choose the Service Management page.

  3. Click the Activate button next to the Connection Database Proxy item under Optional Services.

Error: RTMT-ALERT: DBChangeNotify queue delay over 2 minutes

This error message is reported by RTMT:

RTMT alert:
DBChangeNotify queue delay over 2 minutes. Current DB ChangeNotify queue
delay (150) is over 120-sec threshold.

Solution

DBChangeNotifyFailure—This alert occurs when the Cisco Database Notification Service experiences problems and might need to be halted. This condition indicates that Change Notification Requests queued in the database are “stuck” and system changes are not taking effect. If you use the default alert properties, the alert gets triggered when the DBChangeNotify queue delay is over two minutes. One alert is sent every 30 minutes.

Also, the DBL service is responsible for relaying these DBChangeNotify messages. In order to resolve the issue, you need to restart the Cisco Database Layer Monitor service on all servers in the cluster. The command for restarting the Cisco Database Layer Monitor service is shown here:

admin:utils service restart Cisco Database Layer Monitor
Service Manager is running
Cisco Database Layer Monitor[STOPPING]
Cisco Database Layer Monitor[STOPPING]
Cisco Database Layer Monitor[STOPPING]
Cisco Database Layer Monitor[STOPPING]
Commanded Out of Service
Cisco Database Layer Monitor[NOTRUNNIG]
Service Manager is running
Cisco Database Layer Monitor[STARTED]
admin:

Note: Restarting the Cisco DBL service will not reset any phones or devices. It just reloads the database cache and forces the CallManager service to get a fresh copy of the database.

Unable to Download RTMT Plug-in

User is unable to download the RTMT plug-in.

Solution

If you are using third-party download software, this issue can occur. Uninstalling the third-party download software will resolve the issue.

Unable to Monitor the Informix Database

Solution

If you already have an SNMP notification destination configured on CallManager with Write and Notify set, you can enable traps to be sent based on local syslog messages:

  1. You need to enable clogNotificationsEnabled (1.3.6.1.4.1.9.9.41.1.1.2). You can use this command to enable it:

    snmpset -c <community_string> -v 2c 14.48.46.2 .1.3.6.1.4.1.9.9.41.1.1.2.0 i 1
    
  2. Now, in CallManager, go to the serviceability page > Configuration, choose your server, and then Service Group > Database and Admin Services > Database Layer Monitor. Make sure local syslogs are Enabled and set to error.

  3. To check what alerts are at which levels (all of them are at error or alert), go to Alarm > Definitions. Choose the System Alarm Catalog, and then the DBAlarmCatalog. Provided there are all the database alerts we have and can trap on.

Unable to Download PDF Files

With CUCM 6.x, PDF files cannot be downloaded from the Serviceability Reports archive. This error message is received:

Page cannot be displayed

Solution

In order to resolve the issue, restart Cisco Serviceability Reporter from Tools > Control Center -Feature Services.

Error: Exceeds max limit for trace file download requests

This error message appears in RTMT:

Exceeds max limit for trace file download requests. 
Current limit is 2

Solution

Restart these system services in order to resolve the issue:

  1. Cisco Trace Collection Servlet

  2. Cisco Trace Collection Service

No Option Available when the QRT Softkey is Pressed

When the user presses the QRT softkey, nothing happens.

Solution

Restart the CTIManager service in order to resolve the issue.

Error: CDRFileDeliveryFailed BillingServerAddress

This alert is received on RTMT:

CDRFileDeliveryFailed BillingServerAddress : 10.1.11.1 AppID : Cisco CDR
Repository Manager ClusterID : NodeID : PUBLISHER . The alarm is
generated on Wed Jul 07 17:13:05 IST 2010.

Solution

Restart these services in order to resolve the issue:

  • CDR Repository Manager

    This service maintains and moves the generated CDRs that are obtained from the Cisco CDR Agent service. In a system that supports clusters (Cisco Unified Communications Manager only), the service exists on the first server.

  • Cisco SOAP – CDRonDemand

    This is a SOAP/HTTPS-based service that runs on the CDR Repository server. It receives SOAP requests for CDR file name lists that are based on a user-specified time interval (up to a maximum of 1 hour) and returns a list of file names that fit the time duration that is specified in the request. This service also receives requests for delivery of a specific CDR/CMR file with the file name and the transfer method (SFTP/FTP, server name, login info, directory) that is specified in the request.

Excessive mixer calls

With Cisco Unified Communications Manager 7.0, the IP Voice Media Streaming Application service driver shows this system log error: Excessive mixer calls.

Solution

Because this appears to be a cosmetic error, you can disable the RTMT alert related to the error message. Or if you want to get the issue permanently resolved, you can upgrade your CallManager server to any of the releases mentioned in Cisco bug ID CSCte19629 (registered customers only) . This bug ID contains the fix for this defect.

How to Get Usage Information on Hardware Conference

In order to monitor usage information on Hardware Conference from the Communication Manager, perform these steps:

  1. Log in to RTMT.

  2. Go to System > Performance > Open Performance Monitoring.

  3. Choose Cisco HW Conference Brige Device.

rtmt-error-tshoot-01.gif

Collect Raw CDR Data using RTMT

In order to collect raw Call Detail Records (CDR) data using RTMT, perform these steps:

  1. Log in to RTMT.

  2. Go to System > Tools > Trace > Trace & Log Central and select the following:

    Cisco CDR files on CM server
     Cisco CDR files on Publisher Processed
  3. Check All Servers for both the above services.

  4. Click Next, and again click Next. Give the appropriate time range for which you want to collect raw CDR data.

  5. Specify a Download File Directory and zip the files.

  6. Click Finish. Collect the files.

Pull the Report for the PRIs using the RTMT

Perform these steps in order to pull the Report for the Primary Rate Interface (PRI) using the RTMT:

  1. Go to RTMT > System > Performance > Cisco MGCP PRI, Calls Active or Channel XX status.

  2. Drag the object (Calls Active) to the right panel (if possible, select the last PRIs on the Route Groups).

  3. Right click and select Alert > Severity: Warning, Absolute Value 20.

  4. If you already have the email alert enabled, choose the profile for Action email. Click Save.

  5. If you do not have the email alert enabled, you need to configure this alarm on the RTMT. Perform these steps:

    1. Login to the RTMT and choose Alert Center.

    2. Right click on the XXXXXX alert, and choose Set Alert/Properties…. Configure the following and click Next:

      • The alert is enabled.

      • Select the severity of the alert.

      • Select the server that you want to make the report.

    3. From this window, choose Duration: Trigger alert immediately and click Next.

    4. From this window, configure the following and click Next:

      • Frequency: trigger alert on every poll

      • Schedule: trigger alert when it occurs

    5. Configure the following and click OK:

      • Check the Enable Email check box.

      • Go to Configuration > Add > Enter name and description.

      • Under recipients, click Add and insert the email to where you want to send the alert information.

Remove Recipient from Email Notification of RTMT

In order to remove a recipient(s) from email notification of RTMT, perform these steps:

  1. Go to RTMT > System > Tools > Alert > Alert Central.

    rtmt-error-tshoot-02.gif

  2. Choose the Alert Name to modify.

    rtmt-error-tshoot-03.gif

  3. Go to RTMT > System > Tools > Alert > Config Alert Action.

    rtmt-error-tshoot-04.gif

  4. Choose the action profile for email. Click Edit and select the Recipient(s) to be removed.

    rtmt-error-tshoot-05.gif

  5. Click Delete. Then, click OK and Close.

RTMT stuck at “loading please wait….”

The RTMT hangs because of an UnsupportedClass Exception as the JRE used in compiling the code and launching the RTMT is different. In order to remove this error, complete these steps:

  1. Install RTMT. By default, RTMT is installed at C:\Program Files\Cisco\CallManager Servicability.

  2. Copy the jre1.5.0_14 folder from C:\Program Files\Java to C:\Program Files\Cisco\CallManager Servicability\JRE.

  3. Go to C:\Program Files\Cisco\CallManager Servicability\jrtmt and open run.bat in a notepad. Then, replace the content with ..\JRE\jre1.5.0_14\bin\java -Dsun.java2d.d3d=false-Xbootclasspath/a:.;.\Lib\xerces.jar;.\Lib\log4j.jar;.\Lib\jcchart45 0J.jar;.\Lib\collections.jar -jar JRtmt.jar.

  4. Double click run.bat.

  5. If the double click does not work, go to Start > Run and type cmd.

  6. Type cd C:\Program Files\Cisco\CallManager Serviceability\jrtmt and then type run.bat. This opens the RTMT login screen.

    Note: Perform run.bat whenever you want to use RTMT. A shortcut created for run.bat on the desktop does not work.

    Refer to Cisco bug ID CSCsu86458 (registered customers only) for more information.

No line/device available

After pressing dial on the WebDialer pop up, the "No line / device available" error is received. This error message is reported by RTMT:

CTIManager: 1055: LEHIUCMPUB.ad.local: Apr 14 2011 22:28:26.545 
UTC :%UC_CTI-3-CtiDeviceOpenFailure:%[CTIconnectionId=3][DeviceName=SEPA40CC395368C]
UNKNOWN_PARAMTYPE:ReasonCode=-1932787499]
[AppID=Cisco CTIManager][ClusterID=StandAloneCluster][NodeID=LEHIUCMPUB][CTIAppID=Cisco
WebDialer][ProcessID=30024][ProcessName=CtiHandler]: Device Open failed

Solution

In order to resolve this issue, deactivate/reactivate the WebDialer service.

RTMT alerts sent via email fail to deliver

The RTMT email alerts fail to deliver if the DNS is not configured on the Cisco Unified Communications Manager server. If DNS is not configured on the Cisco Unified Communications Manager servers during or post install, the fully qualified domain name (FQDN) will not append to the email sent by RTMT. This causes the email to be undeliverable.

This issue is documented by Cisco bug ID CSCsk71330 (registered customers only) .

Solution

Configure DNS from the Command Line Interface (CLI) using these commands:

set network dns primary xxx.xxx.xxx.xxx 
set network dns secondary xxx.xxx.xxx.xxx 
set network domain yourdomain.com 

After you enter the commands, reboot the node for the changes to take effect.

CUCM User is unable to Access the RTMT

After creating a new user in Cisco Unified Communications Manager, you cannot make this user access the RTMT.

Solution

In order to resolve this issue, complete these steps:

  1. Find the Standard Packet Sniffer Users group and click Add Users to Group.

  2. Add the specific end user who should access the RTMT to this group. Click Save.

Getting CTI RTMT alerts

Problem

This error is received continuously on the subscriber:

%CCM_CTI-CTI-3-kCtiEnvProcDevListRegTimeout: Directory change notification 
request time out. Cluster ID:StandAloneCluster Node ID:PMC-BMI-CM04

Note: When researching the error message, it states to check network connectivity with that node. All nodes are alive and working, but this error message is persistent.

Solution

In order to resolve this issue, restart the CTI Manager service on that node.

User Unable to Generate Report on WebView

Error: There are no items available

When a user tries to pull the call type and skill group reports, this error message is received:

There are no items available, because you are not
authorized to view this data or the items have not been configured in the ICM
and/or IPCC database. Contact your administrator to confirm your
authorization and the ICM and/or IPCC configuration 

webview-report-error-01.gif

Solution

Use this solution in order to solve the problem:

  1. Check the ServletExec.log and Jaguar.log log files.

  2. From the log files, check if the user is logging in as a supervisor agent or as a normal user. Supervisor agents can only run agent reports by design.

    Note: The first login to WebView is a domain login and is not case sensitive. However, the user ID and password are authenticated against the sql database when the user chooses to generate a report. In this case, the user ID is case sensitive and should be lowercase.

  3. If the user logged in as a supervisor agent, and, if a Supervisor user tries to run a report other than an agent report for their team, it will generate the error.

  4. In order to resolve the issue, add the user as a normal WebView user instead of a Supervisor user, and login.

Error: You have been logged out due to inactivity

When you attempt to pull a report for the agent’s activity using the browser Internet Explorer 8, this error message is received:

You have been logged out due to inactivity. 
Close all browser windows and log into WebView again

This issue is documented by Cisco bug ID CSCsy89990 (registered customers only) . Refer to this bug for any available fix.

Solution

Perform these steps in order to resolve the issue:

  1. Open Start > Run, and enter regedit.

  2. Go to HKEY_CURRENT_USER\Software\Microsoft\InternetExplorer\Main.

  3. Set TabProcGrowth: DWord = 0.

Error: The server encountered an unexpected condition which prevented it from fulfillng the request

When trying to create a report with WebView, this error appears:

Error: The server encountered an unexpected condition 
which prevented it from fulfillng the request

Solutions

In order to resolve this issue, try one of these solutions:

Solution 1

This error can result when the language in the browser is different than that in WebView. In order to change the language setting in the browser, perform these steps:

  1. Open the browser and choose Tools > Internet Options.

  2. On the General tab, click Languages to open the Language Preference dialog box.

  3. Click Add.

  4. Scroll in order to choose English.

  5. Click OK to return to the Language Preference dialog box.

  6. Use the Move Up/Move Down buttons in order to move the language you added to the top of the list.

  7. Click OK.

Solution 2

Add these lines for your language in upper case in the <drive>:\icm\web\webview\reporting\servlet\wvLocale.properties WebView server file:

en-US=dd/mm/yy
 !--- Replace en-US with the language (en-us) you configure in IE. 

Or

Add the language in the browser using the User definedoption and add the language manually in lower case (en-us).

Cisco ICM WebView does not Work

When a user tries to login to the WebView page, the Invalid user name or password. Try again. error message displays.

Solution

Complete these steps in order to resolve this issue:

  1. Make sure that the same username and password that you use to log into the domain is what you use when you log into ICM Admin Workstation (AW) or AW.

  2. Make sure that the user is part of the WebView group at the Cisco_Root, Facility, and Instance levels.

  3. Restart the Jaguar, Apache Tomcat and IIS services.

Error: include failed to get dispatcher for: /webview/reportstyle.css

In ICM version 7.5.1, users are not able to generate reports in WebView and this error message displays:

error: include failed to get dispatcher for: /webview/reportstyle.css

Solution

This error message indicates the installation failure of some third party tool. The only corrective method is to uninstall and then re-install. This list provides the proper order for the uninstallation and reinstallation:

  1. Uninstall the maintenance releases and bring the system to the 7.x release.

  2. Remove/uninstall the WebView component.

  3. Uninstall 3rd Party Tools.

  4. Install 3rd party Tools.

  5. Add/install the WebView component.

  6. Test the WebView report on the base 7.x release.

  7. Install the maintenance release and test the WebView report on the 7.x.x release.

Perform these steps:

  1. Stop the ICM services.

  2. Stop these Windows services from Start > Administrative Tools > Services:

    • Jaguar

    • IIS and WWW

    • Sybase EP Management Agent

    • sysam

  3. Remove all the maintenance releases and bring the system to release 7.5.1.

  4. Run the ICM installer from the CD and uncheck the box in order to remove the WebView component.

  5. Uninstall all the third party applications from Start > Settings > Control Panel > Add or Remove Programs.

  6. Delete the entire c:\program files\Sybase folder.

  7. Delete the HKEY_LOCAL_MACHINE\Software\Sybase registry key.

  8. Delete the HKEY_LOCAL_MACHINE\Software\Sybase, Inc registry key.

  9. Remove these Environment Variables:

    • Jaguar

    • LM_LICENSE_FILE

    • SYBASE_SYSAM

  10. Remove any references to the Sybase folders from the PATH and CLASSPATH environment variables.

  11. Remove any pbvm80.dlls from the C:\Windows\system32 folder.

  12. Clear the cache and navigate to these two directories:

    1. [DRIVE]:\ICM\web\WebView\reporting – Delete all folders that begin with an underscore (ex. _admin) in the reporting directory.

    2. [DRIVE]:\Program Files\New Atlanta\ServletExec ISAPI\Servlets\pagecompile – Delete everything contained within the pagecompile directory.

  13. Search the system for theSe files and delete them if found:

    1. libjeas.dll

    2. libjcc.dll

  14. Restart the computer.

  15. Delete and SDK folders left from C:\.

  16. Install Third Party Tools by launching setup from the 3rd Party Tools CD.

  17. Reboot after the Third Party tools install is complete.

  18. Perform this check before you install WebView:

    Open the command prompt and issue the java -version command. Verify it is displaying the correct or supported Java version.

  19. Run the ICM installer from the CD and install WebView.

  20. Reboot the server.

  21. Test the WebView report on the base 7.x release.

  22. Install the maintenance release and test the WebView report on the 7.x.x release.

HTTP 404 error

This section contains problems regarding HTTP 404 error messages.

Problems

Problem 1

Unable to browse to the WebView URL and the browser returns a HTTP 404 error - page cannot be found error message. Also, the ServletExec log shows:

ServletExec: caught exception - java.io.FileNotFoundException: E:\Program Files\New
Atlanta\ServletExec ISAPI\ServletExec Data\default\default-app\jsptimestamps.properties
(Access is denied. This is followed by a shutdown of the ServletExec virtual server.

This issue is documented by Cisco Bug ID CSCsm35233 (registered customers only) .

Solution

As a workaround, set the WebView AD cache timeout to zero (0) minutes. The registry value name is Sadlib_AD_Webview_Cache_Timeout_Minutes. Modify it to read zero (0). It is located at the HKEY_LOCAL_MACHINE\SOFTWARE\Cisco Systems, Inc.\ICM\SystemSettings registry key. By default, this value is set to 15 minutes. This way, for each user-logon, regardless of which ICM instant WebView is used, the cache is built and used correctly. The drawback is that the logons will be slower than if the cache timeout were left at 15 minutes.

Problem 2

When accessing WebView, the HTTP 404 - File or directory not found error message is received.

Solution

Complete these steps in order to resolve this problem:

  1. Go to C:\Program Files\New Atlanta\ServletExec ISAPI\webapps\default\default-app\WEB-INF and verify that web.xml is not corrupted or missing.

  2. If it is corrupted or missing, replace it with the new file.

  3. Restart IIS and the Jaguar service.

ICM 7.5: Unable to Save the Webview Reports

This error message is received when trying to save a WebView report with Cisco ICM 7.5:

This feature is currently disabled because of problems identified with
the configuration of the webview database

Solution

In order to resolve this issue, make sure that the ODBC connection for the WebView DB is pointing to the correct hostname.

OAMP Tips for CVP Developers

Resetting OAMP Admin Password
Transferring License/Script files to CVP Device

Resetting OAMP Admin Password, Rucha Khistie Download

This video describes how to reset your password for the CVP OAMP console.

Transferring License/Script files to CVP Device, Rucha Khisti     Download

 This video describes how to transfer a license file to a CVP server via the OAMP console.

Cisco IPCC Enterprise

Configuring Reporting Server through OAMP
Writing Informix SQL Query with Where clause
Upgrading CVP Reporting Server

Configuring Reporting Server through OAMP, Rucha Khisti    Download

This video describes how you would configure the Reporting Server via the OAMP console.  It also describes how you would change the password on the Reporting Server if you do not have access to OAMP.

Writing Informix SQL Query with Where clause, Rucha Khisti    Download

This video describes how to create a SQL query on the Reporting Server database that uses a ‘where’ clause using DBAccess.

Upgrading CVP Reporting Server, Seth Katzman     Download

This video describes how to upgrade the CVP Reporting Server.

 

View original post

Report Server Tips for CVP Developers

Configuring Reporting Server through OAMP
Writing Informix SQL Query with Where clause
Upgrading CVP Reporting Server

Configuring Reporting Server through OAMP, Rucha Khisti    Download

This video describes how you would configure the Reporting Server via the OAMP console.  It also describes how you would change the password on the Reporting Server if you do not have access to OAMP.

Writing Informix SQL Query with Where clause, Rucha Khisti    Download

This video describes how to create a SQL query on the Reporting Server database that uses a ‘where’ clause using DBAccess.

Upgrading CVP Reporting Server, Seth Katzman     Download

This video describes how to upgrade the CVP Reporting Server.

 

Developer Tips for the Call Server

Agent Reserved, Chris LeBlanc      Download

This video explains some tips on how to troubleshoot CVP when the Agent gets reserved but never receives the phone call.

Using the CSIM Call Simulator, Paul Antinori       Download

This video shows how to generate SIP phone calls without having an Ingress GW.  This is a call simulator tool that ships with CVP and can be used in a lab environment to test your CVP configurations.


Configuring Custom Ringtone Media for SIP Calls, Paul Antinori      Download

This video shows how you can use a custom ringtone to play while the caller is delivered to the Agent, instead of the ringtone file that is shipped with CVP.

Using the CVP Diagnostic Servlet, Paul Antinori      Download

This video shows the Diagnostic Servlet that is shipped with CVP.  It can be used to look at the state of the system and of the CVP Call Server and set logging levels.

Configuring a H.323 refer transfer, Harun Gadatia       Download

This video explains how to configure CVP, IOS and UCCE to perform an H.323 Refer Transfer.

Configuring an IP originated call with Type 10 VRU, Harun Gadatia       Download

This video describes how to configure Communications Manager, UCCE and CVP for a VoIP originated call and CVP as a Type 10 VRU.

Configuring Location and VXML Gateway Routing for IP Callers in 7.0.2, Paul Antinori       Download

This video describes how to configure and route a call in CVP 7.0.2 using Locations based CAC.

Configuring Local Static Routes on a CVP SIP Subsystem, Paul Antinori      Download

This video describes how to configure local static routes on the CVP Call Server using the SIP Subsystem tab in OAMP.

Managing Logging Events, Seth Katzman       Download

This video describes how to configure logging for the CVP Call Server and how to read Call Server log messages.

Why does my Prompt not play?, Chris LeBlanc     Download

This video describes some tips on how to troubleshoot CVP if your prompt does not play.


Configuring RONA for CVP, Rucha Khisti      Download

This video describes the steps to configure Ring On No Answer for CVP.

CVP 7.0.2 Streaming Audio, Chris LeBlanc       Download

This video describes how to configure Streaming Audio for CVP 7.0.2 to play while the caller is listening to music-on-hold.  This is an RTSP stream using the Helix Streaming Server.

CVP 7.0.2 Streaming Ringtones, Chris LeBlanc      Download

This video describes how to configure Custom Streaming Ringtones for CVP 7.0.2.  Instead of playing a custom ringtone while the call is being send to an agent, you can now play an RTSP stream instead of a .wav file.

MicroApps Overview, Chris LeBlanc       Download

This video describes CVP micro-apps and how to configure them in the ICM Script Editor environment.

Understanding CVP Patches, Seth Katzman      Download

This video describes the CVP patching system and how patches are created and deployed.

Configuring a warm transfer/conference, Harun Gadatia      Download

 This video goes through the steps of how to configure a warm transfer or conference with CVP.  Goes over Communications Manager, UCCE, and CVP configurations.

Licensing CVP Call Server, Harun Gadatia       Download

This video describes how to deploy a license for the CVP Call Server to get it up and running.

VXML Server/Studio Tips for CVP Developers

Hello World Script in CVP
Set license on CVP Server 4.1.1
Activate Call Studio License

 

Hello World Script in CVP, Stacy Johnson     Download

This video describes how to create a Hello World application with the VXML Studio and play the Hello World prompt to the caller.

Set license on CVP Server 4.1.1, Stacy Johnson     Download

This video describes how to configure the VXML Server to use its license and how to get it up and running.

Activate Call Studio License, Stacy Johnson     Download

This video describes how to configure the VXML Studio to use its license and how to get it up and running.

 

Developer Tips for CVP with Unified Contact Center Enterprise

Configuring a Dial Number Plan in ICM for CVP Blind Transfers
Network Transfer
Basic Transfer to Agent

Configuring a Dial Number Plan in ICM for CVP Blind Transfers, Harun Gadatia    Download

Network Transfer, Paul Antinori    Download 

This video describes how to configure a network transfer with CVP on UCCE.

Basic Transfer to Agent, Stacy Johnson      Download  

This video describes how to configure ICM to deliver a call to an agent.