如何向每个服务器bot发送消息在discord.js中

如何向每个服务器bot发送消息在discord.js中,discord.js,Discord.js,我想让我的机器人向它所在的每个公会发送一条消息,但我无法让它工作。我真的需要一些帮助。我不确定,但是如果您创建一个json文件,并在该服务器中填入您要向其发送消息的服务器id和频道id。 例如: 然后创建一个命令,在这个文件中循环,检查客户端是否在这些服务器中,如果它在服务器中,它应该检查该通道是否存在于该公会中,如果存在,它最终会将消息发送到那里。 理论上这应该行得通,但我仍然不知道这是否可行 再次检查以了解有关客户和行会的更多信息您的问题有点模糊,但这里: bot.guilds.cache.

我想让我的机器人向它所在的每个公会发送一条消息,但我无法让它工作。我真的需要一些帮助。

我不确定,但是如果您创建一个json文件,并在该服务器中填入您要向其发送消息的服务器id和频道id。 例如:

然后创建一个命令,在这个文件中循环,检查客户端是否在这些服务器中,如果它在服务器中,它应该检查该通道是否存在于该公会中,如果存在,它最终会将消息发送到那里。 理论上这应该行得通,但我仍然不知道这是否可行
再次检查以了解有关客户和行会的更多信息

您的问题有点模糊,但这里:

bot.guilds.cache.forEach(guild => {
    console.log(guild.name);
    let annmess = args.join(" ").slice(18)
    if (!annmess) return message.channel.send("Specify a message to announce")
    try {
      guild.channels.cache
        .find(x => x.name.includes("general" && "main" && "main-chat" && "chat" && "lounge"))
        .send(annmess);
    } catch {
      console.log("Message wasn't sent for " + guild.name);
    }
  });
这主要是缓存bot所在的每台服务器,并自动向任何包含“general”、“main”、“main chat”和“chat”的频道发送消息。(如果需要,您可以添加更多)

您可以使用地图在您的机器人所属的每个帮会中循环。
bot.guilds.cache.forEach(guild => {
    console.log(guild.name);
    let annmess = args.join(" ").slice(18)
    if (!annmess) return message.channel.send("Specify a message to announce")
    try {
      guild.channels.cache
        .find(x => x.name.includes("general" && "main" && "main-chat" && "chat" && "lounge"))
        .send(annmess);
    } catch {
      console.log("Message wasn't sent for " + guild.name);
    }
  });