Thumbnail

rani/matterbridge.git

Clone URL: https://git.buni.party/rani/matterbridge.git

commit 018475ea02cde3d229b1fae0b7cd90e3c84dcd00 Author: Wim <wim@42.be> Date: Sat Oct 08 21:57:03 2016 +0000 Add error message about non-existing channels (slack) diff --git a/bridge/slack/slack.go b/bridge/slack/slack.go index d0156ec..62cb04b 100644 --- a/bridge/slack/slack.go +++ b/bridge/slack/slack.go @@ -16 +17 @@  package bslack    import ( + "fmt"   "github.com/42wim/matterbridge/bridge/config"   "github.com/42wim/matterbridge/matterhook"   log "github.com/Sirupsen/logrus" @@ -11521 +11625 @@ func (b *Bslack) SendType(nick string, message string, channel string, mtype str   }   return nil   } - newmsg := b.rtm.NewOutgoingMessage(message, b.getChannelByName(channel).ID) + schannel, err := b.getChannelByName(channel) + if err != nil { + return err + } + newmsg := b.rtm.NewOutgoingMessage(message, schannel.ID)   b.rtm.SendMessage(newmsg)   return nil  }   -func (b *Bslack) getChannelByName(name string) *slack.Channel { +func (b *Bslack) getChannelByName(name string) (*slack.Channel, error) {   if b.channels == nil { - return nil + return nil, fmt.Errorf("%s: channel %s not found (no channels found)", b.FullOrigin(), name)   }   for _, channel := range b.channels {   if channel.Name == name { - return &channel + return &channel, nil   }   } - return nil + return nil, fmt.Errorf("%s: channel %s not found", b.FullOrigin(), name)  }    func (b *Bslack) handleSlack() { diff --git a/gateway/gateway.go b/gateway/gateway.go index fefbaeb..6f79799 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -16 +17 @@  package gateway    import ( + "fmt"   "github.com/42wim/matterbridge/bridge"   "github.com/42wim/matterbridge/bridge/config"   log "github.com/Sirupsen/logrus" @@ -1097 +11010 @@ func (gw *Gateway) handleMessage(msg config.Message, dest bridge.Bridge) {   }   gw.modifyMessage(&msg, dest)   log.Debugf("Sending %#v from %s to %s", msg, msg.FullOrigin, dest.FullOrigin()) - dest.Send(msg) + err := dest.Send(msg) + if err != nil { + fmt.Println(err) + }   }  }   diff --git a/gateway/samechannel/samechannel.go b/gateway/samechannel/samechannel.go index c7b3d62..5cdd59a 100644 --- a/gateway/samechannel/samechannel.go +++ b/gateway/samechannel/samechannel.go @@ -607 +6010 @@ func (gw *SameChannelGateway) handleMessage(msg config.Message, dest bridge.Brid   }   gw.modifyMessage(&msg, dest)   log.Debugf("Sending %#v from %s to %s", msg, msg.FullOrigin, dest.FullOrigin()) - dest.Send(msg) + err := dest.Send(msg) + if err != nil { + log.Error(err) + }  }    func setNickFormat(msg *config.Message, format string) {