Commit graph

84 commits

Author SHA1 Message Date
Noikoio
ffa5b5754b Several fixes after a round of testing
Fixed the following compilation errors:
-Moderators collection not initialized
-Outdated method signatures for ban and kick in ModuleBase
-Update author name in manifests
-Fixed incorrect method signature in AutoScriptResponder

Minor improvements:
-Updated external dependencies
-Remove unused variables in ConfDefinition of RegexModerator
-Improve parallel execution of matches?
-Send exception message on logging failure to reporting channel
-Slightly change ModuleLoader logging output
-Add Discord.Net unhandled exception output to logging
-Updated link to Github
-Changed GuildState exception handling message for conciseness

Fixes:
-SQL index creation in LoggingService
-SQL view creation in UserCacheService
-Add casts from ulong to long in SQL inserts
-External modules no longer loaded twice
-Non-Info messages from Discord.Net will now be reported
-User data had not been recorded at proper times
-Some modules had been returning null instead of Task with null
-Guild state exception handling should not have handled config errors
2019-06-21 15:05:58 -07:00
Noikoio
2319c91fc7 Switch to file-based configuration 2019-06-21 14:32:20 -07:00
Noikoio
c1e8f6699a Moved EntryRole to self-hosted
As it's currently implemented, it may cause problems for larger guilds
if any error is encountered. Additionally, it requires that the bot keep
tabs on all users on entry which may bring unnecessary extra load on the
host.

Additionally, added some error handling.
2019-06-20 17:35:50 -07:00
Noikoio
90feeb47b0 Ported RegexModerator from RegexBot
Changes:
-Renamed from AutoMod
-Some options have been simplified to reduce complexity
-Response exectution has been totally reworked to accomodate new and
upcoming features

Currently untested.
2019-06-16 22:37:11 -07:00
Noikoio
e87a985067 Finish adding entity finder helper methods 2019-06-16 21:59:17 -07:00
Noikoio
9c334f2e48 Removed custom DM notification on common kick/ban 2019-04-24 13:43:46 -07:00
Noikoio
77b6aa891b Add support for moderator list in GuildStateService
Completely forgot.
2019-04-24 13:41:10 -07:00
Noikoio
4de1e25230 Update packages 2019-04-24 13:38:51 -07:00
Noikoio
403703773b Improved documentation 2019-03-16 17:07:57 -07:00
Noikoio
c843104e3c Various changes
-Add Guild ID parameter to guild state setup method
-Add EntityCache support to ban and kick methods in ModuleBase
-EntryRole waiting list now preserved between state reloads
2019-03-16 17:07:18 -07:00
Noikoio
6f7ffda63b Ported EntryAutoRole from RegexBot
Untested and missing some error handling at the moment.
2019-02-17 15:59:02 -08:00
Noikoio
9efb35a046 Added EntityCache - UserCache component 2019-02-15 16:49:54 -08:00
Noikoio
47a738ddbc Remove per-guild schema
All guild data will now be stored within the same table, instead of
a new schema being created for each guild. This avoids issues with
missing schemas.
This likely wasn't a good idea to begin with.
2018-12-18 16:21:35 -08:00
Noikoio
de8660d913 Add missing documentation and initialization 2018-12-06 20:14:26 -08:00
Noikoio
47cc8425b2 Added CommonFunctionsService
Experimental feature. An attempt to standardize some common functions
to ensure consistent execution of those functions, and also to notify
services ahead of time that the events they may raise originated from
within the bot.

This is the initial commit. Implementation may change later.
2018-12-04 19:41:42 -08:00
Noikoio
530a4ae1b6 Add AutoScriptResponder
I'm not particularly proud of this.
2018-11-04 20:40:57 -08:00
Noikoio
81e9e6f959 Add debugger step through 2018-11-04 19:38:36 -08:00
Noikoio
367427938c Added equivalent modification from RegexBot 2018-11-04 19:37:52 -08:00
Noikoio
8bee71a863 Ported AutoResponder from RegexBot
Changes:
-Renamed from AutoRespond
-Rate limiting class is now generic in case it may be needed
-Multiple responses can be specified per definition
--One response is randomly chosen to be sent out
2018-09-21 21:31:07 -07:00
Noikoio
7ce2788594 Fix improper parsing; add null check 2018-09-21 20:39:36 -07:00
Noikoio
d8cb46113a Disable debug info generation on release builds 2018-09-21 20:38:34 -07:00
Noikoio
749ba169c0 Add exception handling when making new guild state 2018-09-20 19:43:27 -07:00
Noikoio
ee94cfd961 Add null check 2018-09-20 19:42:32 -07:00
Noikoio
1fbc9bca7f Reimplemented EntityList, FilterList
Based on similar classes from RegexBot.

-EntityList no longer separates by entity type.
-Both types allow caching their respective EntityName ID values.
-FilterList supports loading from custom field names.
2018-09-01 21:33:02 -07:00
Noikoio
9b6104030d Ported EntityName from RegexBot
Changes:
-Includes a method to make resolving a name into an ID much easier
-Leading prefix is now properly handled; no need to strip it first
2018-06-13 16:02:09 -07:00
Noikoio
9bd9a21531 Minor improvements throughout 2018-06-06 16:01:54 -07:00
Noikoio
4ca38fa881 Better error handling on module load 2018-06-06 13:54:51 -07:00
Noikoio
2e178a2f2d Reorganized solution projects
Clear separation between what features will be available in the public
instance and additional features available for a self-hosted instance.
2018-06-04 19:32:21 -07:00
Noikoio
f20a17e914 Implemented module loading; fixed GuildStateService issues 2018-06-04 17:15:18 -07:00
Noikoio
eae7410dbc First commit of GuildStateService
Currently untested. Unable to properly test until the module system is
developed further.
2018-06-02 17:33:31 -07:00
Noikoio
43c02d2705 First commit of LoggingService 2018-05-10 23:13:00 -07:00
Noikoio
ea4d7b0a29 'First' commit; add most of the initialization routine 2018-05-06 13:09:17 -07:00
Noikoio
3bf509c5d4 Added readme 2018-04-27 18:06:53 -07:00
Noikoio
a5f33e1353 First commit 2018-04-27 14:17:55 -07:00