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
19 lines
566 B
ReStructuredText
19 lines
566 B
ReStructuredText
callback_queries
|
|
================
|
|
|
|
This example shows how to handle callback queries, i.e.: queries coming from inline button presses.
|
|
It uses the @on_callback_query decorator to register a CallbackQueryHandler.
|
|
|
|
.. code-block:: python
|
|
|
|
from pyrogram import Client
|
|
|
|
app = Client("my_bot", bot_token="123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11")
|
|
|
|
|
|
@app.on_callback_query()
|
|
def answer(client, callback_query):
|
|
callback_query.answer(f"Button contains: '{callback_query.data}'", show_alert=True)
|
|
|
|
|
|
app.run() # Automatically start() and idle() |