diff --git a/pyrogram/methods/decorators/on_error.py b/pyrogram/methods/decorators/on_error.py index d21d75bb..dc192b1e 100644 --- a/pyrogram/methods/decorators/on_error.py +++ b/pyrogram/methods/decorators/on_error.py @@ -24,26 +24,33 @@ from pyrogram.filters import Filter class OnError: - def on_error(self=None, errors=None) -> Callable: + def on_error( + self=None, + errors=None, + group: int = 0, + ) -> Callable: """Decorator for handling new errors. This does the same thing as :meth:`~pyrogram.Client.add_handler` using the - :obj:`~pyrogram.handlers.MessageHandler`. + :obj:`~pyrogram.handlers.ErrorHandler`. Parameters: errors (:obj:`~Exception`, *optional*): Pass one or more errors to allow only a subset of errors to be passed in your function. + + group (``int``, *optional*): + The group identifier, defaults to 0. """ def decorator(func: Callable) -> Callable: if isinstance(self, pyrogram.Client): - self.add_handler(pyrogram.handlers.ErrorHandler(func, errors), 0) + self.add_handler(pyrogram.handlers.ErrorHandler(func, errors), group) elif isinstance(self, Filter) or self is None: if not hasattr(func, "handlers"): func.handlers = [] - func.handlers.append((pyrogram.handlers.ErrorHandler(func, self), 0)) + func.handlers.append((pyrogram.handlers.ErrorHandler(func, self), group)) return func