mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-03-18 15:00:00 +00:00
Optimize/tweak message saving
This commit is contained in:
parent
5ae5e7bc1d
commit
0d1bfefce0
3 changed files with 16 additions and 23 deletions
|
@ -226,9 +226,6 @@ export class GuildSavedMessages extends BaseGuildRepository {
|
||||||
}
|
}
|
||||||
|
|
||||||
async createFromMsg(msg: Message, overrides = {}) {
|
async createFromMsg(msg: Message, overrides = {}) {
|
||||||
const existingSavedMsg = await this.find(msg.id);
|
|
||||||
if (existingSavedMsg) return;
|
|
||||||
|
|
||||||
// FIXME: Hotfix
|
// FIXME: Hotfix
|
||||||
if (!msg.channel) {
|
if (!msg.channel) {
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -29,17 +29,20 @@ export const MessageCreateEvt = messageSaverEvt({
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
meta.pluginData.state.queue.add(async () => {
|
// Don't save the bot's own messages
|
||||||
if (recentlyCreatedMessages.includes(meta.args.message.id)) {
|
if (meta.args.message.author.id === meta.pluginData.client.user?.id) {
|
||||||
console.warn(
|
return;
|
||||||
`Tried to save duplicate message from messageCreate event: ${meta.args.message.guildId} / ${meta.args.message.channelId} / ${meta.args.message.id}`,
|
}
|
||||||
);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
recentlyCreatedMessages.push(meta.args.message.id);
|
|
||||||
|
|
||||||
await meta.pluginData.state.savedMessages.createFromMsg(meta.args.message);
|
if (recentlyCreatedMessages.includes(meta.args.message.id)) {
|
||||||
});
|
console.warn(
|
||||||
|
`Tried to save duplicate message from messageCreate event: ${meta.args.message.guildId} / ${meta.args.message.channelId} / ${meta.args.message.id}`,
|
||||||
|
);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
recentlyCreatedMessages.push(meta.args.message.id);
|
||||||
|
|
||||||
|
await meta.pluginData.state.savedMessages.createFromMsg(meta.args.message);
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -57,9 +60,7 @@ export const MessageUpdateEvt = messageSaverEvt({
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
meta.pluginData.state.queue.add(async () => {
|
await meta.pluginData.state.savedMessages.saveEditFromMsg(meta.args.newMessage as Message);
|
||||||
await meta.pluginData.state.savedMessages.saveEditFromMsg(meta.args.newMessage as Message);
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -74,9 +75,7 @@ export const MessageDeleteEvt = messageSaverEvt({
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
meta.pluginData.state.queue.add(async () => {
|
await meta.pluginData.state.savedMessages.markAsDeleted(msg.id);
|
||||||
await meta.pluginData.state.savedMessages.markAsDeleted(msg.id);
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -87,8 +86,6 @@ export const MessageDeleteBulkEvt = messageSaverEvt({
|
||||||
|
|
||||||
async listener(meta) {
|
async listener(meta) {
|
||||||
const ids = meta.args.messages.map(m => m.id);
|
const ids = meta.args.messages.map(m => m.id);
|
||||||
meta.pluginData.state.queue.add(async () => {
|
await meta.pluginData.state.savedMessages.markBulkAsDeleted(ids);
|
||||||
await meta.pluginData.state.savedMessages.markBulkAsDeleted(ids);
|
|
||||||
});
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
|
@ -12,7 +12,6 @@ export interface MessageSaverPluginType extends BasePluginType {
|
||||||
config: TConfigSchema;
|
config: TConfigSchema;
|
||||||
state: {
|
state: {
|
||||||
savedMessages: GuildSavedMessages;
|
savedMessages: GuildSavedMessages;
|
||||||
queue: Queue;
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue