From c7f39387a3df416e29691244c00447b571cdc322 Mon Sep 17 00:00:00 2001 From: HotaruBlaze Date: Fri, 23 Jul 2021 16:30:36 +0000 Subject: [PATCH] Fix handling of discord emotes --- src/relayDiscord.go | 4 ++++ src/utils.go | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/src/relayDiscord.go b/src/relayDiscord.go index b73025f..f1b76d1 100644 --- a/src/relayDiscord.go +++ b/src/relayDiscord.go @@ -43,6 +43,10 @@ func messageCreate(s *discordgo.Session, m *discordgo.MessageCreate) { } else { message = m.Content } + + // Convert <:example:868167672758693909> to :example: + message = filterDiscordEmotes(message) + guildMember, err := s.GuildMember(m.GuildID, m.Message.Author.ID) checkError("[RelayDiscord]: guildMember ", err) hasNickname := guildMember.Nick diff --git a/src/utils.go b/src/utils.go index ce56002..f167eab 100755 --- a/src/utils.go +++ b/src/utils.go @@ -81,6 +81,14 @@ func bToMb(b uint64) uint64 { return b / 1024 / 1024 } +// filterDiscordEmotes : Formats Discord Emotes Correctly +func filterDiscordEmotes(str string) string { + re := regexp.MustCompile(`<:(\S+):\d+>`) + filteredString := re.ReplaceAllString(str, `:$1:`) + + return filteredString +} + // MemoryDebugInfo : Print current memory and GC cycles, Used for monitoring for memory leaks func MemoryDebugInfo() { printMemUsage()