3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-14 21:31:50 +00:00

Add graceful error handling for welcome message template parsing

This commit is contained in:
Dragory 2020-09-01 01:11:02 +03:00
parent 78b93cbef0
commit 69a1df260e
No known key found for this signature in database
GPG key ID: 5F387BA66DF8AAC1

View file

@ -1,5 +1,5 @@
import { welcomeEvent } from "../types";
import { renderTemplate } from "src/templateFormatter";
import { renderTemplate, TemplateParseError } from "src/templateFormatter";
import { createChunkedMessage, stripObjectToScalars } from "src/utils";
import { LogType } from "src/data/LogType";
import { TextChannel } from "eris";
@ -23,9 +23,22 @@ export const SendWelcomeMessageEvt = welcomeEvent({
pluginData.state.sentWelcomeMessages.add(member.id);
const formatted = await renderTemplate(config.message, {
member: stripObjectToScalars(member, ["user"]),
});
let formatted;
try {
formatted = await renderTemplate(config.message, {
member: stripObjectToScalars(member, ["user"]),
});
} catch (e) {
if (e instanceof TemplateParseError) {
pluginData.state.logs.log(LogType.BOT_ALERT, {
body: `Error formatting welcome message: ${e.message}`,
});
return;
}
throw e;
}
if (config.send_dm) {
try {