From efaebe0571f5a33f447268e036a8ecaff26f4fe0 Mon Sep 17 00:00:00 2001 From: Dragory <2606411+Dragory@users.noreply.github.com> Date: Sun, 11 Oct 2020 14:19:39 +0300 Subject: [PATCH] Handle errors in sendSuccessMessage/sendErrorMessage gracefully --- backend/src/pluginUtils.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/backend/src/pluginUtils.ts b/backend/src/pluginUtils.ts index 849eb53b..1bce7d7e 100644 --- a/backend/src/pluginUtils.ts +++ b/backend/src/pluginUtils.ts @@ -13,6 +13,7 @@ import { PluginOverrideCriteria } from "knub/dist/config/configTypes"; import { Tail } from "./utils/typeUtils"; import { AnyPluginData } from "knub/dist/plugins/PluginData"; import { ZeppelinPlugin } from "./plugins/ZeppelinPlugin"; +import { logger } from "./logger"; const { getMemberLevel } = helpers; @@ -136,12 +137,16 @@ export function getPluginConfigPreprocessor( export function sendSuccessMessage(pluginData: AnyPluginData, channel, body) { const emoji = pluginData.fullConfig.success_emoji || undefined; - return channel.createMessage(successMessage(body, emoji)); + return channel.createMessage(successMessage(body, emoji)).catch(() => { + logger.warn(`Failed to send success message to ${channel.id} (${channel.guild?.id})`); + }); } export function sendErrorMessage(pluginData: AnyPluginData, channel, body) { const emoji = pluginData.fullConfig.error_emoji || undefined; - return channel.createMessage(errorMessage(body, emoji)); + return channel.createMessage(errorMessage(body, emoji)).catch(() => { + logger.warn(`Failed to send error message to ${channel.id} (${channel.guild?.id})`); + }); } export function getBaseUrl(pluginData: AnyPluginData) {