Bypass ISP Restrictions, Performance Optimizations and more#
Pyrogram now uses TCPAbridgedO protocol by default. TCPAbridgedO is an Obfuscated packet-level protocol that helps bypass some DPI and thus allowing Pyrogram to work fine even in case your ISP is trying to block Telegram.
The Dispatcher has been reworked and optimized for better performance.
Message.mentioned field and Filters.mentioned filter useful for handling messages that contain mentions to you (contributed by @Furoin in #154).
Filters.chat and Filters.user can now accept “me” and “self” as arguments, thus enabling an easy way to filter yourself and your own chat (contributed by @Furoin in #155 and #157).
Message.download() bound method missing arguments are now added to match Client.download_media() (contributed by @VANKINEENITAWRUN in #156).
Message.edit() bound method to make message edits less verbose code-wise.
Message.empty field to tell empty (deleted or non-existent) messages apart.
Message.service field and a more efficient Filters.service to tell service messages apart.
Message.media field and a more efficient Filters.media to tell media messages apart.
Decorators of different Client instances can now be stacked on top of the same callback function. E.g.:
... @app1.on_message(...) @app2.on_message(...) @app3.on_message(...) def on_message(client, message): ...
Fixed a rare
MESSAGE_IDS_EMPTYerror raised in case of a message replying to another was pinned and the replied message was deleted at the same time.