spiral
dcc15dc847
Move mediaproxy URL rewriting to ProxyService
...
This shows full size avatars in API / cards.
Also, rewrite URLs currently stored with media.discordapp.net "back" to
cdn.discordapp.com before sending them to users.
2021-08-01 12:51:54 -04:00
spiral
2bb8c084c9
add missing ) in debug string
2021-08-01 12:32:40 -04:00
spiral
a8727f474b
Allow any linked account to edit/delete messages sent by the same system
...
Closes #375 .
2021-07-27 11:39:37 -04:00
spiral
620fb5be36
Add Vortex log cleanup
2021-07-24 12:02:06 -04:00
Starshine System
74140b5994
Message info embed improvements ( #374 )
...
- Fetch the user if there's no member object, so users who left the server don't show up as deleted
- Order roles by position (so potential staff roles show up first and aren't cut off)
2021-07-19 01:02:27 -04:00
Ske
1f2b9f998d
Preliminary support for APIv9 and threads
2021-07-15 12:41:19 +02:00
spiral
e620e30c10
Fix channel checks missing GuildNews
...
The log channel / logclean checks are left as-is; hopefully nobody is
using an announcements channel for their logs?
2021-07-08 09:17:35 -04:00
spiral
c727a71161
Add "flat" front history view (percentages add up to 100%)
2021-06-21 11:30:38 -04:00
spiral
bc32943824
fix timespan when removing no-fronters
2021-06-21 10:52:06 -04:00
Ske
ae82bb4168
Updates to Elastic logging
2021-06-10 14:21:05 +02:00
Ske
ae9ed0f4ee
Store stard status in the database
2021-06-10 12:52:47 +02:00
Ske
41f1c58a9f
Merge branch 'new-shard-handler'
2021-06-08 10:20:59 +02:00
Ske
118f2d49a6
WIP new shard implementation
2021-06-08 10:19:54 +02:00
Ske
4bd2d06b0b
Add basic interactivity framework
2021-05-30 16:45:45 +02:00
Ske
d7c0592947
Add preliminary support for buttons
2021-05-26 22:27:52 +02:00
spiral
1f0c75d677
Add logging message edits
2021-05-07 17:35:09 +01:00
Spectralitree
b1c7fbd2df
Add color to frontpercent embed ( #307 )
...
* Add color to frontpercent embed
* don't pass color as a separate argument
Co-authored-by: Astrid <mail+github@astr.cc>
2021-05-07 10:40:57 +02:00
Ske
3d624b39e4
Add message editing command
...
Signed-off-by: Ske <voltasalt@gmail.com>
2021-05-03 12:33:30 +02:00
Ske
aa2a234f8d
Fix permission error on message edit handler
...
Signed-off-by: Ske <voltasalt@gmail.com>
2021-05-03 10:29:22 +02:00
spiral
dfa25b77c7
Add flag to remove 'no fronter' item on frontpercent card
2021-04-22 01:18:41 +01:00
Ske
a2d2036851
Fix nullability for embeds
...
Signed-off-by: Ske <voltasalt@gmail.com>
2021-04-13 04:11:53 +02:00
Spectralitree
7010becd32
Add group front percentages (fixing Git history)
...
Signed-off-by: Ske <voltasalt@gmail.com>
2021-04-06 12:58:50 +02:00
Spectralitree
c764f922ec
Add color field to embeds
2021-03-28 19:22:45 +02:00
Spectralitree
8da5c94b1c
even more branch fixing
2021-03-28 12:22:19 +02:00
Spectralitree
1e876ce283
more branch fixing
2021-03-28 12:20:01 +02:00
Spectralitree
3603d52e9e
Add group and system colors
2021-03-28 12:02:41 +02:00
Spectralitree
1b791fd7f9
Merge branch 'main' of https://github.com/Spectralitree/PluralKit into main
2021-03-27 23:41:24 +01:00
spiral
66e483be6f
Fix NullReferenceError when HasValue is true but Value is null
2021-03-25 18:02:44 +00:00
spiral
0acadee803
don't cache the full message
2021-03-22 07:17:10 +00:00
spiral
a7189fab8c
Fix handling replies in edited messages
2021-03-22 07:07:33 +00:00
Ske
4ee0c13d62
Fix error on @ everyone
2021-03-18 11:34:35 +01:00
Spectralitree
9d80b7b141
Add group front percentages
...
Also add a title to the system frontpercent embed, and tweak the footer
2021-02-09 23:36:43 +01:00
Ske
557ec4234e
Fix fetching messages we can't access
2021-01-31 17:56:33 +01:00
Ske
80c572f594
Fix various bugs and regressions
2021-01-31 16:02:34 +01:00
Ske
b48a77df8d
Convert periodic stat collector
2021-01-31 14:59:45 +01:00
Ske
d56e878c28
Converted shard and logclean service
2021-01-30 01:07:43 +01:00
Ske
da9d84a197
Get rid of more D#+ references
2021-01-15 11:29:43 +01:00
Ske
9079f1c59c
Port the DM stuff
2020-12-25 13:58:45 +01:00
Ske
f6fb8204bb
Add embed builder, some more ported classes
2020-12-23 02:19:02 +01:00
Ske
05334f0d25
Converted enough to send the system card
2020-12-22 16:55:13 +01:00
Ske
a6fbd869be
Initial commit, basic proxying working
2020-12-22 13:15:26 +01:00
Ske
df243d4220
Add info embed to proxied replies
2020-12-20 11:38:26 +01:00
Astrid
07cd753247
Merge pull request #255 from dev-kittens/feat/group-random
...
Add random command for groups
2020-12-08 12:20:45 +01:00
spiral
51278532d1
Add support for GiselleBot log cleanup
2020-11-24 00:02:36 -05:00
spiral
45b87bd132
Move group card embed to EmbedService
2020-11-22 11:57:54 -05:00
Ske
e24b5e3529
Add logging/metrics for error *messages*
2020-11-16 10:07:57 +01:00
Ske
c0c4871f0b
Fix cache error using log channel
2020-11-15 15:07:20 +01:00
Ske
27c9e54f17
Delete proxied message if the trigger message gets deleted by other means
2020-11-15 14:34:49 +01:00
Ske
634173e205
Update to D#+ 4.0.0-rc1
2020-11-15 13:53:31 +01:00
Astrid
d844f41059
Merge pull request #244 from dev-kittens/patch-2
...
[accessibility] add newline between linked accounts in system card
2020-11-15 13:13:23 +01:00
Ske
ce25a56d7a
Support multiple 'Clyde's in a webhook name
2020-11-15 13:12:30 +01:00
Ske
537783dd96
Fix permission check for log channels
2020-11-08 18:52:50 +01:00
spiral
ac679271f2
add newline between linked accounts in system card
2020-11-08 02:00:06 +01:00
Ske
108dbb9cc6
Actually set the proper command message retention >.>
2020-10-23 12:20:53 +02:00
Ske
b6dbc82abe
Clean up imports
2020-10-23 12:20:44 +02:00
Ske
81cd5496d5
Refactor command message deletion
2020-10-23 12:18:28 +02:00
Ske
1e8470e77f
Potential quick fix for... something
2020-09-25 23:28:06 +02:00
Ske
4f6c98db48
(Add the actual service file, shh)
2020-09-20 22:36:04 +02:00
kittens
42b70cde9a
Add -all flag on system and group cards ( #216 )
...
* Show group count on stats card
* Add -all flag on system and group cards
Shows full count, including private members.
* fix stuff broken by merging conflicts
2020-09-13 00:10:37 +02:00
Ske
7b59040da2
Truncate roles list if it gets too long
2020-09-12 19:30:03 +02:00
Ske
47bdc34142
Optimize DB access for LogClean
2020-09-09 22:20:52 +02:00
Ske
a1da3e1386
Sort groups on the member card alphabetically
2020-08-30 17:03:28 +02:00
Ske
c7612df37e
Major database refactor (again)
2020-08-29 13:46:27 +02:00
Ske
9955dc29f9
Add Elastic-bound logging of (almost) all database update events
2020-08-27 21:28:36 +02:00
Ske
203dbc65a1
Replace most "code-escaped" literals with properly-escaping helpers
2020-08-25 22:44:52 +02:00
Ske
10d6968734
Add metrics for group count
2020-08-25 18:26:52 +02:00
Ske
8688f4d0bf
Merge branch 'main' into feature/groups
2020-08-21 18:31:49 +02:00
Ske
1bb5d203df
Various additional tweaks/additions to groups
2020-08-20 21:43:17 +02:00
Ske
9e251352c7
Various fixes and improvements
2020-08-16 12:10:54 +02:00
Ske
bed43379cf
Add additional (debug) logging to (proxy) logger
2020-08-12 21:52:42 +02:00
Ske
62cdb8a9b8
Check for avatar whitespace instead of null.
...
This may be relevant for #206 , although unsure if this is actually a fix.
2020-07-28 19:35:34 +02:00
Ske
5e28e0aba1
Add group privacy command/structures
2020-07-28 19:17:01 +02:00
Ske
f47d366c8d
Show member groups on member card
2020-07-28 19:17:01 +02:00
acw0
88c28c18c7
Fix pk;msg erroring between shards
2020-07-22 04:07:35 -04:00
Ske
5d3e159f54
Properly block pinging normally unmentionable roles
2020-07-22 01:06:25 +02:00
Ske
66f7a664c8
Add special check for pronouns being an empty string
...
I'm unsure when this happens in practice, but thought I'd guard against it just in case (since it's caused a couple errors already).
2020-07-18 13:07:16 +02:00
Ske
59bbbab621
Handle cases where the channel webhook limit is already hit
2020-07-05 13:38:18 +02:00
BeeFox-sys
55ea314b42
Fix: Escape Backticks ( #192 )
2020-07-05 12:55:21 +02:00
Ske
c87e67245d
Create GetXXX utils wrapping try blocks
2020-07-02 18:29:04 +02:00
Ske
467ce78522
Retire more IDataStore methods
2020-06-29 14:54:11 +02:00
Ske
472e556ef0
Pass proper allowed_mentions when sending webhook messages
2020-06-28 20:26:14 +02:00
Ske
3207fcff1b
Fix guild ID row name in query
2020-06-26 15:07:51 +02:00
Ske
bb75519f6b
Properly handle unauthorized log channel access
2020-06-25 09:14:05 +02:00
Ske
d3cf382e3b
Migrate to date/time format extension methods
2020-06-21 16:05:04 +02:00
Ske
dcffbef805
Migrate to more privacy helper extensions
2020-06-21 15:51:08 +02:00
Ske
84d5adf907
Fix build errors from DSP update
2020-06-21 15:34:32 +02:00
Ske
2c35649ef0
Use AllowedMentions to disable mentions everywhere by default
2020-06-20 17:33:10 +02:00
Ske
ff7b728762
Merge branch 'feature/granular-privacy'
2020-06-20 16:25:08 +02:00
Ske
ae4e8f97d0
Add member avatar privacy
2020-06-20 16:00:50 +02:00
acw0
11848bc19f
Add support for Auttaja webhook message logs
2020-06-19 13:00:04 -04:00
Ske
56eae82b0a
Move most references to PKMember.Name to go through helper extepsions for privacy
2020-06-18 17:08:36 +02:00
acw0
8559f1f532
Add GearBot to log cleanup
2020-06-17 20:46:03 -04:00
Ske
e92700f339
Comment out color privacy stuff for now (revisit later?)
2020-06-17 21:51:40 +02:00
BeeFox-sys
721a4502bb
Feature/granular member privacy ( #174 )
...
* Some reasons this needs to exist for it to run on my machine? I don't think it would hurt to have it in other machines so
* Add options to member model
* Add Privacy to member embed
* Added member privacy display list
* Update database settings
* apparetnly this is nolonger needed?
* Fix sql call
* Fix more sql errors
* Added in settings control
* Add all subject to system privacy
* Basic API Privacy
* Name privacy in logs
* update todo
* remove CheckReadMemberPermission
* Added name privacy to log embed
* update todo
* Update todo
* Update api to handle privacy
* update todo
* Update systemlist full to respect privacy (as well as system list)
* include colour as option for member privacy subject
* move todo file (why was it there?)
* Update TODO.md
* Update TODO.md
* Update TODO.md
* Deleted to create pr
* Update command usage and add to the command tree
* Make api respect created privacy
* Add editing privacy through the api
* Fix pronoun privacy field in api
* Fix info leak of display name in api
* deprecate privacy field in api
* Deprecate privacy diffrently
* Update API
* Update documentation
* Update documentation
* Remove comment in yml
* Update userguide
* Update migration (fix typo in 5.sql too)
* Sanatize names
* some full stops
* Fix after merge
* update migration
* update schema version
* update edit command
* update privacy filter
* fix a dumb mistake
* clarify on what name privacy does
* make it easier on someone else
* Update docs
* Comment out unused code
* Add aliases for `member privacy all public` and `member privacy all private`
2020-06-17 21:31:39 +02:00
Ske
627f544ee8
Migrate API to ASP.NET Core Auth services + refactor
2020-06-16 01:15:59 +02:00
Ske
ca882dba73
Add more performance metrics
2020-06-14 22:19:12 +02:00
Ske
c780781184
Remove unused imports
2020-06-13 23:12:44 +02:00
Ske
c927967c3b
Migrate GetSystemById
2020-06-13 19:42:04 +02:00
Ske
90ac186183
Extract Database to interface
2020-06-13 19:36:43 +02:00
Ske
2038f023a0
Move count stat collecting to raw SQL
2020-06-13 19:15:29 +02:00
Ske
e176ccbab5
Several more database-y refactors
...
- DbConnectionFactory renamed to "Database", will now be the primary entry point for DB stuff
- Created IPKConnection interface mostly containing async extensions to IDbConnection, use this going forward
- Reworked the Connection/Command wrappers (that have performance/logging extensions)
- Probably more stuff that I forgot???
2020-06-13 18:31:20 +02:00
Ske
a915ddb41c
Extract system/member guild settings and refactor DB access
...
(also refactor MemberAvatar now that I'm here)
2020-06-13 16:03:57 +02:00
Ske
3d62a0d33c
Split message/proxy data up in MessageContext and ProxyMember
2020-06-12 23:13:21 +02:00
Ske
ba441a15cc
Too many refactors in one:
...
- Allowed adding ephemeral(ish) views and functions
- Moved message_count to a concrete database field
- Moved most proxy logic to a stored procedure
- Moved database files around and refactored schema manager
2020-06-12 20:29:50 +02:00
Ske
49acc4d9e2
Refactor proxy handling code
...
- Move reaction handlers to the ReactionAdded event instead of
ProxyService
- Split tag matching off into ProxyTagParser
- Split autoproxy matching off into Autoproxier
- General cleanup and simplification
2020-06-11 23:22:53 +02:00
Astrid
4a4d980349
Merge pull request #177 from acw0/bugfix/tag-markdown
...
Properly show tags containing markdown in system embed
2020-06-11 21:35:28 +02:00
Ske
67e55736f0
Still remove the reaction even if pings are disabled
2020-06-11 21:33:44 +02:00
Ske
ccb6ba5d30
Minor renames and rewordings
2020-06-11 21:32:04 +02:00
Lillian Berry
59af6f02e8
Add disabling reaction pings
2020-06-11 21:19:40 +02:00
Astrid
216dfffe58
Merge pull request #181 from acw0/fix-emojis
...
Fix emoji variation selector issue
2020-06-11 21:13:07 +02:00
ariel w
82886fe9e2
Move discord links to new domain ( #180 )
2020-06-11 21:12:43 +02:00
Ske
3d69a00716
Fixed exceptions when fetching webhook list "sticking" in the cache
...
This happened because we cache Task instances, not the values, and a failed task is still a *valid* task that can repeatedly be awaited. This lead to the Task being saved even if it failed, and the same exception constantly being re-thrown.
This fix invalidates the cache if it finds a failed Task, and lets it retry fetching as normal (hopefully successfully this time).
2020-06-11 16:13:18 +02:00
acw0
5714c18668
Fix emoji variation selector issue
2020-06-05 18:34:24 -04:00
Ske
ae74dce2ce
Make sure we only attach shard listeners once
2020-05-31 03:19:42 +02:00
Ske
d657e9813d
Properly handle executing missing webhooks
2020-05-23 01:51:02 +02:00
acw0
f55c638f41
Properly show tags containing markdown in system embed
2020-05-15 07:32:28 -04:00
Ske
792acad50a
Don't try to parse webhook error if error isn't JSON
2020-05-12 22:19:49 +02:00
Ske
b9a89a1037
Fix handling lack of DM permissions when react-querying
2020-05-12 21:31:59 +02:00
Ske
60018bf69d
Don't send ping message if bot doesn't have permissions
2020-05-12 21:26:37 +02:00
Ske
a3517f8663
Refactor order of shard initialization
2020-05-12 21:26:37 +02:00
Ske
cb8234b272
Restructure message info embed queries
...
This fixes several long-standing issues wrt. handling of senders that are no longer on the server and deleted accounts, as well as an error handling issue caused by the DSharpPlus migration.
2020-05-08 00:57:17 +02:00
Ske
892601110f
Temporary workaround for https://github.com/DSharpPlus/DSharpPlus/issues/565
2020-05-05 19:10:33 +02:00
Ske
c1d17c2944
Fix member avatar in log channel message
2020-05-05 19:05:52 +02:00
Ske
ffa6faddd2
Clean up some log levels in CpuStatService
2020-05-05 18:12:45 +02:00
Ske
e298f6f652
Add support for SafetyAtLast bot
2020-05-02 20:42:42 +02:00
Ske
720755844f
Rename BotHasPermission to a more descriptive name
2020-05-02 15:29:36 +02:00
Ske
999ea5f0b5
Refactor and simplify the main bot classes
2020-05-02 01:52:52 +02:00
Ske
7488ca459b
Hopefully fix shard info tracking (again)
2020-05-01 20:27:51 +02:00
Ske
91b60367f0
Hopefully fix error in LogClean module
2020-05-01 19:41:15 +02:00
Ske
e7b28261b2
"Properly" handle CloudFlare errors in webhook execution
2020-05-01 19:21:02 +02:00
Ske
48833639e2
Update shard status tracker for new library
2020-05-01 17:30:12 +02:00
Ske
d0f1aeb548
Fix member lookup in SanitizeEveryoneMaybe
2020-05-01 17:03:43 +02:00
Ske
e133bd657d
Remove log channels if they don't exist
2020-05-01 16:36:21 +02:00
Ske
e4ebd2a5fe
Merge branch 'refactor/dsharpplus'
...
It's heeeeeeeere~
2020-05-01 15:21:55 +02:00
Ske
546cb7f97a
Remove webhook rate limit cache
...
The move to DSharpPlus makes it unnecessary, as D#+ can actually do webhook invocations on its own.
2020-05-01 00:00:33 +02:00
Ske
042327d4aa
Add online user counting back (ish)
2020-04-30 23:55:12 +02:00
Ske
9fa36b78ff
Fix the garish default D#+ colors
2020-04-29 00:25:01 +02:00
Ske
35e30f481b
Fix error in stats collection task
2020-04-29 00:04:53 +02:00
Fennel
ebaded4bbd
Fix Proxied Messages Ignored
2020-04-28 22:30:11 +02:00
Ske
5386f24b69
Fix permissions check when proxying
2020-04-22 09:27:55 +02:00
Ske
23cf06df4c
Port some things, still does not compile
2020-04-17 23:10:01 +02:00
Ske
02e2c9314b
Update webhook rate limit code
2020-04-16 22:30:13 +02:00
Ske
05595329b5
Collect metrics about webhook rate limit cache size
2020-04-16 18:20:53 +02:00
Ske
93bf7c6543
Add periodic garbage collection of webhook rate limit cache
2020-04-16 18:18:08 +02:00
Ske
fa70df8f98
Add proper webhook rate limit support
2020-03-27 00:01:42 +01:00
Ske
20789411f6
Cancel early when rate limited
2020-03-08 11:06:08 +01:00
Ske
f8d0fb2f4b
Properly ignore invalid server-side data when executing webhooks
2020-03-08 10:55:47 +01:00
Ske
35b0659d05
Don't ping by reaction if sender doesn't have permissions
2020-03-04 18:39:51 +01:00
Ske
e49f2850c6
Add support for Vanessa log cleaning
2020-03-04 18:32:14 +01:00
Ske
ee3ac44664
Properly handle 5xx errors from webhook calls
2020-02-26 19:47:30 +01:00