gpt4 book ai didi

javascript - Slack API 不返回私有(private) channel

转载 作者:行者123 更新时间:2023-11-30 14:09:29 24 4
gpt4 key购买 nike

我正在尝试获取 Slack 中的私有(private) channel 列表(基于每个用户都可以),但我无法查看此信息。我最初将我的应用程序安装到 Slack 的工作区中,并获得了 xoxp-4...... 形式的 OAuth token 。

应用 OAuth token

当我尝试使用 slack API( Node SDK)时,我只能获得公开列出的 channel 。

await new WebClient(`xoxp-4.....`)
.conversations
.list({ exclude_archived: true })
).channels

如果我尝试使用 Slack API 测试器获取 channel list,我也会得到同样的结果.

用户 OAuth token
我关注了 OAuth 2.0为给定用户(我自己)获取 token 的过程。我想我已经正确地完成了所有这一切(这是一个回应):

{
ok: true,
access_token: 'xoxp-4.........',
scope: 'identify,bot,commands,channels:history,groups:history,im:history,mpim:history,channels:read,emoji:read,groups:read,im:read,search:read,team:read,users:read,users:read.email,usergroups:read,users.profile:read,chat:write:user,chat:write:bot,links:read',
user_id: 'UD......',
team_name: '............',
team_id: '.......',
scopes: ['identify',
'bot',
'commands',
'channels:history',
'groups:history',
'im:history',
'mpim:history',
'channels:read',
'emoji:read',
'groups:read',
'im:read',
'search:read',
'team:read',
'users:read',
'users:read.email',
'usergroups:read',
'users.profile:read',
'chat:write:user',
'chat:write:bot',
'links:read'
]
}

有趣的是,我发现如果我转到应用程序管理,它会为我提供完全相同的 OAuth token (我假设是因为是我将应用程序安装到工作区)。

显然,因为是同一个标记,我仍然没有获得查看私有(private) channel 的权限,即使据我所知我应该能够做我作为用户能做的一切?

谁能指出我可能遗漏了什么?

最佳答案

您没有获得私有(private) channel 的原因是您没有请求它们。

conversations.list默认情况下,方法将仅返回公共(public) channel 。要同时获得私有(private) channel ,您需要相应地设置参数 types。例如types = public_channel,private_channel.

类似于调用channels.list . Channels.list 将只返回公共(public) channel 。如果您想获得私有(private) channel ,您需要调用groups.list . (请注意,由于历史原因,私有(private) channel 在 API 中称为组)。

一般来说,我会推荐使用 conversations.list,它更强大,也是获得所有类型对话的推荐方法。

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

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com