
    i}
                     D    S SK r S SKJrJrJrJr  S SKJr   " S S5      rg)    N)StartHandlerStopHandlerConnectHandlerDisconnectHandler)Handlerc                   0    \ rS rSr S
SSSSS\4S jjrSrg	)
AddHandler   selfzpyrogram.Clienthandlerr   groupc                    [        U[        5      (       a  UR                  U l        X4$ [        U[        5      (       a  UR                  U l        X4$ [        U[        5      (       a  UR                  U l        X4$ [        U[        5      (       a  UR                  U l	        X4$ U R                  R                  X5        X4$ )a  Register an update handler.

You can register multiple handlers, but at most one handler within a group will be used for a single update.
To handle the same update more than once, register your handler using a different group id (lower group id
== higher priority). This mechanism is explained in greater details at
:doc:`More on Updates <../../topics/more-on-updates>`.

Parameters:
    handler (``Handler``):
        The handler to be registered.

    group (``int``, *optional*):
        The group identifier, defaults to 0.

Returns:
    ``tuple``: A tuple consisting of *(handler, group)*.

Example:
    .. code-block:: python

        from pyrogram import Client
        from pyrogram.handlers import MessageHandler

        async def hello(client, message):
            print(message)

        app = Client("my_account")

        app.add_handler(MessageHandler(hello))

        app.run()
)
isinstancer   callbackstart_handlerr   stop_handlerr   connect_handlerr   disconnect_handler
dispatcheradd_handler)r   r   r   s      S/app/mltbenv/lib/python3.13/site-packages/pyrogram/methods/utilities/add_handler.pyr   AddHandler.add_handler   s    J g|,,!(!1!1D ~ -- ' 0 0D ~ 00#*#3#3D  ~ !233&-&6&6D# ~ OO''7~    )r   r   r   r   N)r   )__name__
__module____qualname____firstlineno__intr   __static_attributes__ r   r   r	   r	      s+     000 0 0r   r	   )	pyrogrampyrogram.handlersr   r   r   r   pyrogram.handlers.handlerr   r	   r    r   r   <module>r$      s   &  Z Z -1 1r   