Как я могу получить свой discord.js боты “Следят за статусом X пользователей” для автоматического обновления?

#discord #discord.js

#Discord #discord.js

Вопрос:

Я пытаюсь автоматически обновить статус своего бота… пример: если кто-то присоединится к серверу, мои боты в статусе обновятся с x пользователей до c пользователей… вот что я пробовал, но это не сработало

 bot.on('ready', async () => {
    console.log('I am ready!');
    
    setInterval(() => {
        bot.user.setActivity(`${bot.users.cache.size} users |  help`, { type: 'WATCHING' })
    }, 60000);
}); 
 

Комментарии:

1. Почему ваш код не работает? Ставит ли это пользователей как 0? или он вообще не устанавливает активность

Ответ №1:

Вы могли бы обновлять активность своих ботов каждый раз, когда кто-то присоединяется к гильдии, вместо того, чтобы ждать обновления активности одну минуту.

Пример:

 const Discord = require('discord.js'); //Define discord
const bot = new Discord.Client(); //Define bot

bot.on('ready', () => { //when the bot is ready
    console.log('I am ready!'); //Let you know that the bot is ready to be used

    bot.user.setActivity(`${bot.users.cache.size} users |  help`, { type: 'WATCHING' }); //Set a activity when ready
});

bot.on('guildMemberAdd', member => { //when someone new joins a guild
    bot.user.setActivity(`${bot.users.cache.size} users |  help`, { type: 'WATCHING' }); //Update the activity every time someone joins a guild
});
 

Комментарии:

1. Маршрут обновления активности сильно ограничен

2. Однако, если вы просто использовали бота на одном сервере, вы не ожидали, что пользователи будут подключаться 24/7, что означает, что между каждым пользователем будет как минимум 20-секундный разрыв.

3. @GlitchedTurtle нет, он устанавливает правильное количество участников, но я хочу, чтобы он обновился сам… итак, если это было на уровне 239, и кто-то присоединяется к серверу, он обновляет статус до 240