538f1e3972
- Pyrogram core is now fully asynchronous - Ditched Python 3.5, welcome 3.6 as minimum version. - Moved all types to pyrogram.types - Turned the Filters class into a module (filters) - Moved all filters to pyrogram.filters - Moved all handlers to pyrogram.handlers - Moved all emoji to pyrogram.emoji - Renamed pyrogram.api to pyrogram.raw - Clock is now synced with server's time - Telegram schema updated to Layer 117 - Greatly improved the TL compiler (proper type-constructor hierarchy) - Added "do not edit" warning in generated files - Crypto parts are executed in a thread pool to avoid blocking the event loop - idle() is now a separate function (it doesn't deal with Client instances) - Async storage, async filters and async progress callback (optional, can be sync too) - Added getpass back, for hidden password inputs
21 lines
533 B
ReStructuredText
21 lines
533 B
ReStructuredText
echobot
|
|
=======
|
|
|
|
This simple echo bot replies to every private text message.
|
|
|
|
It uses the @on_message decorator to register a MessageHandler and applies two filters on it:
|
|
Filters.text and Filters.private to make sure it will reply to private text messages only.
|
|
|
|
.. code-block:: python
|
|
|
|
from pyrogram import Client, Filters
|
|
|
|
app = Client("my_account")
|
|
|
|
|
|
@app.on_message(Filters.text & Filters.private)
|
|
def echo(client, message):
|
|
message.reply(message.text)
|
|
|
|
|
|
app.run() # Automatically start() and idle() |