diff options
| -rw-r--r-- | settings.py | 1 | ||||
| -rw-r--r-- | wmd/actions/passive/rejoin_on_kick.py | 20 |
2 files changed, 21 insertions, 0 deletions
diff --git a/settings.py b/settings.py index 2e82ee3..674c408 100644 --- a/settings.py +++ b/settings.py | |||
| @@ -18,6 +18,7 @@ ADMINS = ('com4',) | |||
| 18 | ACTIONS = ( | 18 | ACTIONS = ( |
| 19 | 'wmd.actions.passive.nickserv.IdentWithNickserv', | 19 | 'wmd.actions.passive.nickserv.IdentWithNickserv', |
| 20 | 'wmd.actions.passive.pong.RespondToPing', | 20 | 'wmd.actions.passive.pong.RespondToPing', |
| 21 | 'wmd.actions.passive.rejoin_on_kick.RejoinOnKick', | ||
| 21 | 'wmd.actions.modules.ReloadModule', | 22 | 'wmd.actions.modules.ReloadModule', |
| 22 | 'wmd.actions.modules.LoadModule', | 23 | 'wmd.actions.modules.LoadModule', |
| 23 | 'wmd.actions.modules.ListModules', | 24 | 'wmd.actions.modules.ListModules', |
diff --git a/wmd/actions/passive/rejoin_on_kick.py b/wmd/actions/passive/rejoin_on_kick.py new file mode 100644 index 0000000..21cbc91 --- /dev/null +++ b/wmd/actions/passive/rejoin_on_kick.py | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | import time | ||
| 2 | from wmd.actions import Action | ||
| 3 | |||
| 4 | import settings | ||
| 5 | |||
| 6 | class RejoinOnKick(Action): | ||
| 7 | def recv_msg(self, irc, obj_data): | ||
| 8 | if obj_data.command == "KICK": | ||
| 9 | (channel, nickname, message) = obj_data.params.strip().split(" ") | ||
| 10 | if nickname == settings.NICKNAME: | ||
| 11 | time.sleep(10) # TODO: Make this a setting | ||
| 12 | irc.join(channel) | ||
| 13 | self.log("Rejoined %s" % channel) | ||
| 14 | # if obj_data.params[0] == ":": | ||
| 15 | # server = obj_data.params[1:] | ||
| 16 | # else: | ||
| 17 | # server = obj_data.params | ||
| 18 | # msg = "PONG :%s" % server | ||
| 19 | # self.log(msg) | ||
| 20 | # irc.rawsend(msg) \ No newline at end of file | ||