是否有向群组的所有成员发送私人消息的命令?

2022-01-10 00:00:00 discord javascript discord.js

有没有办法让命令使用 discord.js 向 discord 组的所有成员发送私人消息?

Is there any way to make a command send a private message to all members of the discord group using discord.js?

示例:/private TEST

此消息将通过私人聊天而不是频道聊天发送给群组中的每个人.

This message is sent to everyone in the group in private chat instead of channel chat.

推荐答案

你可以遍历 Guild.members.
当您收到以 /private 开头的消息时,您会使用 Guild.members.forEach().
这是一个简单的例子:

You can iterate through Guild.members.
When you receive a message that starts with /private, you take the rest and send it to every member of the guild by using Guild.members.forEach().
Here's a quick example:

client.on('message', msg => {
  if (msg.guild && msg.content.startsWith('/private')) {
    let text = msg.content.slice('/private'.length); // cuts off the /private part
    msg.guild.members.forEach(member => {
      if (member.id != client.user.id && !member.user.bot) member.send(text);
    });
  }
});

这只是一个基本的实现,您显然可以在命令检查中使用这个概念,或者通过添加额外的文本等来修改它.

This is just a basic implementation, you can obviously use this concept with your command checks or modify that by adding additional text and so on.

希望这可以为您解决问题,如果您有任何其他问题,请告诉我:)

Hope this solves the problem for you, let me know if you have any further questions :)

相关文章