Skip to content
MaxShapiro32 edited this page Jul 22, 2019 · 3 revisions

Short title

Build a chatbot

Long title

Build a chatbot that uses Watson Assistant and Elasticsearch

Author

URLs

Github repo

Summary

This Code Pattern, creates a Node.js chatbot application that uses Watson Assistant and Elasticsearch. The application can run on either Kubernetes or Cloud Foundry.

Technologies

  • Containers
  • Conversation
  • Node.js

Description

This code pattern is based on the chatbot that is being used for the IBM Developer mobile application. Similarly to the chatbot used for that application, the chatbot for this code pattern also utilizes Watson Assistant and Elasticsearch. The chatbot for this code pattern uses TV shows data from TV Maze to make recommendations and provide show information.

After completing this pattern, you will understand how to:

  • Create a chatbot end to end
  • Deploy and run a Node.js application on Kubernetes and/or Cloud Foundry

Flow

Kubernetes

Cloud Foundry

  1. User interacts with chatbot from the React UI of the mobile application by asking question via text.
  2. React UI sends User's message to the Node.js backend on Cloud Foundry.
  3. The Node.js backend sends the message to Watson Assistant to determine the intent and entities of the User's message.
  4. The Node.js backend querys the Elasticsearch database based on the intents and entities processed by Watson Assistant.
  5. The response and results are sent to the React UI.

Instructions

Find the detailed steps for this pattern in the readme file. The steps will show you how to:

  1. Deploy to the cloud using either Kubernetes or Cloud Foundry.

Components and services

  • Cloud Foundry
  • Docker
  • IBM Cloud
  • Kubernetes
  • Watson Assistant
  • Elasticsearch

Runtimes

  • javascript/node