40 lines
1.2 KiB
JavaScript
40 lines
1.2 KiB
JavaScript
/**
|
|
* Look up a Discord user by ID. Uses repo root .env for token so it works without broccolini-bot config.
|
|
* Usage: node scripts/lookup-user.js [user_id]
|
|
* Run from broccolini-bot/ (or use full path to script).
|
|
*/
|
|
const path = require('path');
|
|
require('dotenv').config({ path: path.resolve(__dirname, '../../.env') });
|
|
|
|
const token = (process.env.DISCORD_BOT_TOKEN || process.env.DISCORD_TOKEN || '').trim();
|
|
if (!token) {
|
|
console.error('Set DISCORD_BOT_TOKEN or DISCORD_TOKEN in repo root .env (/IB-Discord-Bot/.env)');
|
|
process.exit(1);
|
|
}
|
|
|
|
const { Client, GatewayIntentBits } = require('discord.js');
|
|
const userId = process.argv[2] || '140081819986034688';
|
|
|
|
const client = new Client({ intents: [GatewayIntentBits.Guilds] });
|
|
|
|
client.once('ready', async () => {
|
|
try {
|
|
const user = await client.users.fetch(userId);
|
|
console.log('User:', {
|
|
id: user.id,
|
|
username: user.username,
|
|
globalName: user.globalName ?? user.username,
|
|
tag: user.tag,
|
|
bot: user.bot
|
|
});
|
|
} catch (err) {
|
|
console.error('Lookup failed:', err.message);
|
|
if (err.code === 10013) console.error('Unknown user, or bot does not share a server with this user.');
|
|
} finally {
|
|
client.destroy();
|
|
process.exit(0);
|
|
}
|
|
});
|
|
|
|
client.login(token);
|