]> git.cworth.org Git - turbot/blob - turbot.py
Add Slack dependencies and minimum boilerplate to our flask app
[turbot] / turbot.py
1 #!/usr/bin/env python3
2
3 from slackeventsapi import SlackEventAdapter
4 from slack import WebClient
5 import os
6
7 slack_signing_secret = os.environ['SLACK_SIGNING_SECRET']
8 slack_bot_token = os.environ['SLACK_BOT_TOKEN']
9
10 slack_events = SlackEventAdapter(slack_signing_secret, "/slack/events")
11 slack_client = WebClient(slack_bot_token)
12
13 @slack_events.on("message")
14 def handle_message(data):
15     message = data["event"]
16     if message.get("subtype") is None and "hi" in message.get("text"):
17         channel = message["channel"]
18         response = "Hello {}! :tada:".format(message["user"])
19         slack_client.chat_postMessage(channel=channel, text=response)
20
21 @slack_events.on("error")
22 def handle_error(err):
23     print("ERROR: " + str(err))
24
25 slack_events.start(port=3000)