DiscordJS后门命令

时间:2020-01-18 19:30:17

标签: discord.js

我已经从我的机器人的不和谐js机器人的支持服务器上收到了报告,该报告表明我的机器人被多种方式滥用。 我想在启动bot时有一种方法来查看服务器列表以及邀请到这些服务器的链接。我不知道服务器的ID或其他任何信息。

The most I've managed to find out how to do is this

    var server = client.guilds.get("idk the id part");
    console.log('I am in the following servers:');

    server.createInvite().then(invite =>
    console.log(server.name + "-" + invite.url)
);
});```

2 个答案:

答案 0 :(得分:0)

您可以等待机器人发出ready事件并循环通过公会集合:

client.once('ready', () => {
  // client.guilds should be ready
});

或单独处理每个公会:

client.on('guildCreate', (guild) => {
  // The guild the bot just joined/connected to
  // Should also be emitted when the bot launches
});

任何一种方法都可以,但是我的建议是第二种方法,因为这也将允许您在机器人运行时跟踪加入事件。

答案 1 :(得分:0)

在您的ready事件(client.on('ready', () => {})中,添加以下几行:

client.guilds.tap(guild => {
    console.log(`Name: ${guild.name} ID: ${guild.id}`);
})

这应该输出

Name: Test1 ID: 00000000000000
在每个服务器的控制台中

另外,考虑到发出大量邀请可能会阻塞您的机器人,并且通常比帮助服务器管理员更多地是障碍,因此您可以考虑使用createinvite命令:

const svID = args[0];
const guild = client.guilds.find(guild => guild.id === svID);
const channel = guild.channels.find(channel => channel.position === 1);
channel.createInvite()
    .then(invite => message.reply(invite.code));