Commit Graph
100 Commits
Author SHA1 Message Date
bea af16e6d8ac Bump version to 0.5.0
continuous-integration/drone/push Build is passing
This is a pretty important update since all the basic layout has been completed.
2022-11-23 00:01:38 +01:00
bea 50ccda214f Finish command completion listener implementation
continuous-integration/drone/push Build is passing
Very similarly to how the slash command interface works, now a slash command auto-completion interface also exists, with its respective listener.
2022-11-23 00:01:05 +01:00
bea ff084cf8e8 Rename datasource package
continuous-integration/drone/push Build is passing
2022-11-22 23:44:34 +01:00
bea be3895d268 Update Maven dependencies
continuous-integration/drone/push Build is passing
2022-11-22 23:44:03 +01:00
bea a045d0cb2d Bump version to 0.4.6
continuous-integration/drone/push Build is passing
2022-11-22 23:42:48 +01:00
bea 0016b5de30 Force using config enum class instead of direct entry path
continuous-integration/drone/push Build is passing
2022-11-22 23:42:21 +01:00
bea 6480795368 Discontinue config.yml file in favor of class mapping
continuous-integration/drone/push Build is passing
The configuration entries are now mapped in an enum that transfers very well to SnakeYaml's YAML parsing. This is better because we no longer run the risk of entries getting mistyped in classes, or renamed without replacing them everywhere...
2022-11-22 23:40:44 +01:00
bea ae6647a51e Bump version to 0.4.3
continuous-integration/drone/push Build is passing
We are getting closer to a stable version.
2022-11-22 23:29:29 +01:00
bea 40aac28e34 Make bot version consistent with Maven
continuous-integration/drone/push Build is passing
A new internal properties file has been added. Maven will scan this file and replace any value it finds.
2022-11-22 23:28:59 +01:00
bea 70578d2ffc Bump version to 0.4.0
continuous-integration/drone/push Build is passing
The new thread update deserves a decent version bump
2022-11-22 22:00:59 +01:00
bea 5f73c4069b Make bot commands run in separate threads by default
continuous-integration/drone/push Build is passing
2022-11-22 21:59:58 +01:00
bea b681acdbca Make bot announce its prefix
continuous-integration/drone/push Build is passing
2022-11-22 21:48:13 +01:00
bea 19100758cb Bump version
continuous-integration/drone/push Build is passing
2022-11-22 21:42:46 +01:00
bea b2a62d754e Make invite support both slash and message commands
continuous-integration/drone/push Build is passing
2022-11-22 21:42:35 +01:00
bea c186c9c576 Improve bot info page
continuous-integration/drone/push Build is passing
2022-11-22 21:32:20 +01:00
bea c7208eef84 Make botinfo support both slash and message commands
continuous-integration/drone/push Build is passing
2022-11-22 21:02:48 +01:00
bea 89fc2aa0a6 Bump version to 0.3.1
continuous-integration/drone/push Build is passing
The bot is now in a semi-stable state, although still very lacking in terms of features.
2022-11-22 20:51:23 +01:00
bea 96ea29b103 Reduce bot name to just Hideko
continuous-integration/drone/push Build is passing
2022-11-22 20:50:53 +01:00
bea 4015aecc99 Make coinflip support both slash and message commands
continuous-integration/drone/push Build is passing
2022-11-22 20:50:37 +01:00
bea ff80e754ff Add comment 2022-11-22 20:42:47 +01:00
bea 3f1835e059 Move clearchat command to base class
continuous-integration/drone/push Build is passing
The "clear" command now supports both slash commands and message commands, having identical behavior in both situations.
2022-11-22 20:39:55 +01:00
bea ecdb0c73e8 Add tiny comment
continuous-integration/drone/push Build is passing
2022-11-22 17:27:56 +01:00
bea 655840dc82 Implement basic permission check for message commands
continuous-integration/drone/push Build is passing
2022-11-22 17:08:31 +01:00
bea 11e4a07698 Refactor objects package
continuous-integration/drone/push Build is passing
2022-11-22 16:41:08 +01:00
bea a7ac446b0b Remove the need to register slash commands separately
continuous-integration/drone/push Build is passing
We modified the slash command interface to allow getting command data, and created a generic implementation of it that automatically retrieves data from the command data. The interface should not be used now. Instead, extending the implementation is preferred as it provides a semi-working command already.
2022-11-22 16:40:02 +01:00
bea ee263a1297 Bump version to 0.3.0
continuous-integration/drone/push Build is passing
We finally reached a good status for the bot's internal structure, and can actually focus on features now. We also dropped the -slash tag because it's not restricted to slash commands anymore.
2022-11-22 16:20:28 +01:00
bea a9790b3525 Complete message command parser and listener
continuous-integration/drone/push Build is passing
The message command listener is now completed and the bot now also supports message-based commands with multiple aliases.
2022-11-22 16:19:08 +01:00
bea 501b1bc71c Bump version
continuous-integration/drone/push Build is passing
Up to 0.2.8 because we are close to 0.3.0 since we made slash commands interfaces and a better command listener. However, we're still missing interface for command auto-completion and we should probably also register commands on discord's api from our interface instead of storing them again in a separate class.
2022-11-22 14:55:47 +01:00
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