3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-01 09:19:23 +01:00
PyLink/plugins/fantasy.py

28 lines
1.0 KiB
Python
Raw Normal View History

2015-09-26 18:23:30 +02:00
# fantasy.py: Adds FANTASY command support, to allow calling commands in channels
import sys
import os
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
import utils
from log import log
def handle_fantasy(irc, source, command, args):
"""Fantasy command handler."""
try:
prefix = irc.botdata["prefix"]
except KeyError:
log.warning("(%s) Fantasy prefix was not set in configuration - "
"fantasy commands will not work!", self.name)
return
channel = args['target']
text = args['text']
if utils.isChannel(channel) and text.startswith(prefix) and not \
utils.isInternalClient(irc, source):
2015-09-26 18:23:30 +02:00
# Cut off the length of the prefix from the text.
text = text[len(prefix):]
# Set the last called in variable to the channel, so replies (from
# supporting plugins) get forwarded to it.
irc.called_by = channel
irc.callCommand(source, text)
utils.add_hook(handle_fantasy, 'PRIVMSG')