Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from __future__ import unicode_literals
- from json import loads
- from optparse import OptionParser
- from shlex import split
- from pyfiglet import Figlet
- crontable = []
- outputs = []
- def parse(lineparts):
- parser = OptionParser()
- parser.add_option("-f", dest="font", default="standard")
- parser.add_option("-r", dest="reverse", default=False, action="store_true")
- parser.add_option("-F", dest="flip", default=False, action="store_true")
- return parser.parse_args(lineparts)
- def process_message(data):
- if data.get("user", "") == "U1MRZ396F":
- return
- try:
- ls = split(data["text"])
- except ValueError as exc:
- print("failed to handle %s, ignoring" % data["text"])
- # outputs.append([data["channel"], "what?"])
- return
- # can this happen?
- if not ls:
- return
- maybename = ls.pop(0)
- maybename = maybename.replace("@", "").replace(":", "")
- if maybename.lower() != "figlet" and maybename != "<U1MRZ396F>":
- return
- opts, args = parse(ls)
- msg = " ".join(args)
- if not msg:
- outputs.append([data["channel"], "what?"])
- return
- figlet = Figlet()
- if opts.font not in figlet.getFonts():
- outputs.append([data["channel"], "i don't know that font"])
- return
- figlet.setFont(font=opts.font)
- r = figlet.renderText(msg)
- if opts.reverse:
- r = r.reverse()
- if opts.flip:
- r = r.flip()
- outputs.append([data["channel"], "```%s```\n" % r])
- # eof
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement