See :meth:`telegram.TelegramObject.de_json`.
(cls, data: JSONDict, bot: "Bot | None" = None)
| 1069 | |
| 1070 | @classmethod |
| 1071 | def de_json(cls, data: JSONDict, bot: "Bot | None" = None) -> "Poll": |
| 1072 | """See :meth:`telegram.TelegramObject.de_json`.""" |
| 1073 | data = cls._parse_data(data) |
| 1074 | |
| 1075 | # Get the local timezone from the bot if it has defaults |
| 1076 | loc_tzinfo = extract_tzinfo_from_defaults(bot) |
| 1077 | |
| 1078 | data["options"] = de_list_optional(data.get("options"), PollOption, bot) |
| 1079 | data["explanation_entities"] = de_list_optional( |
| 1080 | data.get("explanation_entities"), MessageEntity, bot |
| 1081 | ) |
| 1082 | data["close_date"] = from_timestamp(data.get("close_date"), tzinfo=loc_tzinfo) |
| 1083 | data["question_entities"] = de_list_optional( |
| 1084 | data.get("question_entities"), MessageEntity, bot |
| 1085 | ) |
| 1086 | data["description_entities"] = de_list_optional( |
| 1087 | data.get("description_entities"), MessageEntity, bot |
| 1088 | ) |
| 1089 | data["media"] = de_json_optional(data.get("media"), PollMedia, bot) |
| 1090 | data["explanation_media"] = de_json_optional(data.get("explanation_media"), PollMedia, bot) |
| 1091 | |
| 1092 | return super().de_json(data=data, bot=bot) |
| 1093 | |
| 1094 | def parse_explanation_entity(self, entity: MessageEntity) -> str: |
| 1095 | """Returns the text in :attr:`explanation` from a given :class:`telegram.MessageEntity` of |