我为Discord服务器使用Discord.js和MongoDB制作了Discord机器人。
因此在我的MongoDB中,我有一个频道ID变量,这是我的3个不一致的频道中的一个都不同的频道。使用下面的代码,当我运行命令时,消息仅被发送到数据库中的第一个不和谐通道。关于我做错了什么主意吗?
const Discord = require("discord.js");
module.exports.run = async (bot, message, args, settings, guild, channels) => {
if (message.channel.id === '123456789') {
bot.guilds.forEach(guild => {
const sayMessage = args.join(" ");
let sicon = message.guild.iconURL;
let serverembed = new Discord.RichEmbed()
.setTitle("**Announcement**")
.setFooter("from SpikyZA", sicon)
.setTimestamp()
.setColor("#5500FF")
.addField("Message", `${sayMessage}`);
//let testchannel = guild.channels.find(c => c.id === `${settings.notify}`);
bot.channels.get(`${settings.notify}`).send(serverembed);
});
}
};
module.exports.help = {
name:"test",
aliases: ["test"]
};```
答案 0 :(得分:0)
如果您正在寻找一种简单的方法,请尝试遍历数据库中的项目数量,如下所示:
for(n = 0; n <= channelDB.length; n++){
let ch = bot.channels.get(channelDB.channels[n].id);
ch.send(embed);
}
或任何与MongoDB
?♂️