| Component | Description |
|---|---|
| VotG Adapter (votg-adapter) | VotG Adapter component serves as a critical link between the phone gateway and the voice biometrics system, receiving call events and audio stream in real-time by establishing a secure WebSocket connection. It enables biometric transactions to happen simultaneously as the user speaks and provides a seamless and efficient experience. VotG Adapter also applies advanced preprocessing techniques, including Voice Activity Detection (VAD) to filter out non-speech parts and prepares audio segments. Once the preprocessing is completed for a segment, it is transmitted to the Biometrics API. This process is repeated until the required amount of speech data is collected for biometric transactions. |
| Biometrics API (api) | Biometrics API, as the core component of the solution, performs biometrics operations on voice data. It employs cutting-edge DNN (Deep Neural Network) models to perform these operations with high accuracy and reliability. Moreover, it provides user management operations to handle user registration, deletion, and updates to manage their access to the system. The Biometrics API is accessible through a REST API and designed to work with audio segments. It supports a wide range of use cases, including: • Real-time stream of voice interactions such as contact centers and conversational IVRs, where voice data is accumulated by the VotG Adapter. • Non-streaming scenarios such as chatbots, IVRs, virtual assistants, and messaging apps like WhatsApp and Telegram, where pre-recorded audio files are used. This flexibility enables the Biometrics API to handle diverse use cases and provides a simple and standardized way for developers to integrate voice biometrics capabilities into their applications. |
| Notification Service (votg-notification) | VotG Notification Service is a component that provides real-time notifications for biometric transactions. It leverages the SignalR framework to simultaneously transmit information about ongoing transactions to the user. This includes the status of the transaction, it's progress, and the final result. These real-time updates enable users to stay informed and take appropriate actions promptly. |
| Reporting Interface (web) | Reporting Interface is a lightweight Angular application and designed to provide a comprehensive overview of biometric transactions and statistics. It delivers detailed reports on users and their biometric interactions, while providing insights into their outcomes, including successful, cancelled, fraudulent, and failed attempts. Furthermore, the platform supports offline user enrollment through the user interface by submitting their pre-recorded audio files. Conveniently, all enrollment and authentication samples are easily accessible and can be listened to and downloaded directly from the user interface. It also includes robust Identity and Access Management features, granting administrators the ability to efficiently and securely manage agent access based on their assigned roles and permissions, ensuring effective control over the biometric system. |
| Agent Application (agent-web) | The agent application is a React-based web application developed by SESTEK which provides agents with an intuitive interface for seamless integration with the Biometrics system through REST APIs. This application also receives real-time notifications about the transaction's status, progress, and final results from Notification Service over SignalR connection. In scenarios where the Agent Application is not required, clients have the option to initiate biometric transactions by submitting necessary user information and biometric data through REST APIs, using various client-side applications, such as CRM services, IVRs, mobile apps, and virtual assistants. |
| Identity Server (identity) | AuthServer is responsible for managing the authorization and authentication processes of the solution. It securely authenticates and issues access tokens with an expiration date for users and applications, including defined scopes and user roles. |
| Management API (management-api) | Management API is the API that is used by the ABP web service. It sends the requests delivered from the web service, triggers the backend services, or saves the data to DB to complete user request. |
| Database server | The database is responsible for storing all externally provided data and information generated by the solution, including voiceprints and transaction logs. It's important to emphasize that audio files are not retained within the database. Additionally, for private cloud and on-premise deployments, customers are required to supply an MSSQL or PostgreSQL Database for the Knovvu Biometrics solution. Customers are accountable for managing and ensuring the redundancy of the database. |
| Audio File Storage (MinIO) | MinIO is used as a file storage which is the high-performance cloud object storage. It is the only object storage suitable for every public, private cloud. MinIO can be deployed anywhere such as public or private cloud, baremetal infrastructure, orchestrated environments, and edge infrastructure. For Knovvu Biometrics solution MinIO is used to store audio files. |
| Message broker (RabbitMQ) | RabbitMQ is a lightweight and widely used opensource message broker that’s main objective is creating a queue for the index manager, indexer, evaluator, and background servers. RabbitMQ is capable of running on many cloud environments. Knovvu Biometrics solution uses RabbitMQ to create queues for notifications and delegating operations between service components. |
| Redis | Redis is in-memory data structure store, used as a database and cache. For Knovvu Biometrics solution Redis is used to cache call and transaction state information. Redis Sentinel, which provides high availability for Redis, always checks master and slave instance whether they working as expected. In case of any failure in Master node, Sentinel will pick a slave instance and promote it to master. The other remaining slave instances will be automatically reconfigured to use the new master instance. |
| DevOps Platform | Prometheus: Prometheus is a free software application used for event monitoring and alerting. It records real-time metrics in a time series database (allowing for high dimensionality) built using a HTTP pull model, with flexible queries and real-time alerting. Knovvu Biometrics uses Prometheus for collecting various metrics from its own services. Grafana: Grafana is a multi-platform open-source analytics and interactive visualization web application. It provides charts, graphs, and alerts for the web when connected to supported data sources. As a visualization tool, Grafana is a popular component in monitoring stacks, often used in combination with time series databases such as Prometheus. Knovvu Biometrics uses Grafana to visualize Prometheus data. Elasticsearch: Elasticsearch is a distributed, free and open search analytics engine for all types of data, including textual, numerical, geospatial, structured, and unstructured. Known for its simple REST APIs, distributed nature, speed, and scalability, Elasticsearch is the central component of the Elastic Stack, a set of free and open tools for data ingestion, enrichment, storage, analysis, and visualization. Knovvu Biometrics uses Elasticsearch as its distributed log provider. Kibana: Kibana is a free and open-source frontend application that sits on top of the Elastic Stack, providing search and data visualization capabilities for data indexed in Elasticsearch. Commonly known as the charting tool for the Elastic Stack (previously referred to as the ELK Stack after Elasticsearch, Logstash, and Kibana), Kibana also acts as the user interface for monitoring, managing, and securing an Elastic Stack cluster — as well as the centralized hub for built-in solutions developed on the Elastic Stack. Knovvu Biometrics uses Kibana for search and visualize Elasticsearch data. |
| Database Migrator (db-migrator) | DB migrator is a service designed to update the database by applying both schema and data changes, typically serving as the initial step in a deployment process. This one-time job ensures that the database structure is aligned with the desired schema and includes the necessary data, facilitating a smooth transition and consistent state for the application or system being deployed. |
Components
- Updated on Aug 22, 2025
- Published on Mar 16, 2023
- 5 minute(s) read
Was this article helpful?

