From 336dbca354f48277e2166ba3f2ec6bc8023a3ba2 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Fri, 23 Oct 2020 06:07:36 -0700 Subject: [PATCH] Add a slack_send_message function Just to replace the ugliness of turb.slack_client.chat_postMessage --- turbot/events.py | 26 ++++++++++++++------------ turbot/slack.py | 3 +++ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/turbot/events.py b/turbot/events.py index 2c1e58b..8a5119d 100644 --- a/turbot/events.py +++ b/turbot/events.py @@ -3,6 +3,7 @@ from turbot.blocks import ( ) import turbot.sheets import turbot.slack +from turbot.slack import slack_send_message TURBOT_USER_ID = 'U01B9QM4P9R' @@ -142,9 +143,9 @@ def hunt_channel_created(turb, channel_name, channel_id): hunts_table.put_item(Item=item) # Also, let the channel users know what we are up to - turb.slack_client.chat_postMessage( - channel=channel_id, - text="Welcome to the channel for the {} hunt! ".format(item['name']) + slack_send_message( + turb.slack_client, channel_id, + "Welcome to the channel for the {} hunt! ".format(item['name']) + "Please wait a minute or two while I create some backend resources.") # Create a sheet for the channel @@ -155,9 +156,8 @@ def hunt_channel_created(turb, channel_name, channel_id): hunts_table.put_item(Item=item) # Message the channel with the URL of the sheet - turb.slack_client.chat_postMessage(channel=channel_id, - text="Sheet created for this hunt: {}" - .format(sheet['url'])) + slack_send_message(turb.slack_client, channel_id, + "Sheet created for this hunt: {}".format(sheet['url'])) # Create a database table for this hunt's puzzles table = turb.db.create_table( @@ -182,9 +182,9 @@ def hunt_channel_created(turb, channel_name, channel_id): hunts_table.put_item(Item=item) # Message the hunt channel that the database is ready - turb.slack_client.chat_postMessage( - channel=channel_id, - text="Thank you for waiting. This hunt is now ready to begin! " + slack_send_message( + turb.slack_client, channel_id, + "Thank you for waiting. This hunt is now ready to begin! " + "Use `/puzzle` to create puzzles for the hunt.") return lambda_success @@ -272,9 +272,9 @@ def puzzle_channel_created(turb, puzzle_channel_name, puzzle_channel_id): # Filter out Turbot's own ID to avoid inviting itself members = [m for m in members if m != TURBOT_USER_ID] - turb.slack_client.chat_postMessage( - channel=puzzle_channel_id, - text="Inviting all members from the hunt channel: {}" + slack_send_message( + turb.slack_client, puzzle_channel_id, + "Inviting all members from the hunt channel: {}" .format(hunt_id)) # Invite those members to the puzzle channel (in chunks of 500) @@ -307,4 +307,6 @@ def channel_created(turb, event): else: return hunt_channel_created(turb, channel_name, channel_id) + + events['channel_created'] = channel_created diff --git a/turbot/slack.py b/turbot/slack.py index 02f87e8..b824213 100644 --- a/turbot/slack.py +++ b/turbot/slack.py @@ -58,3 +58,6 @@ def slack_channel_members(slack_client, channel_id): break return members + +def slack_send_message(slack_client, channel_id, text): + slack_client.chat_postMessage(channel=channel_id, text=text) -- 2.43.0