Overview

Blueworx Voice Response 7 for Linux (BVR) is a highly scalable, reliable and flexible IVR platform. Designed with technology and expertise built up over 25 years in the BVR for AIX platform, BVR for Linux provides customers with the option of running Blueworx on Intel hardware running Linux and common Cloud hosting services.

Highlights include:

Blueworx strongly advocate open standards; Blueworx Voice Response for Linux is purely a VoIP/SIP solution, supporting VoiceXML v2.1 for applications, CCXML v1.0 for call control and MRCP v2 to connect to your choice of speech server for Text-to-speech and Automatic Speech Recognition.

Architecture

The Blueworx Platform consists of several components to handle different tasks.



Blueworx Voice Response (BVR) component

Provides call processing, answering SIP/RTP calls, processing VXML applications, streaming audio to/from resources such as speech engines and AI.

Blueworx Resource Manager (BRM) component

Manages configuration for BVR instances. When BVR answers a call, it asks BRM how it should configure itself for this call. BRM also maintains a status of all machines in a cluster, manages license usage, serves configuration and status data to the Web User Interface and provides a single point for initiating outbound calls from a cluster. BRM reads and serves data from the CPD to BVR and the web interface, but also keeps a mirror of the data in a memory pool shared across multiple BRM instances for speed and resilience.

Blueworx Admin Manager (BAM) component

Cluster management tasks that are not critical to call handling are serviced by the Blueworx Admin Manager (BAM). BAM shares the same access as BRM to the Configuration Profile Database and the shared memory pool, but without affecting BRM. This separate component increases the security and resilience of time-critical tasks for call handling, minimising the effect of external factors, such as runaway processes or DoS attacks.

Management and monitoring APIs used by the Web Admin Interface are provided by the BAM component.

Configuration Profile Database (CPD) component

Configuration and status is stored in a PostgreSQL database for non-volatile, scalable, redundant storage.

Kafka Event Pipe

All events from all components can be streamed through the Kafka Event Pipe. This means that logs, CDRs, traces, etc. are easily consolidated rather than distributed across multiple machines. The events can be stored in a database for analysis or displayed in real time as they occur. Kafka is a highly scalable and flexible event management solution, and further reading from the Kafka website is recommended to take advantage of its powerful features. https://kafka.apache.org/

Consolidation and distribution

The platform components are designed to run together comfortably on a single virtual machine but can be separated for increased apacity or redundancy. For example, BRM and the PostgreSQL CPD could run on one VM, and BRM on another. It is not intended for each component to have its own VM.

Redundancy

All Blueworx components can be made redundant for high availability.