New exception: IRCException
When raised in a module, respond in the channel with the given string as Response content
This commit is contained in:
parent
d38ebd372c
commit
26502abe35
3 changed files with 53 additions and 18 deletions
40
hooks.py
40
hooks.py
|
|
@ -19,6 +19,7 @@
|
|||
import re
|
||||
|
||||
from response import Response
|
||||
from exception import IRCException
|
||||
|
||||
class MessagesHook:
|
||||
def __init__(self, context, bot):
|
||||
|
|
@ -199,22 +200,25 @@ class Hook:
|
|||
else:
|
||||
call = self.call
|
||||
|
||||
if self.data is None:
|
||||
if data2 is None:
|
||||
return call(msg)
|
||||
elif isinstance(data2, dict):
|
||||
return call(msg, **data2)
|
||||
try:
|
||||
if self.data is None:
|
||||
if data2 is None:
|
||||
return call(msg)
|
||||
elif isinstance(data2, dict):
|
||||
return call(msg, **data2)
|
||||
else:
|
||||
return call(msg, data2)
|
||||
elif isinstance(self.data, dict):
|
||||
if data2 is None:
|
||||
return call(msg, **self.data)
|
||||
else:
|
||||
return call(msg, data2, **self.data)
|
||||
else:
|
||||
return call(msg, data2)
|
||||
elif isinstance(self.data, dict):
|
||||
if data2 is None:
|
||||
return call(msg, **self.data)
|
||||
else:
|
||||
return call(msg, data2, **self.data)
|
||||
else:
|
||||
if data2 is None:
|
||||
return call(msg, self.data)
|
||||
elif isinstance(data2, dict):
|
||||
return call(msg, self.data, **data2)
|
||||
else:
|
||||
return call(msg, self.data, data2)
|
||||
if data2 is None:
|
||||
return call(msg, self.data)
|
||||
elif isinstance(data2, dict):
|
||||
return call(msg, self.data, **data2)
|
||||
else:
|
||||
return call(msg, self.data, data2)
|
||||
except IRCException as e:
|
||||
return e.fill_response(msg)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue