cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
175
Views
5
Helpful
0
Comments
Dmytro Benda
Spotlight
Spotlight

Hello everyone, 

Let me introduce myself. My name is Dmytro Benda and I am a Cisco Collaboration Instructor from Ukraine. For many years I have been delivering Cisco authorized Collaboration and Contact Center courses.  

I wanna share to you a problem that I encountered while working with the Cisco CVP. One of my students was doing his lab and he complained that his Studio application for CVP VXML Server suddenly stopped updating when the changes were made. He tried to delete the script and re-deploy it, but the script simply could not be activated anymore. 

To find out the reason for this behavior of the application, you should refer to the logs of the VXML server. They are usually found along the following path (CVP was installed on drive C):

C:\Cisco\CVP\VXMLServer\Logs

You have to view the logs with the corresponding date in the GlobalAdminLogger and GlobalErrorLogger folders. 

CVP_Error_1.png

 In our case, the following was found in the logs:

- Log GlobalAdminLogger: 12/10/2021 15: 50: 04.413, deploy_all_apps, The application 'SuperLab_2' failed to deploy.

- Log GlobalErrorLogger: 12/10/2021 15:50: 04.413, SERVER ERROR: There was an error attempting to deploy the application. The error was: com.audium.server.voiceElement.ElementException: The "value" attribute of the <constant_number /> tag must contain a valid decimal or integer number. The value given was "SHIPPED"

It can be seen from the logs that the application does not start due to an error related to the fact that one of the elements expects a parameter with the decimal or integer type, and the string "SHIPPED" was entered instead.

After analyzing all the elements of the script, we found out that the value "SHIPPED" was set in only one element, and it turned out to be the Decision element. Its configuration was like this: 

CVP_Error_2.png

At first look, the configuration appears to be perfectly correct and error-free. Moreover, the application validation did not show any error. Since the error log directly indicated that the system did not accept the value in the <constant_number /> tag, it was decided to check the XML code of the Decision element. This can be done in Call Studio in the element configuration pane:

CVP_Error_3.png

Indeed, the XML code of our element was incorrect:

CVP_Error_4.png

Despite the fact that in the element configuration the value of the ORDER_STATUS variable was compared with the text value "SHIPPED", in the XML code we see the <constant_number value> tag, although there should be a <constant_string value> tag in this place, since the element's configuration compares the text value, not numeric. But despite this, Call Studio for some reason used a tag requiring an integer value, and this caused an error on the VXML server. Interestingly, this error is not detected when validating the project in Call Studio, but it can only be detected when the application is uploaded to the VXML server.

The solution to the problem is to manually replace the <constant_number value> tag with <constant_string value>, as shown below:

CVP_Error_5.png

After loading the corrected script, the malfunction is eliminated. At a more detailed conversation with the student, it was turned out that he first wrote an expression in which he mistakenly chose a comparison of a numerical value, and only then changed it to a comparison of a text value. This kind of manipulation shouldn't be a problem, however, Call Studio did not replace the tag accordingly.

I hope that my experience with this problem will be useful for you. If you want to find more interesting cases and knowledge in Cisco Unified Communications and Contact Centers, please visit my personal blog at:

https://dbenda.blogspot.com/ 

I will be happy to answer your questions if you have any. Cheers! 

 

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: