📌  相关文章
📜  discord.js 如何向所有公会发送消息 - Javascript (1)

📅  最后修改于: 2023-12-03 15:30:27.802000             🧑  作者: Mango

Discord.js 如何向所有公会发送消息

如果你正在开发 Discord 机器人,你可能会面对向所有公会发送消息的需求。Discord.js 提供了一个简单的方式来实现这个功能,下面我们将介绍如何做到这一点。

步骤
  1. 首先,你需要创建 Discord.js 客户端:
const Discord = require('discord.js');
const client = new Discord.Client();
  1. 接下来,你需要等待客户端准备就绪:
client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
});
  1. 然后,在客户端准备就绪之后,你可以使用 client.guilds.cache 获取所有公会的集合,然后使用 guilds.cache.forEach() 方法来向每个公会发送消息:
client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);
  
  client.guilds.cache.forEach((guild) => {
    guild.systemChannel.send("Hello, World!");
  });
});

在上面的示例中,我们使用 guild.systemChannel 发送消息到每个公会的默认频道。你也可以使用 guild.channels.cache 获取公会中所有频道的集合,并选择一个频道来发送消息。

完整代码

下面是一个完整的 Discord.js 机器人实现向所有公会发送消息的示例代码:

const Discord = require('discord.js');
const client = new Discord.Client();

client.on('ready', () => {
  console.log(`Logged in as ${client.user.tag}!`);

  client.guilds.cache.forEach((guild) => {
    guild.systemChannel.send("Hello, World!");
  });
});

client.login('your-token-goes-here');
结论

现在,你已经知道了如何在 Discord.js 中向所有公会发送消息了。只需创建一个客户端、等待它准备好、获取所有公会并使用 guild.systemChannelguild.channels.cache 发送消息即可。祝你好运!