chatty-bot v1.0.1
chatty-bot
Little framework to test and build Facebook Messenger Chatbots on Node
You can run your app from the command line

Before deploying

Getting Started
Create a node project
npm initInstall chatty-bot globally (so it can run from the command line)
npm install -g chatty-botThen add it to your current project
npm install -save chatty-botCreate a file called
app.jsThis is where your chat code goes. And copy this into it.var app = {}; app.request = function(text, senderId, sendText, sendTemplateData){ if(text.toLowerCase().indexOf('help') > -1){ sendText('I can help you. Ask me a question.'); } else if (text.toLowerCase().indexOf('?') > -1){ sendTemplateData(createMsg()); } else { sendText('Hello there '); } }; app.postback = function(payload, senderId, sendText, sendTemplateData){ if(payload === 'robot'){ sendText('Hello comrade'); } if(payload === 'human'){ sendText('Human beings are a disease, a cancer on this planet, you are a plague, and we...are the cure.'); } } function createMsg(){ var messageData = { "attachment": { "type": "template", "payload": { "template_type": "generic", "elements": [{ "title": "Before we start", "subtitle": "Are you a robot or a human?", "image_url": "http://i.imgur.com/JD3ydzu.jpg", "buttons": [{ "type": "postback", "title": "Robot", "payload": "robot", },{ "type": "postback", "title": "Human", "payload": "human", }], }] } } } return messageData; } module.exports = app;The
appis passed to the chatty-app cli and server, you just need to write implementations forapp.requestandapp.postback.Two functions:
sendTextandsendTemplateDataare passed to the app. Call these to either send text or a structured message.sendText('Hello there ');On the command line type:
chattybotAnd start chatting on the command line.
To select a structured template message type ~ followed by the title, followed by the button title. e.g.
~Before we start HumanTo hook up your app to messenger, create a file called
index.jsAnd copy the code below into it.var chattybot = require('chatty-bot') var app = require('./app') chattybot.listen(app, process.env.PORT || 5000, <YOUR PAGE ACCESS TOKEN>, <YOUR VERFIY TOKEN>);Then deploy.
Help
Get the tokens from Facebook.
An excellent beginner's tutorial.
This is a new project so pull requests and issues welcome.
TODO
Add welcome message for a new thread
Pass sequence number to app