README
What is this?
A program that can transmit messenges in slack to Facebook.
You can run this on c9.io
Getting started
Create bot account
- Register a new facebook account as robot.
- Add robot you created to an exsisting chatroom, get
thread_id
of that chatroom on the url by clickingOption->See Full Conversation
.
The URL will like this ->https://www.facebook.com/messages/conversation-<thread_id>
- Record the
thread_id
as we will need it after.
Installation on your server
$ npm i slack-facebook-buddy
An example
// index.js
var Buddy = require('slack-facebook-buddy');
var options = {
account: {id: 'facebook_account', pwd: 'password'},
router: {groupRouter: '/totest', group2Router: '/totest2'},
threadID: {groupID: 123355678, group2ID: 123444444},
nameList: {
lockys: 'HAO-WEI',
buddy: 'Good Friend',
},
delimeter: 'fb=', // Note that delimeter must equals to trigger word.
};
var buddy = new Buddy(options);
// login your bots!
buddy.login();
// You can set different routes for different channels and
// send messenges in slack to a specified chatroom(base on thread_id)
buddy.setRoute(options.router.groupRouter, options.threadID.groupID);
buddy.setRoute(options.router.group2Router, options.threadID.group2ID);
// start the bot.
buddy.startBot();
// re-login every 1 hr.
buddy.setLoginTimeOut(3600000);
About options
variable
account
Your robot's account and password.
router
Specify router so that slack could post request to your post url
.
threadID
Every chatroom will have a thread id.
nameList
A slack-id to facebook name mapping so that people in chatroom could know who is talking.
Run bot!
(Optional) You can use pm2
module to manage process.
$ pm2 start index.js
# or just
$ node index.js
You need to configure channel setting of Slack to make bot receive post req from Slack
- Open out-going webhook setting of your channel in integration panel.
- Set
fb=
as trigger word. - Set your server's
post url
in url field.
An example ofpost url
according to your host:http://example.io/totest