Decorators¶
- class pymax.mixins.handler.HandlerMixin(logger)[source]¶
Bases:
ClientProtocol- Parameters:
logger (Logger)
- add_on_start_handler(handler)[source]¶
Добавляет обработчик, вызываемый при старте клиента.
- Parameters:
handler (Callable[[], Any | Awaitable[Any]]) -- Функция или coroutine без аргументов.
- Returns:
Установленный обработчик.
- Return type:
Callable[[], Any | Awaitable[Any]]
- add_raw_receive_handler(handler)[source]¶
Добавляет обработчик для получения необработанных данных от сервера.
- Parameters:
handler (Callable[[dict[str, Any]], Any | Awaitable[Any]]) -- Функция или coroutine с аргументом (data: dict).
- Returns:
Установленный обработчик.
- Return type:
Callable[[dict[str, Any]], Any | Awaitable[Any]]
- add_reaction_change_handler(handler)[source]¶
Добавляет обработчик изменения реакций на сообщения.
- Parameters:
handler (Callable[[str, int, ReactionInfo], Any | Awaitable[Any]]) -- Функция или coroutine с аргументами (message_id: str, chat_id: int, reaction_info: ReactionInfo).
- Returns:
Установленный обработчик.
- Return type:
Callable[[str, int, ReactionInfo], Any | Awaitable[Any]]
- add_scheduled_task(handler, interval)[source]¶
Добавляет периодическую задачу.
- Parameters:
handler (Callable[[], Any | Awaitable[Any]]) -- Функция или coroutine без аргументов.
interval (float) -- Интервал выполнения в секундах.
- Returns:
Установленный обработчик.
- Return type:
Callable[[], Any | Awaitable[Any]]
- channels¶
- chats¶
- contacts¶
- dialogs¶
- first_name¶
- headers¶
- host¶
- is_connected¶
- last_name¶
- me¶
- on_message(filter=None)[source]¶
Декоратор для регистрации обработчика входящих сообщений.
Позволяет установить функцию-обработчик для всех входящих сообщений или только для сообщений, соответствующих заданному фильтру.
- Parameters:
filter (BaseFilter[Message] | None) -- Фильтр для обработки сообщений. По умолчанию None.
- Returns:
Декоратор для функции-обработчика.
- Return type:
Callable
Example:
@client.on_message(Filter.text("hello")) async def handle_hello(message: Message): await client.send_message( chat_id=message.chat_id, text="Hello!" )
- on_message_delete(filter=None)[source]¶
Декоратор для установки обработчика удаленных сообщений.
- Parameters:
filter (BaseFilter[Message] | None) -- Фильтр для обработки сообщений. По умолчанию None.
- Returns:
Декоратор для функции-обработчика.
- Return type:
Callable
- on_message_edit(filter=None)[source]¶
Декоратор для установки обработчика отредактированных сообщений.
- Parameters:
filter (BaseFilter[Message] | None) -- Фильтр для обработки сообщений. По умолчанию None.
- Returns:
Декоратор для функции-обработчика.
- Return type:
Callable
- on_raw_receive(handler)[source]¶
Устанавливает обработчик для получения необработанных данных от сервера.
- Parameters:
handler (Callable[[dict[str, Any]], Any | Awaitable[Any]]) -- Функция или coroutine с аргументом (data: dict).
- Returns:
Установленный обработчик.
- Return type:
Callable[[dict[str, Any]], Any | Awaitable[Any]]
- on_reaction_change(handler)[source]¶
Устанавливает обработчик изменения реакций на сообщения.
- Parameters:
handler (Callable[[str, int, ReactionInfo], Any | Awaitable[Any]]) -- Функция или coroutine с аргументами (message_id: str, chat_id: int, reaction_info: ReactionInfo).
- Returns:
Установленный обработчик.
- Return type:
Callable[[str, int, ReactionInfo], Any | Awaitable[Any]]
- on_start(handler)[source]¶
Устанавливает обработчик, вызываемый при старте клиента.
- Parameters:
handler (Callable[[], Any | Awaitable[Any]]) -- Функция или coroutine без аргументов.
- Returns:
Установленный обработчик.
- Return type:
Callable[[], Any | Awaitable[Any]]
- phone¶
- port¶
- proxy¶
- reconnect¶
- registration¶
- task(seconds, minutes=0, hours=0)[source]¶
Декоратор для планирования периодической задачи.
- Parameters:
seconds (float) -- Интервал выполнения в секундах.
minutes (float) -- Интервал выполнения в минутах. По умолчанию 0.
hours (float) -- Интервал выполнения в часах. По умолчанию 0.
- Returns:
Декоратор для функции-обработчика.
- Return type:
Callable[[], Any | Awaitable[Any]]
Example:
@client.task(seconds=10) async def task(): await client.send_message(chat_id=123, text="Hello!")
- uri¶