ah-slack-plugin

0.1.2 • Public • Published

ActionHero Slack Plugin

CircleCI

A Slack server for ActionHero v18+. It will listen to all messages in all the rooms it is a member of, and do stuff.

Does you action have a response? It will be send back to slack. Don't want to respond in Slack? Set data.toRender = false in your action's run method.

Configuration

In your ActionHero project: npm install --save ah-slack-plugin

Make a new bot for your slack team: https://my.slack.com/apps -> manage -> custom integrations -> bots -> new Note the TOKEN

// config/plugins.js
const path = require('path')
 
exports['default'] = {
  plugins: (api) => {
    return {
      'slack': {path: path.join(__dirname, '..', 'node_modules', 'ah-slack-plugin')}
    }
  }
}
// config/servers/slack.js
exports['default'] = {
  servers: {
    slack: (api) => {
      return {
        enabled: true,
        token: process.env.SLACK_BOT_TOKEN,
        // which messages should we try to parse as actions?  (could be a /command, @ a user, etc)
        // be sure to have a capture, as what you capture will be the action's name we try
        // for example `/^action\s(\w*).*$/i` would match `action thing otherThing`, trying the action "thing"
        messageActionRegexp: [
          /^action\s(\w*).*$/i,
        ]
        // how many messages should we store a history of receiving
        // messages can be accessed in `api.servers.servers.slack.messages`
        messagesToSave: 100
      }
    }
  }
}
 

Readme

Keywords

none

Package Sidebar

Install

npm i ah-slack-plugin

Weekly Downloads

0

Version

0.1.2

License

none

Last publish

Collaborators

  • evantahler