summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim <wim@42.be>2018-02-20 18:57:46 +0100
committerWim <wim@42.be>2018-02-20 18:57:46 +0100
commite622587db43d36d22640d9f90a92d984d6231dd3 (patch)
tree210d51304a58f553498470495da7993125995302
parentf2efc06d1ffaef74407bcb1bdff33bcaf6c52dfe (diff)
downloadmatterbridge-msglm-e622587db43d36d22640d9f90a92d984d6231dd3.tar.gz
matterbridge-msglm-e622587db43d36d22640d9f90a92d984d6231dd3.tar.bz2
matterbridge-msglm-e622587db43d36d22640d9f90a92d984d6231dd3.zip
Add label support in RemoteNickFormat
-rw-r--r--bridge/config/config.go1
-rw-r--r--gateway/gateway.go1
-rw-r--r--matterbridge.toml.sample62
3 files changed, 64 insertions, 0 deletions
diff --git a/bridge/config/config.go b/bridge/config/config.go
index c5d4f543..09338f14 100644
--- a/bridge/config/config.go
+++ b/bridge/config/config.go
@@ -66,6 +66,7 @@ type Protocol struct {
IgnoreNicks string // all protocols
IgnoreMessages string // all protocols
Jid string // xmpp
+ Label string // all protocols
Login string // mattermost, matrix
MediaDownloadSize int // all protocols
MediaServerDownload string
diff --git a/gateway/gateway.go b/gateway/gateway.go
index 6fe7f0ea..c70fbb00 100644
--- a/gateway/gateway.go
+++ b/gateway/gateway.go
@@ -323,6 +323,7 @@ func (gw *Gateway) modifyUsername(msg config.Message, dest *bridge.Bridge) strin
}
nick = strings.Replace(nick, "{BRIDGE}", br.Name, -1)
nick = strings.Replace(nick, "{PROTOCOL}", br.Protocol, -1)
+ nick = strings.Replace(nick, "{LABEL}", br.Config.Label, -1)
nick = strings.Replace(nick, "{NICK}", msg.Username, -1)
return nick
}
diff --git a/matterbridge.toml.sample b/matterbridge.toml.sample
index e0589fcb..2f4d470e 100644
--- a/matterbridge.toml.sample
+++ b/matterbridge.toml.sample
@@ -117,9 +117,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#The string "{NOPINGNICK}" (case sensitive) will be replaced by the actual nick / username, but with a ZWSP inside the nick, so the irc user with the same nick won't get pinged. See https://github.com/42wim/matterbridge/issues/175 for more information
#OPTIONAL (default empty)
@@ -202,9 +207,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#OPTIONAL (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -278,9 +288,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}/{BRIDGE}] <{NICK}> "
@@ -414,9 +429,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -480,9 +500,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -537,6 +562,7 @@ WebhookBindAddress="0.0.0.0:9999"
#Icon that will be showed in slack
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL
IconURL="https://robohash.org/{NICK}.png?size=48x48"
@@ -593,9 +619,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -683,9 +714,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -772,9 +808,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -862,9 +903,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -944,9 +990,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -1020,9 +1071,14 @@ ReplaceMessages=[ ["cat","dog"] ]
#optional (default empty)
ReplaceNicks=[ ["user--","user"] ]
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
@@ -1063,9 +1119,14 @@ Buffer=1000
#OPTIONAL (no authorization if token is empty)
Token="mytoken"
+#extra label that can be used in the RemoteNickFormat
+#optional (default empty)
+Label=""
+
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="{NICK}"
@@ -1080,6 +1141,7 @@ RemoteNickFormat="{NICK}"
#RemoteNickFormat defines how remote users appear on this bridge
#The string "{NICK}" (case sensitive) will be replaced by the actual nick / username.
#The string "{BRIDGE}" (case sensitive) will be replaced by the sending bridge
+#The string "{LABEL}" (case sensitive) will be replaced by label= field of the sending bridge
#The string "{PROTOCOL}" (case sensitive) will be replaced by the protocol used by the bridge
#OPTIONAL (default empty)
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "