diff options
author | Wim <wim@42.be> | 2018-11-11 21:56:12 +0100 |
---|---|---|
committer | Wim <wim@42.be> | 2018-11-11 21:56:12 +0100 |
commit | 730ccdd4567de7bbcf8794fef95a7324cef5198b (patch) | |
tree | 8bc6f76bb685e5aa9d2cef1c8617162da3d38504 | |
parent | 2f042ad9153a5116abed82cf74688af4579908ad (diff) | |
download | matterbridge-msglm-730ccdd4567de7bbcf8794fef95a7324cef5198b.tar.gz matterbridge-msglm-730ccdd4567de7bbcf8794fef95a7324cef5198b.tar.bz2 matterbridge-msglm-730ccdd4567de7bbcf8794fef95a7324cef5198b.zip |
Add support for mattermost matterbridge plugin
-rw-r--r-- | gateway/gateway.go | 6 | ||||
-rw-r--r-- | gateway/router.go | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/gateway/gateway.go b/gateway/gateway.go index 442e27fb..728ed703 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -321,6 +321,12 @@ func (gw *Gateway) handleMessage(msg config.Message, dest *bridge.Bridge) []*BrM msg.ParentID = canonicalParentMsgID } + // if we are using mattermost plugin account, send messages to MattermostPlugin channel + // that can be picked up by the mattermost matterbridge plugin + if dest.Account == "mattermost.plugin" { + gw.Router.MattermostPlugin <- msg + } + mID, err := dest.Send(msg) if err != nil { flog.Error(err) diff --git a/gateway/router.go b/gateway/router.go index 1ea3f940..030b7b1e 100644 --- a/gateway/router.go +++ b/gateway/router.go @@ -11,13 +11,14 @@ import ( ) type Router struct { - Gateways map[string]*Gateway - Message chan config.Message + Gateways map[string]*Gateway + Message chan config.Message + MattermostPlugin chan config.Message *config.Config } func NewRouter(cfg *config.Config) (*Router, error) { - r := &Router{Message: make(chan config.Message), Gateways: make(map[string]*Gateway), Config: cfg} + r := &Router{Message: make(chan config.Message), MattermostPlugin: make(chan config.Message), Gateways: make(map[string]*Gateway), Config: cfg} sgw := samechannelgateway.New(cfg) gwconfigs := sgw.GetConfig() |