Run a smallwins-slack bot on BeepBoopHQ
npm install beepboop-smallwins-slack
beepboop-smallwins-slack allows bot developers to run a smallwins/slack based bot on the Beep Boop HQ bot hosting platform and support multiple teams.
Supporting multiple teams from a single bot process is made simpler as beepboop-smallwins-slack handles creating new RTM connections as new teams add your bot.
npm install --save beepboop-smallwins-slack``javascript
var slack = require('slack')
var beepboop = require('beepboop-smallwins-slack')
var workers = beepboop.start(slack, {
debug: true
})
workers.on('start', (bot) => {
// on bot started register handlers
bot.hello((message) => {
// connection succeeded
console.log('Got a message: ' + JSON.stringify(message))
})
})
`
see examples/simple.js for an example.
Module has exported function start
* options.debug Boolean - Logs debug output if truebeepboop
* Returns an EventEmitter2 instance. For more information on the events exposed, please see the underlying module's documentation, as it is what is returned here.
Since there can be multiple slack workers spawned (1 for each team), these are exposed via a workers property on the returned beepboop instance after calling start(). The workers property is an object hash where the key is a unique bot token identifying the worker, and the value is the rtm client as returned from slack's listen() function.
`javascript
var slack = require('slack')
var beepboop = require('beepboop-smallwins-slack')
var workers = beepboop.start(slack, {
debug: true
})
// after teams have been added
workers.on('start', function (bot) {
bot.hello(message=> {
console.log(Got a message: ${message})``
})
})
This module will bubble up events sent from the beepboop-js package