Как я могу наградить пользователей XP за нахождение в голосовом канале?

#node.js #discord.js

Вопрос:

Я относительно новичок в node.js и discord.js .

Я пытаюсь дать каждому пользователю в определенном голосовом канале случайное количество XP, используя discord-xp npm, за каждые 30 секунд, которые они проводят в голосовом канале.

Я сталкиваюсь с этой ошибкой

 /home/runner/Peeper-Bash/index.js:78
    const randomXP = await Math.floor(Math.random() * 100)   1;
                     ^^^^^

SyntaxError: await is only valid in async functions and the top level bodies of modules

 

Это мой код

 setInterval(() =>{ 
let voiceChannel = client.guilds.cache.get(process.env.DISCORD_GUILD_ID).channels.cache.get("539323872101531670");
let membersInChannel = voiceChannel.members.size;
const members = voiceChannel.members;
if (membersInChannel > 0) {
  members.forEach(member => {
    console.log(member.user.id);
    const randomXP = await Math.floor(Math.random() * 100)   1;
    const hasLevelUP = await Levels.appendXp(member.user.id, process.env.DISCORD_GUILD_ID, randomXP)
  });
}
}, 30000);

 

Любая помощь будет оценена.

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

1. Чтобы использовать await ключевое слово, вы должны работать внутри async функции .

2. Кроме того, await там даже не нужно! Однако для обещаний await или .then необходимы. Для этого требуется асинхронная функция, как описано выше