commit 1f18d5e70fb33f1024f04d832706e2d5b4db3dcf
Author: Wim <wim@42.be>
Date: Fri Nov 03 00:05:10 2017 +0000
diff --git a/bridge/discord/discord.go b/bridge/discord/discord.go
index d8320c7..c82844a 100644
--- a/bridge/discord/discord.go
+++ b/bridge/discord/discord.go
@@ -16 +17 @@
package bdiscord
import (
+ "bytes"
"github.com/42wim/matterbridge/bridge/config"
log "github.com/Sirupsen/logrus"
"github.com/bwmarrin/discordgo"
@@ -1416 +14223 @@ func (b *bdiscord) Send(msg config.Message) (string, error) {
_, err := b.c.ChannelMessageEdit(channelID, msg.ID, msg.Username+msg.Text)
return msg.ID, err
}
+
+ if msg.Extra != nil {
+ // check if we have files to upload (from slack, telegram or mattermost)
+ if len(msg.Extra["file"]) > 0 {
+ for _, f := range msg.Extra["file"] {
+ fi := f.(config.FileInfo)
+ files := []*discordgo.File{}
+ files = append(files, &discordgo.File{fi.Name, "", bytes.NewReader(*fi.Data)})
+ res, err := b.c.ChannelMessageSendComplex(channelID, &discordgo.MessageSend{Content: msg.Text, Files: files})
+ if err != nil {
+ flog.Debugf("ERROR channelMessageSendComplex: %#v", err)
+ return "", err
+ }
+ return res.ID, err
+ }
+ }
+ }
res, err := b.c.ChannelMessageSend(channelID, msg.Username+msg.Text)
if err != nil {
return "", err