javascript - 未找到 Slack web-api 返回 channel chat.postMessage 到私有(private) channel

标签 javascript http post slack-api

我有以下代码返回以下错误。该错误表示未找到 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 详细信息>>更多>>添加应用程序下找到此内容。

Slack Channel Detail Screen Shot

将 BOT/APP 添加到 channel 后。您的消息将被发布到 channel 中。

希望这能解决您的问题。

关于javascript - 未找到 Slack web-api 返回 channel chat.postMessage 到私有(private) channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61468020/

相关文章:

javascript - 在javascript中忽略正则表达式中的空格和不同大小写的最佳方法是什么

http - 4D Web 服务器和 session 变量

javascript - 创建并发送 Zip 文件 -NODE JS

javascript - Gulp Concat 文件顺序然后任何其他 js 文件

javascript - Reactjs : Read value of a Radio Button

javascript - 发现 Nodejs 的 promise

http - 为什么我从亚马逊弹性负载均衡器后面发送重定向时会收到 502 错误网关?

使用 POCO 的 C++ Http 请求

c# - C# .NET 中的异步 POST 请求

java - Thymeleaf 解析模板时出错 - 使用 method=RequestMethod.POST