diff --git a/pyrogram/client/types/bots/callback_query.py b/pyrogram/client/types/bots/callback_query.py index 76f463ad..083ab58a 100644 --- a/pyrogram/client/types/bots/callback_query.py +++ b/pyrogram/client/types/bots/callback_query.py @@ -71,3 +71,45 @@ class CallbackQuery(Object): self.chat_instance = chat_instance # string self.data = data # flags.2?string self.game_short_name = game_short_name # flags.3?string + + def answer(self, text: str = None, show_alert: bool = None, url: str = None, cache_time: int = 0): + """Use this method as a shortcut for: + + .. code-block:: python + + client.answer_callback_query( + callback_query.id, + text="Hello", + show_alert=True + ) + + Example: + .. code-block:: python + + callback_query.answer("Hello", show_alert=True) + + Args: + text (``str``): + Text of the notification. If not specified, nothing will be shown to the user, 0-200 characters. + + show_alert (``bool``): + If true, an alert will be shown by the client instead of a notification at the top of the chat screen. + Defaults to False. + + url (``str``): + URL that will be opened by the user's client. + If you have created a Game and accepted the conditions via @Botfather, specify the URL that opens your + game – note that this will only work if the query comes from a callback_game button. + Otherwise, you may use links like t.me/your_bot?start=XXXX that open your bot with a parameter. + + cache_time (``int``): + The maximum amount of time in seconds that the result of the callback query may be cached client-side. + Telegram apps will support caching starting in version 3.14. Defaults to 0. + """ + return self._client.answer_callback_query( + callback_query_id=self.id, + text=text, + show_alert=show_alert, + url=url, + cache_time=cache_time + )