Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
141
rated 0 times [  147] [ 6]  / answers: 1 / hits: 16437  / 6 Years ago, sun, august 5, 2018, 12:00:00

I have written a discord bot using Discord.js and it used to get all the users of the discord server (I have the bot in one discord server only), but now it only gets 59 members. I have 300+ discord users in the server.



var Discord = require('discord.js');
var bot = new Discord.Client();

function getUsers() {
let users = bot.users.array();

for (let i = 0; i < users.length; i++) {
let username = `${users[i].username}#${users[i].discriminator}`;
console.log(`[${i}] ${username}`);
}
}

More From » node.js

 Answers
5

You have to use the method .fetchMembers() for every discord server the bot is in.



Try to use the following code:



function getUsers() {
let guilds = bot.guilds.array();

for (let i = 0; i < guilds.length; i++) {
bot.guilds.get(guilds[i].id).fetchMembers().then(r => {
r.members.array().forEach(r => {
let username = `${r.user.username}#${r.user.discriminator}`;
console.log(`${username}`);
});
});
}
}

[#53809] Tuesday, July 31, 2018, 6 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
margob

Total Points: 302
Total Questions: 89
Total Answers: 100

Location: Guadeloupe
Member since Sat, Jul 25, 2020
4 Years ago
;