我有以下代码返回以下错误。该错误表示未找到 channel ,但是我正在关注私有(private) channel 的文档,以使用 channel 名称或使用开头带有 G 的 url 中的字符串。我已经为 channel 的机器人提供了正确的聊天写入权限,并且正在使用正确的机器人 api 生成的 toekn,我之前可以通过 webhook 发布,但我想使用 web-api。
这是我指的文档 https://api.slack.com/methods/chat.postMessage#channels
const { WebClient } = require('@slack/web-api');
const token = process.env.SLACK_BOT_TOKEN;
const web = new WebClient(token);
const conversationId = 'private-channel-name'; & tried this instead 'GCV2FGELX'
const result = await web.chat.postMessage({
text: 'Hello world!',
channel: conversationId,
});
这是我得到的错误响应
{
code: 'slack_webapi_platform_error',
data: {
ok: false,
error: 'channel_not_found',
response_metadata: { scopes: [Array], acceptedScopes: [Array] }
}
}
我不太确定我做错了什么,但做一点挖掘,即使我尝试使用测试器获取 groups.list 的请求 https://api.slack.com/methods/groups.list/test使用具有正确权限的身份验证 token ,我只会得到一个空响应,而不是组列表。
这里不确定。
我确实注意到它说
Post into any channel it has access to
对于机器人可以做什么我怎么知道机器人可以访问哪个 channel 。我已授予它对我的整个组织的写入权限?任何帮助,将不胜感激
最佳答案
我也遇到过同样的问题。
您是否尝试将 BOT/APP 添加到私有(private) channel (您可以在 channel 详细信息>>更多>>添加应用程序下找到此内容。
将 BOT/APP 添加到 channel 后。您的消息将被发布到 channel 中。
希望这能解决您的问题。
关于javascript - 未找到 Slack web-api 返回 channel chat.postMessage 到私有(private) channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61468020/