JSFoo 2016

Tackling speed and performance for JavaScript

Taran J Singh


Facebook Messenger Bot with node.js

Submitted Aug 15, 2016

In this talk we will discuss a Node based framework - ‘nodeMessenger’, (written by us), to build FB messenger bot on top of facebook messenger API.

Facebook Bots?

Facebook messenger bots [Check preview video below] enable us to automate rich conversation with people via FB messenger. FB bots can run on any facebook page - business or personal, and can be personalized with content specific to domain. These Bots can respond to queries, take orders, provide information and much more.

Bot Framework


Preview & Demo


Intended Audience

Anyone interested in building bots for facebook business.


  • Introduction to bots [demo]
  • Introduction to Facebook messaging platform
  • Bot Framework architecture:
    • utterence to intent (wit.ai)
    • conversation CMS (firebase)
    • response templates manager (node.js)
    • customizations [business logins, subscribe, auto responders, Voice interaction, multiple bots] (node.js)
    • intelligence (wolfram alpha)
    • analytics (datascript dashboard)
  • Build your first bot
  • What’s ahead?


This session will cover detailed walkthrough of creating a Facebook Messenger Bot using ‘nodeMessenger’ - a node.js framework. The framework is constantly updated with Messenger API features, and supports voice integration, message templates, auto greetings & subscribe, payment integration(Work in progress), business login, and ability to support multiple bots with different webhooks, on a single secure domain. The bot framework is also integrated with a custom analytics engine to detail usage & user metrics beyond Facebook reports.


Familarity with node.js

Speaker bio

Hello, my name is Taran J Singh. I am an Full Stack Developer and an Experience Technologist, working with Sapient Nitro. My interest areas are Generative Art and Visualizations, IOT & Robotics.


{{ gettext('Login to leave a comment') }}

{{ gettext('Post a comment…') }}
{{ gettext('New comment') }}
{{ formTitle }}

{{ errorMsg }}

{{ gettext('No comments posted yet') }}

Hosted by

JSFoo is a forum for discussing UI engineering; fullstack development; web applications engineering, performance, security and design; accessibility; and latest developments in #JavaScript. Follow JSFoo on Twitter more