Added node version check, some cleanup
This commit is contained in:
parent
fb0c8ffae1
commit
fd77ace48e
|
@ -33,10 +33,10 @@ const Rinit = 0x08;
|
||||||
|
|
||||||
const start = process.hrtime();
|
const start = process.hrtime();
|
||||||
const log = (msg, jobNum) => {
|
const log = (msg, jobNum) => {
|
||||||
console.log(`[${process.hrtime(start)[1] / 1000000}${jobNum !== undefined ? `:${jobNum}` : ""}]\t ${msg}`);
|
console.log(`[${process.hrtime(start)[1] / 1000000}${jobNum ? `:${jobNum}` : ""}]\t ${msg}`);
|
||||||
};
|
};
|
||||||
const error = (msg, jobNum) => {
|
const error = (msg, jobNum) => {
|
||||||
console.error(`[${process.hrtime(start)[1] / 1000000}${jobNum !== undefined ? `:${jobNum}` : ""}]\t ${msg}`);
|
console.error(`[${process.hrtime(start)[1] / 1000000}${jobNum ? `:${jobNum}` : ""}]\t ${msg}`);
|
||||||
};
|
};
|
||||||
|
|
||||||
class JobCache extends Map {
|
class JobCache extends Map {
|
||||||
|
@ -53,8 +53,8 @@ const jobs = new JobCache();
|
||||||
const queue = [];
|
const queue = [];
|
||||||
// Array of IDs
|
// Array of IDs
|
||||||
|
|
||||||
const MAX_JOBS = process.env.JOBS !== "" && process.env.JOBS !== undefined ? parseInt(process.env.JOBS) : cpus().length * 4; // Completely arbitrary, should usually be some multiple of your amount of cores
|
const MAX_JOBS = process.env.JOBS && process.env.JOBS !== "" ? parseInt(process.env.JOBS) : cpus().length * 4; // Completely arbitrary, should usually be some multiple of your amount of cores
|
||||||
const PASS = process.env.PASS !== "" && process.env.PASS !== undefined ? process.env.PASS : undefined;
|
const PASS = process.env.PASS && process.env.PASS !== "" ? process.env.PASS : undefined;
|
||||||
let jobAmount = 0;
|
let jobAmount = 0;
|
||||||
|
|
||||||
const acceptJob = (id, sock) => {
|
const acceptJob = (id, sock) => {
|
||||||
|
|
7
app.js
7
app.js
|
@ -1,6 +1,12 @@
|
||||||
if (process.platform === "win32") console.error("\x1b[1m\x1b[31m\x1b[40m" + `WIN32 IS NOT OFFICIALLY SUPPORTED!
|
if (process.platform === "win32") console.error("\x1b[1m\x1b[31m\x1b[40m" + `WIN32 IS NOT OFFICIALLY SUPPORTED!
|
||||||
Although there's a (very) slim chance of it working, multiple aspects of the bot are built with UNIX-like systems in mind and could break on Win32-based systems. If you want to run the bot on Windows, using Windows Subsystem for Linux is highly recommended.
|
Although there's a (very) slim chance of it working, multiple aspects of the bot are built with UNIX-like systems in mind and could break on Win32-based systems. If you want to run the bot on Windows, using Windows Subsystem for Linux is highly recommended.
|
||||||
The bot will continue to run past this message, but keep in mind that it could break at any time. Continue running at your own risk; alternatively, stop the bot using Ctrl+C and install WSL.` + "\x1b[0m");
|
The bot will continue to run past this message, but keep in mind that it could break at any time. Continue running at your own risk; alternatively, stop the bot using Ctrl+C and install WSL.` + "\x1b[0m");
|
||||||
|
if (process.versions.node.split(".")[0] < 15) {
|
||||||
|
console.error(`You are currently running Node.js version ${process.version}.
|
||||||
|
esmBot requires Node.js version 15 or above.
|
||||||
|
Please refer to step 3 of the setup guide.`);
|
||||||
|
process.exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
// load config from .env file
|
// load config from .env file
|
||||||
import { config } from "dotenv";
|
import { config } from "dotenv";
|
||||||
|
@ -55,6 +61,7 @@ const Admiral = new Fleet({
|
||||||
BotWorker: Shard,
|
BotWorker: Shard,
|
||||||
token: `Bot ${process.env.TOKEN}`,
|
token: `Bot ${process.env.TOKEN}`,
|
||||||
fetchTimeout: 900000,
|
fetchTimeout: 900000,
|
||||||
|
useCentralRequestHandler: true,
|
||||||
startingStatus: {
|
startingStatus: {
|
||||||
status: "idle",
|
status: "idle",
|
||||||
game: {
|
game: {
|
||||||
|
|
|
@ -2,7 +2,7 @@ import Command from "../../classes/command.js";
|
||||||
|
|
||||||
class AvatarCommand extends Command {
|
class AvatarCommand extends Command {
|
||||||
async run() {
|
async run() {
|
||||||
if (this.message.mentions[0] !== undefined) {
|
if (this.message.mentions[0]) {
|
||||||
return this.message.mentions[0].dynamicAvatarURL(null, 1024);
|
return this.message.mentions[0].dynamicAvatarURL(null, 1024);
|
||||||
} else if (await this.ipc.fetchUser(this.args[0])) {
|
} else if (await this.ipc.fetchUser(this.args[0])) {
|
||||||
const user = await this.ipc.fetchUser(this.args[0]);
|
const user = await this.ipc.fetchUser(this.args[0]);
|
||||||
|
|
|
@ -44,8 +44,8 @@ export async function removeTag(name, guild) {
|
||||||
|
|
||||||
export async function disableCommand(guild, command) {
|
export async function disableCommand(guild, command) {
|
||||||
const guildDB = await this.getGuild(guild);
|
const guildDB = await this.getGuild(guild);
|
||||||
await connection.query("UPDATE guilds SET disabled_commands = $1 WHERE guild_id = $2", [(guildDB.disabled_commands ? [...guildDB.disabled_commands, command] : [command]).filter((v) => v !== undefined), guild]);
|
await connection.query("UPDATE guilds SET disabled_commands = $1 WHERE guild_id = $2", [(guildDB.disabled_commands ? [...guildDB.disabled_commands, command] : [command]).filter((v) => !!v), guild]);
|
||||||
disabledCmdCache.set(guild, guildDB.disabled_commands ? [...guildDB.disabled_commands, command] : [command].filter((v) => v !== undefined));
|
disabledCmdCache.set(guild, guildDB.disabled_commands ? [...guildDB.disabled_commands, command] : [command].filter((v) => !!v));
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function enableCommand(guild, command) {
|
export async function enableCommand(guild, command) {
|
||||||
|
@ -138,4 +138,4 @@ export async function setup() {
|
||||||
|
|
||||||
export async function stop() {
|
export async function stop() {
|
||||||
await connection.end();
|
await connection.end();
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,8 +73,8 @@ export async function getCounts() {
|
||||||
|
|
||||||
export async function disableCommand(guild, command) {
|
export async function disableCommand(guild, command) {
|
||||||
const guildDB = await this.getGuild(guild);
|
const guildDB = await this.getGuild(guild);
|
||||||
connection.prepare("UPDATE guilds SET disabled_commands = ? WHERE guild_id = ?").run(JSON.stringify((guildDB.disabledCommands ? [...JSON.parse(guildDB.disabledCommands), command] : [command]).filter((v) => v !== undefined)), guild);
|
connection.prepare("UPDATE guilds SET disabled_commands = ? WHERE guild_id = ?").run(JSON.stringify((guildDB.disabledCommands ? [...JSON.parse(guildDB.disabledCommands), command] : [command]).filter((v) => !!v)), guild);
|
||||||
collections.disabledCmdCache.set(guild, guildDB.disabled_commands ? [...JSON.parse(guildDB.disabledCommands), command] : [command].filter((v) => v !== undefined));
|
collections.disabledCmdCache.set(guild, guildDB.disabled_commands ? [...JSON.parse(guildDB.disabledCommands), command] : [command].filter((v) => !!v));
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function enableCommand(guild, command) {
|
export async function enableCommand(guild, command) {
|
||||||
|
|
|
@ -7,7 +7,7 @@ class PrometheusWorker extends BaseServiceWorker {
|
||||||
constructor(setup) {
|
constructor(setup) {
|
||||||
super(setup);
|
super(setup);
|
||||||
|
|
||||||
if (process.env.METRICS !== "" && process.env.METRICS !== undefined) {
|
if (process.env.METRICS && process.env.METRICS !== "") {
|
||||||
this.httpServer = createServer(async (req, res) => {
|
this.httpServer = createServer(async (req, res) => {
|
||||||
if (req.method !== "GET") {
|
if (req.method !== "GET") {
|
||||||
res.statusCode = 405;
|
res.statusCode = 405;
|
||||||
|
|
|
@ -68,7 +68,7 @@ export async function play(client, sound, message, music = false) {
|
||||||
if (!tracks || tracks.length === 0) return "I couldn't find that song!";
|
if (!tracks || tracks.length === 0) return "I couldn't find that song!";
|
||||||
if (music) {
|
if (music) {
|
||||||
const sortedTracks = tracks.map((val) => { return val.track; });
|
const sortedTracks = tracks.map((val) => { return val.track; });
|
||||||
const playlistTracks = playlistInfo.selectedTrack !== undefined ? sortedTracks : [sortedTracks[0]];
|
const playlistTracks = playlistInfo.selectedTrack ? sortedTracks : [sortedTracks[0]];
|
||||||
queues.set(voiceChannel.guild.id, oldQueue ? [...oldQueue, ...playlistTracks] : playlistTracks);
|
queues.set(voiceChannel.guild.id, oldQueue ? [...oldQueue, ...playlistTracks] : playlistTracks);
|
||||||
}
|
}
|
||||||
const connection = await manager.join({
|
const connection = await manager.join({
|
||||||
|
|
Loading…
Reference in New Issue