Errors
matrix.py uses a structured exception hierarchy so you can catch errors at exactly the right level of specificity. All library exceptions inherit from MatrixError.
from matrix.errors import CommandNotFoundError, CooldownError
@bot.error
async def on_error(ctx, error):
if isinstance(error, CooldownError):
await ctx.reply(f"Slow down! Retry in {error.retry:.1f}s.")
elif isinstance(error, CommandNotFoundError):
await ctx.reply("Unknown command.")
else:
raise error
matrix.errors
Callback
module-attribute
Callback = Callable[..., Coroutine[Any, Any, Any]]
MatrixError
Bases: Exception
MatrixApiError
MatrixApiError(message, *, retry_after_ms=None)
Bases: MatrixError
Source code in matrix/errors.py
17 18 19 | |
retry_after_ms
instance-attribute
retry_after_ms = retry_after_ms
RoomNotFoundError
Bases: MatrixError
RegistryError
Bases: MatrixError
AlreadyRegisteredError
AlreadyRegisteredError(entry)
Bases: RegistryError
Source code in matrix/errors.py
31 32 33 34 | |
CommandError
Bases: MatrixError
CommandNotFoundError
CommandNotFoundError(cmd)
Bases: CommandError
Source code in matrix/errors.py
42 43 | |
CommandAlreadyRegisteredError
CommandAlreadyRegisteredError(cmd)
Bases: CommandError
Source code in matrix/errors.py
47 48 | |
MissingArgumentError
MissingArgumentError(param)
Bases: CommandError
Source code in matrix/errors.py
52 53 | |
CheckError
CheckError(cmd, check)
Bases: CommandError
Source code in matrix/errors.py
57 58 | |
GroupError
Bases: CommandError
ConfigError
ConfigError(error)
Bases: MatrixError
Source code in matrix/errors.py
66 67 | |
CooldownError
CooldownError(cmd, check, retry)
Bases: CheckError
Source code in matrix/errors.py
71 72 73 | |
retry
instance-attribute
retry = retry