向角色中的每个用户写入DM

时间:2020-07-13 12:59:18

标签: discord discord.js

如何为角色中的每个用户编写DM?我要做的是,当您获得一个VoiceChannel关节时,所有这些都由DM以特定角色编写。最好的方法是什么?

在这里输入我的代码:

  const guild = bot.guilds.cache.get('601109434197868574');
  const voiceChannel = guild.channels.cache.get('706243822564409444');

  
  voiceChannel.members.forEach(member => {
    let sup = guild.roles.cache.find(role => role.name === '▬▬ Anastic | Supporter ▬▬⠀');
    sup.send('Hey!')

  })
}, 10000)```

1 个答案:

答案 0 :(得分:1)

sup是一个角色,您正在尝试向该角色本身发送消息,这是不可能的。 (Role.send('Hey!')。

您需要遍历角色成员。

const Guild = client.guilds.cache.get("GuildID");
if (!Guild) return false;

const Role = Guild.roles.cache.find(role => role.name == "▬▬ Anastic | Supporter ▬▬");
if (!Role) return false;

Role.members.forEach(member => {
    member.send("Hello!").catch(e => console.error(`Couldn't send the message to ${member.user.tag}!`));
});