Metadata-Version: 2.1
Name: pyromod
Version: 0.0.2
Summary: A monkeypatcher add-on for Pyrogram
Home-page: https://github.com/usernein/pyromod
Author: Cezar H.
License: LGPLv3+
Description: # pyromod
        A monkeypatcher add-on for Pyrogram
        
        ## Introduction
        pyromod is a compilation of utils i developed for extend my personal use of Pyrogram. Then i started to use it and more bots and now i published it to make it easier to be installed in new projects.
        It works *together* with pyrogram, this is *not* a fork nor modded version. It does monkey patching to add features to Pyrogram classes.
        
        IMPORTANT: you should have installed asyncio pyrogram.
        
        ## Usage
        Import `pyromod` at least one time in your script, so you'll be able to use modified pyrogram in all files of the same proccess. Example:
        ```python
        # config.py
        import pyromod.listen
        from pyrogram import Client
        
        app = Client('my_session')
        ```
        ```python
        # any other .py
        from config import app
        # no need to import pyromod again, pyrogram is already monkeypatched globally (at the same proccess)
        ```
        
        I separated the patches between packages to allow you to import only what you want. The `__init__.py` of each package does the monkeypatch automatically as soon as they are imported (except for `pyromod.utils`, which provides classes and functions that should be explicitely imported).
        
        ### `pyromod.listen`
        Just import it, it will automatically do the monkeypatch and you'll get these new methods:
        - `await pyrogram.Client.listen(chat_id, filters=None, timeout=30)`
        Awaits for a new message in the specified chat and returns it
        You can pass Update Filters to the filters parameter just like you do for the update handlers. e.g. `filters=Filters.photo & Filters.bot`
        
        - `await pyrogram.Client.ask(text, chat_id, filters=None, timeout=30)`
        Same of `.listen()` above, but sends a message before awaiting
        You can pass custom parameters to its send_message() call. Check the example below.
        
        - The bound methods `Chat.listen`, `User.listen`, `Chat.ask` and `User.ask`
        
        Example:
        ```python
        from pyromod import listen # or import pyromod.listen
        from pyrogram import Client
        client = Client(...)
        ...
            answer = await client.ask(chat_id, '*Send me your name:*', parse_mode='Markdown')
            await client.send_message(chat_id, f'Your name is: {answer.text}')    
        ```
        
        ### Copyright & License
        This project may include snippets of Pyrogram code
        - Pyrogram - Telegram MTProto API Client Library for Python
        - Copyright (C) 2017-2020 Dan <<https://github.com/delivrance>>
        
        - Licensed under the terms of the [GNU Lesser General Public License v3 or later (LGPLv3+)](COPYING.lesser)
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
