在Slack上,我知道使用chat.postMessage
允许我单独向每个用户发送消息,但是我如何直接向整个团队(400名成员)发送消息?
您好,因为您需要一个包含其中所有400个频道的频道,因此目前您无法发送给400个人用户。要将消息发送到通道,只需为postMessage方法添加通道参数即可。
没有chat.postMessage
的“批量”变体。因此,您基本上需要构建自己的批量邮件发件人,您可以通过迭代用户列表并向每个用户发送一条消息来轻松完成。
您可以使用users.list
获取所有用户的列表。然后,您有两个发送直接消息的选项:
chat.postMessage
的IM渠道ID,然后将其用作im.open
的渠道。这只有在你有bot用户并从bot用户发送消息时才有效。但请记住,每秒的请求限制为1条消息。
对于Slack和您的应用之间的许多请求,还有3秒的请求超时。 (例如,对斜杠命令的直接响应)。因此,如果您的机器人需要发送许多消息,您希望使用允许您异步发送它们的方法。
这个问题的一个解决方案对我来说非常有效,就是为我的机器人发送的所有Slack消息使用消息队列。