如何使用BotKit从Slack API获取用户列表?

Ral*_*thy 5 javascript bots slack-api slack botkit

我试图创建一个发送私信给随机松弛用户一个机器人。我试图完成的第一步是console.logging用户列表。

这是我到目前为止的内容:

controller.hears('marco', 'direct_message', function(bot, message) {
  bot.api.users.list({user: message.user}, function(err, list){
    bot.reply(message, "polo");
    console.log(bot.api.users.list);
  })
});
Run Code Online (Sandbox Code Playgroud)

当我直接向机器人发送消息时marco,它会回复polo[Function]记录下来。我如何可以登录一些真实的数据?我试过bot.api.users.list.members,但它作为记录undefined。谢谢。

小智 5

如果您想列出所有用户,则您使用的是正确的 API 调用,只需从中删除参数({}而不是{user: message.user})。 文档:users.list

如果您想从团队中获取有关特定用户的信息,您应该使用以下 API 调用:bot.api.users.info({ user: USER_ID }, function (err, response) { ... }); 文档:users.info

Slack 文档中还有一个测试部分(“测试器”选项卡),以便您可以尝试 API 调用将为您的实际用户返回什么。