bea
244e8ace76
Remove redundant API command fetcher
...
continuous-integration/drone/push Build is passing
We have our own command listener now, so we don't need to rely on Discord's slow API.
2022-11-22 14:53:46 +01:00
bea
526880e1f1
Start implementing message-base commands
...
continuous-integration/drone/push Build is passing
Slash commands can't be used for everything, so we need something to fall back on.
2022-11-22 14:40:44 +01:00
bea
882c695484
Make slash commands interface and load them dynamically
...
continuous-integration/drone/push Build is passing
Slash commands are now loaded dynamically by implementing a SlashCommand interface and storing them in a loaded commands map.
2022-11-22 14:32:22 +01:00
bea
7ae4790d5c
Add bot owner info to botinfo command
continuous-integration/drone/push Build is passing
2022-11-22 00:45:58 +01:00
bea
51de18206e
Refactor clearchat class
2022-11-22 00:35:10 +01:00
bea
d3db53a451
Cleanup imports
2022-11-22 00:34:37 +01:00
bea
656dff4b26
Refactor packages
continuous-integration/drone/push Build is passing
2022-11-22 00:31:52 +01:00
bea
8faa9c4677
Refactor datasource classes
continuous-integration/drone/push Build is passing
2022-11-22 00:28:33 +01:00
bea
f9e1578899
Fix heartbeat error not always being logged
continuous-integration/drone/push Build is passing
2022-11-22 00:12:24 +01:00
bea
72115cbec2
Bump version
continuous-integration/drone/push Build is passing
2022-11-22 00:08:36 +01:00
bea
0b05f2858f
Update README with new bot startup guide
2022-11-22 00:08:19 +01:00
bea
843ee43275
Finish implementing configuration file
...
continuous-integration/drone/push Build is passing
Configuration file is now fully functional.
Startup arguments for bot token and heartbeat key have now been removed.
2022-11-22 00:04:34 +01:00
bea
b6bf366822
Allow reading values from config
continuous-integration/drone/push Build is passing
2022-11-21 23:36:42 +01:00
bea
c650caa090
Finish configuration init method
...
continuous-integration/drone/push Build is passing
This method runs every time the bot starts, and ensures that all values are always present in the config file.
2022-11-21 23:28:33 +01:00
bea
f74ae43673
Refactor Config class
continuous-integration/drone/push Build is passing
2022-11-21 20:20:11 +01:00
bea
e396ce6417
Start implementing yaml loading
continuous-integration/drone/push Build is failing
2022-11-21 20:20:03 +01:00
bea
66d27fe1fe
Start implementing config file
2022-11-21 20:04:28 +01:00
bea
d9d0ce3236
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 19:55:04 +01:00
bea
a5ddbf0d2e
Implement heartbeat for uptime monitoring
...
continuous-integration/drone/push Build is passing
You can now monitor the bot's uptime via any external tool that supports push heartbeats. The bots sends a GET request every 30 seconds to show that it's online. The URL is hardcoded for the moment, but very easy to change.
2022-11-21 19:54:49 +01:00
bea
0bcb5d58f4
Set message expiration time to 15 seconds
continuous-integration/drone/push Build is passing
2022-11-21 19:11:18 +01:00
bea
531ff66bae
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 19:07:49 +01:00
bea
da511f2913
Database overhaul to fix #3
...
continuous-integration/drone/push Build is passing
We are now tracking whether messages are sent privately on in a guild, and acting accordingly.
2022-11-21 19:07:34 +01:00
bea
0aec543a46
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 16:28:31 +01:00
bea
326ad68e38
Add emoji to invite command button
continuous-integration/drone/push Build is passing
2022-11-21 16:24:21 +01:00
bea
163619a7f8
Improve registered commands caching
...
continuous-integration/drone/push Build is passing
Discord's API is slow in updating and registering new commands, so we set up a runnable to periodically check.
2022-11-21 16:24:09 +01:00
bea
b015fddf3c
Make invite command nicer
continuous-integration/drone/push Build is passing
2022-11-21 16:11:16 +01:00
bea
5e4e438340
Make minimal text changes
2022-11-21 15:59:27 +01:00
bea
b35b962ac6
Implement basic say command
continuous-integration/drone/push Build is passing
2022-11-21 15:37:12 +01:00
bea
4382f7d490
Fix issue tracker link
continuous-integration/drone/push Build is passing
2022-11-21 15:17:03 +01:00
bea
3038be9a28
Actually register help command
continuous-integration/drone/push Build is passing
2022-11-21 15:14:57 +01:00
bea
24bb560d93
Register help command
continuous-integration/drone/push Build is passing
2022-11-21 15:13:32 +01:00
bea
78d5bd6beb
Make some messages nicer
2022-11-21 15:07:46 +01:00
bea
3ff154eec6
Rename methods
continuous-integration/drone/push Build is passing
2022-11-21 15:04:12 +01:00
bea
e9f475cb59
Refactor code and packages
continuous-integration/drone/push Build is passing
2022-11-21 15:02:40 +01:00
bea
cdc45d62f2
Move uptime string generator to config class
continuous-integration/drone/push Build is passing
2022-11-21 15:00:37 +01:00
bea
6998cc92e5
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 14:55:01 +01:00
bea
996cedb154
Finish botinfo command
...
continuous-integration/drone/push Build is passing
I don't know what else to add, and it looks nice now.
2022-11-21 14:54:45 +01:00
bea
5e08cd748c
Update README
continuous-integration/drone/push Build is passing
2022-11-21 14:44:54 +01:00
bea
d2caccf080
Finish uptime string generator
2022-11-21 14:44:48 +01:00
bea
79c8f1a95e
Start implementing bot info command
continuous-integration/drone/push Build is failing
2022-11-21 12:19:35 +01:00
bea
6e9291c535
Implement messages error handling in database
...
continuous-integration/drone/push Build is passing
Invalid messages will now be purged from database (if bot was kicked from a guild, if a channel was deleted, ...).
2022-11-21 11:23:52 +01:00
bea
083fef3911
Fix expired coinflip channel id bug
continuous-integration/drone/push Build is passing
2022-11-21 11:19:23 +01:00
bea
f73b489844
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 11:15:23 +01:00
bea
0da3eecd29
Restrict reflip button to user who ran the command
continuous-integration/drone/push Build is passing
2022-11-21 11:14:07 +01:00
bea
7562e956bc
Remove leftover debug log
continuous-integration/drone/push Build is passing
2022-11-21 00:29:22 +01:00
bea
97980f8ed9
Bump version
continuous-integration/drone/push Build is passing
2022-11-21 00:28:51 +01:00
bea
0d92921b45
Ignore SQLite database
continuous-integration/drone/push Build is passing
2022-11-21 00:28:29 +01:00
bea
a9ccfbe0bc
Remove SQLite database
2022-11-21 00:28:10 +01:00
bea
5ee7321978
Implement functional reply tracker
...
Now, with commands that support it, only the user who ran the command/triggered the interaction can use its buttons.
2022-11-21 00:27:57 +01:00
bea
98a162a33b
Implement SQLite database solving #1
...
continuous-integration/drone/push Build is passing
A new basic database has been laid out, with support for message expiry and disabling buttons for old messages.
2022-11-21 00:14:13 +01:00
bea
7ffd3442c2
Remove code duplication in coinflip command
2022-11-20 22:23:26 +01:00
bea
3a5b2a23c1
Add clearchat dismiss button
2022-11-20 22:23:14 +01:00
bea
3d626bb46f
Move command handling out of constructor, add coin reflip command
...
continuous-integration/drone/push Build is passing
Having heavy code run in a constructor is bad practice. We made separate methods for command handling.
2022-11-20 22:09:58 +01:00
bea
c44251ddb7
Move avatar resolutions to config class
continuous-integration/drone/push Build is passing
2022-11-20 19:00:27 +01:00
bea
913e8e023a
Refactor command packages
continuous-integration/drone/push Build is passing
2022-11-20 18:56:57 +01:00
bea
3474593dc9
Implement command force-refresh arg
continuous-integration/drone/push Build is passing
2022-11-20 18:54:13 +01:00
bea
3578de17c8
Implement avatar resolution autocomplete
continuous-integration/drone/push Build is failing
2022-11-20 18:53:28 +01:00
bea
679d16e1fa
Change avatar embed format
continuous-integration/drone/push Build is passing
2022-11-20 18:22:32 +01:00
bea
33d81acc64
Improve internal documentation
continuous-integration/drone/push Build is passing
2022-11-20 18:11:00 +01:00
bea
044445890f
Improve avatar command
...
continuous-integration/drone/push Build is passing
Avatar command now produces an embed with links to all possible resolutions
2022-11-20 18:06:07 +01:00
bea
3e1ba12314
Implement avatar grabber command
continuous-integration/drone/push Build is passing
2022-11-20 17:19:40 +01:00
bea
4817bacf5c
Improve invite command
continuous-integration/drone/push Build is passing
2022-11-20 16:20:50 +01:00
bea
18db0282d5
Implement invite link command
continuous-integration/drone/push Build is passing
2022-11-20 16:07:04 +01:00
bea
b14850acaa
Bump bot version
continuous-integration/drone/push Build is passing
2022-11-20 06:15:14 +01:00
bea
e592111d1b
Update base JDA version
continuous-integration/drone/push Build is passing
2022-11-20 06:13:52 +01:00
bea
cd46d601ec
Remove pause feature
continuous-integration/drone/push Build is passing
2022-11-20 06:07:25 +01:00
bea
c6ee0f3ae1
Sort commands alphabetically
continuous-integration/drone/push Build is passing
2022-11-20 06:05:07 +01:00
bea
f156727413
Optimize imports
continuous-integration/drone/push Build is passing
2022-11-20 06:04:34 +01:00
bea
a2c1944a32
Move to class-based command handling
...
continuous-integration/drone/push Build is passing
Having everything in a single class is bad practice, so different classes for each command were made.
2022-11-20 06:04:00 +01:00
bea
dd4ffe252e
Add command to stop bot process
...
continuous-integration/drone/push Build is passing
Previously, anyone could send the keywords in chat and kill the bot. Now, only the set bot owner can run the command.
2022-11-20 05:57:58 +01:00
bea
bd76562bcc
Remove "flip a coin" message-command
...
continuous-integration/drone/push Build is passing
We have /coinflip now
2022-11-20 05:48:31 +01:00
bea
cc671499cd
Fix null argument error in clearchat
continuous-integration/drone/push Build is passing
2022-11-20 05:47:29 +01:00
bea
96953bddcb
Make messages prettier
continuous-integration/drone/push Build is passing
2022-11-20 05:43:17 +01:00
bea
7d9c820243
Implement fully functional clearchat command
...
continuous-integration/drone/push Build is passing
The command now supports potentially-infinite message deletion and exception catching (eg messages older than 2 weeks). No longer limited to 100 messages per run.
2022-11-20 05:33:04 +01:00
bea
e1ecc310cc
Remove dangerous old clearchat message
...
continuous-integration/drone/push Build is passing
Previous clearchat message had no permissions set (it was just a demo) and didn't support slash commands.
2022-11-20 03:53:53 +01:00
bea
fca7c2d26f
Fix command registration
continuous-integration/drone/push Build is passing
2022-11-20 03:52:15 +01:00
bea
813107a2f9
Attempt to fix commands getting unregistered
continuous-integration/drone/push Build is passing
2022-11-20 03:49:53 +01:00
bea
bfb4aae2aa
Register clear command
2022-11-20 03:42:59 +01:00
bea
f2dc70569d
Implement basic clear-chat slash command
2022-11-20 03:41:51 +01:00
bea
771e115bbd
Update startup method
...
continuous-integration/drone/push Build is passing
Small changes to improve stability and readability.
2022-11-20 03:25:51 +01:00
bea
fddabae3c3
Make commands util class grab API instance
...
continuous-integration/drone/push Build is passing
Instead of passing it as an argument, let the class grab the instance itself.
2022-11-20 03:18:14 +01:00
bea
8b9ce25684
Add shutdown interrupt signal listener
...
This way, we can nicely close the API connection and perform general cleanup.
2022-11-20 03:17:37 +01:00
bea
b43b882cab
Add coinflip slash command
continuous-integration/drone/push Build is passing
2022-11-20 03:07:43 +01:00
bea
fb69dcd863
Implement basic slash commands support
continuous-integration/drone/push Build is passing
2022-11-20 03:01:46 +01:00
bea
add9dc0632
Update a comment
continuous-integration/drone/push Build is passing
2022-08-26 20:57:23 +02:00
bea
8b2fee6aec
Optimize args extraction
continuous-integration/drone/push Build is passing
2022-08-26 20:43:49 +02:00
bea
ff4ffba45d
Implement verbosity-changer command at runtime
continuous-integration/drone/push Build is passing
2022-08-26 20:43:12 +02:00
bea
d085a671c5
Update pause message
continuous-integration/drone/push Build is passing
2022-08-26 20:29:29 +02:00
bea
3cf8a1c92a
Lower invite-link logging delay
2022-08-26 20:29:10 +02:00
bea
a18b34b784
Add pause command to halt processing
...
continuous-integration/drone/push Build is passing
Useful for now since I have two instances of the bot running in the same servers and I don't want both of them to respond.
2022-08-26 20:27:46 +02:00
bea
2443adfccc
Document verbose startup argument
continuous-integration/drone/push Build is passing
2022-08-26 16:30:56 +02:00
bea
b3429f9203
Enable JavaDocs generation in Drone CI
continuous-integration/drone/push Build is passing
2022-08-26 16:27:04 +02:00
bea
aa223df480
Implement JavaDocs
...
continuous-integration/drone/push Build is passing
JavaDocs can be generated with mvn javadoc:javadoc and will be available in target/site/apidocs.
2022-08-26 16:25:41 +02:00
bea
70570624e1
Move shutdown log to delayed actions
continuous-integration/drone/push Build is passing
2022-08-26 03:50:43 +02:00
bea
d15132e6d6
Add shutdown event to logs
continuous-integration/drone/push Build is passing
2022-08-26 03:48:55 +02:00
bea
3416c13f10
Add small delay before shutdown
continuous-integration/drone/push Build is passing
2022-08-26 03:48:15 +02:00
bea
ffab94f525
Add basic shutdown command
continuous-integration/drone/push Build is passing
2022-08-26 03:46:36 +02:00
bea
0c09a03255
Improve message deletion command
...
continuous-integration/drone/push Build is passing
It's now supported on all TextChannels, not only GuildMessageChannels
2022-08-26 03:39:57 +02:00
bea
e4ecd15867
Add simple greeting message
continuous-integration/drone/push Build is passing
2022-08-26 01:47:01 +02:00
bea
63bed66073
Improve message deletion command
...
continuous-integration/drone/push Build is passing
Now you can specify how many messages to clear, and we aren't spamming Discord's API.
2022-08-26 01:44:53 +02:00