Javascript Discord机器人能否通过频道向所有人发送消息

Javascript Discord机器人能否通过频道向所有人发送消息,javascript,discord,discord.js,Javascript,Discord,Discord.js,我正在用nodeJs服务器上的discord.js库编写一个discord Bot。 这里是我的问题:当一个事件发生(比如某人发送消息)时,bot是否会向角色的成员或所有人应答。message.reply(“我的回复”)方法只回答邮件作者,因为我现在使用它…你的问题是,这是一个非常有限的方法:它总是提到邮件作者,你不能覆盖它 您需要使用一种更通用的方法,并自行构建该方法.reply()只是一种常用形式的快捷方式,但您需要一些自定义内容 想必,您希望它与消息发生在同一个频道中,因此需要messag

我正在用nodeJs服务器上的discord.js库编写一个discord Bot。 这里是我的问题:当一个事件发生(比如某人发送消息)时,bot是否会向角色的成员或所有人应答。message.reply(“我的回复”)方法只回答邮件作者,因为我现在使用它…

你的问题是,这是一个非常有限的方法:它总是提到邮件作者,你不能覆盖它

您需要使用一种更通用的方法,并自行构建该方法
.reply()
只是一种常用形式的快捷方式,但您需要一些自定义内容

想必,您希望它与消息发生在同一个频道中,因此需要
message.channel.send(“任意内容”)

现在,要添加角色,您需要决定如何选择一个角色。修好了吗?然后您可以:
(当然,它需要是您需要的角色ID)

如果你想找到一个角色,比如通过名字,你需要通过搜索相关的公会来找到。您可以通过
message.guild
访问它,但需要注意的是,DMs将无法定义它

然后你可以做类似的事情

const role = message.guild.roles.find(role => role.name === "NameYouWant");
message.channel.send(`${role} something something`);
因为角色对象在转换为字符串时变成了引用。

您的问题是,这是一种非常有限的方法:它总是引用消息的作者,而您不能覆盖它

您需要使用一种更通用的方法,并自行构建该方法
.reply()
只是一种常用形式的快捷方式,但您需要一些自定义内容

想必,您希望它与消息发生在同一个频道中,因此需要
message.channel.send(“任意内容”)

现在,要添加角色,您需要决定如何选择一个角色。修好了吗?然后您可以:
(当然,它需要是您需要的角色ID)

如果你想找到一个角色,比如通过名字,你需要通过搜索相关的公会来找到。您可以通过
message.guild
访问它,但需要注意的是,DMs将无法定义它

然后你可以做类似的事情

const role = message.guild.roles.find(role => role.name === "NameYouWant");
message.channel.send(`${role} something something`);

因为角色对象在转换为字符串时会变成引用。

您可以找到角色的所有成员,并对该角色中的所有成员进行foreach可能的重复我知道如何做到这一点,但我不知道如何通过reply方法将消息发送给角色成员。在foreach上,您将获得成员承诺和你可以成为会员。回答你问的问题。如果对你没有任何用处,为什么还要麻烦使用
msg.reply
?做你需要的事情,你只需要把它放在一个
client.on(“message”,msg=>{…})呼叫,你可以找到角色的所有成员,并对角色中的所有成员进行foreach。我知道如何做,但我不知道如何通过回复方法将消息发送给角色成员。在foreach上,你将获得成员承诺,你可以成为会员。回答你的问题。如果对你没有任何用处,为什么还要麻烦使用
msg.reply
?做你需要的事情,你只需要把它放在一个
client.on(“message”,msg=>{…})呼叫,然后从
消息中获取公会。公会
或其他任何信息。谢谢Xan,这完美地解决了我的问题。我已经通过公会找回了角色。我想我自己很难发现角色转换会将角色转换成字符串,所以代码的最后一部分非常有用。@Xan请看谢谢Xan,这完全解决了我的问题。我已经通过公会找回了这个角色。我想我自己很难发现角色转换会把它们转换成字符串,所以代码的最后一部分很有用。@Xan请看