GiftInfo¶
- class telegram.GiftInfo(gift, owned_gift_id=None, convert_star_count=None, prepaid_upgrade_star_count=None, can_be_upgraded=None, text=None, entities=None, is_private=None, *, api_kwargs=None)[source]¶
Bases:
telegram.TelegramObject
Describes a service message about a regular gift that was sent or received.
Objects of this class are comparable in terms of equality. Two objects of this class are considered equal if their
gift
is equal.Available In
Added in version 22.1.
- Parameters:
owned_gift_id (
str
, optional) – Unique identifier of the received gift for the bot; only present for gifts received on behalf of business accountsconvert_star_count (
int
, optional) – the receiver by converting the gift; omitted if conversion to Telegram Stars is impossibleprepaid_upgrade_star_count (
int
, optional) – Number of Telegram Stars that were prepaid by the sender for the ability to upgrade the giftcan_be_upgraded (
bool
, optional) –True
, if the gift can be upgraded to a unique gift.text (
str
, optional) – Text of the message that was added to the gift.entities (Sequence[
telegram.MessageEntity
], optional) – Special entities that appear in the text.is_private (
bool
, optional) –True
, if the sender and gift text are shown only to the gift receiver; otherwise, everyone will be able to see them.
- owned_gift_id[source]¶
Optional. Unique identifier of the received gift for the bot; only present for gifts received on behalf of business accounts
- Type:
- convert_star_count[source]¶
Optional. Number of Telegram Stars that can be claimed by the receiver by converting the gift; omitted if conversion to Telegram Stars is impossible
- Type:
- prepaid_upgrade_star_count[source]¶
Optional. Number of Telegram Stars that were prepaid by the sender for the ability to upgrade the gift
- Type:
- entities[source]¶
Optional. Special entities that appear in the text.
- Type:
Sequence[
telegram.MessageEntity
]
- is_private[source]¶
Optional.
True
, if the sender and gift text are shown only to the gift receiver; otherwise, everyone will be able to see them.- Type:
- parse_entities(types=None)[source]¶
Returns a
dict
that mapstelegram.MessageEntity
tostr
. It contains entities from this gift info’s text 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
entities
attribute, since it calculates the correct substring from the message text based on UTF-16 codepoints. Seeparse_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
]- Raises:
RuntimeError – If the gift info has no text.
- parse_entity(entity)[source]¶
Returns the text in
text
from a giventelegram.MessageEntity
ofentities
.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 toentities
.- Returns:
The text of the given entity.
- Return type:
- Raises:
RuntimeError – If the gift info has no text.