Add CallbackQuery.answer bound method

This commit is contained in:
Dan 2018-10-09 14:08:01 +02:00
parent 1be144288c
commit acd525294f

View File

@ -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
)