forked from aivantg/Docubot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.py
45 lines (35 loc) · 1.18 KB
/
app.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from flask import Flask
from utils.slackeventsapi import SlackEventAdapter
from dotenv import load_dotenv
import os
from utils.slackUtils import receive_message, receive_reaction
from utils.db import setup_db
setup_db()
load_dotenv()
SLACK_SIGNING_SECRET = os.getenv("SLACK_SIGNING_SECRET")
# This `app` represents your existing Flask app
app = Flask(__name__)
slack_events_adapter = SlackEventAdapter(SLACK_SIGNING_SECRET, "/events", app)
# Create an event listener for "reaction_added" events and print the emoji name
@slack_events_adapter.on('message')
def message(event, req):
# ignore retries
print(event, flush=True)
if req.headers.get('X-Slack-Retry-Reason'):
print("Ignoring Retry")
return "Status: OK"
receive_message(event['event'])
@slack_events_adapter.on("reaction_added")
def reaction_added(event, req):
# ignore retries
print(event, flush=True)
if req.headers.get('X-Slack-Retry-Reason'):
print("Ignoring Retry")
return "Status: OK"
receive_reaction(event['event'])
port = os.getenv("PORT")
if not port:
port = 3000
# Start the server on port 3000
if __name__ == "__main__":
app.run(host='0.0.0.0', port=port)