[pybot-commits] CVS: pybot/pybot/modules eval.py,1.4,1.5 example.py,1.1,1.2 forward.py,1.5,1.6 fresh
Brought to you by:
niemeyer
Update of /cvsroot/pybot/pybot/pybot/modules In directory sc8-pr-cvs1:/tmp/cvs-serv22909/pybot/modules Modified Files: eval.py example.py forward.py freshmeat.py google.py help.py ignore.py infopack.py log.py messages.py modulecontrol.py notes.py options.py permission.py plock.py pong.py randnum.py remoteinfo.py repeat.py servercontrol.py social.py testadora.py threadedexample.py timer.py uptime.py userdata.py xmlrpc.py Log Message: * pybot/misc.py,modules/help.py,modules/*: Now regular expressions are using a single space, and misc.regexp() and mm.register_help() convert them to \s+ and \s*. * pybot/misc.py: Fixed small issues on buildanswer(). * pybot/locals.py,pybot/misc.py,modules/*: Introduced pybot.locals. All basic instances of the pybot API are now defined on this file, and all modules are running "from pybot.locals import *". * pybot/misc.py,modules/*: Introduced misc.regexp(). This function is a wrapper on top of re.compile() which will deal better with the pybot triggers expressions. Index: eval.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/eval.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** eval.py 12 May 2003 20:42:20 -0000 1.4 --- eval.py 24 Aug 2003 19:30:53 -0000 1.5 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, main, mm import math - import re HELP = """ --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import math HELP = """ *************** *** 68,73 **** self.dict["coerce"] = coerce ! # Match 'eval <expr>[!|.]' ! self.re1 = re.compile(r"eval\s+(?P<expr>.*?)[!.]*$") # eval[uate|uation] --- 67,72 ---- self.dict["coerce"] = coerce ! # Match 'eval <expr>' ! self.re1 = regexp(r"eval (?P<expr>.*?)") # eval[uate|uation] Index: example.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/example.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** example.py 12 May 2003 20:42:21 -0000 1.1 --- example.py 24 Aug 2003 19:30:53 -0000 1.2 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, db import time import re --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import time import re *************** *** 37,41 **** # hello (world|irc) ! self.re1 = re.compile(r"hello\s+(?P<what>world|irc)\s*[.!]*$", re.I) mm.register_help(r"example", HELP, "example") --- 37,41 ---- # hello (world|irc) ! self.re1 = regexp(r"hello (?P<what>world|irc)") mm.register_help(r"example", HELP, "example") Index: forward.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/forward.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** forward.py 13 May 2003 14:13:40 -0000 1.5 --- forward.py 24 Aug 2003 19:30:53 -0000 1.6 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, servers, db from string import join - import re HELP = """ --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from string import join HELP = """ *************** *** 54,64 **** # forward messages [for you] [(from|on|at) [user|channel] <fromtarget>] [(from|on|at) server <fromserver>]] to [user|channel] <totarget> [(on|at) server <toserver>] [with (server|channel [and server]|<withstring>)] [!|.] ! self.re1 = re.compile(r"(?P<dont>do\s+not\s+|don't\s+)?forward\s+messages\s+(?P<foryou>for\s+you\s+)?(?:(?:from\s+|on\s+|at\s+)(?:channel\s+|user\s+)?(?P<fromtarget>\S+)\s+)?(?:(?:from\s+|on\s+|at\s+)(?:server\s+)?(?P<fromserver>\S+)\s+)?to\s+(?:user\s+|channel\s+)?(?P<totarget>\S+)(?:\s+(?:on\s+|at\s+)server\s+(?P<toserver>\S+))?(?:\s+with\s+(?P<withchannel>channel)?(?:\s+and\s+)?(?P<withserver>server)?(?P<withstring>\S+)?)?\s*$", re.I) # show forwards ! self.re2 = re.compile(r"show\s+forwards\s*$", re.I) # [message] forward[ing] ! mm.register_help("(?:message\s+)?forward(?:ing)?", HELP, "forward") mm.register_perm("forward", PERM_FORWARD) --- 53,63 ---- # forward messages [for you] [(from|on|at) [user|channel] <fromtarget>] [(from|on|at) server <fromserver>]] to [user|channel] <totarget> [(on|at) server <toserver>] [with (server|channel [and server]|<withstring>)] [!|.] ! self.re1 = regexp(r"(?P<dont>do not |don't )?forward messages (?P<foryou>for you )?(?:(?:from |on |at )(?:channel |user )?(?P<fromtarget>\S+) )?(?:(?:from |on |at )(?:server )?(?P<fromserver>\S+) )?to (?:user |channel )?(?P<totarget>\S+)(?: (?:on |at )server (?P<toserver>\S+))?(?: with (?P<withchannel>channel)?(?: and)?(?P<withserver> server)?(?P<withstring>\S+)?)?") # show forwards ! self.re2 = regexp(r"show forwards") # [message] forward[ing] ! mm.register_help("(?:message )?forward(?:ing)?", HELP, "forward") mm.register_perm("forward", PERM_FORWARD) Index: freshmeat.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/freshmeat.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** freshmeat.py 23 Aug 2003 22:04:09 -0000 1.10 --- freshmeat.py 24 Aug 2003 19:30:53 -0000 1.11 *************** *** 17,25 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, servers, config, db import urllib import thread import string - import re HELP = """ --- 17,24 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import urllib import thread import string HELP = """ *************** *** 50,57 **** # [don[']t|do not] show freshmeat news [(to|on|at|for) [channel|user] <target> [[on|at] server <server>]] ! self.re1 = re.compile(r"(?P<dont>don'?t\s+|do\s+not\s+)?show\s+freshmeat\s+news(?:\s+(?:to|on|at|for)(?:\s+channel|\s+user)?\s+(?P<target>\S+)(?:(?:\s+on|\s+at)?\s+server\s+(?P<server>\S+?))?)?\s*[!.]*$", re.I) # freshmeat [news] ! mm.register_help("freshmeat(?:\s+news)?", HELP, "freshmeat") mm.register_perm("freshmeat", PERM_FRESHMEAT) --- 49,56 ---- # [don[']t|do not] show freshmeat news [(to|on|at|for) [channel|user] <target> [[on|at] server <server>]] ! self.re1 = regexp(r"(?P<dont>don'?t |do not )?show freshmeat news(?: (?:to|on|at|for)(?: channel| user)? (?P<target>\S+)(?:(?: on| at)? server (?P<server>\S+?))?)?") # freshmeat [news] ! mm.register_help("freshmeat(?: news)?", HELP, "freshmeat") mm.register_perm("freshmeat", PERM_FRESHMEAT) Index: google.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/google.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** google.py 29 May 2003 17:44:43 -0000 1.4 --- google.py 24 Aug 2003 19:30:53 -0000 1.5 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, config from pybot.util import SOAPpy import thread --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from pybot.util import SOAPpy import thread *************** *** 46,52 **** # [search] google [<n>]: <search> ! self.re1 = re.compile(r"(?:search\s+)?google(?:\s+(?P<n>\d+))?:\s*(?P<search>.+)$", re.I) ! mm.register_help("(?:search\s+)?google(?:\s+search)?", HELP, "google") --- 46,52 ---- # [search] google [<n>]: <search> ! self.re1 = regexp(r"(?:search )?google(?: (?P<n>\d+))?:\s*(?P<search>.+)") ! mm.register_help("(?:search )?google(?: search)?", HELP, "google") Index: help.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/help.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** help.py 12 May 2003 20:42:21 -0000 1.5 --- help.py 24 Aug 2003 19:30:53 -0000 1.6 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, mm, options from types import ListType, TupleType import re --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from types import ListType, TupleType import re *************** *** 40,44 **** # [show] help [about] <keyword> ! self.re1 = re.compile(r"(?:show\s+)?help(?:\s+about)?(?:\s+(?P<something>.+?))?\s*[.!]*$", re.I) self.mm_register_perm("help", PERM_HELP) --- 40,44 ---- # [show] help [about] <keyword> ! self.re1 = regexp(r"(?:show )?help(?: about)?(?: (?P<something>.+?))?") self.mm_register_perm("help", PERM_HELP) *************** *** 101,104 **** --- 101,107 ---- elif type(triggers) is not ListType: triggers = [triggers] + pattern = pattern.replace(" *", r"\s*") + pattern = pattern.replace(" ?", r"\s*") + pattern = pattern.replace(" ", r"\s+") self.data.append((re.compile(pattern, re.I), text, triggers)) Index: ignore.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/ignore.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** ignore.py 12 May 2003 20:42:21 -0000 1.4 --- ignore.py 24 Aug 2003 19:30:53 -0000 1.5 *************** *** 17,22 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, db ! import re HELP = """ --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * HELP = """ *************** *** 47,51 **** # [do not|don't] ignore [user <user>] [on|at] [this channel|channel <channel>] [on|at] [this server|server <server>] ! self.re1 = re.compile(r"(?P<dont>do\s+not\s+|don't\s+)?ignore\s+(?:user\s+(?P<user>\S+?))?(?:(?:on\s+|at\s+)?(?:(?P<thischannel>this\s+channel)|channel\s+(?P<channel>\S+)))?(?:(?:on\s+|at\s+)?(?:(?P<thisserver>this\s+server)|server\s+(?P<server>\S+?)))?\s*$", re.I) # [un]ignore --- 46,50 ---- # [do not|don't] ignore [user <user>] [on|at] [this channel|channel <channel>] [on|at] [this server|server <server>] ! self.re1 = regexp(r"(?P<dont>do not |don't )?ignore (?:user (?P<user>\S+?))?(?:(?:on |at )?(?:(?P<thischannel>this channel)|channel (?P<channel>\S+)))?(?:(?:on |at )?(?:(?P<thisserver>this server)|server (?P<server>\S+?)))?") # [un]ignore Index: infopack.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/infopack.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** infopack.py 2 Jun 2003 13:36:09 -0000 1.7 --- infopack.py 24 Aug 2003 19:30:53 -0000 1.8 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import config, hooks, mm, db import random import re --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import random import re *************** *** 195,208 **** # [load|reload|unload] infopack <name> [in memory] [.|!] ! self.re1 = re.compile(r"(?P<action>re|un)?load\s+infopack\s+(?P<name>\w+)(?P<inmemory>\s+in\s+memory)?\s*[.!]*$", re.I) # show infopacks ! self.re2 = re.compile(r"show\s+infopacks\s*[!.]*$", re.I) # infopack[s] ! mm.register_help("infopacks?$", HELP, "infopack") # infopack <name> ! mm.register_help("infopack\s+(?P<name>\S+)\s*$", self.help) mm.register_perm("infopackadmin", PERM_INFOPACKADMIN) --- 195,208 ---- # [load|reload|unload] infopack <name> [in memory] [.|!] ! self.re1 = regexp(r"(?P<action>re|un)?load infopack (?P<name>\w+)(?P<inmemory> in memory)?") # show infopacks ! self.re2 = regexp(r"show infopacks") # infopack[s] ! mm.register_help("infopacks?", HELP, "infopack") # infopack <name> ! mm.register_help("infopack (?P<name>\S+)", self.help) mm.register_perm("infopackadmin", PERM_INFOPACKADMIN) Index: log.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/log.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** log.py 19 Aug 2003 22:42:37 -0000 1.15 --- log.py 24 Aug 2003 19:30:53 -0000 1.16 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import config, hooks, mm, servers, db from pybot.user import User import time --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from pybot.user import User import time *************** *** 133,141 **** hooks.register("OutCTCP", self.log_outctcp, 150) ! # [have you] seen <nick> [!?] ! self.re1 = re.compile(r"(?:have\s+you\s+)?seen\s+(?P<nick>[^\s!?]+)\s*[!?]*$", re.I) ! # [show|search] (log[s]|message[s]) [with] /<regexp>/[.!] ! self.re2 = re.compile("(?:show\s+|search\s+)?(?:log|message)s?\s+(?:with\s+|search\s+)?/(?P<regexp>.*)/\s*[.!?]*$", re.I) # seen --- 133,141 ---- hooks.register("OutCTCP", self.log_outctcp, 150) ! # [have you] seen <nick> ! self.re1 = regexp(r"(?:have you )?seen (?P<nick>[^\s!?]+)$", question=1) ! # [show|search] (log[s]|message[s]) [with] /<regexp>/ ! self.re2 = regexp(r"(?:show |search )?(?:log|message)s? (?:with |search )?/(?P<regexp>.*)/") # seen *************** *** 143,147 **** # log|(search|show) (log[s]|message[s]) ! mm.register_help("log|(?:search|show)\s+(?:log|message)s?", HELP_SEARCH, "log") --- 143,147 ---- # log|(search|show) (log[s]|message[s]) ! mm.register_help("log|(?:search|show) (?:log|message)s?", HELP_SEARCH, "log") Index: messages.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/messages.py,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** messages.py 22 Aug 2003 14:35:09 -0000 1.11 --- messages.py 24 Aug 2003 19:30:53 -0000 1.12 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, mm, db import string import time --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import string import time *************** *** 45,55 **** # [priv[ate]] message (to|for) <nick>: <message> ! self.re1 = re.compile(r"(?P<private>priv(?:ate)?\s+)?message\s+(?:to|for)\s+(?P<nick>\S+?)\s*:\s+(?P<message>.*)$", re.I) # [any] message[s]? ! self.re2 = re.compile(r"(?:any\s+)?messages?\s*\?$", re.I) # [leav(e|ing)] message[s] ! mm.register_help("(?:leav(?:e|ing)\s+)?messages?", HELP, "messages") mm.register_perm("messages", PERM_MESSAGES) --- 45,55 ---- # [priv[ate]] message (to|for) <nick>: <message> ! self.re1 = regexp(r"(?P<private>priv(?:ate)? )?message (?:to|for) (?P<nick>\S+?)\s*: (?P<message>.*)") # [any] message[s]? ! self.re2 = regexp(r"(?:any )?messages?", question=1, needpunct=1) # [leav(e|ing)] message[s] ! mm.register_help("(?:leav(?:e|ing) )?messages?", HELP, "messages") mm.register_perm("messages", PERM_MESSAGES) Index: modulecontrol.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/modulecontrol.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** modulecontrol.py 12 May 2003 20:42:21 -0000 1.8 --- modulecontrol.py 24 Aug 2003 19:30:53 -0000 1.9 *************** *** 17,22 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, modls, db ! import re HELP = """ --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * HELP = """ *************** *** 34,44 **** # [re|un]load [the] [module] <module> ! self.re1 = re.compile(r"(?P<command>(?:re|un)?load)(?:\s+the)?(?:\s+module)?\s+(?P<module>[\w_-]+)\s*[.!]*$", re.I) # show modules ! self.re2 = re.compile(r"show\s+modules\s*[.!]*$", re.I) # [[un|re]load] module[s] ! mm.register_help(r"(?:(?:un|re)?load\s+)?modules?", HELP, "modules") def get_modules(self): --- 33,43 ---- # [re|un]load [the] [module] <module> ! self.re1 = regexp(r"(?P<command>(?:re|un)?load)(?: the)?(?: module)? (?P<module>[\w_-]+)") # show modules ! self.re2 = regexp(r"show modules") # [[un|re]load] module[s] ! mm.register_help(r"(?:(?:un|re)?load )?modules?", HELP, "modules") def get_modules(self): Index: notes.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/notes.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** notes.py 12 May 2003 20:42:21 -0000 1.3 --- notes.py 24 Aug 2003 19:30:53 -0000 1.4 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, db import string import time --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import string import time *************** *** 49,59 **** # [add|new|create|include] note [about] <topic>: <note> ! self.re1 = re.compile(r"(?:add\s+|new\s+|create\s+|include\s+)?note(?:\s+about)?\s+(?P<topic>[^:]+):\s*(?P<note>.+)$", re.I) # [del|delete|remove] note[s] [about] <topic> [: <num> [, ...]] ! self.re2 = re.compile(r"(?:del|delete|remove)\s+notes?(?:\s+about)?\s+(?P<topic>[^:]+)(?:\s*:\s*(?P<nums>.+))?\s*$", re.I) # [show] note[s] [[about] <topic> [?]] ! self.re3 = re.compile(r"(?:show\s+)?notes?(?:(?:\s+about)?\s+(?P<topic>[^?]+))?\s*\?*$", re.I) # note[s] --- 49,59 ---- # [add|new|create|include] note [about] <topic>: <note> ! self.re1 = regexp(r"(?:add |new |create |include )?note(?: about)? (?P<topic>[^:]+):\s*(?P<note>.+)") # [del|delete|remove] note[s] [about] <topic> [: <num> [, ...]] ! self.re2 = regexp(r"(?:del|delete|remove) notes?(?: about)? (?P<topic>[^:]+)(?:\s*:\s*(?P<nums>.+))?") # [show] note[s] [[about] <topic> [?]] ! self.re3 = regexp(r"(?:show )?notes?(?:(?: about)? (?P<topic>[^?]+))?") # note[s] Index: options.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/options.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** options.py 12 May 2003 20:42:21 -0000 1.5 --- options.py 24 Aug 2003 19:30:53 -0000 1.6 *************** *** 17,26 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, config from types import ListType, DictType import os import string import cPickle - import re HELP = """ --- 17,25 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from types import ListType, DictType import os import string import cPickle HELP = """ *************** *** 42,58 **** # (read|write) options ! self.re1 = re.compile(r"(?P<cmd>read|write)\s+options\s*[!.]*$", re.I) # set option <name> to <value> ! self.re2 = re.compile(r"set\s+option\s+(?P<name>\S+)\s+to\s+(?P<value>.+)$", re.I) # (show|del[ete]|remove) option <name> ! self.re3 = re.compile(r"(?P<cmd>show|del|delete|remove)\s+option\s+(?P<name>\S+)$", re.I) # show options ! self.re4 = re.compile(r"show\s+options$", re.I) # option[s] ! mm.register_help(r"options?$", HELP, "options") def unload(self): --- 41,57 ---- # (read|write) options ! self.re1 = regexp(r"(?P<cmd>read|write) options") # set option <name> to <value> ! self.re2 = regexp(r"set option (?P<name>\S+) to (?P<value>.+)") # (show|del[ete]|remove) option <name> ! self.re3 = regexp(r"(?P<cmd>show|del|delete|remove) option (?P<name>\S+)") # show options ! self.re4 = regexp(r"show options") # option[s] ! mm.register_help(r"options?", HELP, "options") def unload(self): Index: permission.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/permission.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** permission.py 12 May 2003 21:56:33 -0000 1.10 --- permission.py 24 Aug 2003 19:30:53 -0000 1.11 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, config, db from pybot.user import User from types import StringType --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from pybot.user import User from types import StringType *************** *** 64,74 **** # (give|remove|del|delete|take) perm[ission] <perm> [to|from] [everyone | [user <user>] [[and] nick <nick>] [on|at] [this channel|channel <channel>] [on|at|to] [this server|server <server>]] ! self.re1 = re.compile("(?P<cmd>give|remove|del|delete|take)\s+(?:perm(?:ission)?\s+(?P<perm1>\S+)|(?P<perm2>\S+)\s+perm(?:ission)?)(?:\s+to|\s+from)?(?:(?P<everyone>\s+everyone)|(?:\s+user\s+(?P<user>\S+))?(?:(?:\s+and)?\s+nick\s+(?P<nick>\S+))?(?:\s+on|\s+at)?(?:\s+(?P<thischannel>this\s+channel)|\s+channel\s+(?P<channel>\S+))?(?:\s+on|\s+at|\s+to)?(?:\s+(?P<thisserver>this\s+server)|\s+server\s+(?P<server>\S+))?)?\s*[!.]*$", re.I) # (show|list) perm[ission][s] [<perm>] ! self.re2 = re.compile("(?:show|list)\s+perm(?:ission)?s?(?:\s+(?P<perm>\w+))?\s*[!.]*$", re.I) # perm[ission][s] [system] ! mm.register_help("perm(?:ission)?s?(?:\s+system)?", HELP, "permissions") --- 64,74 ---- # (give|remove|del|delete|take) perm[ission] <perm> [to|from] [everyone | [user <user>] [[and] nick <nick>] [on|at] [this channel|channel <channel>] [on|at|to] [this server|server <server>]] ! self.re1 = regexp("(?P<cmd>give|remove|del|delete|take) (?:perm(?:ission)? (?P<perm1>\S+)|(?P<perm2>\S+) perm(?:ission)?)(?: to| from)?(?:(?P<everyone> everyone)|(?: user (?P<user>\S+))?(?:(?: and)? nick (?P<nick>\S+))?(?: on| at)?(?: (?P<thischannel>this channel)| channel (?P<channel>\S+))?(?: on| at| to)?(?: (?P<thisserver>this server)| server (?P<server>\S+))?)?") # (show|list) perm[ission][s] [<perm>] ! self.re2 = regexp("(?:show|list) perm(?:ission)?s?(?: (?P<perm>\w+))?") # perm[ission][s] [system] ! mm.register_help("perm(?:ission)?s?(?: system)?", HELP, "permissions") Index: plock.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/plock.py,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** plock.py 12 May 2003 20:42:21 -0000 1.9 --- plock.py 24 Aug 2003 19:30:53 -0000 1.10 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, config, db import time import sys --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import time import sys *************** *** 70,90 **** hooks.register("Message", self.message) ! # [force] plock <package> [,<package>] [!|.] ! self.re1 = re.compile(r"(?P<force>force\s+)?plock\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*[!.]*$") # [force] (unplock|punlock) <package> [,<package>] [!|.] ! self.re2 = re.compile(r"(?P<force>force\s+)?(?:unplock|punlock)\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*[!.]*$") # (my plocks|plocks of <user>) [?] ! self.re3 = re.compile(r"(?:(?P<my>my)\s+plocks|plocks\s+of\s+(?P<user>[\w\.@_-]+))\s*(?:!*\?[?!]*)?$") # ([who] [has] plocked|plocker [of]) <package> [,<package>] [?] ! self.re4 = re.compile(r"(?:(?:who\s+)?(?:has\s+)plocked|plocker\s+(?:of\s+)?)(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*(?:!*\?[?!]*)?$") # plock <package> [,<package>] ? ! self.re5 = re.compile(r"plock\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*(?:!*\?[?!]*)$") # [un]plock[ing] | <package|pkg> lock[ing] ! mm.register_help("(?:un)?plock(?:ing)?|(?:package|pkg)\s+lock(?:ing)?", HELP, "plock") --- 70,90 ---- hooks.register("Message", self.message) ! # [force] plock <package> [,<package>] ! self.re1 = regexp(r"(?P<force>force )?plock (?P<package>[\w_\.-]+(?:(?: *,? *and |[, ]+)[\w_\.-]+)*)") # [force] (unplock|punlock) <package> [,<package>] [!|.] ! self.re2 = regexp(r"(?P<force>force )?(?:unplock|punlock) (?P<package>[\w_\.-]+(?:(?: *,? *and |[, ]+)[\w_\.-]+)*)") # (my plocks|plocks of <user>) [?] ! self.re3 = regexp(r"(?:(?P<my>my) plocks|plocks of (?P<user>[\w\.@_-]+))", question=1) # ([who] [has] plocked|plocker [of]) <package> [,<package>] [?] ! self.re4 = regexp(r"(?:(?:who )?(?:has )plocked|plocker (?:of )?)(?P<package>[\w_\.-]+(?:(?: *,? *and |[, ]+)[\w_\.-]+)*)", question=1) # plock <package> [,<package>] ? ! self.re5 = regexp(r"plock (?P<package>[\w_\.-]+(?:(?: *,? *and |[, ]+)[\w_\.-]+)*)$", question=1, needpunct=1) # [un]plock[ing] | <package|pkg> lock[ing] ! mm.register_help("(?:un)?plock(?:ing)?|(?:package|pkg) lock(?:ing)?", HELP, "plock") Index: pong.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/pong.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** pong.py 22 Aug 2003 13:49:10 -0000 1.6 --- pong.py 24 Aug 2003 19:30:53 -0000 1.7 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, mm, servers class Pong: --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * class Pong: *************** *** 30,39 **** def pong(self, cmd): if cmd.cmd == "PING": ! cmd.server.sendcmd("", "PONG", cmd.line, priority=10) def ping(self): for server in servers.getall(): if server.servername != "console": ! server.sendcmd("", "PING", server.user.nick) def __loadmodule__(): --- 30,39 ---- def pong(self, cmd): if cmd.cmd == "PING": ! cmd.server.sendcmd(None, "PONG", cmd.line, priority=10) def ping(self): for server in servers.getall(): if server.servername != "console": ! server.sendcmd(None, "PING", server.user.nick) def __loadmodule__(): Index: randnum.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/randnum.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** randnum.py 12 May 2003 20:42:21 -0000 1.3 --- randnum.py 24 Aug 2003 19:30:53 -0000 1.4 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, mm from random import randint - import re HELP = """ --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from random import randint HELP = """ *************** *** 37,44 **** # [give|tell|show] [me] [a|one|<n>] [random] number[s] between <num1> and <num2> ! self.re1 = re.compile(r"(?:give|tell|show)\s+(?:me\s+)?(?P<n>a|one|\d+)\s+(?:random\s+)?numbers?\s+between\s+(?P<num1>\d+)\s+and\s+(?P<num2>\d+)\s*[.!]*$", re.I) # randnum[s]|random number[s] ! mm.register_help("randnums?|random\s+numbers?", HELP, "randnum") mm.register_perm("randnum", PERM_RANDNUM) --- 36,43 ---- # [give|tell|show] [me] [a|one|<n>] [random] number[s] between <num1> and <num2> ! self.re1 = regexp(r"(?:give|tell|show) (?:me )?(?P<n>a|one|\d+) (?:random )?numbers? between (?P<num1>\d+) and (?P<num2>\d+)") # randnum[s]|random number[s] ! mm.register_help("randnums?|random numbers?", HELP, "randnum") mm.register_perm("randnum", PERM_RANDNUM) Index: remoteinfo.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/remoteinfo.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** remoteinfo.py 23 Aug 2003 22:04:09 -0000 1.4 --- remoteinfo.py 24 Aug 2003 19:30:53 -0000 1.5 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import config, options, hooks, mm, db import thread, time import urllib --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import thread, time import urllib *************** *** 100,117 **** # load remote[ ]info [from] <url> [each <n>[ ](s[econds]|m[inutes]|h[ours])] [[with|using] regex <regex>] ! self.re1 = re.compile(r"load\s+remote\s*info\s+(?:from\s+)?(?P<url>\S+)(?:\s+each\s+(?P<interval>[0-9]+)\s*(?P<intervalunit>se?c?o?n?d?s?|mi?n?u?t?e?s?|ho?u?r?s?))?(?:\s+(?:with\s+|using\s+)?regex\s+(?P<regex>.*))?\s*$", re.I) # (un|re)load remote[ ]info [from] <url> ! self.re2 = re.compile(r"(?P<cmd>un|re)load\s+remote\s*info\s+(?:from\s+)?(?P<url>\S+)\s*$", re.I) # [(don[']t|do not)] allow remote[ ]info [from] <url> [(to|for|on|at|in) (user|channel) <target>] [(to|for|on|at|in) server <server>] ! self.re3 = re.compile(r"(?P<dont>don'?t\s+|do not\s+)?allow\s+remote\s*info\s+(?:from\s+)?(?P<url>\S+)(?:\s+(?:to|for|on|at|in)\s+(?:user|channel)\s+(?P<target>\S+))?(?:\s+(?:to|for|on|at|in)\s+server\s+(?P<server>\S+))?\s*$", re.I) # show remote[ ]info[s] ! self.re4 = re.compile(r"show\s+remote\s*infos?$", re.I) # remote[ ]info ! mm.register_help("remote\s*info?$", HELP, "remoteinfo") ! mm.register_help("remote\s*infos?\s*syntax$", HELP_SYNTAX, "remoteinfo syntax") --- 100,117 ---- # load remote[ ]info [from] <url> [each <n>[ ](s[econds]|m[inutes]|h[ours])] [[with|using] regex <regex>] ! self.re1 = regexp(r"load remote *info (?:from )?(?P<url>\S+)(?: each (?P<interval>[0-9]+) *(?P<intervalunit>se?c?o?n?d?s?|mi?n?u?t?e?s?|ho?u?r?s?))?(?: (?:with |using )?regex (?P<regex>.*))?") # (un|re)load remote[ ]info [from] <url> ! self.re2 = regexp(r"(?P<cmd>un|re)load remote *info (?:from )?(?P<url>\S+)") # [(don[']t|do not)] allow remote[ ]info [from] <url> [(to|for|on|at|in) (user|channel) <target>] [(to|for|on|at|in) server <server>] ! self.re3 = regexp(r"(?P<dont>don'?t |do not )?allow remote *info (?:from )?(?P<url>\S+)(?: (?:to|for|on|at|in) (?:user|channel) (?P<target>\S+))?(?: (?:to|for|on|at|in) server (?P<server>\S+))?") # show remote[ ]info[s] ! self.re4 = regexp(r"show remote *infos?") # remote[ ]info ! mm.register_help("remote *info?$", HELP, "remoteinfo") ! mm.register_help("remote *infos? *syntax$", HELP_SYNTAX, "remoteinfo syntax") Index: repeat.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/repeat.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** repeat.py 22 Aug 2003 14:16:29 -0000 1.5 --- repeat.py 24 Aug 2003 19:30:53 -0000 1.6 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, servers from string import join - import re HELP = """ --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from string import join HELP = """ *************** *** 55,59 **** # [don[']t|do not] repeat [each <n>[ ](s[econds]|m[inutes]|h[ours])] (to|at|on) [channel|user] <target> [[on|at] server <server>]: [/me|/notice] ... ! self.re1 = re.compile(r"(?:(?P<dont>don'?t|do\s+not)\s+)?repeat(?:\s+each\s+(?P<interval>[0-9]+)\s*(?P<intervalunit>se?c?o?n?d?s?|mi?n?u?t?e?s?|ho?u?r?s?))?(?:\s+(?:to|at|on)(?:\s+(?:channel|user))?\s+(?P<target>\S+))?(?:\s+(?:on|at)?\s+server\s+(?P<server>\S+))?\s*:\s+(?P<action>/me\s)?(?P<notice>/notice\s)?(?P<phrase>.*)$") # repeat --- 54,58 ---- # [don[']t|do not] repeat [each <n>[ ](s[econds]|m[inutes]|h[ours])] (to|at|on) [channel|user] <target> [[on|at] server <server>]: [/me|/notice] ... ! self.re1 = regexp(r"(?:(?P<dont>don'?t|do not) )?repeat(?: each (?P<interval>[0-9]+)\s*(?P<intervalunit>se?c?o?n?d?s?|mi?n?u?t?e?s?|ho?u?r?s?))?(?: (?:to|at|on)(?: (?:channel|user))? (?P<target>\S+))?(?: (?:on|at)? server (?P<server>\S+))?\s*: (?P<action>/me\s)?(?P<notice>/notice\s)?(?P<phrase>.*)") # repeat Index: servercontrol.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/servercontrol.py,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** servercontrol.py 22 Aug 2003 13:49:10 -0000 1.7 --- servercontrol.py 24 Aug 2003 19:30:53 -0000 1.8 *************** *** 17,24 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, servers, main, db, config from pybot.user import User from string import join - import re HELP_CONNECT = """ --- 17,23 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from pybot.user import User from string import join HELP_CONNECT = """ *************** *** 94,122 **** # connect [to] [server] <server> [[with|using] servername <servername>] [and] [[with|using] nick <nick>] ! self.re1 = re.compile(r"connect\s+(?:to\s+)?(?:server\s+)?(?P<server>\S+)(?:(?:\s+with|\s+using)?\s+servername\s+(?P<servername>\S+))?(?:\s+and)?(?:(?:\s+with|\s+using)?\s+nick\s+(?P<nick>\S+))?\s*$", re.I) # (re|dis)connect [to|from] <server> [with <reason>] ! self.re2 = re.compile(r"(?P<cmd>(?:re|dis)connect)(?:\s+(?:to\s+|from\s+)?(?:server\s+)?(?P<server>\S+))?(?:\s+with\s+(?P<reason>.+))?\s*$", re.I) # join [channel] <channel> [[with|using] keyword <keyword>] [[on|at] [server] <server>] ! self.re3 = re.compile(r"join\s+(?:channel\s+)?(?P<channel>\S+)(?:(?:\s+with|\s+using)?\s+keyword\s+(?P<keyword>\S+))?(?:(?:\s+on|\s+at)?(?:\s+server)?\s+(?P<server>\S+))?\s*$", re.I) # (leave|part) [[from] [channel] <channel> [[on|at] [server] <server>] [with <reason>]] ! self.re4 = re.compile(r"(?:leave|part)(?:\s+(?:from\s+)?(?:channel\s+)?(?P<channel>\S+)(?:(?:\s+on|\s+at)?(?:\s+server)?\s+(?P<server>\S+))?(?:\s+with\s+(?P<reason>\S+))?)?\s*$", re.I) # show servers ! self.re5 = re.compile(r"show\s+servers\s*$", re.I) # show channels [[at|on|from|in] [server] <server>] ! self.re6 = re.compile(r"show\s+channels(?:(?:\s+on|\s+at|\s+from)?(?:\s+server)?\s+(?P<server>\S+))?\s*$", re.I) # (quit|reboot) [with <reason>] ! self.re7 = re.compile(r"(?P<cmd>quit|reboot)(?:\s+with\s+(?P<reason>.+))?$", re.I) # [remove] connection message to <target> [on [server] <server>]: <msg> ! self.re8 = re.compile(r"(?P<remove>remove\s+)?connection\s+message\s+to\s+(?P<target>\S+)(?:\s+(?:on|at)\s+(?:server\s+)?(?P<server>\S+))?\s*:\s*(?P<msg>.*?)\s*$", re.I) # show connection messages ! self.re9 = re.compile(r"show\s+connection\s+messages?\s*$", re.I) # [dis|re]connect --- 93,121 ---- # connect [to] [server] <server> [[with|using] servername <servername>] [and] [[with|using] nick <nick>] ! self.re1 = regexp(r"connect (?:to )?(?:server )?(?P<server>\S+)(?:(?: with| using)? servername (?P<servername>\S+))?(?: and)?(?:(?: with| using)? nick (?P<nick>\S+))?") # (re|dis)connect [to|from] <server> [with <reason>] ! self.re2 = regexp(r"(?P<cmd>(?:re|dis)connect)(?: (?:to |from )?(?:server )?(?P<server>\S+))?(?: with (?P<reason>.+))?") # join [channel] <channel> [[with|using] keyword <keyword>] [[on|at] [server] <server>] ! self.re3 = regexp(r"join (?:channel )?(?P<channel>\S+)(?:(?: with| using)? keyword (?P<keyword>\S+))?(?:(?: on| at)?(?: server)? (?P<server>\S+))?") # (leave|part) [[from] [channel] <channel> [[on|at] [server] <server>] [with <reason>]] ! self.re4 = regexp(r"(?:leave|part)(?: (?:from )?(?:channel )?(?P<channel>\S+)(?:(?: on| at)?(?: server)? (?P<server>\S+))?(?: with (?P<reason>\S+))?)?") # show servers ! self.re5 = regexp(r"show servers") # show channels [[at|on|from|in] [server] <server>] ! self.re6 = regexp(r"show channels(?:(?: on| at| from)?(?: server)? (?P<server>\S+))?") # (quit|reboot) [with <reason>] ! self.re7 = regexp(r"(?P<cmd>quit|reboot)(?: with (?P<reason>.+))?") # [remove] connection message to <target> [on [server] <server>]: <msg> ! self.re8 = regexp(r"(?P<remove>remove )?connection message to (?P<target>\S+)(?: (?:on|at) (?:server )?(?P<server>\S+))? *: *(?P<msg>.*?)") # show connection messages ! self.re9 = regexp(r"show connection messages?") # [dis|re]connect *************** *** 129,137 **** # show[ ](channels|servers) ! mm.register_help(r"show\s*(?:channels|servers)$", HELP_SHOW, ["show channels", "show servers"]) # connection message[s] ! mm.register_help(r"connection\s+messages?", HELP_CONNECTION_MESSAGES, "connection messages") --- 128,136 ---- # show[ ](channels|servers) ! mm.register_help(r"show *(?:channels|servers)$", HELP_SHOW, ["show channels", "show servers"]) # connection message[s] ! mm.register_help(r"connection messages?", HELP_CONNECTION_MESSAGES, "connection messages") Index: social.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/social.py,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** social.py 2 Jun 2003 13:36:10 -0000 1.9 --- social.py 24 Aug 2003 19:30:53 -0000 1.10 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks from time import time - import re class Social: --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from time import time class Social: *************** *** 28,56 **** # (re|hi|hello|hallo|olá|ola|hola|wb|welcome|good (morning|afternoon|evening)|bom dia|boa tarde|gutten tag) [there|back|everybody|all|guys|folks|people|pessoal|(a|para) todos|pybot] [!|.] ! self.re1 = re.compile(r'(?:re|hi|hello|hallo|olá|ola|hola|wb|welcome\s+back|good\s+(?:morning|afternoon|evening)|bom\s+dia|boa\s+tarde|gutten\s+tag)(?:\s+(?:there|everybody|all|guys|folks|people|pessoal|(à|a|para)\s+todos|(?P<nick>\w+)))?\s*[!.]*$', re.I) # pybot! ! self.re2 = re.compile(r'(?P<nick>\w+)\s*!+$', re.I) ! # [thank[']s|thank you|thx|tnk[']s] [!|.] ! self.re3 = re.compile(r'(?:thank|thx|tnk)(?:\'?s|\s+you)(?:\s+(?P<nick>\w+))?\s*[!.]*', re.I) # are you ok?|how are you [doing]? ! self.re4 = re.compile(r'(?:are\s+you\s+ok|how\s+are\s+you(?:\s+doing)?)\s*[!?]*$', re.I) ! # pybot? ! self.re5 = re.compile(r'!*\?[?!]*$', re.I) ! # never mind [!|.] ! self.re6 = re.compile(r'never\s+mind\s*[!.]*$', re.I) ! # [very|pretty] (nice|good|great) [.|!] ! self.re7 = re.compile(r'(?:(?:very|pretty)\s+)?(?:nice|good|great)\s*[.!]*$', re.I) # (gay|stupid|fuck|idiot|imbecile|cretin) ! self.re8 = re.compile(r'.*(?:gay|stupid|fuck|idiot|imbecile|cretin)', re.I) # h[e|u|a]h ! self.re9 = re.compile(r'h[eua]h', re.I) def unload(self): --- 27,55 ---- # (re|hi|hello|hallo|olá|ola|hola|wb|welcome|good (morning|afternoon|evening)|bom dia|boa tarde|gutten tag) [there|back|everybody|all|guys|folks|people|pessoal|(a|para) todos|pybot] [!|.] ! self.re1 = regexp(r'(?:re|hi|hello|hallo|olá|ola|hola|wb|welcome back|good (?:morning|afternoon|evening)|bom dia|boa tarde|gutten tag)(?: (?:there|everybody|all|guys|folks|people|pessoal|(à|a|para) todos|(?P<nick>\w+)))?') # pybot! ! self.re2 = regexp(r'(?P<nick>\w+)', needpunct=1) ! # [thank[']s|thank you|thx|tnk[']s] ! self.re3 = regexp(r'(?:thank|thx|tnk)(?:\'?s| you)(?: (?P<nick>\w+))?') # are you ok?|how are you [doing]? ! self.re4 = regexp(r'(?:are you ok|how are you(?: doing)?)', question=1) ! # pybot[?] ! self.re5 = regexp(r'', question=1) ! # never mind ! self.re6 = regexp(r'never mind') ! # [very|pretty] (nice|good|great) ! self.re7 = regexp(r'(?:(?:very|pretty) )?(?:nice|good|great)') # (gay|stupid|fuck|idiot|imbecile|cretin) ! self.re8 = regexp(r'.*(?:gay|stupid|fuck|idiot|imbecile|cretin).*') # h[e|u|a]h ! self.re9 = regexp(r'h[eua]h') def unload(self): *************** *** 112,116 **** if self.re9.match(msg.line): ! msg.answer("%:", ["Heh", "Huh"], ["?", "!?", "!?!?", ".."]) return 0 --- 111,115 ---- if self.re9.match(msg.line): ! msg.answer("%:", ["Heh", "Huh"], ["?", "!?", "!?!?"]) return 0 Index: testadora.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/testadora.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** testadora.py 12 May 2003 20:42:21 -0000 1.3 --- testadora.py 24 Aug 2003 19:30:53 -0000 1.4 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, config from string import join - import re import os --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from string import join import os *************** *** 45,49 **** # [show] (compiletime|compile time) [for] <package> ! self.re1 = re.compile(r"(?:show\s+)?compile\s*time\s+(?:for\s+)?(?P<package>\S+)$") # testadora --- 44,48 ---- # [show] (compiletime|compile time) [for] <package> ! self.re1 = regexp(r"(?:show )?compile\s*time (?:for )?(?P<package>\S+)") # testadora Index: threadedexample.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/threadedexample.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** threadedexample.py 12 May 2003 20:42:21 -0000 1.3 --- threadedexample.py 24 Aug 2003 19:30:53 -0000 1.4 *************** *** 17,25 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks import time - import re - HELP = """ This is a module implementation showing how to work with threaded --- 17,23 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import time HELP = """ This is a module implementation showing how to work with threaded *************** *** 39,46 **** # test threaded message ! self.re1 = re.compile(r"test\s+threaded\s+message\s*[.!]*$", re.I) # (start|stop) threaded timer ! self.re2 = re.compile(r"(?P<cmd>start|stop)\s+threaded\s+timer\s*[.!]*$", re.I) mm.register_help(r"threadedexample", HELP, "threadedexample") --- 37,44 ---- # test threaded message ! self.re1 = regexp(r"test threaded message") # (start|stop) threaded timer ! self.re2 = regexp(r"(?P<cmd>start|stop) threaded timer") mm.register_help(r"threadedexample", HELP, "threadedexample") Index: timer.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/timer.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** timer.py 12 May 2003 20:42:21 -0000 1.4 --- timer.py 24 Aug 2003 19:30:54 -0000 1.5 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options from time import time from thread import start_new_thread --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from time import time from thread import start_new_thread Index: uptime.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/uptime.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** uptime.py 12 May 2003 20:42:21 -0000 1.5 --- uptime.py 24 Aug 2003 19:30:54 -0000 1.6 *************** *** 17,24 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options import calendar import time - import re HELP = """ --- 17,23 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import calendar import time HELP = """ *************** *** 34,41 **** # [show|display] uptime ! self.re1 = re.compile(r"(?:(?:show|display)\s+)?uptime\s*[!.?]*$") # reset uptime ! self.re2 = re.compile(r"reset\s+uptime\s*[!.]*$") # uptime --- 33,40 ---- # [show|display] uptime ! self.re1 = regexp(r"(?:(?:show|display) )?uptime") # reset uptime ! self.re2 = regexp(r"reset uptime") # uptime Index: userdata.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/userdata.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** userdata.py 22 Aug 2003 13:22:11 -0000 1.6 --- userdata.py 24 Aug 2003 19:30:54 -0000 1.7 *************** *** 17,23 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, config, db import time - import re HELP_REGISTER = """ --- 17,22 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * import time HELP_REGISTER = """ *************** *** 84,97 **** # ([un]register|ident[ify]) [with] [[nick] <nick> [and]] [password] <passwd> ! self.re1 = re.compile(r"(?P<cmd>(?:un)?register|ident(?:ify)?)\s+(?:with\s+)?(?:(?:nick\s+)?(?P<nick>\S+)\s+(?:and\s+)?)?(?:password\s+)?(?P<passwd>\S+)\s*[!.]?$", re.I) # (set|add) <type> <value> ! self.re2 = re.compile(r"(?P<cmd>set|add)\s+(?P<type>\S+)\s+(?P<value>.+?)\s*$", re.I) # unset <type>|remove <type> <value> ! self.re3 = re.compile(r"unset\s+(?P<type1>\S+)\s*|remove\s+(?P<type2>\S+)\s+(?P<value>.+?)\s*$", re.I) # unident[ify]|forget me ! self.re4 = re.compile(r"unident(?:ify)?|forget\s+me", re.I) # [un]register|identify --- 83,96 ---- # ([un]register|ident[ify]) [with] [[nick] <nick> [and]] [password] <passwd> ! self.re1 = regexp(r"(?P<cmd>(?:un)?register|ident(?:ify)?) (?:with )?(?:(?:nick )?(?P<nick>\S+) (?:and )?)?(?:password )?(?P<passwd>\S+)") # (set|add) <type> <value> ! self.re2 = regexp(r"(?P<cmd>set|add) (?P<type>\S+) (?P<value>.+?)") # unset <type>|remove <type> <value> ! self.re3 = regexp(r"unset (?P<type1>\S+) *|remove (?P<type2>\S+) (?P<value>.+?)") # unident[ify]|forget me ! self.re4 = regexp(r"unident(?:ify)?|forget me") # [un]register|identify Index: xmlrpc.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/xmlrpc.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** xmlrpc.py 12 May 2003 23:02:58 -0000 1.4 --- xmlrpc.py 24 Aug 2003 19:30:54 -0000 1.5 *************** *** 17,26 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import hooks, mm, rm, servers, db from SimpleXMLRPCServer import SimpleXMLRPCServer from types import StringType import xmlrpclib import traceback - import re HELP = """ --- 17,25 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot.locals import * from SimpleXMLRPCServer import SimpleXMLRPCServer from types import StringType import xmlrpclib import traceback HELP = """ *************** *** 80,90 **** # (add|create) xmlrpc user <user> with [pass|password] <passwd> [!.] ! self.re1 = re.compile(r"(?:add|create)\s+xmlrpc\s+user\s+(?P<user>\S+)\s+with\s+(?:password|pass)\s+(?P<passwd>\S+)\s*[.!]*$") # (del|delete|remove) xmlrpc user <user> ! self.re2 = re.compile(r"(?:del|delete|remove)\s+xmlrpc\s+user\s+(?P<user>\S+)\s*[.!]*$") # [don[']t|do not] allow xmlrpc (func[tion]|method) <method> [(to|for) user <user>] [(to|for|on|at) [user|channel] <target>] [[and] [on|at] server <server>] ! self.re3 = re.compile(r"(?P<dont>don'?t\s+|do not\s+)?allow\s+xmlrpc\s+(?:func(?:tion)?|method)\s+(?P<method>\S+)(?:\s+(?:to\s+|for\s+)user\s+(?P<user>\S+))?(?:\s+(?:to|for|on|at)\s+(?:user\s+|channel\s+)?(?P<target>\S+))?(?:\s+(?:and\s+)?(?:on\s+|at\s+)?server\s+(?P<server>\S+))?\s*[.!]*$") # xmlrpc --- 79,89 ---- # (add|create) xmlrpc user <user> with [pass|password] <passwd> [!.] ! self.re1 = regexp(r"(?:add|create) xmlrpc user (?P<user>\S+) with (?:password|pass) (?P<passwd>\S+)") # (del|delete|remove) xmlrpc user <user> ! self.re2 = regexp(r"(?:del|delete|remove) xmlrpc user (?P<user>\S+)") # [don[']t|do not] allow xmlrpc (func[tion]|method) <method> [(to|for) user <user>] [(to|for|on|at) [user|channel] <target>] [[and] [on|at] server <server>] ! self.re3 = regexp(r"(?P<dont>don'?t |do not )?allow xmlrpc (?:func(?:tion)?|method) (?P<method>\S+)(?: (?:to |for )user (?P<user>\S+))?(?: (?:to|for|on|at) (?:user |channel )?(?P<target>\S+))?(?: (?:and )?(?:on |at )?server (?P<server>\S+))?") # xmlrpc |