diff --git a/bridge/irc/handlers.go b/bridge/irc/handlers.go index 987df2c5b7..74db768597 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 97b27d7387..2080068940 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