← All work
Product · 2019

Multi-Channel Conversational Bot with NLU and Live Chat

Overview

A multi-channel conversational bot built on the Botkit framework, supporting both Facebook Messenger and an embedded web chat widget. It blends NLU-driven automated intent handling with live, human-agent chat and content/news features.

Why It Exists

The platform needed a single bot codebase that could engage users across web and social channels, understand free-text requests, escalate to a human when needed, and serve curated content, without standing up separate stacks per channel.

What We Built

  • A Botkit 4 application (bot.js) wired with the Facebook and Web adapters and MongoDB-backed storage.
  • An intent-processing service (services/ProcessIntent.js) backed by an AWS Lex middleware for natural-language understanding.
  • Feature modules for chat, lex, news, typing indicators, and websocket_features enabling real-time, bidirectional interaction.
  • Google Cloud Translate integration for multilingual handling and the AWS SDK for cloud services.
  • A Dockerfile (Node 11 base) and build.sh for containerized deployment, with SCSS-styled public assets for the web widget.

Technologies & Approach

Node.js with Botkit as the conversational core, AWS Lex for intent classification, MongoDB for conversation state, and WebSockets for live chat and typing presence. Containerized with Docker for repeatable deployment.

Outcome / Impact

Delivered a working omni-channel bot combining automated NLU responses with human handoff and content delivery, an early, practical conversational-AI integration spanning social, web, and cloud NLU services.

Capabilities Demonstrated

  • Building multi-channel chatbots (Messenger + web) on a single Botkit codebase
  • Integrating cloud NLU (AWS Lex) for intent recognition
  • Real-time live chat and typing presence over WebSockets
  • Multilingual support via cloud translation
  • Containerized Node.js deployment
More work See all →