slack-phrase-command/index.js

32 lines
748 B
JavaScript
Raw Normal View History

2014-08-09 22:20:03 +00:00
var _ = require('lodash');
2014-08-09 21:57:42 +00:00
module.exports = function(configuration) {
2014-08-09 22:20:03 +00:00
var listenOn = (function(name) {
switch (typeof name) {
case "string":
return [name];
case "object":
if (name instanceof Array) {
return name;
}
//fallthrough
default:
return ["phrase"];
}
})(configuration.command);
function handler(slack) {
try {
slack.replyUser(slack.text);
} catch (e) {
slack.error(e.toString());
}
}
2014-08-09 21:57:42 +00:00
return function(ee) {
2014-08-09 22:20:03 +00:00
_.forEach(listenOn, function(commandName) {
ee.on(commandName, handler);
2014-08-09 21:57:42 +00:00
});
};
};