Skip to content

Commit e992f14

Browse files
rhttimabbott
authored andcommitted
slack-bridge: Use WebClient to post message in Slack.
1 parent 47a4f25 commit e992f14

File tree

1 file changed

+7
-6
lines changed

1 file changed

+7
-6
lines changed

zulip/integrations/bridge_with_slack/run-slack-bridge

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ class SlackBridge:
4545
# slack-specific
4646
self.channel = self.slack_config["channel"]
4747
self.slack_client = slack.RTMClient(token=self.slack_config["token"], auto_reconnect=True)
48+
# Spawn a non-websocket client for getting the users
49+
# list and for posting messages in Slack.
50+
self.slack_webclient = slack.WebClient(token=self.slack_config["token"])
4851

4952
def wrap_slack_mention_with_bracket(self, zulip_msg: Dict[str, Any]) -> None:
5053
words = zulip_msg["content"].split(' ')
@@ -66,16 +69,14 @@ class SlackBridge:
6669
self.wrap_slack_mention_with_bracket(msg)
6770
slack_text = SLACK_MESSAGE_TEMPLATE.format(username=msg["sender_full_name"],
6871
message=msg["content"])
69-
self.slack_client.rtm_send_message(
70-
self.channel,
71-
slack_text,
72+
self.slack_webclient.chat_postMessage(
73+
channel=self.channel,
74+
text=slack_text,
7275
)
7376
return _zulip_to_slack
7477

7578
def run_slack_listener(self) -> None:
76-
# spawn a non-websocket client for getting the users list
77-
_wc = slack.WebClient(token=self.slack_config["token"])
78-
members = _wc.users_list()['members']
79+
members = self.slack_webclient.users_list()['members']
7980
# See also https://api.slack.com/changelog/2017-09-the-one-about-usernames
8081
self.slack_id_to_name = {u["id"]: u["profile"].get("display_name", u["profile"]["real_name"]) for u in members}
8182
self.slack_name_to_id = {v: k for k, v in self.slack_id_to_name.items()}

0 commit comments

Comments
 (0)