diff --git a/bridge/config/config.go b/bridge/config/config.go index 7f27115b..246d6b82 100644 --- a/bridge/config/config.go +++ b/bridge/config/config.go @@ -68,6 +68,7 @@ type Protocol struct { RemoteNickFormat string // all protocols Server string // IRC,mattermost,XMPP,discord ShowJoinPart bool // all protocols + ShowEmbeds bool // discord SkipTLSVerify bool // IRC, mattermost Team string // mattermost Token string // gitter, slack, discord, api diff --git a/bridge/discord/discord.go b/bridge/discord/discord.go index 3d244962..8c7d9711 100644 --- a/bridge/discord/discord.go +++ b/bridge/discord/discord.go @@ -141,7 +141,15 @@ func (b *bdiscord) messageCreate(s *discordgo.Session, m *discordgo.MessageCreat } m.Message.Content = b.stripCustomoji(m.Message.Content) m.Message.Content = b.replaceChannelMentions(m.Message.Content) - b.Remote <- config.Message{Username: username, Text: m.ContentWithMentionsReplaced(), Channel: channelName, + + text := m.ContentWithMentionsReplaced() + if b.Config.ShowEmbeds && m.Message.Embeds != nil { + for _, embed := range m.Message.Embeds { + text = text + "embed: " + embed.Title + " - " + embed.Description + " - " + embed.URL + "\n" + } + } + + b.Remote <- config.Message{Username: username, Text: text, Channel: channelName, Account: b.Account, Avatar: "https://cdn.discordapp.com/avatars/" + m.Author.ID + "/" + m.Author.Avatar + ".jpg", UserID: m.Author.ID} } diff --git a/matterbridge.toml.sample b/matterbridge.toml.sample index 2fd8adb3..53a584aa 100644 --- a/matterbridge.toml.sample +++ b/matterbridge.toml.sample @@ -450,6 +450,10 @@ Token="Yourtokenhere" #REQUIRED Server="yourservername" +#Shows title, description and URL of embedded messages (sent by other bots) +#OPTIONAL (default false) +ShowEmbeds=false + #Disable sending of edits to other bridges #OPTIONAL (default false) EditDisable=false