Discord.js:用户如何在服务器上读取用户的状态?

我写了一个小程序,需要服务器上所有用户的状态(在线,离线,空闲)。 我发现https://discord.js.org/#/docs/main/master/class/Client?scrollTo=users

bot.on('ready', function() { console.log(bot.users); }); 

这显示所有用户:

 '352....128': User { username: 'NAME', id: '352....128', discriminator: '5000' avatar: null, bot: false }, 

所以没有地位。 机器人无法访问这个? 在embed.js中,我可以读取所有在线和闲置用户的状态(离线用户不在列表中): https ://discordapp.com/api/guilds/SERVERID/embed.json

 {"username": "NAME", "status": "online", "nick": "NICK", "avatar_url": "...", "avatar": "...", "discriminator": "5000", "id": "..."} 

embed.json是获取所有在线和闲置用户状态的唯一方法吗? 所以我需要安装这个包? https://www.npmjs.com/package/jsonfile并阅读这个文件?

例如,您需要让自己的机器人自行设置状态

 const Discord = require("discord.js"); const client = new Discord.Client(); client.on('ready', () => { console.log(`Logged in as ${client.user.tag}!`); client.user.setStatus("online"); }); client.on("disconnected", () => { client.user.setStatus("offline"); console.log(client.user); //returns the current user }); console.log(client.users); //returns all users 

要查看所有客户端事件,请参阅此处

更新

 client.on("message", function(msg){ if(client.user.isAdmin){ //checking as an admin for example if(msg.content == "-showUsers"){ client.deleteMessage(msg, callBackFunc); console.log(bot.users); } } })