Echo cancellation

Both barge-in and voice interrupt detection are enhanced by echo cancellation, which filters out any echo of the prompt from the spoken input. Echo cancellation is available to any custom server that records voice data from the line: it is not directly available to a state table.


Before using echo cancellation in a state table, you need to instruct Blueworx Voice Response to calibrate the echo canceller for the line being used. The echo cancellation for DTTAs continues to monitor and reduce the echo when any prompt or voice segment is played. It is therefore particularly suitable for situations where the echo path is likely to change, for example when a call is transferred or when call tromboning is used.

The calibration is requested by the state table, before invoking a custom server to begin recording voice data. Set the System : Echo Cancellation : Calibration system variable (SV231) to 1 and then use a PlayPrompt or PlayVoiceFromHost action to force play some uncompressed voice data. The outcome of the calibration is indicated by the value of SV231 following the Play action; if the value is 2, the calibration was successful. If calibration was unsuccessful, echo cancellation will not be used.

To ensure that the initial calibration of the echo cancellation for DTTAs will always be successful, the duration of the uncompressed voice data used for calibration must be at least 0.5 seconds, With DTTAs, echo cancellation is recalibrated automatically, at every opportunity, as the call proceeds.

Using echo cancellation with speech recognition

Start the recognition by invoking a custom server using the SendData action. If the custom server was designed to use echo cancellation, and the calibration was successful, echo cancellation will be used.

Figure 1. Calibrating the echo canceller
This graphic provides a diagrammatic version of the process already described under Calibration