aboutsummaryrefslogtreecommitdiffstats
path: root/slack/slack_conversation.py
diff options
context:
space:
mode:
authorTrygve Aaberge <trygveaa@gmail.com>2023-01-15 22:16:00 +0100
committerTrygve Aaberge <trygveaa@gmail.com>2024-02-18 11:32:53 +0100
commit5c9c8bd357b2d6a94745c45cd39c312dc48b055e (patch)
treef3fe2619a508b680d83858f10283b5154b8f2773 /slack/slack_conversation.py
parent5b15729e8bce1a951b741e3e983d14fd7913f879 (diff)
downloadwee-slack-5c9c8bd357b2d6a94745c45cd39c312dc48b055e.tar.gz
Fetch multiple users/bots in the same request
Turns out you can query for multiple users/bots with users.info/bots.info even though it's not documented. Use that to query for multiple users/bots in one request, instead of making tons of requests.
Diffstat (limited to 'slack/slack_conversation.py')
-rw-r--r--slack/slack_conversation.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/slack/slack_conversation.py b/slack/slack_conversation.py
index d1e5707..8123df8 100644
--- a/slack/slack_conversation.py
+++ b/slack/slack_conversation.py
@@ -90,6 +90,10 @@ class SlackConversation:
start = time.time()
messages = [SlackMessage(self, message) for message in history["messages"]]
+
+ sender_user_ids = [m.sender_user_id for m in messages if m.sender_user_id]
+ await self.workspace.users.initialize_items(sender_user_ids)
+
messages_rendered = await gather(
*(message.render_message() for message in messages)
)