AIOG-T-20 Add parse mode passing in sendPoll method

This commit is contained in:
Alex Root Junior 2020-05-02 22:27:08 +03:00
parent 572b2db78d
commit 7688033c28
2 changed files with 6 additions and 5 deletions

View file

@ -105,19 +105,19 @@ def prepare_media_file(data: Dict[str, Any], files: Dict[str, InputFile]) -> Non
data["media"]["media"] = f"attach://{tag}"
def prepare_parse_mode(root: Any) -> None:
def prepare_parse_mode(root: Any, parse_mode_property: str = "parse_mode") -> None:
if isinstance(root, list):
for item in root:
prepare_parse_mode(item)
prepare_parse_mode(item, parse_mode_property=parse_mode_property)
return
if root.get("parse_mode"):
if root.get(parse_mode_property):
return
from ..client.bot import Bot
bot = Bot.get_current(no_error=True)
if bot and bot.parse_mode:
root["parse_mode"] = bot.parse_mode
root[parse_mode_property] = bot.parse_mode
return
return

View file

@ -8,7 +8,7 @@ from ..types import (
ReplyKeyboardMarkup,
ReplyKeyboardRemove,
)
from .base import Request, TelegramMethod
from .base import Request, TelegramMethod, prepare_parse_mode
class SendPoll(TelegramMethod[Message]):
@ -61,5 +61,6 @@ class SendPoll(TelegramMethod[Message]):
def build_request(self) -> Request:
data: Dict[str, Any] = self.dict()
prepare_parse_mode(data, parse_mode_property="explanation_parse_mode")
return Request(method="sendPoll", data=data)