Add rejoin module

This commit is contained in:
dave 2017-12-04 23:45:48 -08:00
parent b4f4812c53
commit 3cd61f6ce1
1 changed files with 31 additions and 0 deletions

View File

@ -0,0 +1,31 @@
#!/usr/bin/env python
"""
.. module:: PressF
:synopsis: Press F to pay respects
.. moduleauthor:: Dave Pedu <dave@davepedu.com>
"""
from pyircbot.modulebase import ModuleBase, hook
from time import sleep
from threading import Thread
class Rejoin(ModuleBase):
def __init__(self, bot, moduleName):
ModuleBase.__init__(self, bot, moduleName)
try:
self.services = self.bot.getmodulesbyservice("services").pop()
except KeyError as ke:
raise Exception("No services service provider found") from ke
@hook("KICK")
def kicked(self, msg, cmd):
channel, who = msg.args
if who == self.services.nick():
Thread(target=self.rejoin, args=(self.config.get("delay", 30), channel)).start()
def rejoin(self, delay, channel):
sleep(delay)
self.bot.act_JOIN(channel)