向所有服务器发送消息

时间:2021-07-08 07:40:17

标签: discord.js bots

谁能帮帮我?我不知道如何做到这一点,但我想让我的机器人向它所在的每台服务器发送一条消息,如果它没有权限去做,它可以忽略它。你怎么做呢?我正在使用 discord.js v 12

1 个答案:

答案 0 :(得分:0)

您可以像这样映射服务器:

client.guilds.forEach(guild => {
    // Here you can use the guild object to send messages
});

然后你必须找到一个文本通道来发送消息,你可以通过在服务器中第一个找到的文本通道中发送它来实现这一点:

let channelID = null;
const channels = guild.channels.cache;

channelLoop:
for (let key in channels) {
    let c = channels[key];
    if (c[1].type === "text") {
        channelID = c[0];
        break channelLoop;
    }
}

并发送消息:

const channel = guild.channels.cache.get(guild.systemChannelID || channelID);
channel.send(`This is a message`); // This is the message you're sending in the server