Bot Connector Configuration Guide

Bot Connector can be configured to run in integration with any of the following bots. 

  • Rasa Core
  • Articulate
  • Dialogflow

Integration with Rasa Core

Environment Variables

Config Parameter

Expected Value

Description

CHAT_SERVER_URL

https://chat:8443

This is the chat docker-service URL.

BOT_IDbotBot id of this bot, need to update in chat environment variables if modified

BOT_NAME

EF Bot

When the bot joins a conversation, this is the name displayed on the customer gadget as the Bot's display name. The default value is EF Bot. It can be any alphanumeric string. 

BOT_TYPE

Rasa

Set the value Rasa when Rasa Core is used. The value is case insensitive.

BOT_API_URL

https://rasa-hybrid-bot:7500


URL of Rasa Core on which it is listening

FAILURE_MESSAGE

<Deprecated>

Bot service is not available, we are finding an agent for you

This is the default message to the customer when the bot-connector experiences any problems connecting the Bot

TIMEOUT

10

This is the HTTP request timeout in seconds the bot-connector awaits for a response from the Rasa bot. 
Note: This timeout variable is only used when BOT_TYPE is Articulate or Rasa

NODE_ENVproductionFor production, please use this environmentCHAT_SERVER_URL
BOOTSTRAPfalse
MAX_RETRIES10


Integration with Articulate

Environment Variables

Config Parameter

Expected Value

Description

CHAT_SERVER_URL

https://chat:8443

This is chat service URL.

BOT_NAME

EF Bot

When the bot joins a conversation, this is the name displayed on the customer gadget as the Bot's display name. The default value is EF Bot. It can be any alphanumeric string. 

BOT_TYPE

Articulate

Set the value to Articulate when Articulate is used. The value is case insensitive. 

BOT_API_URL

https://rasa-hybrid-bot:7500


If Articulate is being used then enter the articulate server API URL.

FAILURE_MESSAGE

<Deprecated>

Bot service is not available, we are finding an agent for you

This is the default message to the customer when the bot-connector experiences any problems connecting the Bot

BOOTSTRAP

false

Only need this variable When Articulate is being used.  Set the value to:

  • false - when Articulate bot agents are already created such as English, French bot agents.
  • true - when Articulate bot agents should be created on startup and they don't already exist. 

The values are case sensitive.

TIMEOUT

10

This is the HTTP request timeout in seconds the bot-connector awaits for a response from the Rasa bot. 
Note: This timeout variable is only used when BOT_TYPE is Articulate or Rasa

MAX_RETRIES

10

Bot-connector calls http[s]://articulate.customer.com:7500/agent/ to get a list of all bot agents created in Articulate. MAX_RETRIES specifies the total number of retries in the case of no response. 


Note: This variable is only used when BOT_TYPE is Articulate.

NODE_ENVproduction
BOOTSTRAPfalse
MAX_RETRIES10


Volumes

The path of volume should be ${PWD}/docker/config/bot-connector/agent-config:/usr/src/app/agent-config. In agent-config folder place the agent configuration file (agent-config.json).  This file contains the settings of Articulate agents and is used to create bot based on language. If new bot needs to be created then we will add the configuration in this file and set the BOOTSTRAP environment variable to true.  Sample config file is available here.


Integration with Dialogflow

To integrate with DialogFlow, you should have DialogFlow subscription. Get started following DialogFlow getting-started guide

Environment Variables

Config Parameter

Expected Value

Notes

CHAT_SERVER_URL

https://chat:8443

This is the chat docker-service URL.

BOT_NAME

EF Bot

When the bot joins a conversation, this is the name displayed on the customer gadget as the Bot's display name. The default value is EF Bot. It can be any alphanumeric string. 

BOT_TYPE

Dialogflow

Set the value to Dialogflow when Google Dialogflow is used. The value is case insensitive.

FAILURE_MESSAGE

<Deprecated>

Bot service is not available, we are finding an agent for you

This is the default message to the customer when the bot-connector experiences any problems connecting the Bot
PROJECT_IDenglish2-737d6

Once you have created DialogFlow Agent, specify the Project ID against this attribute. In DialogFlow, you can find it under DialogFlow Agent Settings. The Project_ID is necessary in order to get the authentication and get access to the Dialogflow libraries.

Volumes

The path of volume should be ${PWD}/docker/config/bot-connector/dialogflow-key:/usr/src/app/dialogflow-key. In dialogflow-key folder, place the key file which you can get from Dialogflow account, the name of the key file should be dialogflow-keyfile.json. Follow this guide to get this key file. This file contains the authentication settings used to authenticate your dialogflow client library with google. 

Please note that the name of the key file MUST be dialogflow-keyfile.json