61 lines
2.2 KiB
ReStructuredText
61 lines
2.2 KiB
ReStructuredText
|
inline_queries
|
||
|
==============
|
||
|
|
||
|
This example shows how to handle inline queries.
|
||
|
|
||
|
Two results are generated when users invoke the bot inline mode, e.g.: @pyrogrambot hi.
|
||
|
It uses the @on_inline_query decorator to register an InlineQueryHandler.
|
||
|
|
||
|
.. code-block:: python
|
||
|
|
||
|
from pyrogram import (
|
||
|
Client, InlineQueryResultArticle, InputTextMessageContent, InlineKeyboardMarkup, InlineKeyboardButton
|
||
|
)
|
||
|
|
||
|
app = Client("my_bot", bot_token="123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11")
|
||
|
|
||
|
|
||
|
@app.on_inline_query()
|
||
|
def answer(client, inline_query):
|
||
|
inline_query.answer(
|
||
|
results=[
|
||
|
InlineQueryResultArticle(
|
||
|
title="Installation",
|
||
|
input_message_content=InputTextMessageContent(
|
||
|
"Here's how to install **Pyrogram**"
|
||
|
),
|
||
|
url="https://docs.pyrogram.org/intro/install",
|
||
|
description="How to install Pyrogram",
|
||
|
thumb_url="https://i.imgur.com/JyxrStE.png",
|
||
|
reply_markup=InlineKeyboardMarkup(
|
||
|
[
|
||
|
[InlineKeyboardButton(
|
||
|
"Open website",
|
||
|
url="https://docs.pyrogram.org/intro/install"
|
||
|
)]
|
||
|
]
|
||
|
)
|
||
|
),
|
||
|
InlineQueryResultArticle(
|
||
|
title="Usage",
|
||
|
input_message_content=InputTextMessageContent(
|
||
|
"Here's how to use **Pyrogram**"
|
||
|
),
|
||
|
url="https://docs.pyrogram.org/start/invoking",
|
||
|
description="How to use Pyrogram",
|
||
|
thumb_url="https://i.imgur.com/JyxrStE.png",
|
||
|
reply_markup=InlineKeyboardMarkup(
|
||
|
[
|
||
|
[InlineKeyboardButton(
|
||
|
"Open website",
|
||
|
url="https://docs.pyrogram.org/start/invoking"
|
||
|
)]
|
||
|
]
|
||
|
)
|
||
|
)
|
||
|
],
|
||
|
cache_time=1
|
||
|
)
|
||
|
|
||
|
|
||
|
app.run() # Automatically start() and idle()
|