3.7 CallQuality

Use this Knowledge Script to monitor RTCP packets in the Avaya CM supplemental database for call quality statistics: jitter, latency, packet loss, MOS (Mean Opinion Score), and R-Value. This script raises an event if a monitored value exceeds or falls below a threshold. MOS and R-Value are computed only for calls that use one of the following codecs: G.711u, G.711a, or G.729.

NOTE:You can trigger NetIQ Vivinet Diagnostics to diagnose the problem indicated by an event in which the percentage lost data threshold is exceeded. For more information, see Triggering Call and Phone Quality Diagnoses.

When you start the CallQuality Knowledge Script job, the managed object begins collecting RTCP packets to store in the Avaya CM supplemental database. After the CallQuality job stops, the managed object continues to collect packets. Packet collection stops within a time period equal to two intervals of the job, but never less than 4 minutes after the CallQuality job stops.

The purpose of this script is twofold:

  • Monitoring. In monitoring mode, this script checks the supplemental database tables at each specified interval for new records that match your query. In the first iteration of the job, this script finds the last record in a table and checks back one interval from there. In subsequent iterations, this script checks for new records that match the query in each interval.

  • Troubleshooting. In troubleshooting mode, this script runs once and checks the supplemental database for calls that disconnected within the range you select in the Select call disconnect time range parameter. Select Run once on the Schedule tab to run this script in troubleshooting mode. However, the managed object does not collect RTCP packets unless this script is running, which could pose a problem should you want to troubleshoot a call that occurred 5 minutes ago, for example. Therefore, to perform troubleshooting as needed, run this script as a separate job with data collection and events disabled, and set the schedule to run every n minutes. By doing so, the Avaya CM supplemental database will always contain data you can use for troubleshooting.

3.7.1 Understanding data streams and Threshold Events

This script generates data streams for average MOS, R-Value, jitter, latency (one-way delay), and packet loss. These average values are based on data from each phone involved in calls that completed during the script’s interval, which is, by default, every 5 minutes. For example, in a given call, the calling phone’s jitter was 30 milliseconds and the called phone’s jitter was 75 milliseconds. For this call, the data stream would be a calculated average of the jitter for both phones: 52.5 milliseconds.

This calculated average is below the default threshold value of 60 milliseconds. However, AppManager raises threshold events based on values for each phone in a call, not on the average value. Therefore, for this call, AppManager would raise one event based on the 75 milliseconds of jitter for the called phone.

3.7.2 Prerequisite

Run SetupSupplementalDB to create the Avaya CM supplemental database.

3.7.3 Resource Object

AvayaCM Active SPE object

3.7.4 Default Schedule

By default, this script runs every 5 minutes.

3.7.5 Setting Parameter Values

Set the following parameters as needed:

Parameter

How to Set It

General Settings

Job Failure Notification

Event severity when job fails

Set the event severity level, from 1 to 40, to indicate the importance of the failure of the CallQuality job. The default is 5.

Include call details?

Select Yes to include call details in the events raised by this script. Leave this parameter unselected to suppress the following call details:

  • Caller and Called Average MOS

  • Caller and Called Average R-Value

  • Caller and Called Jitter

  • Caller and Called Latency

  • Caller and Called Lost Packets

  • Caller and Called Codec

  • Caller and Called Number

  • Connect Time

  • Disconnect Time

  • Duration

NOTE:If you configured Communication Manager to use Agent ID numbers, an event will identify an Agent ID or gateway, rather than a called or calling phone extension.

Raise event if no records found?

Select Yes to raise an event if there are no RTCP packets to monitor in the Avaya CM supplemental database. This does not mean there are no records with call quality data. It means there are no records at all. The default is unselected.

Event severity when no records found

Set the event severity level, from 1 to 40, to indicate the importance of an event in which no RTCP packets were found. The default is 25.

Query Filters

No matter how many calls match the filters you select, an event displays only the first 50 calls.

Minimum duration

Use this parameter to filter out records whose call duration is less than the value you specify. Accept the default of 0 seconds to ignore the filter for minimum duration.

Maximum table size

Specify the maximum number of rows of results to include in the call quality tables shown in the details of an event message. The default is 25 rows.

Maximum duration

Use this parameter to filter out records whose call duration is greater than or equal to the value you specify. Accept the default of 0 seconds to ignore the filter for maximum duration.

Calling phone number

Specify the number of the calling phone you want to find in the supplemental database. Wildcard characters are acceptable. Leave this parameter blank to search for any calling phone number.

NOTE:If you configured Communication Manager to use Agent ID numbers, an event will identify the Agent ID or gateway associated with the Calling phone number you enter here.

Phone number connector

Set this parameter only if you specify both a Calling phone number and a Called phone number. Your selection indicates how the script will connect the two parameters: AND or OR. The default is AND.

Called phone number

Specify the number of the called phone you want to find in the supplemental database. Wildcard characters are acceptable. Leave this parameter blank to search for any called phone number.

NOTE:If you configured Communication Manager to use Agent ID numbers, an event will identify the Agent ID or gateway associated with the Called phone number you enter here.

Troubleshooting

Call disconnect time range

Select a range of time and dates in which the query should search for data in the supplemental database.

  • Select Fixed Time to select specific days and times that the query should begin and end.

  • Select Sliding to select a number of hours, days, months, or years in which to search. The query starts its search at the time the job runs, and goes back through the supplemental database for the number of units you select.

The default is Fixed Time.

NOTE:This parameter is valid only when you select Run once on the Schedule tab.

Monitor Average MOS

Event Notification

Raise event if average MOS falls below threshold?

Select Yes to raise an event if the average MOS value falls below the threshold. The default is Yes.

Threshold - Average MOS

Specify the lowest average MOS value that must occur to prevent an event from being raised. The default is 3.60.

Event severity when average MOS falls below threshold

Set the event severity level, from 1 to 40, to indicate the importance of an event in which the average MOS value falls below the threshold. The default is 5.

Minimum number of calls with a MOS value below the threshold which must be found for an event to be raised for the interval

Set the minimum number of calls, from 1 to 1000, which must be determined to have a MOS value below the threshold, to raise an event for the interval. The default is 1.

Data Collection

Collect data for average MOS?

Select Yes to collect data for charts and reports. If enabled, data collection returns the average MOS value during the monitoring period. The default is unselected.

Monitor Average R-Value

Event Notification

Raise event if average R-Value falls below threshold?

Select Yes to raise an event if the average R-Value falls below the threshold. The default is Yes.

Threshold - Average R-Value

Specify the lowest average R-Value that must occur to prevent an event from being raised. The default is 70.

Event severity when average R-Value falls below threshold

Set the event severity level, from 1 to 40, to indicate the importance of an event in which the average R-Value falls below the threshold. The default is 5.

Minimum number of calls with an RValue value below the threshold which must be found for an event to be raised for the interval

Set the minimum number of calls, from 1 to 1000, which must be determined to have an RValue value below the threshold, to raise an event for the interval. The default is 1.

Data Collection

Collect data for average R-Value?

Select Yes to collect data for charts and reports. If enabled, data collection returns the average R-Value during the monitoring period. The default is unselected.

Monitor Average Jitter

Event Notification

Raise event if jitter exceeds threshold?

Select Yes to raise an event if the jitter value exceeds the threshold. The default is Yes.

Threshold - Maximum jitter

Specify the highest average jitter value that can occur before an event is raised. The default is 60 milliseconds.

Event severity when jitter exceeds threshold

Set the event severity level, from 1 to 40, to indicate the importance of an event in which the jitter value exceeds the threshold. The default is 15.

Minimum number of calls with a latency value exceeding the threshold which must be found for an event to be raised for the interval

Set the minimum number of calls, from 1 to 1000, which must be determined to have a latency value exceeding the threshold, to raise an event for the interval. The default is 1.

Data Collection

Collect data for jitter?

Select Yes to collect data for charts and reports. If enabled, data collection returns the amount of jitter that occurred during the monitoring period. The default is unselected.

Monitor Average Latency

Event Notification

Raise event if latency exceeds threshold?

Select Yes to raise an event if the latency value exceeds the threshold. The default is Yes.

Threshold - Maximum latency

Specify the highest amount of average latency that can occur before an event is raised. The default is 400 milliseconds.

Event severity when latency exceeds threshold

Set the event severity level, from 1 to 40, to indicate the importance of an event in which the latency value exceeds the threshold. The default is 15.

Minimum number of calls with a latency value exceeding the threshold which must be found for an event to be raised for the interval

Set the minimum number of calls, from 1 to 1000, which must be determined to have a latency value exceeding the threshold, to raise an event for the interval. The default is 1.

Data Collection

Collect data for latency?

Select Yes to collect data for charts and reports. If enabled, data collection returns the amount of latency that occurred during the monitoring period. The default is unselected.

Monitor Average Packet Loss

Event Notification

Raise event if packet loss exceeds threshold?

Select Yes to raise an event if the packet loss value exceeds the threshold. The default is Yes.

Threshold - Maximum packet loss

Specify the highest percentage of average packet loss that can occur before an event is raised. The default is 1%.

Event severity when packet loss exceeds threshold

Set the event severity level, from 1 to 40, to indicate the importance of an event in which the packet loss value exceeds the threshold. The default is 15.

Minimum number of calls with a packet loss value exceeding the threshold which must be found for an event to be raised for the interval

Set the minimum number of calls, from 1 to 1000, which must be determined to have a packet loss value exceeding the threshold, to raise an event for the interval. The default is 1.

Data Collection

Collect data for packet loss?

Select Yes to collect data for charts and reports. If enabled, data collection returns the percentage of packet loss that occurred during the monitoring period. The default is unselected.

3.7.6 Triggering Call and Phone Quality Diagnoses

You can use NetIQ Vivinet Diagnostics to diagnose problems identified by AvayaCM Knowledge Scripts.

Using the existing methodology of launching an Action script based on an event, AppManager can launch Action_DiagnoseVoIPQuality to trigger Vivinet Diagnostics to diagnose the problem for events raised by the following Knowledge Scripts:

  • AvayaCM_CallQuality events trigger Vivinet Diagnostics to diagnose the problem when average MOS, average R-Value, average jitter, average latency, and average packet loss fall below or exceed their thresholds.

  • AvayaCM_PhoneQuality events trigger Vivinet Diagnostics to diagnose the problem when MOS, R-Value, jitter, latency, and packet loss fall below or exceed their thresholds during the data collection interval.

The Action script runs by default only if Vivinet Diagnostics 2.3 or later is installed on the computer on which the script is running.

To trigger Vivinet Diagnostics:

  1. When setting parameter values for the PhoneQuality or CallQuality scripts, click the Actions tab. Action_DiagnoseVoIPQuality is selected by default.

  2. Click Properties and enter values for all parameters for the Action script. For more information about the parameter values, click Help on the Properties for Action_DiagnoseVoIPQuality dialog box.

For more information about Vivinet Diagnostics and call quality diagnoses, see the User Guide for Vivinet Diagnostics and the Help for the Action_DiagnoseVoIPQuality Knowledge Script.