Simple application for make slack bot
Project description
slack-bot
Application for easy make slack bot
Content:
Getting Started:
Installing:
pip install slack-bot
Usage:
Code for base slack bot:
# run.py
import os
from slack_bot import Application, Response
app = Application(token=os.getenv('SLACK_TOKEN'))
@app.route('hello')
def main(request):
return Response(request=request, text=f'Hi! {request.user}')
@app.route('deploy {app:w}')
def deploy_staging(request):
current_app = request.match_info["app"]
# body for deploy staging ...
return Response(request=request, text=f'Start deploy {current_app}')
if __name__ == '__main__':
app.run()
Result:
Dockerfile example:
FROM python:3.7-alpine
WORKDIR app/
# This env variable by defauult equal 1
ENV RTM_READ_DELAY=1
# Run install your requirements
RUN pip install slack-bot
# Copy application modules to docker container
COPY . /app/
# Run module with intit application
CMD ['python', '/app/run.py']
Examples:
Many examples, how to use slack-bot
- Adding handlers to app with
@app.route
decorator
import os
from slack_bot import Application, Response
TOKEN = os.getenv('SLACK_TOKEN')
app = Application(token=TOKEN)
@app.route('hello', channels=[], users=[])
def main(request):
return Response(request=request, text=f'Hi! {request.user}')
if __name__ == '__main__':
app.run()
- Use routes table, for adding handlers to app
import os
from slack_bot import Application, Response, RoutersTable
table = RoutersTable()
@table.route('hello')
def say_hello(request):
return Response(request=request, text=f'Hi! {request.user}')
if __name__ == '__main__':
app = Application(token=os.getenv('SLACK_TOKEN'))
app.run()
- Adding all handlers to app
import os
from slack_bot import Application, Response, Route
def say_hello(request):
return Response(request=request, text=f'Hi! {request.user}')
if __name__ == '__main__':
app = Application(token=os.getenv('SLACK_TOKEN'))
app.add_routes([
Route(route='Hello', handler=say_hello),
])
app.run()
Authors:
- Denis Korytkin
License:
This project is licensed under the MIT License - see the LICENSE.md file for details
Dependencies:
base
pip==19.0.3
setuptools==41.0.0
application dependencies
slackclient==1.3.1
parse==1.12.0
slackclient dependencies
certifi==2019.3.9
chardet==3.0.4
idna==2.8
requests==2.21.0
six==1.12.0
urllib3==1.24.2
websocket-client==0.47.0
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
slack_bot-0.0.7.tar.gz
(6.0 kB
view details)
File details
Details for the file slack_bot-0.0.7.tar.gz
.
File metadata
- Download URL: slack_bot-0.0.7.tar.gz
- Upload date:
- Size: 6.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1298fe6c7a9d929128aa004a9cfb70343d38e6bad3a688b80a1c8d78b7fcc2aa |
|
MD5 | 2b5f7c91a2b0f3f5e6cdda56d981e60f |
|
BLAKE2b-256 | d8c786dc3092691638f7f1a1a0fb0e98deae53fad2b6567d50173045ccdd7243 |