diff options
Diffstat (limited to 'bridge')
-rw-r--r-- | bridge/config/config.go | 1 | ||||
-rw-r--r-- | bridge/irc/irc.go | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/bridge/config/config.go b/bridge/config/config.go index 69531440..13b7a8d0 100644 --- a/bridge/config/config.go +++ b/bridge/config/config.go @@ -81,6 +81,7 @@ type Protocol struct { Password string // IRC,mattermost,XMPP,matrix PrefixMessagesWithNick bool // mattemost, slack Protocol string // all protocols + RejoinDelay int // IRC ReplaceMessages [][]string // all protocols ReplaceNicks [][]string // all protocols RemoteNickFormat string // all protocols diff --git a/bridge/irc/irc.go b/bridge/irc/irc.go index c9c8cbb2..b7465977 100644 --- a/bridge/irc/irc.go +++ b/bridge/irc/irc.go @@ -267,6 +267,7 @@ func (b *Birc) handleJoinPart(client *girc.Client, event girc.Event) { channel := event.Params[0] if event.Command == "KICK" { flog.Infof("Got kicked from %s by %s", channel, event.Source.Name) + time.Sleep(time.Duration(b.Config.RejoinDelay) * time.Second) b.Remote <- config.Message{Username: "system", Text: "rejoin", Channel: channel, Account: b.Account, Event: config.EVENT_REJOIN_CHANNELS} return } |