Compare commits

..

No commits in common. "7c202dfa3c05f8b27cccc7518584ea8d73d02e7f" and "1a8f4e8ae95a836288a99b59534267b9474bbead" have entirely different histories.

View File

@ -1,4 +1,4 @@
import { Client, Guild, Permissions } from 'discord.js-selfbot-v13';
import { Client, Guild } from 'discord.js-selfbot-v13';
import fs from 'fs';
class InfoClient extends Client {
@ -11,42 +11,34 @@ class InfoClient extends Client {
}
private async init(): Promise<void> {
this.once('ready', () => this.onReady());
await this.login(this.token);
this.once('ready', () => this.onReady());
await this.login(this.token);
}
private onReady(): void {
console.log(`Logged in as ${this.user?.tag}!`);
const guildData: { [key: string]: { [key: string]: { channels: Record<string, { channelname: string, channeltype: string, access: boolean }> } } } = {};
const guildData: { [key: string]: { [key: string]: string[] } } = {};
this.guilds.cache.forEach((guild: Guild) => {
const guildInfo: { [key: string]: { channels: Record<string, { channelname: string, channeltype: string, access: boolean }> } } = {};
console.log(`Guild: ${guild.name}`);
guild.channels.cache.forEach(channel => {
if (channel.type !== 'GUILD_CATEGORY') {
const categoryName = channel.parent?.name || 'Uncategorized';
const categoryID = channel.parent?.id || 'Uncategorized';
const guildInfo: { [key: string]: string[] } = {};
console.log(`Guild: ${guild}`);
const channels = guild.channels.cache;
console.log(`There are ${channels.size} channels in the guild.`);
channels.forEach(channel => {
if (channel && channel.type !== 'GUILD_CATEGORY') {
const categoryName = channel.parent?.name || 'Uncategorized';
const categoryID = channel.parent?.id || 'Uncategorized';
if (!guildInfo[categoryName]) {
guildInfo[categoryName] = { channels: {} };
}
if (!guildInfo[categoryName]) {
guildInfo[categoryName] = [];
}
let access = false;
if (channel.permissionsFor(this.user!)?.has(Permissions.FLAGS.VIEW_CHANNEL)) {
access = true;
}
guildInfo[categoryName].channels[channel.id] = {
channelname: channel.name,
channeltype: channel.type,
access: access
};
}
});
guildData[guild.name] = guildInfo;
guildInfo[categoryName].push(`${channel.name} (${channel.type} ${channel.id})`);
}
});
guildData[guild.name] = guildInfo;
});
const filename = `output/${this.user?.tag} ${this.token.slice(-5)}.json`;
const jsonData = JSON.stringify(guildData, null, 2);
fs.writeFileSync(filename, jsonData);