Docker Services

Chat solution comprises the following docker services.

activemq

A mandatory component of the chat solution that must be setup. No change in these service parameters is required. This service is used by chat, mre, comm-server,database-connector.

mysql

By default, the MySQL root user password is ‘root’. You can change it under the environment variable MYSQL_ROOT_PASSWORD.

See more information about this standard docker container in the official MySQL documentation for docker-compose.

This service is used by umm.

umm

This service is used by mre, comm-server, mre-microservice, frontend & ui  and called by application users to configure users, roles, permissions, and adding/modifying the license key.

See UMM Environment Variables for configuring umm service to your environment needs.

Once all configuration is done, UMM service can be accessed with the URL https://<fqdn>/umm where FQDN is the hostname or IP of the host machine.

mongo

This service is used by the database-connector for storing the chats and its metadata. See Mongo Environment Variables for specifying necessary database credentials.

Once all configurations are done, Mongo service can be accessed with URL mongo:port or mongo. If mongo service is configured on the default 27017, the port is not required in URL for establishing the connection.

See MongoDB on Docker hub for modifying default environment parameters.

database-connector

Used by the chat service for storing chat messages. See Database Connector Environment Variables for configuration parameters. These ports are exposed for the customer gadget and 3rd party applications to query chat solution via REST APIs.

ecm

Used to manage outbound SMS campaigns. See ECM environment variables for configuration parameter details.

ecmservices

See ecmservices environment variables for configuration parameter details.

ecm-frontendSee ecm-frontend  environment variables for configuration parameter details.

sms-connector

Used as a connector between ECM, Chat Server and third party SMS Gateway to send and receive SMS.

See sms-connector environment variables for configuration parameter detail.

cs-reporting-connector

This service is required only for reporting with an external SQL server. Remove/comment out this service section if not needed.

See CS Reporting Connector for modifying default environment configurations.

chat

Chat Server is the main messaging core. See Chat environment variables for modifying default environment configurations.

comm-server

Communication Server maintains agent state for voice and non-voice MRDs.  See Comm Server environment variables for modifying default environment configurations.

mre

Media Routing Engine (MRE) routes new/requeued tasks to available agents. See MRE environment variables for modifying default environment configurations.

mre-ui

MRE-UI is web based admin user interface to configure MRE. See MRE UI environment variables for modifying default environment configurations.

mre-microservice

Mre Microservice saves and maintains mre related configurations in mongodb. These configuration include Attributes, Agent-Attribute association, MRD and Precision Queues. See MRE-Microservice Environment Variables to understand each of the service environment variables.

agent-gadget

Agent gadget can be accessed with URL https://<fqdn>/agent-gadget/. See Agent gadget environment variables for modifying defaults.

customer-gadget

The web widget to be embedded in the customer website is loaded from this service. See Customer Gadget and Web Callback environment variables for modifying defaults.

Translations:

customer-gadget/translations folders are created

  • Download translation files from Skeleton Project

  • Copy translation files to customer-gadget/translations directory

  • Restart container

  • For new translations follow this guide

bot-connector

The bot connector connects the solution with rasa bot or articulate. See Bot Connector environment variables for modifying default configurations.

This service is only required if Chat service BOT parameter value set to true.

ui

This the knowledge-base UI application. See Knowledge Base UI environment variables for modifying defaults.

rasa

The Rasa NLU is used along with Articulate. It exposes http port 5000 on internal http 5000 port. There is no environment variable setting  just need to mount volumes

api

This is the Articulate dialogue manager api for rasa NLU. It can be accessed via https://<fqdn>/articulate-hybrid-api. There is no environment variable to set. Only volumes need to be mounted   

duckling

Duckling is a Haskell library that parses text into structured data. This is used with articulate and rasa NLU. It exposes http 8000 port on internal 8500 port. There is no environment variable to set only volumes need to be mounted

redis

Redis is NoSQL Cache DB which Articulate uses to cache some data. It exposes 6379 port on internal 6379 port. There is no environment variable to set only volumes need to be set.

minioMinIO is a cloud storage server released under Apache License v2, compatible with Amazon S3. For deployment related information, check Minio Environment Variables guide.
file-engineFile Engine is a file stream API which is compatible with Minio server. It entertains stream upload and download features. For deployment related information, consult File Engine Environment Variables guide.
eabcEABC is originally a microservice-based upon Supervisor Tools solution. Deployment variables can be found here.