Updated/better command error handling

This commit is contained in:
Twentysix 2016-06-13 23:32:20 +02:00
parent aefd7c4984
commit c9e948ae26

14
red.py
View File

@ -2,7 +2,7 @@ from discord.ext import commands
import discord import discord
from cogs.utils.settings import Settings from cogs.utils.settings import Settings
from cogs.utils.dataIO import dataIO from cogs.utils.dataIO import dataIO
import json from cogs.utils.chat_formatting import inline
import asyncio import asyncio
import os import os
import time import time
@ -79,7 +79,17 @@ async def on_command_error(error, ctx):
elif isinstance(error, commands.BadArgument): elif isinstance(error, commands.BadArgument):
await send_cmd_help(ctx) await send_cmd_help(ctx)
elif isinstance(error, commands.DisabledCommand): elif isinstance(error, commands.DisabledCommand):
await bot.send_message(ctx.message.channel, "That command is disabled.") await bot.send_message(ctx.message.channel,
"That command is disabled.")
elif isinstance(error, commands.CommandInvokeError):
logger.exception("Exception in command '{}'".format(
ctx.command.qualified_name), exc_info=error.original)
oneliner = "Error in command '{}' - {}: {}".format(
ctx.command.qualified_name, type(error.original).__name__,
str(error.original))
await ctx.bot.send_message(ctx.message.channel, inline(oneliner))
else:
logger.exception(type(error).__name__, exc_info=error)
async def send_cmd_help(ctx): async def send_cmd_help(ctx):
if ctx.invoked_subcommand: if ctx.invoked_subcommand: