mutantmonkey 2011-07-28 10:44:22 -04:00
commit 04b31bb963
2 changed files with 62 additions and 0 deletions

27
modules/halbot.py Executable file
View File

@ -0,0 +1,27 @@
#!/usr/bin/env python
"""
halbot.py - A module to connect to Halpy AI module
Copyright (c) 2011 Dafydd Crosby - http://www.dafyddcrosby.com
Licensed under the Eiffel Forum License 2.
"""
from megahal import *
megahal = MegaHAL()
def learn(phenny,input):
"""Listens in on the room, gradually learning new phrases"""
megahal.learn(input.group())
learn.rule = r'(.*)'
learn.priority = 'low'
def megahalbot(phenny, input):
"""Responds when someone mentions the bot nickname"""
# Clean the input so Halpy does not get confused
inp = input.group().replace(phenny.nick,'')
inp = inp.replace("\'","")
inp = inp.replace("\"","")
phenny.say(input.nick + ": " + megahal.get_reply(inp))
megahal.sync()
megahalbot.rule = r'(.*)$nickname(.*)'
megahalbot.priority = 'low'

35
modules/slogan.py Executable file
View File

@ -0,0 +1,35 @@
#!/usr/bin/env python
"""
slogan.py - Phenny Slogan Module
Copyright (c) 2011 Dafydd Crosby - http://www.dafyddcrosby.com
Licensed under the Eiffel Forum License 2.
"""
import re
import web
uri = 'http://www.sloganizer.net/en/outbound.php?slogan=%s'
def sloganize(word):
bytes = web.get(uri % web.urllib.quote(word.encode('utf-8')))
return bytes
def slogan(phenny, input):
word = input.group(2)
slogan = sloganize(word)
# Remove HTML tags
remove_tags = re.compile(r'<.*?>')
slogan = remove_tags.sub('', slogan)
if not slogan:
phenny.say("Looks like an issue with sloganizer.net")
return
phenny.say(slogan)
slogan.commands = ['slogan']
slogan.example = '.slogan Granola'
if __name__ == '__main__':
print __doc__.strip()