Chat History Server

User generated content can be store on-premise or in a ServisBOT customer’s private cloud if required due to security or regulation. Our Chat History Server provides secure storage of all conversations with end-users. We provide this through docker containers and images that can be deployed in any infrastructure so that the data and the application is under our customer’s control.

Technical Details

  • Our CHS uses a NodeJS and MySQL container. The MySQL container is not absolutely necessary. Data can live in your own MySQL compatible storage.
  • Minimum Hardware Requirements
    • MySQL: 1CPU, 2Gb RAM
    • Node App: 1 CPU, 512mb RAM

To get access to our CHS images or docker containers, please contact your customer success representative.

Installation Instructions

The following instructions will walk you through the main pieces required to set up a CHS locally. These steps can be reproduced in your desired cloud or on-prem environment using docker or our instance images.

Prerequisites

  • A machine or server with docker compose installed
  • Docker compose application is needed
  • A SQL client
  • Access to a development localhost tunneling service such as ngrok
  • CHS Enabled for your organization and configured (contact customer support once your CHS is available.)

Request the CHS Docker Image

Contact Customer Support to be provisioned access to our CHS docker

Set Your Config

Copy the sample environment file. This can be done by the terminal by running

cp env-sample .env

Adjust the settings to match any alternate requirements that you have.

Initiate the Container

To initiate the server, just run

docker-compose up -d

This will spin up 2 docker containers. One for the node application, and one for the MySQL server.

You can check the logs for each container to make sure they got spun up properly using a the docker log command.

docker logs sb-remote-conversation-history_mysql-db_1

Confirm Initialization

Once you have the docker container running the main application, you can test the application / database configuration by sending a POST request to the following url. localhost:8080/ping

If you have curl installed, it can be tested with the following command:

curl -I -X POST localhost:8080/ping

Deploy

  • For quick testing, you can use a service such as ngrok. e.g ngrok http 8080
  • For environment setup, docker can be used to quickly provision an environment using our images, or you can use the images and load them into a service of your choice.
  • Ensure traffic on port 8080 is whitelisted to our CHS IP, provided by customer success.

Enabling CHS for your org

If you have purchased this add-on for ServisBOT, reach out to your customer care representative with the URL or domain where your CHS can be reached.

Testing

Once everything is configured user generated content will be persisted in your CHS instead of ServisBOT. * Test one of your bots, if you do no have one created yet, follow Getting Started Docs * Review the Chat History * Log into your mysql instance and review the data stored in the messages_v1 table