From c91bfd08d855d07eccf5319e8881c816edf598ea Mon Sep 17 00:00:00 2001 From: Qais Patankar Date: Sun, 9 Feb 2020 21:07:26 +0000 Subject: Add ability to procure avatars from the destination bridge (#1000) * remote_avatar: add UseLocalAvatar * remote_avatar: make sure msg.Protocol is always set correctly * remote_avatars: support msg.Account * remote_avatar: add to matterbridge.toml.sample * remote_avatar: clarify something --- gateway/gateway.go | 3 +-- gateway/router.go | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'gateway') diff --git a/gateway/gateway.go b/gateway/gateway.go index e265e62b..1e958a86 100644 --- a/gateway/gateway.go +++ b/gateway/gateway.go @@ -306,8 +306,6 @@ func (gw *Gateway) ignoreMessage(msg *config.Message) bool { } func (gw *Gateway) modifyUsername(msg *config.Message, dest *bridge.Bridge) string { - br := gw.Bridges[msg.Account] - msg.Protocol = br.Protocol if dest.GetBool("StripNick") { re := regexp.MustCompile("[^a-zA-Z0-9]+") msg.Username = re.ReplaceAllString(msg.Username, "") @@ -315,6 +313,7 @@ func (gw *Gateway) modifyUsername(msg *config.Message, dest *bridge.Bridge) stri nick := dest.GetString("RemoteNickFormat") // loop to replace nicks + br := gw.Bridges[msg.Account] for _, outer := range br.GetStringSlice2D("ReplaceNicks") { search := outer[0] replace := outer[1] diff --git a/gateway/router.go b/gateway/router.go index 56573f74..b07e5781 100644 --- a/gateway/router.go +++ b/gateway/router.go @@ -132,6 +132,9 @@ func (r *Router) handleReceive() { r.handleEventFailure(&msg) r.handleEventRejoinChannels(&msg) + // Set message protocol based on the account it came from + msg.Protocol = r.getBridge(msg.Account).Protocol + filesHandled := false for _, gw := range r.Gateways { // record all the message ID's of the different bridges -- cgit v1.2.3