telegram.CallbackQuery¶
-
class
telegram.
CallbackQuery
(id, from_user, chat_instance, message=None, data=None, inline_message_id=None, game_short_name=None, bot=None, **_kwargs)¶ Bases:
telegram.base.TelegramObject
This object represents an incoming callback query from a callback button in an inline keyboard.
If the button that originated the query was attached to a message sent by the bot, the field
message
will be present. If the button was attached to a message sent via the bot (in inline mode), the fieldinline_message_id
will be present.Objects of this class are comparable in terms of equality. Two objects of this class are considered equal, if their
id
is equal.Note
In Python
from
is a reserved word, usefrom_user
instead.Exactly one of the fields
data
orgame_short_name
will be present.After the user presses an inline button, Telegram clients will display a progress bar until you call
answer
. It is, therefore, necessary to react by callingtelegram.Bot.answer_callback_query
even if no notification to the user is needed (e.g., without specifying any of the optional parameters).If you’re using
Bot.arbitrary_callback_data
,data
may be an instance oftelegram.ext.InvalidCallbackData
. This will be the case, if the data associated with the button triggering thetelegram.CallbackQuery
was already deleted or ifdata
was manipulated by a malicious client.New in version 13.6.
- Parameters
id (
str
) – Unique identifier for this query.from_user (
telegram.User
) – Sender.chat_instance (
str
) – Global identifier, uniquely corresponding to the chat to which the message with the callback button was sent. Useful for high scores in games.message (
telegram.Message
, optional) – Message with the callback button that originated the query. Note that message content and message date will not be available if the message is too old.data (
str
, optional) – Data associated with the callback button. Be aware that a bad client can send arbitrary data in this field.inline_message_id (
str
, optional) – Identifier of the message sent via the bot in inline mode, that originated the query.game_short_name (
str
, optional) – Short name of a Game to be returned, serves as the unique identifier for the gamebot (
telegram.Bot
, optional) – The Bot to use for instance methods.
-
id
¶ Unique identifier for this query.
- Type
str
-
from_user
¶ Sender.
- Type
-
chat_instance
¶ Global identifier, uniquely corresponding to the chat to which the message with the callback button was sent.
- Type
str
-
message
¶ Optional. Message with the callback button that originated the query.
- Type
-
data
¶ Optional. Data associated with the callback button.
- Type
str
|object
-
inline_message_id
¶ Optional. Identifier of the message sent via the bot in inline mode, that originated the query.
- Type
str
-
game_short_name
¶ Optional. Short name of a Game to be returned.
- Type
str
-
bot
¶ The Bot to use for instance methods.
- Type
telegram.Bot
, optional
-
MAX_ANSWER_TEXT_LENGTH
: ClassVar[int] = 200¶ telegram.constants.MAX_ANSWER_CALLBACK_QUERY_TEXT_LENGTH
New in version 13.2.
-
answer
(text=None, show_alert=False, url=None, cache_time=None, timeout=None, api_kwargs=None)¶ Shortcut for:
bot.answer_callback_query(update.callback_query.id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.answer_callback_query()
.- Returns
On success,
True
is returned.- Return type
bool
-
copy_message
(chat_id, caption=None, parse_mode=None, caption_entities=None, disable_notification=None, reply_to_message_id=None, allow_sending_without_reply=None, reply_markup=None, timeout=None, api_kwargs=None, protect_content=None, message_thread_id=None)¶ Shortcut for:
update.callback_query.message.copy( chat_id, from_chat_id=update.message.chat_id, message_id=update.message.message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Message.copy()
.- Returns
On success, returns the MessageId of the sent message.
- Return type
-
classmethod
de_json
(data, bot)¶
-
delete_message
(timeout=None, api_kwargs=None)¶ Shortcut for:
update.callback_query.message.delete(*args, **kwargs)
For the documentation of the arguments, please see
telegram.Message.delete()
.- Returns
On success,
True
is returned.- Return type
bool
-
edit_message_caption
(caption=None, reply_markup=None, timeout=None, parse_mode=None, api_kwargs=None, caption_entities=None)¶ Shortcut for either:
update.callback_query.message.edit_caption(caption, *args, **kwargs)
or:
bot.edit_message_caption(caption=caption inline_message_id=update.callback_query.inline_message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.edit_message_caption()
andtelegram.Message.edit_caption()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
edit_message_live_location
(latitude=None, longitude=None, location=None, reply_markup=None, timeout=None, api_kwargs=None, horizontal_accuracy=None, heading=None, proximity_alert_radius=None)¶ Shortcut for either:
update.callback_query.message.edit_live_location(*args, **kwargs)
or:
bot.edit_message_live_location( inline_message_id=update.callback_query.inline_message_id, *args, **kwargs )
For the documentation of the arguments, please see
telegram.Bot.edit_message_live_location()
andtelegram.Message.edit_live_location()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
edit_message_media
(media=None, reply_markup=None, timeout=None, api_kwargs=None)¶ Shortcut for either:
update.callback_query.message.edit_media(*args, **kwargs)
or:
bot.edit_message_media(inline_message_id=update.callback_query.inline_message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.edit_message_media()
andtelegram.Message.edit_media()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
edit_message_reply_markup
(reply_markup=None, timeout=None, api_kwargs=None)¶ Shortcut for either:
update.callback_query.message.edit_reply_markup( reply_markup=reply_markup, *args, **kwargs )
or:
bot.edit_message_reply_markup inline_message_id=update.callback_query.inline_message_id, reply_markup=reply_markup, *args, **kwargs )
For the documentation of the arguments, please see
telegram.Bot.edit_message_reply_markup()
andtelegram.Message.edit_reply_markup()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
edit_message_text
(text, parse_mode=None, disable_web_page_preview=None, reply_markup=None, timeout=None, api_kwargs=None, entities=None)¶ Shortcut for either:
update.callback_query.message.edit_text(text, *args, **kwargs)
or:
bot.edit_message_text(text, inline_message_id=update.callback_query.inline_message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.edit_message_text()
andtelegram.Message.edit_text()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
get_game_high_scores
(user_id, timeout=None, api_kwargs=None)¶ Shortcut for either:
update.callback_query.message.get_game_high_score(*args, **kwargs)
or:
bot.get_game_high_scores(inline_message_id=update.callback_query.inline_message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.get_game_high_scores()
andtelegram.Message.get_game_high_score()
.- Returns
List[
telegram.GameHighScore
]
-
pin_message
(disable_notification=None, timeout=None, api_kwargs=None)¶ Shortcut for:
update.callback_query.message.pin(*args, **kwargs)
For the documentation of the arguments, please see
telegram.Message.pin()
.- Returns
On success,
True
is returned.- Return type
bool
-
set_game_score
(user_id, score, force=None, disable_edit_message=None, timeout=None, api_kwargs=None)¶ Shortcut for either:
update.callback_query.message.set_game_score(*args, **kwargs)
or:
bot.set_game_score(inline_message_id=update.callback_query.inline_message_id, *args, **kwargs)
For the documentation of the arguments, please see
telegram.Bot.set_game_score()
andtelegram.Message.set_game_score()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
stop_message_live_location
(reply_markup=None, timeout=None, api_kwargs=None)¶ Shortcut for either:
update.callback_query.message.stop_live_location(*args, **kwargs)
or:
bot.stop_message_live_location( inline_message_id=update.callback_query.inline_message_id, *args, **kwargs )
For the documentation of the arguments, please see
telegram.Bot.stop_message_live_location()
andtelegram.Message.stop_live_location()
.- Returns
On success, if edited message is sent by the bot, the edited Message is returned, otherwise
True
is returned.- Return type
-
unpin_message
(timeout=None, api_kwargs=None)¶ Shortcut for:
update.callback_query.message.unpin(*args, **kwargs)
For the documentation of the arguments, please see
telegram.Message.unpin()
.- Returns
On success,
True
is returned.- Return type
bool