首页 > 解决方案 > 获取应用集成的 Slack 频道

问题描述

我可能会遗漏一些非常简单的东西,但似乎找不到解决方案。

我创建了一个快速而简单的应用程序,旨在每天早上进行一些处理,然后将一些日志发送到 Slack。

使用 Incoming Webhooks 我已经完全能够做到这一点。凉爽的。“问题”是它需要我从应用程序设置中进行设置(也就是说,它显然让我为 Webhook 定义了一个特定的通道,所以我可以拥有特定的 URL),这是我不太喜欢的东西。

我认为如果我可以使用 Slack UI 在频道上添加/集成应用程序会更容易,所以我不必担心必须事先知道消息必须发送到的频道 ID 和任何其他用户也可以集成到他们认为的任何其他渠道中。

我已经将它集成到我的测试频道(一切都很好)并测试chat.postMessage(一切都很好),但它仍然需要这个频道(显然)。但是,使用conversations.list列出所有频道,这与我正在寻找的相反。

我需要一种方法来获取集成了应用程序的那些渠道,以便我可以将消息发布给这些渠道,并且只发布给那些渠道。

这是 Slack 不允许的,还是我在这里遗漏了一些非常明显的东西?

我希望这是有道理的,有人可以对此有所了解:)

标签: slackslack-api

解决方案



您可以使用users.conversations方法来获取调用用户/机器人可以访问的列表对话。
https://api.slack.com/methods/users.conversations

使用Bot令牌调用 API。
使用type参数搜索公共、私人、mpim 和 im对话
https://api.slack.com/methods/users.conversations#arg_types

通过提供以逗号分隔的任何 public_channel、private_channel、mpim、im 组合的列表来混合和匹配频道类型


推荐阅读