Added server/user count to stats, fixed message not showing on tenor/large image errors

This commit is contained in:
Essem 2021-06-29 14:10:22 -05:00
parent 41c8be04cf
commit ae8b121d03
No known key found for this signature in database
GPG Key ID: 7D497397CC3A2A8C
5 changed files with 23 additions and 6 deletions

View File

@ -58,7 +58,7 @@ class ImageCommand extends Command {
return this.constructor.noImage;
} else if (image.type === "large") {
collections.runningCommands.delete(this.message.author.id);
return "That image is too large!";
return "That image is too large (>= 25MB)! Try using a smaller image.";
} else if (image.type === "tenorlimit") {
collections.runningCommands.delete(this.message.author.id);
return "I've been rate-limited by Tenor. Please try uploading your GIF elsewhere.";

View File

@ -57,11 +57,22 @@ class StatsCommand extends Command {
{
"name": "Shard",
"value": this.message.channel.guild ? this.client.guildShardMap[this.message.channel.guild.id] : "N/A",
"inline": true
},
{
"name": "Cluster",
"value": this.cluster,
"inline": true
},
{
"name": "Servers",
"value": collections.stats.guilds ? collections.stats.guilds : `${this.client.guilds.size} (for this cluster only)`,
"inline": true
},
{
"name": "Users (approximation)",
"value": collections.stats.users ? collections.stats.users : `${this.client.users.size} (for this cluster only)`,
"inline": true
}
]
}

View File

@ -141,7 +141,7 @@ connected_workers ${image.connections.size}
});
this.ipc.register("restart", async () => {
await this.bot.editStatus("dnd", {
this.bot.editStatus("dnd", {
name: "esmBot is restarting, please stand by."
});
process.exit(1);

View File

@ -3,10 +3,9 @@ const logger = require("../logger.js");
const misc = require("../misc.js");
const { Pool } = require("pg");
const pool = new Pool({
const connection = new Pool({
connectionString: process.env.DB
});
const connection = pool;
exports.getGuild = async (query) => {
return (await connection.query("SELECT * FROM guilds WHERE guild_id = $1", [query])).rows[0];

View File

@ -30,7 +30,7 @@ const gfycatURLs = [
"giant.gfycat.com"
];
const imageFormats = ["image/jpeg", "image/png", "image/webp", "image/gif"];
const imageFormats = ["image/jpeg", "image/png", "image/webp", "image/gif", "large"];
const videoFormats = ["video/mp4", "video/webm", "video/mov"];
// gets the proper image paths
@ -48,7 +48,14 @@ const getImage = async (image, image2, video, extraReturnTypes, gifv = false) =>
// Note that MP4 conversion requires an ImageMagick build that supports MPEG decoding
if (process.env.TENOR !== "") {
const data = await fetch(`https://g.tenor.com/v1/gifs?ids=${image2.split("-").pop()}&media_filter=minimal&limit=1&key=${process.env.TENOR}`);
if (data.status === 429) return extraReturnTypes ? "tenorlimit" : null;
if (data.status === 429) {
if (extraReturnTypes) {
payload.type = "tenorlimit";
return payload;
} else {
return;
}
}
const json = await data.json();
payload.path = json.results[0].media[0].gif.url;
} else {