Add Gateway's name to RemoteNickFormat (#501)
In order to support extra use cases we should add the `{GATEWAY}` tag to the `RemoteNickFormat` string which would be replaced by the value of the `name=` field from a gateway's configuration. This is _very_ useful when you are forwarding, for example, multiple channels from one chat to a single channel on another one (one-way). It will help you identify the source channel of a message on the target chat.
This commit is contained in:
parent
54adb0509e
commit
69646a160d
|
@ -374,6 +374,7 @@ func (gw *Gateway) modifyUsername(msg config.Message, dest *bridge.Bridge) strin
|
||||||
|
|
||||||
nick = strings.Replace(nick, "{BRIDGE}", br.Name, -1)
|
nick = strings.Replace(nick, "{BRIDGE}", br.Name, -1)
|
||||||
nick = strings.Replace(nick, "{PROTOCOL}", br.Protocol, -1)
|
nick = strings.Replace(nick, "{PROTOCOL}", br.Protocol, -1)
|
||||||
|
nick = strings.Replace(nick, "{GATEWAY}", gw.Name, -1)
|
||||||
nick = strings.Replace(nick, "{LABEL}", br.GetString("Label"), -1)
|
nick = strings.Replace(nick, "{LABEL}", br.GetString("Label"), -1)
|
||||||
nick = strings.Replace(nick, "{NICK}", msg.Username, -1)
|
nick = strings.Replace(nick, "{NICK}", msg.Username, -1)
|
||||||
return nick
|
return nick
|
||||||
|
|
|
@ -344,7 +344,7 @@ func (m *MMClient) parseActionPost(rmsg *Message) {
|
||||||
data := model.PostFromJson(strings.NewReader(rmsg.Raw.Data["post"].(string)))
|
data := model.PostFromJson(strings.NewReader(rmsg.Raw.Data["post"].(string)))
|
||||||
// we don't have the user, refresh the userlist
|
// we don't have the user, refresh the userlist
|
||||||
if m.GetUser(data.UserId) == nil {
|
if m.GetUser(data.UserId) == nil {
|
||||||
m.log.Infof("User %s is not known, ignoring message %s", data)
|
m.log.Infof("User %s is not known, ignoring message %s", data.UserId, data.Message)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
rmsg.Username = m.GetUserName(data.UserId)
|
rmsg.Username = m.GetUserName(data.UserId)
|
||||||
|
|
Loading…
Reference in New Issue