Update SmartPlugins.rst page
This commit is contained in:
parent
35e3471961
commit
2febb53d72
@ -64,8 +64,11 @@ functions. So... What if you could?
|
|||||||
Using Smart Plugins
|
Using Smart Plugins
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
Setting up your Pyrogram project to accommodate Smart Plugins is as easy as creating a folder and putting your files
|
Setting up your Pyrogram project to accommodate Smart Plugins is pretty straightforward:
|
||||||
full of handlers inside.
|
|
||||||
|
#. Create a new folder to store all the plugins (e.g.: "plugins").
|
||||||
|
#. Put your files full of plugins inside.
|
||||||
|
#. Enable plugins in your Client.
|
||||||
|
|
||||||
.. note::
|
.. note::
|
||||||
|
|
||||||
@ -103,16 +106,14 @@ full of handlers inside.
|
|||||||
|
|
||||||
from pyrogram import Client
|
from pyrogram import Client
|
||||||
|
|
||||||
Client("my_account").run()
|
Client("my_account", plugins_dir="plugins").run()
|
||||||
|
|
||||||
The first important thing to note is the ``plugins`` folder, whose name is default and can be changed easily by setting
|
The first important thing to note is the new ``plugins`` folder, whose name is passed to the the ``plugins_dir``
|
||||||
the ``plugins_dir`` parameter when creating a :obj:`Client <pyrogram.Client>`; you can put *any python file* in there
|
parameter when creating a :obj:`Client <pyrogram.Client>` in the ``main.py`` file — you can put *any python file* in
|
||||||
and each file can contain *any decorated function* (handlers) with only one limitation: within a single plugin file you
|
there and each file can contain *any decorated function* (handlers) with only one limitation: within a single plugin
|
||||||
must use different names for each decorated function. Your Pyrogram Client instance (in the ``main.py`` file) will
|
file you must use different names for each decorated function. Your Pyrogram Client instance will **automatically**
|
||||||
**automatically** scan the folder upon creation to search for valid handlers and register them for you.
|
scan the folder upon creation to search for valid handlers and register them for you.
|
||||||
|
|
||||||
Then you'll notice you can now use decorators. That's right, you can apply the usual decorators to your callback
|
Then you'll notice you can now use decorators. That's right, you can apply the usual decorators to your callback
|
||||||
functions in a static way, i.e. **without having the Client instance around**: simply use ``@Client`` (Client class)
|
functions in a static way, i.e. **without having the Client instance around**: simply use ``@Client`` (Client class)
|
||||||
instead of the usual ``@app`` (Client instance) namespace and things will work just the same.
|
instead of the usual ``@app`` (Client instance) namespace and things will work just the same.
|
||||||
|
|
||||||
The ``main.py`` script is now at its bare minimum and cleanest state.
|
|
||||||
|
Loading…
Reference in New Issue
Block a user