Review: Moved messageOptions into postMessage.

This commit is contained in:
Patrick Connolly
2018-11-29 02:26:54 +08:00
parent 7c67a9f717
commit faf614dad6

View File

@@ -303,16 +303,13 @@ func (b *Bslack) sendRTM(msg config.Message) (string, error) {
return msg.ID, err return msg.ID, err
} }
var messageOptions []slack.MsgOption
// Upload a file if it exists. // Upload a file if it exists.
if msg.Extra != nil { if msg.Extra != nil {
extraMsgs := helper.HandleExtra(&msg, b.General) extraMsgs := helper.HandleExtra(&msg, b.General)
for i := range extraMsgs { for i := range extraMsgs {
rmsg := &extraMsgs[i] rmsg := &extraMsgs[i]
messageOptions = b.prepareMessageOptions(rmsg)
rmsg.Text = rmsg.Username + rmsg.Text rmsg.Text = rmsg.Username + rmsg.Text
_, err = b.postMessage(rmsg, messageOptions, channelInfo) _, err = b.postMessage(rmsg, channelInfo)
if err != nil { if err != nil {
b.Log.Error(err) b.Log.Error(err)
} }
@@ -322,8 +319,7 @@ func (b *Bslack) sendRTM(msg config.Message) (string, error) {
} }
// Post message. // Post message.
messageOptions = b.prepareMessageOptions(&msg) return b.postMessage(&msg, channelInfo)
return b.postMessage(&msg, messageOptions, channelInfo)
} }
func (b *Bslack) updateTopicOrPurpose(msg *config.Message, channelInfo *slack.Channel) (bool, error) { func (b *Bslack) updateTopicOrPurpose(msg *config.Message, channelInfo *slack.Channel) (bool, error) {
@@ -411,11 +407,12 @@ func (b *Bslack) editMessage(msg *config.Message, channelInfo *slack.Channel) (b
} }
} }
func (b *Bslack) postMessage(msg *config.Message, messageOptions []slack.MsgOption, channelInfo *slack.Channel) (string, error) { func (b *Bslack) postMessage(msg *config.Message, channelInfo *slack.Channel) (string, error) {
// don't post empty messages // don't post empty messages
if msg.Text == "" { if msg.Text == "" {
return "", nil return "", nil
} }
messageOptions := b.prepareMessageOptions(msg)
messageOptions = append(messageOptions, slack.MsgOptionText(msg.Text, false)) messageOptions = append(messageOptions, slack.MsgOptionText(msg.Text, false))
for { for {
_, id, err := b.rtm.PostMessage(channelInfo.ID, messageOptions...) _, id, err := b.rtm.PostMessage(channelInfo.ID, messageOptions...)