所以我正在尝试制作一个机器人,向它所在的所有服务器发送消息,但问题是我真的不知道如何让用户选择他想要的特定频道,并且我不知道如何让机器人向机器人所在的服务器发送消息。如果有人可以提供帮助,或者告诉我一个教程,将不胜感激!
问题 #1:如何让用户选择机器人发送消息的频道。
问题#2:如何让机器人向他所在的所有服务器发送消息。
答案 0 :(得分:1)
如果您想说明机器人所在的所有服务器,您可以使用 forEach
方法。像这样:
let servernames = "";
bot.guilds.cache.forEach(guild => {
servernames += `${guild.name}, `;
});
message.channel.send(`**${servernames.slice(0, servernames.length - 2)}**`)
但是,如果您希望无论如何都向每个服务器发送消息,您仍然需要一个 forEach
方法,只需加入 .send
函数即可。示例:
bot.guilds.cache.forEach(guild => {
guild.defaultChannel.send("hi")
});
如果您想向特定频道发送消息,您需要cache
它并使用频道 ID 查找。示例:
let channelSend = bot.channels.cache.find(channel => channel.id === 'channel id here')
channelSend.send("hi")