Skip to content

matsub/slashcommands

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wercker status

slashcommands

A tiny framework for slash commands of Slack.

Installation

with Python 3.6+

$ pip install slashcommands

Usage

Create a program as below,

from slashcommands import SlashCommands

TOKEN = '--- Your Verification Token Here ---'
app = SlashCommands(TOKEN, prefix='/slack/')


@app.route('/')
def hello(body):
    return "hello!"


@app.route('/hey')
def foo(body):
    response = {
        "text": "What'up @{0} !!".format(body['user_name']),
        "response_type": "in_channel",
    }
    return response


if __name__ == '__main__':
    app.run(port=8080)

and run it on your server.

The argument body is the request from slack. This is typed as a dict object. See the Documentation of Slack for the structure of this request.

Using modules

As your program gets longer, you may want to split it into several files. To support it, each SlashCommands object can inherit another SlashCommands object like,

app = SlashCommands(TOKEN)
subapp = SlashCommands(TOKEN, prefix='/sub/')


@app.route('/')
def hello(body):
    return "hello!"


@subapp.route('/')
def sub(body):
    return "I'm subapp!"


app.install(subapp)

now app object has additional path /sub/.

About

A tiny framework for slash commands of Slack.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages