mirror of
https://github.com/aiogram/aiogram.git
synced 2025-12-11 18:01:04 +00:00
* Added support of Bot API 6.2 * Added changelog * Update tests * Update API version * Update dependencies, pre-commit config * Added pytest config
39 lines
1.7 KiB
Python
39 lines
1.7 KiB
Python
from __future__ import annotations
|
|
|
|
from typing import TYPE_CHECKING, Any, Dict, Optional
|
|
|
|
from ..types import InlineKeyboardMarkup, Message
|
|
from .base import Request, TelegramMethod
|
|
|
|
if TYPE_CHECKING:
|
|
from ..client.bot import Bot
|
|
|
|
|
|
class SendGame(TelegramMethod[Message]):
|
|
"""
|
|
Use this method to send a game. On success, the sent :class:`aiogram.types.message.Message` is returned.
|
|
|
|
Source: https://core.telegram.org/bots/api#sendgame
|
|
"""
|
|
|
|
__returning__ = Message
|
|
|
|
chat_id: int
|
|
"""Unique identifier for the target chat"""
|
|
game_short_name: str
|
|
"""Short name of the game, serves as the unique identifier for the game. Set up your games via `@BotFather <https://t.me/botfather>`_."""
|
|
disable_notification: Optional[bool] = None
|
|
"""Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound."""
|
|
protect_content: Optional[bool] = None
|
|
"""Protects the contents of the sent message from forwarding and saving"""
|
|
reply_to_message_id: Optional[int] = None
|
|
"""If the message is a reply, ID of the original message"""
|
|
allow_sending_without_reply: Optional[bool] = None
|
|
"""Pass :code:`True` if the message should be sent even if the specified replied-to message is not found"""
|
|
reply_markup: Optional[InlineKeyboardMarkup] = None
|
|
"""A JSON-serialized object for an `inline keyboard <https://core.telegram.org/bots#inline-keyboards-and-on-the-fly-updating>`_. If empty, one 'Play game_title' button will be shown. If not empty, the first button must launch the game."""
|
|
|
|
def build_request(self, bot: Bot) -> Request:
|
|
data: Dict[str, Any] = self.dict()
|
|
|
|
return Request(method="sendGame", data=data)
|