Iris System
6b14c50f09
fix(bot): only allow proxying in known-supported channel types
...
This is so that new channel types added by Discord (that may or may not
support the features we need for proxying to work) don't throw piles of
error codes at users when they try to proxy.
2023-06-28 14:38:50 +12:00
Iris System
a0fa03599b
fix(bot): display new Discord usernames correctly
2023-06-28 13:55:21 +12:00
Iris System
97666a62df
fix(bot): make EmbedLinks permission check work with threads
2023-05-28 14:42:18 +12:00
Iris System
83af1f04a7
feat(bot): add support for Discord message context commands ( #513 )
2023-05-16 03:17:34 +12:00
spiral
3bac8816d2
feat(bot): bump non-nitro file size limit to 25mb
2023-04-15 12:16:58 -04:00
spiral
eefbaf0c1d
feat(bot): correctly proxy voice messages
2023-04-15 12:10:04 -04:00
Iris System
25c55df3b3
feat(bot): allow clearing embeds from proxied messages
2023-01-08 03:07:22 +13:00
spiral
d332535ab1
Revert "fix(bot): wait for identify limit on identify instead of shard connect"
...
This reverts commit 6277d72c9c
.
2022-12-24 22:37:04 +00:00
spiral
6277d72c9c
fix(bot): wait for identify limit on identify instead of shard connect
2022-12-21 05:47:13 +00:00
spiral
f06fdb38ef
fix(bot): i forgot how serilog works
2022-11-28 19:25:20 -05:00
spiral
3f62f89e18
feat(bot): print any rate limit headers received on interactions routes
2022-11-28 18:59:02 -05:00
spiral
014999271f
feat(proxy): throw user-readable error on 413 when sending proxied attachments
2022-09-29 17:54:03 +00:00
spiral
5196e332df
feat(proxy): throw user-readable error when discord rejects a webhook username
2022-09-29 17:52:28 +00:00
spiral
9303dbb91e
refactor(bot): remove saving own user ID from ready event, rely on ID in config
2022-09-06 09:52:37 +00:00
Iris System
d9fe78bdf2
feat(bot): always allow reproxying latest message in channel
2022-08-27 17:02:50 +12:00
Iris System
52127d9255
chore: update nuget Grpc.Tools to 2.47.0
...
The version previously used (2.37.0) is completely broken on
aarch64 Linux, so building the bot just didn't work there.
2022-07-05 11:15:30 +00:00
spiral
f0b5749d5c
feat(bot): clean up / paginate help command
2022-06-14 19:05:15 -04:00
spiral
a18fd9bd0d
chore: update github repo URL
2022-06-05 12:57:10 -04:00
Ske
4df8629b35
Remove some unused fields on cached models
2022-06-03 10:39:29 +02:00
spiral
1e86c2d6c4
chore: lint
2022-04-20 10:47:15 -04:00
spiral
c2094e3b7a
feat(bot): add Redis cache
2022-04-13 08:44:53 -04:00
spiral
7afba4ea95
chore: code cleanup (mostly whitespace / remove unused imports)
2022-03-30 04:36:22 -04:00
spiral
be89f907a0
feat: block running commands / proxying when system is being deleted
...
Large systems take way too long to delete, which causes any insert for that system to block a connection, which exhausts the connection pool
2022-03-23 21:32:18 -04:00
spiral
ae543b9c18
feat: fetch from REST instead of cache for cross-cluster lookups
2022-03-09 20:06:53 -05:00
spiral
078b5a5bcd
feat: log error when globally ratelimited
2022-02-26 16:28:28 -05:00
spiral
32a73eef09
feat: update to Discord API v10
2022-02-26 16:28:20 -05:00
spiral
47e501da81
fix: update guild cache on GUILD_UPDATE event
2022-02-04 14:54:56 -05:00
spiral
b6a160caef
feat: log full Discord error body
2022-01-26 06:21:19 -05:00
spiral
89c44a3482
feat: cache Discord DM channels in database
2022-01-22 02:47:47 -05:00
spiral
c6e4c862b8
feat: update Discord status only on identify
...
See <https://github.com/discord/discord-api-docs/issues/4073#issuecomment-1016762755 >
We still update status when restarting cluster, because it doesn't really matter if the session dies in that case (we're already restarting / going to reidentify)
2022-01-20 05:52:40 -05:00
spiral
426d753827
feat: tweak durations in Redis gateway ratelimiter
2022-01-19 18:01:42 -05:00
spiral
a16903037f
fix: don't try to re-send stickers and activity invites
2022-01-14 23:22:12 -05:00
spiral
50a24f03a7
refactor: only pass shard ID to event handlers instead of full shard object
2022-01-14 18:39:03 -05:00
spiral
47e15e3acb
feat: add a couple missing Discord types
2022-01-13 12:28:44 -05:00
spiral
2aead40449
feat: add Redis identify ratelimiter
2022-01-13 12:26:25 -05:00
spiral
22feedd5dc
Revert "feat: query identify ratelimiter when identifying instead of when connecting websocket"
...
This reverts commit 5627fa9864
.
2022-01-08 09:08:32 -05:00
spiral
5627fa9864
feat: query identify ratelimiter when identifying instead of when connecting websocket
2021-12-26 01:46:25 -05:00
spiral
40acd9370c
feat: lower timeout in twilight gateway ratelimiter
2021-12-26 01:42:47 -05:00
spiral
9ab1a873e5
feat: log shard ID in ShardConnection logs
2021-12-23 22:46:38 -05:00
spiral
fc5825a941
fix twilight gateway ratelimiter
2021-12-23 22:02:45 -05:00
Ske
92e638613f
Force HTTP/1.1 for now
2021-12-23 21:23:43 -05:00
spiral
04d78e3348
refactor: remove some unused code
2021-11-26 21:14:09 -05:00
spiral
1918c56937
feat: upgrade to .NET 6, refactor everything
2021-11-26 21:10:56 -05:00
spiral
7a5ba8246e
refactor: cache own user ID in IDiscordCache
...
- remove Cluster.User
- remove Cluster.Application (it was only being used as an alternative to Cluster.User for some reason)
- move Bot.PermissionsIn to DiscordCacheExtensions
2021-11-21 19:42:35 -05:00
spiral
24ac0725af
refactor: move guildMember caching to IDiscordCache
2021-11-21 12:06:08 -05:00
spiral
0ca356eec3
feat: add support for attachment descriptions
2021-11-19 09:34:52 -05:00
spiral
923ad100e5
lint
2021-11-19 07:57:01 -05:00
spiral
0efaab6d95
refactor: don't use 'out' in IDiscordCache methods
...
this change is required for async cache (.NET doesn't support async ref/out params)
2021-11-18 13:11:02 -05:00
spiral
e7f36eb31f
feat: async cache
...
this breaks logging bot permissions to Sentry.
we haven't had a need to check those recently (permissions issues were because of broken cache), so this is fine for now
this should be re-added in the future though
2021-11-17 20:41:02 -05:00
spiral
48d4009c69
fix: fix reporting Discord response metrics to influxdb
2021-11-09 02:19:31 -05:00