我正在尝试使Discord机器人使用服务器的ID将消息发送到特定的Discord服务器,我不知道该命令,我尝试了类似的操作,但是没有用,谢谢! 附言:我知道服务器和频道ID。
编辑:据我所知更新了代码,现在我得到一个错误。
NavigationDrawer
我得到的错误是:
const Discord = require('discord.js');
const bot = new Discord.Client();
module.exports = {
name: "inviteme",
description: "inviteme",
execute(message, args){
var server = bot.guilds.get("642388927499730975");
var channel = server.channels.get("642389069829111809");
bot.guilds.forEach(guild => {
guild.channels.first().createInvite()
.then(inv => message(channel).send(`${guild.name} | ${inv.url}`));
});
}
}
请帮助,谢谢。
答案 0 :(得分:0)
Discord.js的Client对象具有名为guilds
的属性,该属性是Client当前正在处理的所有行会的映射,并由它们的ID映射(只要不使用分片,将会是该机器人所属的每个公会)。
通过服务器ID查找服务器很简单:
var server = client.guilds.get("server_id"); // get the guild by id
您不能直接向其发送消息。您需要一个频道。
var channel = server.channels.get("channel_id"); // get the channel from the guild
现在,您可以使用.send()方法将消息发送到频道。
channel.send("Your message.");