summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKufat <kufat@kufat.net>2022-11-26 18:01:10 -0500
committerGitHub <noreply@github.com>2022-11-27 00:01:10 +0100
commit6d5a3dff2279f9cc1e9a846419c6cae2fe563e8d (patch)
tree4975e052caefdd4beb0d05b92a9b9a3520781810
parent3ad5deaff12abdba195824a940ab053ad6630752 (diff)
downloadmatterbridge-msglm-6d5a3dff2279f9cc1e9a846419c6cae2fe563e8d.tar.gz
matterbridge-msglm-6d5a3dff2279f9cc1e9a846419c6cae2fe563e8d.tar.bz2
matterbridge-msglm-6d5a3dff2279f9cc1e9a846419c6cae2fe563e8d.zip
Allow substitution of bot's nick in RunCommands (irc) (#1890)
* Allow substitution of bot's nick in RunCommands * Tweak description of "{BOTNICK}" Made the description of "{BOTNICK}" consistent with that of other keywords
-rw-r--r--bridge/irc/handlers.go1
-rw-r--r--matterbridge.toml.sample5
2 files changed, 4 insertions, 2 deletions
diff --git a/bridge/irc/handlers.go b/bridge/irc/handlers.go
index 987df2c5..74db7685 100644
--- a/bridge/irc/handlers.go
+++ b/bridge/irc/handlers.go
@@ -243,6 +243,7 @@ func (b *Birc) handlePrivMsg(client *girc.Client, event girc.Event) {
func (b *Birc) handleRunCommands() {
for _, cmd := range b.GetStringSlice("RunCommands") {
+ cmd = strings.ReplaceAll(cmd, "{BOTNICK}", b.Nick)
if err := b.i.Cmd.SendRaw(cmd); err != nil {
b.Log.Errorf("RunCommands %s failed: %s", cmd, err)
}
diff --git a/matterbridge.toml.sample b/matterbridge.toml.sample
index 97b27d73..20800689 100644
--- a/matterbridge.toml.sample
+++ b/matterbridge.toml.sample
@@ -122,10 +122,11 @@ RejoinDelay=0
#Only works in IRC right now.
ColorNicks=false
-#RunCommands allows you to send RAW irc commands after connection
+#RunCommands allows you to send RAW irc commands after connection.
+#The string {BOTNICK} (case sensitive) will be replaced with the bot's current nickname.
#Array of strings
#OPTIONAL (default empty)
-RunCommands=["PRIVMSG user hello","PRIVMSG chanserv something"]
+RunCommands=["PRIVMSG user hello","PRIVMSG chanserv something", "MODE {BOTNICK} +B"]
#PingDelay specifies how long to wait to send a ping to the irc server.
#You can use s for second, m for minute