Slack bot - 向多个工作区中的不同用户发送消息

Slack bot - Sending messages to different users in multiple Workspaces

我想使用 Slack 机器人向不同的用户发送直接消息。我会根据我的网络应用程序的事件发送它们。

但不同的公司会将我的机器人安装在不同的工作区中。这也意味着公司 A 的用户 X 在工作区 A 中,公司 B 的用户 Y 在工作区 B

我的疑惑是:

  1. 如果我调用 API 方法 users.list 它会包括安装了机器人的所有工作区中的所有用户吗?

  2. 所有工作区的 bot 用户访问令牌都相同吗?

1 - 否。users.list 将仅包含一个工作区的用户。链接到您在 API 调用中使用的令牌的那个。

2 - 不。每个工作区都有不同的机器人令牌

这是它的工作原理。

  • 想要在他的工作区中使用您的机器人的用户需要先安装 它。在安装过程中(通过 Oauth 2.0)一个新的令牌 将生成该工作区,您的应用程序将需要存储 它。请注意,安装只能进行一次。令牌不会过期。
  • 当您的应用收到事件时,它将包含团队 ID(引用工作区)。然后您的应用程序需要使用令牌 该工作区进行任何 API 调用。