Make several event handlers non-blocking for performance
This commit is contained in:
parent
bb8ef2d511
commit
ba01dd9ce5
4 changed files with 10 additions and 3 deletions
|
@ -101,7 +101,7 @@ export class AutoReactions extends Plugin {
|
|||
if (!realMsg) return;
|
||||
|
||||
for (const reaction of autoReaction.reactions) {
|
||||
await realMsg.addReaction(reaction);
|
||||
realMsg.addReaction(reaction);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ import { GuildSavedMessages } from "../data/GuildSavedMessages";
|
|||
import { successMessage } from "../utils";
|
||||
|
||||
export class MessageSaverPlugin extends Plugin {
|
||||
public static pluginName = 'message_saver';
|
||||
public static pluginName = "message_saver";
|
||||
|
||||
protected savedMessages: GuildSavedMessages;
|
||||
|
||||
|
@ -30,6 +30,7 @@ export class MessageSaverPlugin extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("messageCreate", "guild", false)
|
||||
@d.nonBlocking()
|
||||
async onMessageCreate(msg: Message) {
|
||||
// Only save regular chat messages
|
||||
if (msg.type !== 0) {
|
||||
|
@ -40,6 +41,7 @@ export class MessageSaverPlugin extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("messageDelete", "guild", false)
|
||||
@d.nonBlocking()
|
||||
async onMessageDelete(msg: Message) {
|
||||
if (msg.type != null && msg.type !== 0) {
|
||||
return;
|
||||
|
@ -49,6 +51,7 @@ export class MessageSaverPlugin extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("messageUpdate", "guild", false)
|
||||
@d.nonBlocking()
|
||||
async onMessageUpdate(msg: Message) {
|
||||
if (msg.type !== 0) {
|
||||
return;
|
||||
|
@ -58,6 +61,7 @@ export class MessageSaverPlugin extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("messageDeleteBulk", "guild", false)
|
||||
@d.nonBlocking()
|
||||
async onMessageBulkDelete(messages: Message[]) {
|
||||
const ids = messages.map(m => m.id);
|
||||
await this.savedMessages.markBulkAsDeleted(ids);
|
||||
|
|
|
@ -7,7 +7,7 @@ import { LogType } from "../data/LogType";
|
|||
import { stripObjectToScalars } from "../utils";
|
||||
|
||||
export class PersistPlugin extends Plugin {
|
||||
public static pluginName = 'persist';
|
||||
public static pluginName = "persist";
|
||||
|
||||
protected persistedData: GuildPersistedData;
|
||||
protected logs: GuildLogs;
|
||||
|
@ -57,6 +57,7 @@ export class PersistPlugin extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("guildMemberAdd")
|
||||
@d.nonBlocking()
|
||||
async onGuildMemberAdd(_, member: Member) {
|
||||
const persistedData = await this.persistedData.find(member.id);
|
||||
if (!persistedData) return;
|
||||
|
|
|
@ -81,6 +81,7 @@ export class PingableRoles extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("typingStart")
|
||||
@d.nonBlocking()
|
||||
async onTypingStart(channel: TextableChannel, user: User) {
|
||||
const pingableRoles = await this.getPingableRolesForChannel(channel.id);
|
||||
if (pingableRoles.length === 0) return;
|
||||
|
@ -98,6 +99,7 @@ export class PingableRoles extends Plugin {
|
|||
}
|
||||
|
||||
@d.event("messageCreate")
|
||||
@d.nonBlocking()
|
||||
async onMessageCreate(msg: Message) {
|
||||
const pingableRoles = await this.getPingableRolesForChannel(msg.channel.id);
|
||||
if (pingableRoles.length === 0) return;
|
||||
|
|
Loading…
Add table
Reference in a new issue