Commit Graph

177 Commits

Author SHA1 Message Date
TheEssem d1036eb369 Added kinemaster 2021-04-15 17:55:05 -05:00
TheEssem 51e06c256a Some fixes 2021-04-12 16:54:44 -05:00
Essem 40223ec8b5
Class commands, improved sharding, and many other changes (#88)
* Load commands recursively

* Sort commands

* Missed a couple of spots

* missed even more spots apparently

* Ported commands in "fun" category to new class-based format, added babel eslint plugin

* Ported general commands, removed old/unneeded stuff, replaced moment with day, many more fixes I lost track of

* Missed a spot

* Removed unnecessary abort-controller package, add deprecation warning for mongo database

* Added imagereload, clarified premature end message

* Fixed docker-compose path issue, added total bot uptime to stats, more fixes for various parts

* Converted image commands into classes, fixed reload, ignore another WS event, cleaned up command handler and image runner

* Converted music/soundboard commands to class format

* Cleanup unnecessary logs

* awful tag command class port

* I literally somehow just learned that you can leave out the constructor in classes

* Pass client directly to commands/events, cleaned up command handler

* Migrated bot to eris-sharder, fixed some error handling stuff

* Remove unused modules

* Fixed type returning

* Switched back to Eris stable

* Some fixes and cleanup

* might wanna correct this

* Implement image command ratelimiting

* Added Bot token prefix, added imagestats, added running endpoint to API
2021-04-12 11:16:12 -05:00
TheEssem 2d5eef2c8c Replaced retro with New And Improved™ variant 2021-03-31 21:04:58 -05:00
Lewis Crichton 3dd7fa4ed8
Make processing emoji an environment variable (#83) 2021-03-19 10:26:17 -05:00
TheEssem 5d2e2b5274 Upgraded retrotext and DBL posting packages, fixed mention prefixes and DM commands 2021-03-18 09:29:03 -05:00
TheEssem 74baa29684 Send unsanitized content to commands via content parameter, fixed emote command, removed another async promise 2021-03-16 13:24:21 -05:00
TheEssem 03aa3b3a2b Removed Twitter bot 2021-03-08 10:37:43 -06:00
TheEssem 8c760a527d Removed status section from userinfo 2021-03-08 09:10:31 -06:00
TheEssem 2499fb2a3b Don't rely on lavacord eris helper package, another pagination fix attempt, make cowsay use a different lib 2021-03-05 12:06:22 -06:00
TheEssem a8db0a1204 Fixed qrread not being properly sanitized 2021-03-04 08:42:45 -06:00
adroitwhiz dabf02eb5f
Fix flag command erroring when no flag provided (#67) 2021-02-25 15:10:03 -06:00
TheEssem 443da54298 Updated to Eris 0.14, removed spam, removed unused font 2021-01-27 22:57:13 -06:00
TheEssem 31712edf79 Added YouTube API rate limit message 2021-01-27 11:17:11 -06:00
TheEssem 62346cbae4 Rework image API again, replaced many calls to replace with replaceAll 2021-01-18 14:11:28 -06:00
adroitwhiz 3de4858b5a
Clean up image API code paths (#49)
* Document image.js a bit

* Close image.js sockets in all code paths

I'm not sure whether sockets get GC'd when the function returns

* Remove getFormat

It was only called from one place, and the object property names were
quite confusing

* Clean up image.js conditional a bit

I had to write out an entire truth table for this and work it all out
Thinking hard

* Move actual ImageMagick calling into separate file

This gets rid of the weird, brain-melting ouroboros of code that
recurses across threads and processes.

* Reduce amount of getType wrangling

This amounted to an awful lot of dead conditionals after the image
commands were all modified to pass in image types anyway. This has also
led to two different implementations diverging, which causes bugs like
GIF commands applied to non-GIFs erroring instead of providing a
user-friendly message.

* Unify image-runner return type, clarify image type

This allows us to remove the fromAPI parameter from image-runner, and
helps greatly clarify the behavior around image types.

* Deduplicate GIF code, fix "not a GIF" handling

The special "nogif" value is now stored as the image type instead of its
value, as the value must always be a Buffer now--no loosely-typed
shenanigans.
2021-01-09 19:50:29 -06:00
TheEssem c2bd68263b Made image API node chooser sort by job amount instead of CPU usage, added soundreload 2021-01-08 12:08:10 -06:00
TheEssem 9f2bd1fecb Make the bot itself get the image file type again 2021-01-04 20:53:34 -06:00
TheEssem 9ab13f5389 Added "sphere" as an alias for globe 2021-01-03 12:04:41 -06:00
TheEssem c4c358dcd9 Fixed pango test escape issues 2020-12-30 11:37:41 -06:00
TheEssem ae1406b518 *final* final changes 2020-12-29 22:26:45 -06:00
TheEssem 8a2d4e6669 Fixed image API request closing prematurely, disabled music commands in production, various fixes regarding direct messages, fixed reply image checking, and removed yoda 2020-12-26 12:17:10 -06:00
TheEssem 873b3f59bc More caching stuff, changed info command a bit 2020-12-18 14:46:59 -06:00
TheEssem ef945adf09 Added support for using both MongoDB and PostgreSQL, changed image api timeouts, removed all moderation commands 2020-12-17 20:32:19 -06:00
TheEssem 69d8100f23 Actually made screenshot owner-only, made image API interaction more secure 2020-12-14 12:39:18 -06:00
TheEssem 78ae47dbbb Handle API errors more gracefully, fixed sharpen, restrict screenshot to the bot owner 2020-12-14 10:58:31 -06:00
TheEssem 0566dca06d Some tweaks to music player commands, added loop, renamed existing loop command to unfreeze 2020-12-11 13:52:02 -06:00
TheEssem 94b0bc19a4 Added reply support to image detection, added stealth plugin to screenshot, made credits static, more fixes 2020-11-26 09:31:24 -06:00
TheEssem ca6cffa67c Some security fixes 2020-11-20 15:16:52 -06:00
TheEssem a03d3a5e79 Fixed GIF commands for real (lol) 2020-10-19 20:24:53 -05:00
TheEssem cf5c649384 Heavy work on the image detection code, fixed mention prefixes not being properly registered 2020-10-18 16:53:35 -05:00
TheEssem ac4e1f5dd8 Simplified and fixed image API, updated packages 2020-10-06 14:48:22 -05:00
TheEssem f1404a8393 Fixed compatibility with Eris 0.13, get patron list dynamically 2020-10-06 10:18:33 -05:00
TheEssem 6e8473d784 Only delete messages if they exist, removes errors in console 2020-09-23 14:12:39 -05:00
TheEssem 925eb387dd Fixed issue with skip vote counts, added headless chrome IP to config, other fixes 2020-09-18 19:54:52 -05:00
TheEssem 17b347761d Reverted qrread native module 2020-09-11 15:22:25 -05:00
TheEssem 4caec5aefa Fixed characters not being properly encoded, fixed images not being properly appended, more fixes 2020-09-09 21:36:20 -05:00
TheEssem e0d7ea7a57 Added ability to disable tags for a server, added way to remove warnings 2020-09-03 14:26:39 -05:00
TheEssem c471bd8af8 Preliminary DM support, update URLs to point to new repo link 2020-09-01 17:10:19 -05:00
TheEssem f415b3bb09 Changed image function syntax, improved dice, switched to fs.promises, might have also done other stuff but idk 2020-08-27 21:34:12 -05:00
TheEssem 95846d32d4 Fixed some issues with the sound player, search images in original message first, add max limit to dice 2020-08-16 11:48:37 -05:00
TheEssem ba664fd19a Reject feedback messages if they contain links, increased image request timeout, some other fixes 2020-08-13 08:47:41 -05:00
TheEssem b8527067d9 Fixed issue with lengthen, added new activity messages 2020-08-06 14:21:48 -05:00
TheEssem 70c4ff298f Added command usage count to help, remove nonexistent commands from database, add build method to package.json 2020-07-29 18:06:34 -05:00
TheEssem f9c8d6b26d A bit of cleanup 2020-07-28 09:38:55 -05:00
TheEssem a11fee5ff1 Move QR code decoding to c++ module 2020-07-27 18:02:59 -05:00
TheEssem 6eee7c6058 Moved back to MongoDB, added some extra flags to flag 2020-07-26 19:52:13 -05:00
TheEssem 0ebd0a0cee Added crop and loop, fixed database not properly adding new commands 2020-07-23 17:43:39 -05:00
TheEssem 10e934e722 I thought I fixed this issue with avatar but apparently not 2020-07-23 16:10:24 -05:00
TheEssem fea07b47ce Merged hackban with ban 2020-07-23 15:56:03 -05:00