From c4b75e5754c58758c920c79b0458171e98269961 Mon Sep 17 00:00:00 2001 From: Wim Date: Thu, 21 Sep 2017 22:35:21 +0200 Subject: Download files from slack and reupload to mattermost (slack/mattermost). Closes #255 Refactor message.Extra to a map[string][]interface{} to have a bit more flexibility for stuffing extra stuff. For attached files from slack, files < 1MB size get downloaded (in memory), and get put into Extra["file"][]config.FileInfo (containing a pointer to the buffer and the filename). This is not async so slack channels with lots of attached files may suffer a slowdown. (the download timeout is set at 5 seconds). --- gateway/gateway.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'gateway') diff --git a/gateway/gateway.go b/gateway/gateway.go index 7c1f3bd9..663c3871 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -211,7 +211,7 @@ func (gw *Gateway) ignoreMessage(msg *config.Message) bool { } if msg.Text == "" { // we have an attachment - if msg.Extra != nil { + if msg.Extra != nil && msg.Extra["attachments"] != nil { return false } log.Debugf("ignoring empty message %#v from %s", msg, msg.Account) -- cgit v1.2.3