From 6d5a3dff2279f9cc1e9a846419c6cae2fe563e8d Mon Sep 17 00:00:00 2001 From: Kufat Date: Sat, 26 Nov 2022 18:01:10 -0500 Subject: [PATCH] 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 --- bridge/irc/handlers.go | 1 + matterbridge.toml.sample | 5 +++-- 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