telegram.Game¶
-
class
telegram.
Game
(title, description, photo, text=None, text_entities=None, animation=None, **_kwargs)¶ Bases:
telegram.base.TelegramObject
This object represents a game. Use BotFather to create and edit games, their short names will act as unique identifiers.
Objects of this class are comparable in terms of equality. Two objects of this class are considered equal, if their
title
,description
andphoto
are equal.- Parameters
title (
str
) – Title of the game.description (
str
) – Description of the game.photo (List[
telegram.PhotoSize
]) – Photo that will be displayed in the game message in chats.text (
str
, optional) – Brief description of the game or high scores included in the game message. Can be automatically edited to include current high scores for the game when the bot callstelegram.Bot.set_game_score()
, or manually edited usingtelegram.Bot.edit_message_text()
. 0-4096 characters. Also found astelegram.constants.MAX_MESSAGE_LENGTH
.text_entities (List[
telegram.MessageEntity
], optional) – Special entities that appear in text, such as usernames, URLs, bot commands, etc.animation (
telegram.Animation
, optional) –Animation that will be displayed in the game message in chats. Upload via BotFather.
-
title
¶ Title of the game.
- Type
str
-
description
¶ Description of the game.
- Type
str
-
photo
¶ Photo that will be displayed in the game message in chats.
- Type
List[
telegram.PhotoSize
]
-
text
¶ Optional. Brief description of the game or high scores included in the game message. Can be automatically edited to include current high scores for the game when the bot calls
telegram.Bot.set_game_score()
, or manually edited usingtelegram.Bot.edit_message_text()
.- Type
str
-
text_entities
¶ Optional. Special entities that appear in text, such as usernames, URLs, bot commands, etc.
- Type
List[
telegram.MessageEntity
]
-
animation
¶ Optional. Animation that will be displayed in the game message in chats. Upload via BotFather.
- Type
-
classmethod
de_json
(data, bot)¶
-
parse_text_entities
(types=None)¶ Returns a
dict
that mapstelegram.MessageEntity
tostr
. It contains entities from this message filtered by theirtype
attribute as the key, and the text that each entity belongs to as the value of thedict
.Note
This method should always be used instead of the
text_entities
attribute, since it calculates the correct substring from the message text based on UTF-16 codepoints. Seeparse_text_entity
for more info.- Parameters
types (List[
str
], optional) – List ofMessageEntity
types as strings. If thetype
attribute of an entity is contained in this list, it will be returned. Defaults totelegram.MessageEntity.ALL_TYPES
.- Returns
A dictionary of entities mapped to the text that belongs to them, calculated based on UTF-16 codepoints.
- Return type
Dict[
telegram.MessageEntity
,str
]
-
parse_text_entity
(entity)¶ Returns the text from a given
telegram.MessageEntity
.Note
This method is present because Telegram calculates the offset and length in UTF-16 codepoint pairs, which some versions of Python don’t handle automatically. (That is, you can’t just slice
Message.text
with the offset and length.)- Parameters
entity (
telegram.MessageEntity
) – The entity to extract the text from. It must be an entity that belongs to this message.- Returns
The text of the given entity.
- Return type
str
- Raises
RuntimeError – If this game has no text.
-
to_dict
()¶