Mercurial > xib
diff commands.py @ 153:0a8f96a1d200
added a "debug" command to be able to change the value of Bot.debug without restarting the bot
Signed-off-by: Charly COSTE <changaco@changaco.net>
author | Charly COSTE <changaco@changaco.net> |
---|---|
date | Sun, 17 Jan 2010 22:55:26 +0100 |
parents | 61d7cae1d15d |
children | 63db565438bd |
line wrap: on
line diff
--- a/commands.py +++ b/commands.py @@ -26,7 +26,7 @@ from bridge import Bridge commands = ['xmpp-participants', 'irc-participants', 'xmpp-connections', 'irc-connections', 'connections', 'bridges'] -admin_commands = ['add-bridge', 'add-xmpp-admin', 'change-bridge-mode', 'halt', 'remove-bridge', 'restart-bot', 'restart-bridge', 'stop-bridge'] +admin_commands = ['add-bridge', 'add-xmpp-admin', 'change-bridge-mode', 'debug', 'halt', 'remove-bridge', 'restart-bot', 'restart-bridge', 'stop-bridge'] def execute(bot, command_line, bot_admin, bridge): ret = '' @@ -157,6 +157,28 @@ def connections(bot, command, args_array return irc_connections(bot, 'irc-connections', args_array, bot_admin, bridge)+'\n'+xmpp_connections(bot, 'xmpp-connections', args_array, bot_admin, bridge) +def debug(bot, command, args_array, bot_admin, bridge): + parser = ArgumentParser(prog=command) + parser.add_argument('mode', choices=['on', 'off']) + try: + args = parser.parse_args(args_array) + except ArgumentParser.ParseException as e: + if len(args_array) == 0: + if bot.debug: + return 'Debugging is on' + else: + return 'Debugging is off' + else: + return '\n'+e.args[1] + + if args.mode == 'on': + bot.debug = True + return 'Debugging is now on' + else: + bot.debug = False + return 'Debugging is now off' + + def halt(bot, command, args_array, bot_admin, bridge): bot.stop() return