slack_send_message(channel, text)
def slack_send_message(channel, text):
- """Send a Slack message to a specified channel.
+ """Send a Slack message to a specified channel."""
- Note: If flask is in debug mode, this function will just print the
- text to stdout."""
-
- app = current_app
-
- if (app.debug):
- print("Sending message to channel '{}': {}".format(channel, text))
- return
+ slack_client.chat_postMessage(channel=channel, text=text)
- try:
- slack_client.chat_postMessage(channel=channel, text=text)
- except SlackApiError as e:
- app.logger.error("Slack API error: " + e.response["error"])
from flask import Flask
from slackeventsapi import SlackEventAdapter
import os
+import threading
from turbot.rot import rot_route
from turbot.slack import slack_send_message
from turbot.sheets import sheets_create
@slack_events.on("channel_created")
def handle_channel_created(event_data):
+ def later(channel):
+ sheet_url = sheets_create(channel["name"])
+ slack_send_message(channel["id"],
+ "Auto-created a sheet for this channel: {}"
+ .format(sheet_url))
+
event = event_data["event"]
channel = event["channel"]
- sheet_url = sheets_create(channel["name"])
- slack_send_message(channel["id"],
- "Auto-created a sheet for this channel: {}"
- .format(sheet_url))
+ thread = threading.Thread(target=later, kwargs={'channel': channel})
+ thread.start()
+ return
@slack_events.on("error")
def handle_error(error):