Commit Graph

103 Commits

Author SHA1 Message Date
Sheldan
7a7ec5654f [AB-25] changing member loading to be partitioned 2022-11-20 22:37:10 +01:00
Sheldan
5c7b018b2a [AB-25] refactoring experience collection to work instantly instead of delayed job
adding level up notification for experience
2022-11-20 19:49:34 +01:00
Sheldan
4e1f9e0018 [AB-8] upgrading to new JDA alpha version 19
cleaning up imports
2022-09-18 15:51:49 +02:00
Sheldan
9954515db0 [AB-53] adding economy related commands
adding runtime exception to root command handling
adding simple custom command module
disabling slash command for show emote the utility is not given (the bot cannot show any emotes from servers its not in)
fixing post target setup not allowing threads
fixing post targets not supporting threads
fixing interactions not considering the actual amount of embeds
fixing some cases for events which are not in a guild
2022-07-23 10:20:41 +02:00
Sheldan
68cae74819 [AB-52] upgrading to alpha 12
adding anonymous reporting
reworking message context commands
refactoring interaction packages
adding post execution handling for message context commands and modals
reworking feature mode response
fixing setup using component ids
storing infraction parameters, for example mute duration, with every infraction
adding infractions for more moderation actions
creating general method to format a duration string
adding infractions command
reworking muting to use built-in functionality of discord
enabling chunking of members
removing manual unmuting feature mode
adding ability to update infractions with a command
implemented infraction listeners for ban and warn
refactored infraction notifications
storing log messages to the infraction for editing said log messages
2022-07-18 21:52:12 +02:00
Sheldan
1d6de3f1e8 [AB-365] introducing slash commands for a selection of commands
adding method for pinning a message
moving suggestion to correct deployment
2022-06-20 00:03:30 +02:00
Sheldan
c10296251c [AB-327] adding a third state to the result of a system condition: Ignored, this means that the condition was not evaluated, and is neither true nor false, this is for example used when the feature the condition is about is disabled
adding server ID to has level condition parameters
2021-11-27 22:08:12 +01:00
Sheldan
16e6caa1f0 [AB-196] adding confirmation requirement to various commands
refactoring command received handler in order to re-use when confirmation has been given
removing reaction from showSuggestion and remind command
adding log message for message deleted message, in case the member left
all commands from now on must work without the member field from the message, as this is not available when retrieving the message
2021-09-27 00:22:37 +02:00
Sheldan
69abff77fb [AB-xxx] fixing test 2021-08-21 16:05:01 +02:00
Sheldan
2c31fa1c1e [AB-xxx] not always creating a user instance in the experience listener
adding logging in case the warn decay notification fails
2021-08-21 15:50:11 +02:00
Sheldan
19a4858da1 [AB-323] improving logging when using whenComplete 2021-08-14 12:15:18 +02:00
Sheldan
222250b795 [AB-321] changing caching policy
changing logging messages
2021-08-14 08:00:40 +02:00
Sheldan
794fc7ceac [AB-71] adding very simple anti raid feature to automatically mute member who mass mention users 2021-07-14 01:48:53 +02:00
Sheldan
7e7591a4b3 [AB-302] refactoring assignable roles to use buttons instead of reactions
moved button related services to component service instead of message service
adding component type to component payload
renamed async role service methods
ignoring bot reactions in starboard
fixing rank not showing correct experience to next level for other members
2021-07-11 19:05:53 +02:00
Sheldan
67121b318d [AB-271] fixing tests 2021-06-27 19:57:38 +02:00
Sheldan
5a35137132 [AB-271] limiting certain arguments for commands to require the same server 2021-06-27 17:07:01 +02:00
Sheldan
7e2477a321 [AB-xxx] adding support for automatic setup steps
reducing eventwaiter threads
adding abstracto templated exception
adding json validation service
increasing threads for scheduling
adding convenience method to retrieve users
2021-06-27 00:20:15 +02:00
Sheldan
d69f597663 [AB-279] extending max level for experience gain to 150 2021-05-30 20:00:06 +02:00
Sheldan
148c25da4c [AB-275] fixing channel groups not being able to be found, because of upper/lowercase
adding performance improvements for experience listener
adding logging to when a user gains a level
fixing creating a user experience instance in the join listener, which was not persisted
2021-05-29 01:09:14 +02:00
Sheldan
95a639a733 [AB-272] improving leaderboard performance
fixing leaderboard returning wrong pages
making template cache update duration longer
2021-05-26 21:41:04 +02:00
Sheldan
04b3e073aa [AB-270] fixing test 2021-05-26 11:51:45 +02:00
Sheldan
08e2a31f15 [AB-270] adding a channel group to define the channels in which experience gain is disabled
adding a service method to enable migration
2021-05-26 11:29:34 +02:00
Sheldan
184271ff7c [AB-247/AB-252] fixing issue with set experience role failing to consider the correct experience roles
adding levelRoles command
ignoring bots from experience gain
adding a bit more logging to user experience handling
2021-05-26 01:22:37 +02:00
Sheldan
c4fe73b3f8 [AB-251] adding optional member parameter to rank command to show the rank of another member 2021-05-25 00:24:07 +02:00
Sheldan
13a6e1fdca [AB-263] adding stricter not null checks to database, disabling updates/inserts for created and updated columns to only rely on triggers 2021-05-23 14:17:03 +02:00
Sheldan
04a7cfafd7 [AB-84] adding profanity filter with different feature modes
react command: adding additional mapping for character r
2021-05-16 23:44:50 +02:00
Sheldan
e31d257e6f [AB-240] changing invite filter to actively filter the server instead of only being based on the code
moving invite filter to separate module
updating to newer liquibase version
changing concept of immune roles which are directly associated to commands to immune roles which are immune against certain effects. these effects can be configured directly by the command (and a condition checks this effect), but they can be used in services as well, unrelated to commands
adding checks to not execute message received listeners for the wrong message types
adding metric support for 502 status
fixing duplicating help entries when two module definitions with the same key are present
2021-05-10 20:45:34 +02:00
Sheldan
23dd02312a [AB-250] showing nicer exception in case there is no tracked experience yet 2021-05-02 01:26:39 +02:00
Sheldan
ad15538b67 [AB-244] fixing experience service related test 2021-05-02 00:22:03 +02:00
Sheldan
4c1470b148 [AB-245] roles are required to be sorted when syncing users, this led to incorrect role assignments 2021-05-01 12:55:47 +02:00
Sheldan
3559a823fc [AB-244] always loading the member for giving experience, members are not in cache just for writing a message 2021-05-01 12:52:45 +02:00
Sheldan
8258197bfc [AB-xx] replacing trace log with debug 2021-04-04 18:23:18 +02:00
Sheldan
9541f907b8 [AB-215] adding create alias and delete alias commands to create service specific aliases for commands
renaming package in commands package
defaulting to latest in docker compose build for deployment container
fixing jacoco configuration
changing that if there are no parameters required, parameters are accepted
2021-03-28 16:46:21 +02:00
Sheldan
b4e36efafb [AB-203] restructuring listeners to use more common code and common interfaces for listeners and models
restructuring entity listener to be async and added models
fixing usage of repository save method
adding interface dependencies to bundle dependency management
2021-03-21 16:26:06 +01:00
Sheldan
2ed456c164 [AB-197] splitting utility maven module into separate maven modules
aligning some package names
removing some unnecessary computed values from liquibase
2021-03-12 18:48:56 +01:00
Sheldan
e780b0e75c [AB-137] fixing occurrences for templates in cases entities do not exist anymore
fixing feature mode retrieval to adapt to lowercase
fixing disable exp role creation and retrieval
removing ansible code
2021-03-09 21:39:29 +01:00
Sheldan
373dfac001 [AB-60] improving java doc for experience module 2021-03-03 16:35:06 +01:00
Sheldan
821971523e [AB-165] removing mocking utils and general test improvements 2021-03-01 01:57:13 +01:00
Sheldan
5f6746d742 [AB-149] adding command to reset configuration to default values
removing listener to create system config instances
adding default value retrieval to appropriate places
making config key handling case insensitive
changing exp multiplier to double value
refactoring experience service bean test
2021-02-27 23:56:38 +01:00
Sheldan
43eca33113 [AB-77] moving the templating module into the core module
adding a possibility to overlay specific templates for particular servers
adding commands to configure templates
adding file parameter support
2021-02-20 13:29:09 +01:00
Sheldan
94532be54d [AB-112] adding star levels to setup feature wizard
moving star level configuration to only be instantiated when needed
2021-02-14 17:04:37 +01:00
Sheldan
23bdf4e906 [AB-69] adding templating support to help modules 2021-02-14 14:20:01 +01:00
Sheldan
34b9bca7ac [AB-192] removing second level cache
changing assignable role place module name
fixing starboard retrieving the starstats incorrectly
fixing removing user assigned roles when removing a role from assignable role place
fixing not being able to remove external emote for assignable role place
2021-02-13 16:16:50 +01:00
Sheldan
047c574319 [AB-190] migrating default config (featureMode, system config, post targets, feature flags) from tables to property files
not longer immediately instantiating the feature flag instance when a new server is found, but only when its config is changed or when a feature mod has its config changed
2021-02-11 00:19:17 +01:00
Sheldan
ea12d67e5f [AB-62] adding server id to more tables for easier joins and fixing structure at more places 2021-02-08 02:06:43 +01:00
Sheldan
038d5c3832 [AB-103] adding triggers to update created and updating attributes on tables
fixing error handling in installer
merging change sets to larger operations
adding check constraints
fixing suggestion id handling
applying naming conventions to various columns
adding indices to tables
adding user in server and user locking
2021-02-07 22:58:06 +01:00
Sheldan
b838678c15 [AB-184] adding various metrics to the system, organizing imports, changing some transactional behaviour
adding okhttp metrics, split bot service into multiple services (guild, message), unified some places that services are used in order to interact with the api, and not directly the objects (this is to make it easier for metric to be accurate)
2021-02-03 03:16:51 +01:00
Sheldan
2a2a3aea70 [AB-68] adding invite filter with commands to allow/disallow invites, remove stored filtered invite links and show filtered invite links
removing database entities from command context
2021-01-24 22:34:01 +01:00
Sheldan
fb3ed69650 [AB-154] split up private and guild message received handler, split handlers into async and sync handlers
adapting the tests and improving tests to reduce usage of MockUtils
adding some util methods to message bean
extending cache for cached messages
enabling to build cached messages from messages in DM channels (they are not part of the message cache)
splitting multiple listeners to different beans, for better overview (emote updated)
adding convenience service for reactions specifically
split cached reaction and cached reactions, singular only contains one user, while the later contains all users
fixing liquibase configuration for assigned role user
fixing assignable role not having a transaction
moved caching update a bit earlier in various methods
fixing bug that a manual unmute caused duplicate unmute notification
fixing short scheduled unmute not checking the new mute state
limiting parameters for roll
2021-01-23 11:40:41 +01:00
Sheldan
325264a325 [AB-150] creating repost detection feature including configuration and documentation
adding http and hash service
adding ability to add default emotes to a message to message service
adding message embedded listener to wrap the embedded event
adding custom channel groups which can be defined by modules, in case a change on a channel group (only created and updated) happens a listener is available in order to sync the state in dependant areas
changing command receiver re-throwing abstracto runtime exceptions in order to display them better
changing channel group parameter handler to throw an exception in case the channel group was not found
adding User in a server parameter handler
split channel not found exception to be able to differentiate between not found in database and not found in guild
changing exception handling in command received handler to handle the case for only one parameter handler future which failed (the whole single future failed, which was not reported)
changing parameter type of `removeFromChannelGroup` to AChannel in order to be able to delete channels in the database via ID
moving method to mock utils for mocking consumer
removing parameter validation from commands, as it should be done in the command received handler and parameter handlers anyway
2020-12-13 01:50:09 +01:00