Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
extra
machine Fix docs Mar 6, 2018
tests
.coveragerc Add help feature Jan 22, 2018
.gitignore Webserver, initial implementation Feb 26, 2018
.travis.yml Remove Python 3.3 from Travis config Dec 3, 2017
LICENSE Bump version Jan 21, 2018
MANIFEST.in Add documentation, fix linting errors, make ready for first PyPI release Aug 29, 2017
README.rst
requirements-dev.txt Update pyroma from 2.3 to 2.3.1 May 28, 2018
requirements.txt Update slackclient from 1.2.0 to 1.2.1 Mar 26, 2018
run_dev.py
setup.cfg
setup.py
tox.ini

README.rst

Slack Machine

https://travis-ci.org/DandyDev/slack-machine.svg?branch=master

Slack Machine is a sexy, simple, yet powerful and extendable Slack bot. More than just a bot, Slack Machine is a framework that helps you develop your Slack team into a ChatOps powerhouse.

extra/logo.png

Features

  • Get started with mininal configuration
  • Built on top of the Slack RTM API for smooth, real-time interactions
  • Support for rich interactions using the Slack Web API
  • High-level API for maximum convenience when building plugins
  • Low-level API for maximum flexibility
  • Plugin API features:
    • Listen and respond to any regular expression
    • Capture parts of messages to use as variables in your functions
    • Respond to messages in channels, groups and direct message conversations
    • Respond with Emoji
    • Respond in threads
    • Send DMs to any user
    • Support for message attachments
    • Listen and respond to any Slack event supported by the RTM API
    • Store and retrieve any kind of data in persistent storage (currently Redis and in-memory storage are supported)
    • Schedule actions and messages
    • Emit and listen for events
    • Help texts for Plugins
    • Built in web server for webhooks

Coming Soon

  • Support for Interactive Buttons
  • ... and much more

Installation

You can install Slack Machine using pip:

$ pip install slack-machine

It is strongly recommended that you install slack-machine inside a virtual environment!

Usage

  1. Create a directory for your Slack Machine bot: mkdir my-slack-bot && cd my-slack-bot
  2. Add a local_settings.py file to your bot directory: touch local_settings.py
  3. Create a Bot User for your Slack team: https://my.slack.com/services/new/bot (take note of your API token)
  4. Add the Slack API token to your local_settings.py like this:
SLACK_API_TOKEN = 'xox-my-slack-token'
  1. Start the bot with slack-machine
  2. ...
  3. Profit!

Documentation

You can find the documentation for Slack Machine here: http://slack-machine.readthedocs.io/en/latest/

Go read it to learn how to properly configure Slack Machine, write plugins, and more!