Changeset 163
- Timestamp:
- 06/25/08 20:24:19 (5 months ago)
- Files:
-
- trunk/antimatter/luke/gozerbot/aliases.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/bot.py (modified) (1 diff)
- trunk/antimatter/luke/gozerbot/botbase.py (modified) (1 diff)
- trunk/antimatter/luke/gozerbot/callbacks.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/commands.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/config.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/datadir.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/dol.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/eventhandler.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/examples.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/exit.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/fleet.py (modified) (4 diffs)
- trunk/antimatter/luke/gozerbot/fleet.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/generic.py (modified) (1 diff)
- trunk/antimatter/luke/gozerbot/generic.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/ignore.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/ircevent.py (modified) (2 diffs)
- trunk/antimatter/luke/gozerbot/ircevent.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/jabbermsg.py (modified) (2 diffs)
- trunk/antimatter/luke/gozerbot/monitor.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/myimport.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/periodical.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/persist.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/persistconfig.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/persiststate.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/plugins.py (modified) (3 diffs)
- trunk/antimatter/luke/gozerbot/plugins.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/redispatcher.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/runner.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/thr.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/threadloop.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/users.pyc (modified) (previous)
- trunk/antimatter/luke/gozerbot/__init__.pyc (modified) (previous)
- trunk/antimatter/luke/gozerplugs/dbplugs/__init__.py (modified) (1 diff)
- trunk/antimatter/luke/gozerplugs/plugs/fleet.py (modified) (5 diffs)
- trunk/antimatter/luke/gozerplugs/plugs/reload.py (modified) (2 diffs)
- trunk/antimatter/luke/gozerplugs/plugs/sort.py (added)
- trunk/antimatter/luke/gozerplugs/plugs/__init__.py (modified) (2 diffs)
- trunk/antimatter/luke/myplugs/libtracker/timeparser.py (modified) (2 diffs)
- trunk/antimatter/luke/myplugs/libtracker/__init__.py (modified) (1 diff)
- trunk/antimatter/luke/myplugs/__init__.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/antimatter/luke/gozerbot/bot.py
r152 r163 50 50 self.userchannels = Dol() 51 51 outmonitor.start() 52 53 def __str__(self): 54 return "name: %s nick: %s server: %s ipv6: %s ssl: %s port:%s" % (self.name, \ 55 self.nick, self.server, self.ipv6, self.ssl, self.port) 52 56 53 57 def _resume(self, data, reto): trunk/antimatter/luke/gozerbot/botbase.py
r130 r163 85 85 pass 86 86 87 def connect(self): 87 def connect(self, nick, server, port=6667, password="", ipv6=0, \ 88 ssl=0, reconnect=True): 88 89 pass 89 90 90 91 def joinchannels(self): 91 92 pass 93 94 def connectwithjoin(self, nick, server, port=6667, password="", ipv6=0, \ 95 ssl=0, reconnect=True): 96 self.connect(nick, server, port, password, ipv6, ssl, reconnect) 97 self.joinchannels() 92 98 93 99 def broadcast(self): trunk/antimatter/luke/gozerbot/fleet.py
r130 r163 149 149 from gozerbot.bot import Bot 150 150 bot = Bot(name, bd[1]) 151 if bot.connect(*bd[2:]):152 got = True151 start_new_thread(bot.connectwithjoin, bd[2:]) 152 got = True 153 153 elif bd[0] == 'jabber' and config['jabberenable']: 154 154 bot = self.byname(name) … … 156 156 from gozerbot.jabberbot import Jabberbot 157 157 bot = Jabberbot(name) 158 if bot.connect(*bd[2:]):159 got = True158 start_new_thread(bot.connectwithjoin, bd[2:]) 159 got = True 160 160 if got: 161 161 if bot not in self.bots: 162 162 self.bots.append(bot) 163 bot.joinchannels()164 163 rlog(10, 'fleet', 'started %s bot' % bot.name) 165 164 else: … … 223 222 for i in self.bots: 224 223 if i.name == name: 224 i.exit() 225 self.remove(i) 225 226 try: 226 227 del self.botdata.data[name] … … 228 229 except KeyError: 229 230 pass 230 i.exit()231 self.remove(i)232 231 rlog(10, 'fleet', '%s deleted' % i.name) 233 232 return 1 trunk/antimatter/luke/gozerbot/generic.py
r152 r163 78 78 args = ievent.txt.split() 79 79 (opts, rest) = getopt.getopt(args[1:], optargs, optlist) 80 if opts: 81 for item in opts: 82 ievent.optionset.append(item[0]) 80 83 o = dict(options) 81 84 o.update(dict(opts)) trunk/antimatter/luke/gozerbot/ircevent.py
r130 r163 69 69 self.denied = False 70 70 self.options = {} 71 self.optionset = [] 71 72 if ievent: 72 73 self.copyin(ievent) … … 109 110 self.denied = ievent.denied 110 111 self.options = dict(ievent.options) 112 self.optionset = list(ievent.optionset) 111 113 112 114 def __str__(self): trunk/antimatter/luke/gozerbot/jabbermsg.py
r152 r163 163 163 self.speed = 5 164 164 self.options = {} 165 self.optionset = [] 165 166 self.groups = None 166 167 self.type = self.getType() … … 213 214 self.speed = int(jmsg.speed) 214 215 self.options = dict(jmsg.options) 216 self.optionset = list(jmsg.optionset) 215 217 self.groups = jmsg.groups 216 218 self.groupchat = jmsg.groupchat trunk/antimatter/luke/gozerbot/plugins.py
r152 r163 186 186 if config['dbenable']: 187 187 dbplugs = my_import('gozerplugs.dbplugs') 188 for i in dbplugs.__ all__:188 for i in dbplugs.__plugs__: 189 189 start_new_thread(self.regplugin, ('gozerplugs.dbplugs', i)) 190 190 avail.append(i) 191 191 plugs = my_import('gozerplugs.plugs') 192 for i in plugs.__ all__:192 for i in plugs.__plugs__: 193 193 if i not in avail: 194 194 start_new_thread(self.regplugin, ('gozerplugs.plugs', i)) … … 333 333 rlog(10, 'plugins', 'db not enabled .. not reloading %s' % \ 334 334 modname) 335 return 335 return reloaded 336 336 # unload plugin 337 337 self.unload(name) … … 352 352 try: 353 353 rlog(0, 'plugins', 'calling %s init()' % modname) 354 ok =self.plugs[name].init()354 self.plugs[name].init() 355 355 except (AttributeError, KeyError): 356 ok = 1 357 pass 356 pass 357 except Excpetion, ex: 358 rlog(10, 'plugins', '%s module init failed' % name) 359 raise 358 360 # enable plugin 359 361 self.enable(name) 360 362 self.overload() 361 if not ok:362 rlog(10, 'plugins', '%s module init failed' % name)363 return 0364 363 rlog(0, 'plugins', 'reloaded plugin %s' % modname) 365 364 reloaded.append(name) trunk/antimatter/luke/gozerplugs/dbplugs/__init__.py
r130 r163 16 16 __all__.append(i[:-3]) 17 17 __all__.remove('__init__') 18 __plugs__ = __all__ 18 19 19 20 del f, tail trunk/antimatter/luke/gozerplugs/plugs/fleet.py
r130 r163 101 101 name) 102 102 return 103 if '--port' in ievent.optionset: 104 port = ievent.options['--port'] 103 105 b = Bot(name, config['owneruserhost']) 104 106 b.nick = nick … … 109 111 b.ssl = ssl 110 112 try: 113 ievent.reply('adding bot: %s' % str(b)) 111 114 fleet.addbot(b) 112 115 fleet.connect(name) … … 116 119 fleet.delete(b) 117 120 118 cmnds.add('fleet-addirc', handle_fleetaddirc, 'OPER' )121 cmnds.add('fleet-addirc', handle_fleetaddirc, 'OPER',options={'--port': '6667'}) 119 122 examples.add('fleet-addirc', 'fleet-addirc <name> <nick> <server> [ipv6] \ 120 123 [port] [passwd] .. add new server to fleet', 'fleet-addirc test3 gozertest \ … … 152 155 name) 153 156 return 157 if '--port' in ievent.optionset: 158 port = ievent.options['--port'] 154 159 b = Jabberbot(name) 155 160 b.host = host … … 165 170 fleet.delete(b) 166 171 167 cmnds.add('fleet-addjabber', handle_fleetaddjabber, 'OPER') 172 cmnds.add('fleet-addjabber', handle_fleetaddjabber, 'OPER', options={'--port':\ 173 '5222'}) 168 174 examples.add('fleet-addjabber', 'fleet-addjabber <name> <host> <user> \ 169 175 <passwd> [<port>] .. add new jabber server to fleet', 'fleet-addjabber test2 \ trunk/antimatter/luke/gozerplugs/plugs/reload.py
r143 r163 31 31 # first check myplugs then dbplugs and finally plugs dir 32 32 got = [] 33 base = 'myplugs' + os.sep + plug 33 base = 'myplugs' + os.sep + plug.replace('.','/') 34 34 if os.path.isfile(base + '.py'): 35 35 got = plugins.reload('myplugs', plug) 36 36 elif os.path.isdir(base): 37 root = 'myplugs.' + plug 38 my_import(root) 39 myplugs = my_import(root + '.__init__') 40 for p in myplugs.__all__: 41 got.extend(plugins.reload(root, p)) 37 got.extend(plugins.reload('myplugs', plug)) 38 for p in plugins[plug].__plugs__: 39 got.extend(plugins.reload('myplugs.' + plug, p)) 42 40 else: 43 41 if config['dbenable']: 44 42 dbplugs = my_import('gozerplugs.dbplugs.__init__') 45 if plug in dbplugs.__ all__:43 if plug in dbplugs.__plugs__: 46 44 got = plugins.reload('gozerplugs.dbplugs', plug) 47 45 if not got: 48 46 plugs = my_import('gozerplugs.plugs.__init__') 49 if plug in plugs.__ all__:47 if plug in plugs.__plugs__: 50 48 got = plugins.reload('gozerplugs.plugs', plug) 51 49 if got: … … 68 66 ievent.reply('there is no %s module' % what) 69 67 return 68 got = [] 69 try: 70 for p in plugins[what].__plugs__: 71 plugins.unload(p) 72 got.append(p) 73 except (AttributeError, KeyError): 74 pass 70 75 if plugins.unload(what): 71 76 plugins.disable(what) 72 ievent.reply("%s unloaded and disabled" % what) 73 else: 74 ievent.reply("%s unload failed" % what) 77 got.append(what) 78 ievent.reply("%s unloaded and disabled" % ' .. '.join(got)) 75 79 76 80 cmnds.add('unload', handle_unload, 'OPER') trunk/antimatter/luke/gozerplugs/plugs/__init__.py
r130 r163 1 # gozerbot package1 # gozerbot basic plugins 2 2 # 3 3 # … … 18 18 __all__.append(i) 19 19 __all__.remove('__init__') 20 __plugs__ = __all__ 20 21 21 22 del f, tail trunk/antimatter/luke/myplugs/libtracker/timeparser.py
r161 r163 2 2 3 3 import re 4 from datetime import timedelta, date 4 import datetime as dt 5 5 6 6 from myplugs.libtracker.dateutil.parser import parse 7 7 from myplugs.libtracker.dateutil.relativedelta import relativedelta 8 8 9 class TimeAdjustment( timedelta):9 class TimeAdjustment(dt.timedelta): 10 10 11 adj_date = d ate.today()11 adj_date = dt.datetime.today() 12 12 start = 0 13 13 end = 0 … … 35 35 def msgparse(ievent): 36 36 """ The main `parser` 37 INPUT: Ircevent """ 37 INPUT: Ircevent 38 OUTPUT: TimeAdjustment 39 """ 38 40 #First Type: 5 hours (assumed current day) 39 41 #Second Type: 1 AM to 5 PM 40 42 #Third Type: ON Sunday: 5 hours or so 41 43 #Fourth Type: ON Sunday: 1 AM to 5 PM 42 setdate = re.findall(r" on (\b\w+\b).?:", ievent.txt, re.I)44 setdate = re.findall(r"^on (\b\w+\b).?[,:](.*)", ievent.txt, re.I) 43 45 if (setdate): 46 setdate = setdate[0] 44 47 day = setdate[0] 45 adjustment = timedelta(days=0) 46 weekdays = ['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'] 47 if (day in weekdays): 48 adjustment = timedelta(days=7) 48 time = setdate[1] 49 adjustment = dt.timedelta(days=0) 50 weekdays = ['monday','tuesday','wednesday','thursday','friday','saturday','sunday'] 51 if (day.lower() in weekdays): 52 adjustment = dt.timedelta(days=7) 49 53 date = parse(day, fuzzy = True) - adjustment 50 reply = "Day to be used: " + date.ctime() 54 time = repr(relativedelta(parse(time, fuzzy = True), dt.date.today())) 55 reply = "Worked on: " + date.ctime() + " for " + time 51 56 ievent.reply(reply) trunk/antimatter/luke/myplugs/libtracker/__init__.py
r162 r163 1 __plugs__ = ['timeparser', 'auth', 'user', 'tracker'] trunk/antimatter/luke/myplugs/__init__.py
r130 r163 1