Components

Prev Next
Component Description
Knovvu web application Web application is a lightweight Angular application. Its main duty is sending requests to the Internal API according to the user activities through the GUI and rendering gathered data​.
Knovvu identity server Manages authorization and authentication processes of the solution. It authenticates and issues a token for a user with the roles defined.
Knovvu internal API Internal API is the API that is used by the 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. For instance, if a user tries to create a new query defined query structure is delivered to DB with the help of Internal API.
Knovvu external API External API is used for the integrations of clients to successful deliver conversations and manage other conversational data. For instance, through the Ext API it is possible to post conversations, notifications, and events, get scenarios, issue user management by creating or editing users and departments There exist three different default roles to authorize using External API as Analyzer, Customer and Reporter. Each method defining External API’s abilities are listed under CA-Ext-API Reference.
Knovvu database server Database stores all data delivered externally and the information generated by the solution. Please note that audio or video files are not stored in db. The customer must provide a MSSQL or PostGreSQL Database for the Knovvu RTG solution. Therefore, customer is responsible for its redundancy.
Redis Redis is in-memory data structure store, used as a database and cache. For Knovvu RTG solution Redis is used to cache session details, dialog history and tree information. Redis Sentinel provides high availability for Redis. Sentinel 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 RTG 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 RTG product 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 RTG product 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 RTG product uses Kibana for search and visualize Elasticsearch data.