Monitoring the performance of a Blueworx Voice Response system

The information in this section is mainly aimed at monitoring performance in a single system image environment, but it is equally applicable to any Blueworx Voice Response system.

On a single system image, the voice data for all the applications running on the image is stored on a single voice server. A caller will have a telephone connection to a client node on the single system image, so Blueworx Voice Response has to retrieve voice data from the server, and send it to the client, before the application can play it to the caller. Blueworx Voice Response also has to retrieve applications objects such as state tables, prompts, and voice message information from the database on the server. This means that the efficiency of the network that connects the client to the server has a large effect on the performance of the application.

You can improve the performance by using a high-performance network that serves only your single system image (that is, the network does not carry data for applications other than those that serve the Blueworx Voice Response system). It also helps if you design applications that use state table actions such as PlayPrompt, which play voice data that is cached by Blueworx Voice Response. In contrast, the PlayVoiceSegment action always retrieves voice data from the database.

How Blueworx Voice Response takes performance measurements

When your applications are running, you will want to monitor their performance to ensure that your callers do not experience poor quality. Blueworx Voice Response helps you by measuring the following attributes, which affect how voice data is played:

For each of these attributes, Blueworx Voice Response records a measurement every time it performs an action that affects the attribute. It also calculates an average value for each attribute. You can specify a maximum threshold for each attribute (sometimes called a high water mark), and when the average for the attribute goes beyond that threshold, Blueworx Voice Response issues an information message to warn you. You can also specify a recovery threshold (sometimes called a low water mark), which makes Blueworx Voice Response issue a second information message when the system recovers to such an extent that the average value for the attribute falls back below this value.

In addition, you can specify an alert level (usually higher than the maximum threshold) so that you are warned of unusual circumstances; Blueworx Voice Response issues a different information message every time an individual measurement of the attribute (not the average value) exceeds the alert level.

To control how Blueworx Voice Response collects measurements of these attributes, use the CHP Performance Metrics - Expiry Time (mins) system parameter. When you set this parameter to 0, Blueworx Voice Response does not collect any data. When you set this value to a value greater than 0, Blueworx Voice Response collects data. When Blueworx Voice Response calculates the averages of its measurements, it ignores any measurements that are older than the value you set in this system parameter. The value of this system parameter affects all the performance measurements. For more information, see CHP Performance Metrics - Expiry Time (mins) in the Configuring the System information.

To display the most recent measurement for these attributes on your system, use the DTmon command with the –f option. For more information, see DTmon command.

How calculates average values:

You can apply a weighting factor which determines how quickly new measurements affect the average. Use the CHP Performance Metrics - Weighting of Old Average system parameter to specify the weighting that Blueworx Voice Response gives to the existing average when it takes a new measurement and calculates a new average. The value of this system parameter affects all the performance measurements.

Each time Blueworx Voice Response takes a new measurement of one of the performance attributes, it calculates the new average using the following formula:

    new_average = (value + (average * weight))/(weight + 1)

where:

value
The new measurement of the attribute
average
The existing average of the attribute
weight
The lower value of number and parameter, where:
number
The number of measurements taken since Blueworx Voice Response was started (but measurements are restarted if you run the DTmon command using the -r flag).
parameter
The value of the Weighting of Old Average system parameter

If you specify a low value for this parameter, new measurements affect the average quickly. For example, the value 0 makes the average equal to the new measurement, and the value 1 takes the average of the last two measurements.

If you specify a higher value for this parameter, more measurements are included when Blueworx Voice Response calculates the average.

For more information, see CHP Performance Metrics - Weighting of Old Average in the Configuring the System information.

Play latency time

The play latency time (PLT) is the time between a state table action (such as PlayVoiceSegment or PlayAudioName) getting voice data from the voice database and delivering it to the Blueworx Voice Response device driver that plays the voice data on the telephony channel. When the PLT is greater than 200 milliseconds, the caller may notice a delay in the playing of the voice data.

Use the following system parameters to specify the maximum threshold, recovery threshold, and alert level of PLT for your system:

For more detailed information on the system parameters, see the Configuring the System information.

Note: The PLT does not apply to the PlayPrompt state table action because that action reads voice data into cache and plays it from there.

Underrun margin time

A voice underrun occurs when the voice database has more data to deliver to the Blueworx Voice Response device driver for playing to the caller, but the device driver has not yet received that data. In other words, the device driver can play the voice data faster than the voice database can deliver it. If there is an underrun of more than 50 milliseconds, the caller may hear a pause between blocks of speech. A voice underrun occurs only with large voice segments or messages, which will not fit into the device driver's cache.

The underrun margin time (UMT) is the time remaining before a voice underrun occurs. If the UMT reaches 0, voice underrun is imminent. When underrun occurs, the Blueworx Voice Response channel process issues alarm message 201.

For this attribute, you must specify a minimum threshold for your system. When the UMT falls below this value, Blueworx Voice Response generates an alarm message. You can still specify a recovery threshold, but for this attribute the recovery threshold must be higher than the minimum threshold.

Use the following system parameters to specify the minimum threshold, recovery threshold, and alert level of UMT for your system:

For more detailed information on the system parameters, see the Configuring the System information.

Check voice messages time

The check voice messages time (CHK) is the time taken for a channel process to retrieve the list of new voice messages using the CheckVoiceMessages (FIRST_IN_NEW) state table action. Blueworx Voice Response measures this every time the list is retrieved.

Use the following system parameters to specify the maximum threshold, recovery threshold, and alert level of CHK for your system:

For more detailed information on the system parameters, see the Configuring the System information.

Profile retrieval time

The profile retrieval time (PRF) is the time taken for a channel process to retrieve a noncached user profile from the database server. Blueworx Voice Response measures this every time a noncached user profile is retrieved.

Use the following system parameters to specify the maximum threshold, recovery threshold, and alert level of PRF for your system:

For more detailed information on the system parameters, see the Configuring the System information.