implement alert, url, cache_time parameters in ButtonCallback.answer

This commit is contained in:
apepenkov 2023-11-09 21:43:26 +03:00
parent ba0371f89e
commit f2460fa6ba

View File

@ -44,6 +44,9 @@ class ButtonCallback(Event):
async def answer(
self,
text: Optional[str] = None,
alert: bool = False,
url: Optional[str] = None,
cache_time: int = 0,
) -> None:
"""
Answer the callback query.
@ -54,14 +57,23 @@ class ButtonCallback(Event):
:param text:
The text of the message to display to the user, usually as a toast.
:param alert:
If True, the answer will be shown as a pop-up alert that must be dismissed by the user.
:param url:
Url, to which user will be redirected upon pressing the button.
It should be a link to the same bot with ?start=... parameter, or a link to the game.
:param cache_time:
Time in seconds to cache the answer on the client side,
preventing repeated callback queries from being sent to the bot on subsequent button presses.
A cache_time of 0 means each button press will send a callback query to the bot.
"""
await self._client(
functions.messages.set_bot_callback_answer(
alert=False,
alert=alert,
query_id=self._raw.query_id,
message=text,
url=None,
cache_time=0,
url=url,
cache_time=cache_time,
)
)