Improved basic command error handling
This commit is contained in:
		| @@ -1,4 +1,5 @@ | ||||
| import datetime | ||||
| import uuid | ||||
|  | ||||
| from cpl_core.time import TimeFormatSettings | ||||
| from cpl_discord.service import DiscordBotServiceABC | ||||
| @@ -34,6 +35,8 @@ class BaseOnCommandErrorEvent(OnCommandErrorABC): | ||||
|  | ||||
|     async def on_command_error(self, ctx: Context, error: CommandError): | ||||
|         error = getattr(error, 'original', error) | ||||
|         uid = uuid.uuid4() | ||||
|         self._logger.error(__name__, f'Got error: {type(error).__name__} UID: {uid}') | ||||
|  | ||||
|         # Todo: translate error messages !!! | ||||
|         if isinstance(error, commands.MissingRequiredArgument): | ||||
| @@ -130,11 +133,13 @@ class BaseOnCommandErrorEvent(OnCommandErrorABC): | ||||
|             await self._messenger.send_ctx_msg(ctx, 'Fehler: Erweiterung ist fehlgeschlagen!', without_tracking=True) | ||||
|  | ||||
|         else: | ||||
|             await self._messenger.send_ctx_msg(ctx, self._t.transform('common.errors.command_error'), without_tracking=True) | ||||
|             message = self._t.transform('modules.base.technician_command_error_message').format( | ||||
|                 ctx.command, | ||||
|                 ctx.author, | ||||
|                 error, | ||||
|                 datetime.datetime.now().strftime(self._time_format_settings.date_time_format) | ||||
|                 datetime.datetime.now().strftime(self._time_format_settings.date_time_format), | ||||
|                 uid | ||||
|             ) | ||||
|             for t in self._bot_settings.technicians: | ||||
|                 member = self._bot.get_user(t) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user