获取用户所属频道列表

问题描述 投票:2回答:2

编写一个松散的机器人,我希望能够获得我的机器人所属的所有通道的列表。一种方法是调用https://slack.com/api/channels.list,获取所有通道的(可能很大的)列表,然后搜索当前(bot)用户所属的通道。这很好用,但看起来非常沉重。

有没有更好的办法?只获得给定用户所属的频道?

slack slack-api
2个回答
2
投票

不,没有更短的方式来获取此信息。

实际上,Slack建议使用新的conversations方法来完成这项任务,因为所有其他方法中的members属性,例如channels.list最近已更改为仅返回截断的用户列表。有关详细信息,请参阅here

使用conversations,您必须为每个频道拨打一个额外的电话,以获取用户所属的所有频道。然而,它将同时适用于所有类型的频道(例如公共频道,私人频道)。

基本方法是:

  1. 获取conversations.list的所有对话列表
  2. 获取每个会话形式的成员列表conversations.members

因此,如果您希望Slack应用程序能够成为未来的证据,并且与大量用户合作,那么最好使用conversations方法来完成您的任务。


6
投票

我认为users.conversations是你正在寻找的。如果没有其他参数,它将返回主叫用户所属的所有公共频道。

© www.soinside.com 2019 - 2024. All rights reserved.