About this Document


This document provides installation instructions for Unified CCE 12.6(2) ES29. It also contains a list of Unified CCE issues resolved by this engineering special. Review all installation information before installing the product. Failure to install this engineering special as described can result in inconsistent Unified CCE behavior.

This document contains these sections:

Sign Up for Email Notification of New Field Notices


In the Product Alert Tool, you can set up profiles to receive email notification of new Field Notices, Product Alerts, or End of Sale information for your selected products.

The Product Alert Tool is available at https://www.cisco.com/cisco/support/notifications.html.

About Cisco Unified CCE (and Unified CCE Engineering Specials)


Unified CCE Compatibility and Support Specifications


Unified CCE Version Support

Unified CCE Component Support

This section lists the Unified CCE components on which you can and cannot install this engineering special.

Supported Unified CCE Components

You can install Unified CCE 12.6(2) ES29 on these Unified CCE components:

Unsupported Unified CCE Components

Do not install this engineering special on any components other than the following:

Unified CCE Engineering Special Installation Planning


Planning for maintenance window and downtime

The installation or uninstallation of this patch requires a planned maintenance window with some expected downtime of a few seconds / minutes. No

Installing Unified CCE 12.6(2) ES29


  1. Download the patch and copy the patch to the local server where patch is going to be installed.
  2. Stop all ICM services and applications running on the server.
  3. Run the patch installer exe and follow the instructions.
  4. Reboot the server on successful completion of the patch install.
  5. Start the ICM services.

Uninstall Directions for Unified CCE 12.6(2) ES29


  1. To uninstall this patch, go to Control Panel.
  2. Select "Add or Remove Programs".
  3. Find the installed patch in the list and select "Remove".

Note: Remove patches in the reverse order of their installation. For example, if you installed patches 3, then 5, then 10 for a product, you must uninstall patches 10, 5, and 3, in that order, to remove the patches from that product.

Resolved Caveats in this Engineering Special


This section provides a list of significant Unified CCE defects resolved by this engineering special. It contains these subsections:


Note: You can view more information on and track individual Unified CCE defects using the Cisco Bug Search tool, located at: https://bst.cloudapps.cisco.com/bugsearch/search?null.


Resolved Caveats in Unified CCE 12.6(2) ES29

This section lists caveats specifically resolved by Unified CCE 12.6(2) ES29.

Index of Resolved Caveats

Caveats in this section are ordered by UNIFIED CCE component, severity, and then identifier.
Identifier Severity Component Headline
CSCwd97991 3 smart-license SmartLicense Registration and Authorization attempts fail with error "Failed to verify signature"
CSCwe61674 4 web.config.api PersonalCallBack API Search returns internalServerError if CallStatus = "I"

Detailed list of Resolved Caveats in This Engineering Special

Caveats are ordered by severity then defect number.


Defect Number: CSCwd97991

Component: smart-license

Severity: 3

Headline: SmartLicense Registration and Authorization attempts fail with error "Failed to verify signature"


Symptom:
CCE 12.5 and above SmartLicense Registration and Authorization attempts fail with error "Failed to verify signature"

Conditions:
CCE Version 12.x with Smart Licensing

Workaround:
Contact Cisco TAC

Further Problem Description:
# SmartAgent Logs from LoggerA: - 0000066816: 10.102.118.171: Jul xx xxxx 13:45:29.877 +0200: %_Thread-26-3-com.cisco.nesla.agent.impl.AsyncRequestProcessor: failed to send request / process response: SmartAgentMessageAUTH - 0000066817: 10.102.118.171: Jul xx xxxx 13:45:29.893 +0200: %_Thread-26-3-com.cisco.nesla.agent.impl.AsyncRequestProcessor: Reason: Failed to verify signature. - 0000066818: 10.102.118.171: Jul xx xxxx 13:45:29.893 +0200: %_Thread-26-6-com.cisco.ccbu.smartagentmanager.listener.GlobalNotificationListener: Received GlobalNotification: GlobalNotification [failReasonCode=VerifySignatureFailed, failMessage=Failed to verify signature., enforceMode=NotApplicable, allowRestricted=false, notificationType=NotifyAuthRenewFailure, agentID=null, tenantContextId=null]

Defect Number: CSCwe61674

Component: web.config.api

Severity: 4

Headline: PersonalCallBack API Search returns internalServerError if CallStatus = "I"


Symptom:
Using PersonalCallBack API Search will return internalServerError if CallStatus = "I" Example url example only /x.x.x.x/unifiedconfig/config/personalcallback?q=accountNumber........ If CallStatus is "I" in database it will fail the query Tomcat.log: 000005221: 10.128.239.86: Mar 08 2023 16:54:10.461 -0500: %CCBU_pool-1-thread-11-Infrastructure-821156-6-REST_API_INFO: Task : FeatureControlDBSynchronizer has executed 3247 times 0000000890: 10.128.239.86: Mar 08 2023 16:56:02.946 -0500: %CCBU_ajp-bio-127.0.0.1-8009-exec-3-6-REQUEST_START: %[ip.orig=10.144.123.13][method_name=GET][parameter_name={ q=[accountNumber:...], sort=[agentId asc], startIndex=[459], resultsPerPage=[10] }][port.orig=55920][protocol=HTTP/1.1][resource_name=/personalcallback][usr=cisco_callback_svc@...]: Request start 0000005222: 10.128.239.86: Mar 08 2023 16:56:02.947 -0500: %CCBU_ajp-bio-127.0.0.1-8009-exec-3-6-REST_API_INFO: User name: ...\cisco_callback_svc, service: personalcallback, role: NonPCCEAdministrator, deployment type: LOGGERA, access: FULL 0000000136: 10.128.239.86: Mar 08 2023 16:56:02.969 -0500: %_ajp-bio-127.0.0.1-8009-exec-3-4-org.hibernate.engine.jdbc.spi.SqlExceptionHelper: SQL Error: 515, SQLState: 23000 0000000137: 10.128.239.86: Mar 08 2023 16:56:02.969 -0500: %_ajp-bio-127.0.0.1-8009-exec-3-3-org.hibernate.engine.jdbc.spi.SqlExceptionHelper: Cannot insert the value NULL into column 'CallStatus', table '....dbo.Personal_Callback_List'; column does not allow nulls. UPDATE fails. 0000000139: 10.128.239.86: Mar 08 2023 16:56:02.970 -0500: %_ajp-bio-127.0.0.1-8009-exec-3-6-org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl: HHH000010: On release of batch it still contained JDBC statements 0000005223: 10.128.239.86: Mar 08 2023 16:56:02.970 -0500: %CCBU_ajp-bio-127.0.0.1-8009-exec-3-3-REST_API_EXCEPTION: %[exception=org.hibernate.exception.ConstraintViolationException: could not execute statement][message_string=uncaught exception thrown by the api]: The REST API has caught an exception 0000005224: 10.128.239.86: Mar 08 2023 16:56:02.972 -0500: %CCBU_ajp-bio-127.0.0.1-8009-exec-3-3-EXCEPTION_INFO: %[build_date=Jul 28, 2017 3:37 PM][build_type=rel][exception=org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:129) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:112) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:211) at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:62) at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3281) at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:3183) at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3525) at org.hibernate.action.internal.EntityUpdateAction.execute(EntityUpdateAction.java:159) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:463) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:349) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:350) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56) at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1222) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:425) at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101) at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:177) at com.cisco.ccbu.cce.unifiedconfig.db.HibernateSession.listEntriesWithRestrictions(HibernateSession.java:782) at com.cisco.ccbu.cce.unifiedconfig.db.RestDBFetcher.listEntries(RestDBFetcher.java:44) at com.cisco.ccbu.cce.unifiedconfig.api.WebConfigService.fillList(WebConfigService.java:1037) at com.cisco.ccbu.cce.unifiedconfig.api.WebConfigService.fillList(WebConfigService.java:1009) at com.cisco.ccbu.cce.unifiedconfig.api.personalcallback.PersonalCallbackService.list(PersonalCallbackService.java:156)

Conditions:
Using PersonalCallBack API Search will return internalServerError if CallStatus = "I" Example url example only /x.x.x.x/unifiedconfig/config/personalcallback?q=accountNumber........ If CallStatus is "I" in database it will fail the query. If CallStatus is any other in the documentation it will work Note: The "I" will get populated in the database record if the number or account is Invalid.

Workaround:
Possible workarounds: -Purge or delete records that have "I" but could be a problem if an automated script is inserting records based on CallStatus. -Manually update the PersonalCallback record in database to change the Callstatus from "I" to "C" or "U"

Further Problem Description:
Looking at the class PersonalCallbackService.java seems it goes to the function list which will call PersonalCallbackRecord.class then it will call CallStatusEnumAdapter.class to getCallStatusEnum in CallStatusEnum.java but the class does not contain "I" as a valid value which we suspect is failing there: public enum CallStatusEnum { active("A"), callbackRequested("B"), closed("C"), agentRejected("J"), maxAttemptsReached("M"), pending("P"), retry("R"), personalCallbackRequested("S"), unknown("U"), agentNotAvailable("X"), dialed("D");

Obtaining Documentation


You can access current Cisco documentation on the Support pages at the following sites:

Documentation Feedback

To provide comments about this document, send an email message to the following address:

contactcenterproducts_docfeedback@cisco.com

We appreciate your comments.

Obtaining Technical Assistance


Cisco.com is a starting point for all technical assistance. Customers and partners can obtain documentation, troubleshooting tips, and sample configurations from online tools. For Cisco.com registered users, additional troubleshooting tools are available from the TAC site.

Cisco.com

Cisco.com provides a broad range of features and services to help customers and partners streamline business processes and improve productivity. Through Cisco.com, you can find information about Cisco and our networking solutions, services, and programs. You can also resolve technical issues with online technical support and download software packages. Valuable online skill assessment, training, and certification programs are also available.

Customers and partners can self-register on Cisco.com to obtain additional personalized information and services. Registered users can order products, check on the status of an order, access technical support, and view benefits specific to their relationships with Cisco.

Technical Assistance Center

The Cisco TAC site is available to all customers who need technical assistance with a Cisco product or technology that is under warranty or covered by a maintenance contract.

Contacting TAC by Using the Cisco TAC Site

If you have a priority level 3 (P3) or priority level 4 (P4) problem, contact TAC by going to https://www.cisco.com/c/en/us/support/index.html.

P3 and P4 level problems are defined as follows:

In each of the above cases, use the Cisco TAC site to quickly find answers to your questions.

If you cannot resolve your technical issue by using the TAC online resources, Cisco.com registered users can open a case online by using the TAC Case Open tool at the following site: https://mycase.cloudapps.cisco.com/create/start/

Contacting TAC by Telephone

If you have a priority level 1(P1) or priority level 2 (P2) problem, contact TAC by telephone and immediately open a case. To obtain a directory of toll-free numbers for your country, go to the following sites:

P1 and P2 level problems are defined as follows: