From 2dbe0eb55729620ffdfdb7e4f10003564d79c7e1 Mon Sep 17 00:00:00 2001 From: Wim Date: Sat, 5 Nov 2016 01:11:28 +0100 Subject: Add support for dynamic IconURL (slack). Closes #43 --- bridge/slack/slack.go | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) (limited to 'bridge/slack') diff --git a/bridge/slack/slack.go b/bridge/slack/slack.go index 3b0a6c85..412c925b 100644 --- a/bridge/slack/slack.go +++ b/bridge/slack/slack.go @@ -94,13 +94,12 @@ func (b *Bslack) Origin() string { func (b *Bslack) Send(msg config.Message) error { flog.Debugf("Receiving %#v", msg) - if msg.FullOrigin != b.FullOrigin() { - return b.SendType(msg.Username, msg.Text, msg.Channel, "") + if msg.FullOrigin == b.FullOrigin() { + return nil } - return nil -} - -func (b *Bslack) SendType(nick string, message string, channel string, mtype string) error { + nick := config.GetNick(&msg, b.Config) + message := msg.Text + channel := msg.Channel if b.Config.PrefixMessagesWithNick { message = nick + " " + message } @@ -108,7 +107,7 @@ func (b *Bslack) SendType(nick string, message string, channel string, mtype str matterMessage := matterhook.OMessage{IconURL: b.Config.IconURL} matterMessage.Channel = channel matterMessage.UserName = nick - matterMessage.Type = mtype + matterMessage.Type = "" matterMessage.Text = message err := b.mh.Send(matterMessage) if err != nil { @@ -121,8 +120,19 @@ func (b *Bslack) SendType(nick string, message string, channel string, mtype str if err != nil { return err } - newmsg := b.rtm.NewOutgoingMessage(message, schannel.ID) - b.rtm.SendMessage(newmsg) + np := slack.NewPostMessageParameters() + if b.Config.PrefixMessagesWithNick == true { + np.AsUser = true + } + np.Username = nick + np.IconURL = config.GetIconURL(&msg, b.Config) + b.sc.PostMessage(schannel.ID, message, np) + + /* + newmsg := b.rtm.NewOutgoingMessage(message, schannel.ID) + b.rtm.SendMessage(newmsg) + */ + return nil } -- cgit v1.2.3