Closed solonovamax closed 1 year ago
The only way to know who deleted a message that was sent by a user is if Fire has audit log permissions and it was deleted by another user & not a bot. Deletions of messages sent by a bot/webhook aren't logged
This would delay logging of deleted messages and could result in lost logs if there're issues with fetching the data (or if an audit log event is never received once I switch to using them) so it's not ideal
I've heard of these bots but am not familiar with their APIs, do they provide any way to know if the message was deleted by them? I wouldn't be surprised if they'd be more reliable than audit logs but there'd still be a delay
The only way to know who deleted a message that was sent by a user is if Fire has audit log permissions and it was deleted by another user & not a bot. Deletions of messages sent by a bot/webhook aren't logged
ah, I see. at least, filtering the deletions of user-messages by the bot could be done, though?
This would delay logging of deleted messages and could result in lost logs if there're issues with fetching the data (or if an audit log event is never received once I switch to using them) so it's not ideal
I was assuming this information would instead be fetched asynchronously when the message is sent, and then stored in the author field.
I've heard of these bots but am not familiar with their APIs, do they provide any way to know if the message was deleted by them? I wouldn't be surprised if they'd be more reliable than audit logs but there'd still be a delay
pk provides an api to fetch the id of the original (deleted) message, using the id of the webhook's message. However, this requires waiting for the webhook's message event before logging, which is probably sub-optimal
ah, I see. at least, filtering the deletions of user-messages by the bot could be done, though?
Bots deleting messages aren't logged in audit logs
I was assuming this information would instead be fetched asynchronously when the message is sent, and then stored in the author field.
How would I fetch who deleted a message when the message is sent?
pk provides an api to fetch the id of the original (deleted) message, using the id of the webhook's message. However, this requires waiting for the webhook's message event before logging, which is probably sub-optimal
I wouldn't be able to reliably wait for the webhook message
Bots deleting messages aren't logged in audit logs
ah, I see.
How would I fetch who deleted a message when the message is sent?
nvm, I just realized, there isn't a good way to do this. idk why I thought there was.
Is your feature request related to a problem? Please describe. There exist discord bots such as PluralKit or Tupperbox that allow you to "proxy" your messages under a different name/pfp. This is done by deleting the original message, removing any prefix/postfix, and then sending it again using a webhook with a custom image and display name.
Describe the solution you'd like Currently, this generates excessive logs, as it deletes every single message. It would be great if Fire could instead only log delete events that come from the pluralkit (or tupperbox) bot that are deleting webhook messages or messages from the bot. since that sentence is a bit wordy, here's some basic examples. Ticked boxes are logged, unticked ones are not.
Additionally, if you wish to also log the original user the message came from, that can be fetched using pluralkit's API, which returns the id of the user who sent the message (among other things), and this can be fetched on every webhook message, then stored until the message expires in the cached history kept for edits/deletions
Describe alternatives you've considered Alternatively, this can be deemed "out of scope" or as having "too much feature creep" and not be implemented.