如何让我的不和谐机器人列出某个角色的人?

Posted

技术标签:

【中文标题】如何让我的不和谐机器人列出某个角色的人?【英文标题】:How do I get my discord bot to list people in a certain role? 【发布时间】:2020-11-18 02:29:05 【问题描述】:

我正在尝试让我的 discord.js 机器人列出具有特定角色的人员,但我不知道如何让它工作。我想要它做的是列出某个角色的人,并每 2 分钟刷新一次嵌入(或类似的东西)。现在,我收到一条错误消息 ReferenceError: message is not defined

if (message.member.roles.cache.has('732362918854787103')) 
    const embed = new Discord.MessageEmbed()
      .setTitle(`List of Muted People`)
      .setColor('#0099ff')
      .setDescription(`List of people who are muted.`)
    const support = client.channels.cache.get('732360387101589596')
    if (support) support.send(embed);
;

【问题讨论】:

这能回答你的问题吗? Discord.js V12 how can I show all members with a certain role? 是的,但我不知道如何让它刷新。 【参考方案1】:

以下代码应为您提供您正在寻找的结果:

// Get the role by its name
var yourRole = message.guild.roles.cache.find(role => role.name == "your role");
// Get all members that have the role
var members = message.guild.members.cache.filter(member => member.roles.cache.find(role => role == yourRole)).map(member => member.user.tag);
// Send message containing the members that were found (this can be implemented however you want)
message.channel.send(members);

【讨论】:

以上是关于如何让我的不和谐机器人列出某个角色的人?的主要内容,如果未能解决你的问题,请参考以下文章

如何让我的机器人忽略来自具有特定角色的人的消息? (不和谐.py)

如何让我的不和谐机器人回复“跟进”消息

如何让我的不和谐机器人响应没有前缀的消息

如何修剪没有特定角色的不和谐用户?

发送某些单词时如何让我的不和谐机器人发送附件

如何让我的不和谐机器人加入用户所在的 vc?