Solution Components

Component Architecture


Hybrid Chat Solution Components

Component NameDescriptionProfile name
Customer-Channel-Manager

Customer Channel Manager (CCM) is the component for connecting customer channels such as Facebook and Viber. See Customer Channels for all supported channels and channel capabilities.

The docker-compose file for Customer Channel Manager is located at <install-dir>/sds/docker-compose-ccm.yml and for HA deployment, docker-compose file is located at <install-dir>/sds/docker-compose-ha-ccm.yml. APIs exposed and consumed by Channel Manager are documented on CCM 3.x APIs.

 See Channel Manager for component configurations.

docker-compose-ccm.yml

Routing Engine

Media Routing Engine (MRE) queues and routes requests to available agents. This component contains following Docker services:

  1. mre - the core routing engine. Tweak configurations in MRE Environment Variables
  2. mre-microservice - exposes REST API for MRE configurations. These configuration include Attributes, Agent-Attribute association, MRD and Precision Queues. Tweak configurations of this container in MRE-Microservice Environment Variables.
  3. mre-ui - web based admin user interface to configure MRE. See MRE UI environment variables for modifying default environment configurations. 

docker-compose-routing.yml

HC-ServerHybrid-Chat primary components including bot-connector, chat-server, and file-engine.

docker-compose-hc-server.yml

Database-ConnectorThis component exposes APIs for database access. It also consumes AMQ queues for storing events in the underlying database.

docker-compose-db-connector.yml

Customer-GadgetIt's the web-chat gadget component. 

docker-compose-customer-gadget.yml

Agent-GadgetDeploys an interface for Support Staff's interaction interface

docker-compose-agent-gadget.yml

ActiveMQ Active MQ Publisher/subscriber-based Messaging platform used for Hybrid-Chat  components communication and services 

docker-compose-amq.yml

CampaignsCampaigns Management

docker-compose-campaigns.yml

KnowledgeBaseArticulate Bot for an  automated action/response, assisting the Support Staff

docker-compose-kb-integration.yml

EABCDefines business calendar and holidays

docker-compose-eabc.yml

User Management ModuleBasic User Management Module with a web-based interface to do user/group manipulation.

docker-compose-umm.yml

Service-GatewayNginx based Application layer routing, also responsible for failover routing in case of High Availability deployments. This only applies to the application level. 

docker-compose-service-gateway.yml

RasaTo install local rasa bot with rasa x.

docker-compose-rasa-x.yml

MySQLBackend database service for the User Management Module.

docker-compose-mysql.yml

Mongoprimary database component for storing and retrieval of Hybrid-Chat-related historical data includes chat histories and other information. 

docker-compose-mongo.yml

Load Balancer

HAProxy based Layer4 load-balancer. Primarily runs on a separate node in a High Availability deployment model.

docker-compose-loadbalancer.yml

Starting with release 3.16.x, there is no difference between "Single Node" and "HA" deployment profiles. The deployment script automatically updates these profiles based on the deployment type.