From a22a4db7bddaf22e2d666535920559840a411250 Mon Sep 17 00:00:00 2001 From: Will Hunt <half-shot@molrams.com> Date: Wed, 13 Sep 2017 09:09:08 +0100 Subject: [PATCH] Add support for disablingDiscordMentions --- config/config.sample.yaml | 1 + config/config.schema.yaml | 2 ++ src/bot.ts | 9 +++++++-- src/config.ts | 1 + 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/config/config.sample.yaml b/config/config.sample.yaml index f995e94..f5ae4d3 100644 --- a/config/config.sample.yaml +++ b/config/config.sample.yaml @@ -3,6 +3,7 @@ bridge: homeserverUrl: "http://localhost:8008" disablePresence: false disableTypingNotifications: false + disableDiscordMentions: false auth: clientID: "12345" # Get from discord secret: "blah" diff --git a/config/config.schema.yaml b/config/config.schema.yaml index f515f8b..4b4e1d9 100644 --- a/config/config.schema.yaml +++ b/config/config.schema.yaml @@ -14,6 +14,8 @@ properties: type: "boolean" disableTypingNotifications: type: "boolean" + disableDiscordMentions: + type: "boolean" auth: type: "object" required: ["botToken"] diff --git a/src/bot.ts b/src/bot.ts index 2b7622c..fbdf291 100644 --- a/src/bot.ts +++ b/src/bot.ts @@ -145,6 +145,11 @@ export class DiscordBot { } public MatrixEventToEmbed(event: any, profile: any, channel: Discord.TextChannel): Discord.RichEmbed { + const body = this.config.bridge.disableDiscordMentions ? event.content.body : + this.msgProcessor.FindMentionsInPlainBody( + event.content.body, + channel.members.array(), + ); if (profile) { profile.displayname = profile.displayname || event.sender; if (profile.avatar_url) { @@ -157,11 +162,11 @@ export class DiscordBot { icon_url: profile.avatar_url, url: `https://matrix.to/#/${event.sender}`, }, - description: this.msgProcessor.FindMentionsInPlainBody(event.content.body, channel.members.array()), + description: body, }); } return new Discord.RichEmbed({ - description: this.msgProcessor.FindMentionsInPlainBody(event.content.body, channel.members.array()), + description: body, }); } diff --git a/src/config.ts b/src/config.ts index 959f144..e0ec7a2 100644 --- a/src/config.ts +++ b/src/config.ts @@ -12,6 +12,7 @@ class DiscordBridgeConfigBridge { public homeserverUrl: string; public disablePresence: boolean; public disableTypingNotifications: boolean; + public disableDiscordMentions: boolean; } class DiscordBridgeConfigDatabase { -- GitLab