mirror of
https://github.com/aiogram/aiogram.git
synced 2026-04-08 16:37:47 +00:00
Added full support of Bot API 6.4 (#1088)
* Remove warnings about pytest asyncio mode * Update Bot API to 6.4 * Bump version * Added changelog * Update translations
This commit is contained in:
parent
b93b75804c
commit
730485e43a
239 changed files with 2522 additions and 892 deletions
|
|
@ -36,4 +36,4 @@ __all__ = (
|
|||
)
|
||||
|
||||
__version__ = "3.0.0b7"
|
||||
__api_version__ = "6.3"
|
||||
__api_version__ = "6.4"
|
||||
|
|
|
|||
|
|
@ -33,6 +33,7 @@ from ..methods import (
|
|||
BanChatSenderChat,
|
||||
Close,
|
||||
CloseForumTopic,
|
||||
CloseGeneralForumTopic,
|
||||
CopyMessage,
|
||||
CreateChatInviteLink,
|
||||
CreateForumTopic,
|
||||
|
|
@ -48,6 +49,7 @@ from ..methods import (
|
|||
DeleteWebhook,
|
||||
EditChatInviteLink,
|
||||
EditForumTopic,
|
||||
EditGeneralForumTopic,
|
||||
EditMessageCaption,
|
||||
EditMessageLiveLocation,
|
||||
EditMessageMedia,
|
||||
|
|
@ -71,11 +73,13 @@ from ..methods import (
|
|||
GetUpdates,
|
||||
GetUserProfilePhotos,
|
||||
GetWebhookInfo,
|
||||
HideGeneralForumTopic,
|
||||
LeaveChat,
|
||||
LogOut,
|
||||
PinChatMessage,
|
||||
PromoteChatMember,
|
||||
ReopenForumTopic,
|
||||
ReopenGeneralForumTopic,
|
||||
RestrictChatMember,
|
||||
RevokeChatInviteLink,
|
||||
SendAnimation,
|
||||
|
|
@ -115,6 +119,7 @@ from ..methods import (
|
|||
TelegramMethod,
|
||||
UnbanChatMember,
|
||||
UnbanChatSenderChat,
|
||||
UnhideGeneralForumTopic,
|
||||
UnpinAllChatMessages,
|
||||
UnpinAllForumTopicMessages,
|
||||
UnpinChatMessage,
|
||||
|
|
@ -1103,8 +1108,8 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
self,
|
||||
chat_id: Union[int, str],
|
||||
message_thread_id: int,
|
||||
name: str,
|
||||
icon_custom_emoji_id: str,
|
||||
name: Optional[str] = None,
|
||||
icon_custom_emoji_id: Optional[str] = None,
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
|
|
@ -1112,8 +1117,8 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param message_thread_id: Unique identifier for the target message thread of the forum topic
|
||||
:param name: New topic name, 1-128 characters
|
||||
:param icon_custom_emoji_id: New unique identifier of the custom emoji shown as the topic icon. Use :class:`aiogram.methods.get_forum_topic_icon_stickers.GetForumTopicIconStickers` to get all allowed custom emoji identifiers.
|
||||
:param name: New topic name, 0-128 characters. If not specififed or empty, the current name of the topic will be kept
|
||||
:param icon_custom_emoji_id: New unique identifier of the custom emoji shown as the topic icon. Use :class:`aiogram.methods.get_forum_topic_icon_stickers.GetForumTopicIconStickers` to get all allowed custom emoji identifiers. Pass an empty string to remove the icon. If not specified, the current icon will be kept
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
|
@ -1412,7 +1417,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
ChatMemberBanned,
|
||||
]:
|
||||
"""
|
||||
Use this method to get information about a member of a chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup or channel (in the format :code:`@channelusername`)
|
||||
:param user_id: Unique identifier of the target user
|
||||
|
|
@ -1878,6 +1883,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
reply_to_message_id: Optional[int] = None,
|
||||
|
|
@ -1900,6 +1906,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
:param caption: Animation caption (may also be used when resending animation by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the animation caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the animation needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param reply_to_message_id: If the message is a reply, ID of the original message
|
||||
|
|
@ -1920,6 +1927,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
|
|
@ -1995,6 +2003,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
self,
|
||||
chat_id: Union[int, str],
|
||||
action: str,
|
||||
message_thread_id: Optional[int] = None,
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
|
|
@ -2006,6 +2015,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target channel (in the format :code:`@channelusername`)
|
||||
:param action: Type of action to broadcast. Choose one, depending on what the user is about to receive: *typing* for `text messages <https://core.telegram.org/bots/api#sendmessage>`_, *upload_photo* for `photos <https://core.telegram.org/bots/api#sendphoto>`_, *record_video* or *upload_video* for `videos <https://core.telegram.org/bots/api#sendvideo>`_, *record_voice* or *upload_voice* for `voice notes <https://core.telegram.org/bots/api#sendvoice>`_, *upload_document* for `general files <https://core.telegram.org/bots/api#senddocument>`_, *choose_sticker* for `stickers <https://core.telegram.org/bots/api#sendsticker>`_, *find_location* for `location data <https://core.telegram.org/bots/api#sendlocation>`_, *record_video_note* or *upload_video_note* for `video notes <https://core.telegram.org/bots/api#sendvideonote>`_.
|
||||
:param message_thread_id: Unique identifier for the target message thread; supergroups only
|
||||
:param request_timeout: Request timeout
|
||||
:return: The user will see a 'sending photo' status for the bot.
|
||||
"""
|
||||
|
|
@ -2013,6 +2023,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
call = SendChatAction(
|
||||
chat_id=chat_id,
|
||||
action=action,
|
||||
message_thread_id=message_thread_id,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
|
|
@ -2451,6 +2462,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
reply_to_message_id: Optional[int] = None,
|
||||
|
|
@ -2469,6 +2481,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
:param caption: Photo caption (may also be used when resending photos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the photo caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the photo needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param reply_to_message_id: If the message is a reply, ID of the original message
|
||||
|
|
@ -2485,6 +2498,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
|
|
@ -2682,6 +2696,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
supports_streaming: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
|
|
@ -2705,6 +2720,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
:param caption: Video caption (may also be used when resending videos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the video caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the video needs to be covered with a spoiler animation
|
||||
:param supports_streaming: Pass :code:`True` if the uploaded video is suitable for streaming
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
|
|
@ -2726,6 +2742,7 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
supports_streaming=supports_streaming,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
|
|
@ -3360,3 +3377,96 @@ class Bot(ContextInstanceMixin["Bot"]):
|
|||
png_sticker=png_sticker,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
async def close_general_forum_topic(
|
||||
self,
|
||||
chat_id: Union[int, str],
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
Use this method to close an open 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
||||
call = CloseGeneralForumTopic(
|
||||
chat_id=chat_id,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
async def edit_general_forum_topic(
|
||||
self,
|
||||
chat_id: Union[int, str],
|
||||
name: str,
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
Use this method to edit the name of the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param name: New topic name, 1-128 characters
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
||||
call = EditGeneralForumTopic(
|
||||
chat_id=chat_id,
|
||||
name=name,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
async def hide_general_forum_topic(
|
||||
self,
|
||||
chat_id: Union[int, str],
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
Use this method to hide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. The topic will be automatically closed if it was open. Returns :code:`True` on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
||||
call = HideGeneralForumTopic(
|
||||
chat_id=chat_id,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
async def reopen_general_forum_topic(
|
||||
self,
|
||||
chat_id: Union[int, str],
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
Use this method to reopen a closed 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. The topic will be automatically unhidden if it was hidden. Returns :code:`True` on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
||||
call = ReopenGeneralForumTopic(
|
||||
chat_id=chat_id,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
||||
async def unhide_general_forum_topic(
|
||||
self,
|
||||
chat_id: Union[int, str],
|
||||
request_timeout: Optional[int] = None,
|
||||
) -> bool:
|
||||
"""
|
||||
Use this method to unhide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
:param chat_id: Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)
|
||||
:param request_timeout: Request timeout
|
||||
:return: Returns :code:`True` on success.
|
||||
"""
|
||||
|
||||
call = UnhideGeneralForumTopic(
|
||||
chat_id=chat_id,
|
||||
)
|
||||
return await self(call, request_timeout=request_timeout)
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ class ContentType(str, Enum):
|
|||
VIDEO = "video"
|
||||
VIDEO_NOTE = "video_note"
|
||||
VOICE = "voice"
|
||||
HAS_MEDIA_SPOILER = "has_media_spoiler"
|
||||
CONTACT = "contact"
|
||||
DICE = "dice"
|
||||
GAME = "game"
|
||||
|
|
@ -38,11 +39,15 @@ class ContentType(str, Enum):
|
|||
INVOICE = "invoice"
|
||||
SUCCESSFUL_PAYMENT = "successful_payment"
|
||||
CONNECTED_WEBSITE = "connected_website"
|
||||
WRITE_ACCESS_ALLOWED = "write_access_allowed"
|
||||
PASSPORT_DATA = "passport_data"
|
||||
PROXIMITY_ALERT_TRIGGERED = "proximity_alert_triggered"
|
||||
FORUM_TOPIC_CREATED = "forum_topic_created"
|
||||
FORUM_TOPIC_EDITED = "forum_topic_edited"
|
||||
FORUM_TOPIC_CLOSED = "forum_topic_closed"
|
||||
FORUM_TOPIC_REOPENED = "forum_topic_reopened"
|
||||
GENERAL_FORUM_TOPIC_HIDDEN = "general_forum_topic_hidden"
|
||||
GENERAL_FORUM_TOPIC_UNHIDDEN = "general_forum_topic_unhidden"
|
||||
VIDEO_CHAT_SCHEDULED = "video_chat_scheduled"
|
||||
VIDEO_CHAT_STARTED = "video_chat_started"
|
||||
VIDEO_CHAT_ENDED = "video_chat_ended"
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ from .ban_chat_sender_chat import BanChatSenderChat
|
|||
from .base import Request, Response, TelegramMethod
|
||||
from .close import Close
|
||||
from .close_forum_topic import CloseForumTopic
|
||||
from .close_general_forum_topic import CloseGeneralForumTopic
|
||||
from .copy_message import CopyMessage
|
||||
from .create_chat_invite_link import CreateChatInviteLink
|
||||
from .create_forum_topic import CreateForumTopic
|
||||
|
|
@ -25,6 +26,7 @@ from .delete_sticker_from_set import DeleteStickerFromSet
|
|||
from .delete_webhook import DeleteWebhook
|
||||
from .edit_chat_invite_link import EditChatInviteLink
|
||||
from .edit_forum_topic import EditForumTopic
|
||||
from .edit_general_forum_topic import EditGeneralForumTopic
|
||||
from .edit_message_caption import EditMessageCaption
|
||||
from .edit_message_live_location import EditMessageLiveLocation
|
||||
from .edit_message_media import EditMessageMedia
|
||||
|
|
@ -48,11 +50,13 @@ from .get_sticker_set import GetStickerSet
|
|||
from .get_updates import GetUpdates
|
||||
from .get_user_profile_photos import GetUserProfilePhotos
|
||||
from .get_webhook_info import GetWebhookInfo
|
||||
from .hide_general_forum_topic import HideGeneralForumTopic
|
||||
from .leave_chat import LeaveChat
|
||||
from .log_out import LogOut
|
||||
from .pin_chat_message import PinChatMessage
|
||||
from .promote_chat_member import PromoteChatMember
|
||||
from .reopen_forum_topic import ReopenForumTopic
|
||||
from .reopen_general_forum_topic import ReopenGeneralForumTopic
|
||||
from .restrict_chat_member import RestrictChatMember
|
||||
from .revoke_chat_invite_link import RevokeChatInviteLink
|
||||
from .send_animation import SendAnimation
|
||||
|
|
@ -91,109 +95,115 @@ from .stop_message_live_location import StopMessageLiveLocation
|
|||
from .stop_poll import StopPoll
|
||||
from .unban_chat_member import UnbanChatMember
|
||||
from .unban_chat_sender_chat import UnbanChatSenderChat
|
||||
from .unhide_general_forum_topic import UnhideGeneralForumTopic
|
||||
from .unpin_all_chat_messages import UnpinAllChatMessages
|
||||
from .unpin_all_forum_topic_messages import UnpinAllForumTopicMessages
|
||||
from .unpin_chat_message import UnpinChatMessage
|
||||
from .upload_sticker_file import UploadStickerFile
|
||||
|
||||
__all__ = (
|
||||
"TelegramMethod",
|
||||
"Request",
|
||||
"Response",
|
||||
"GetUpdates",
|
||||
"SetWebhook",
|
||||
"DeleteWebhook",
|
||||
"GetWebhookInfo",
|
||||
"GetMe",
|
||||
"LogOut",
|
||||
"Close",
|
||||
"SendMessage",
|
||||
"ForwardMessage",
|
||||
"CopyMessage",
|
||||
"SendPhoto",
|
||||
"SendAudio",
|
||||
"SendDocument",
|
||||
"SendVideo",
|
||||
"SendAnimation",
|
||||
"SendVoice",
|
||||
"SendVideoNote",
|
||||
"SendMediaGroup",
|
||||
"SendLocation",
|
||||
"EditMessageLiveLocation",
|
||||
"StopMessageLiveLocation",
|
||||
"SendVenue",
|
||||
"SendContact",
|
||||
"SendPoll",
|
||||
"SendDice",
|
||||
"SendChatAction",
|
||||
"GetUserProfilePhotos",
|
||||
"GetFile",
|
||||
"BanChatMember",
|
||||
"UnbanChatMember",
|
||||
"RestrictChatMember",
|
||||
"PromoteChatMember",
|
||||
"SetChatAdministratorCustomTitle",
|
||||
"BanChatSenderChat",
|
||||
"UnbanChatSenderChat",
|
||||
"SetChatPermissions",
|
||||
"ExportChatInviteLink",
|
||||
"CreateChatInviteLink",
|
||||
"EditChatInviteLink",
|
||||
"RevokeChatInviteLink",
|
||||
"ApproveChatJoinRequest",
|
||||
"DeclineChatJoinRequest",
|
||||
"SetChatPhoto",
|
||||
"DeleteChatPhoto",
|
||||
"SetChatTitle",
|
||||
"SetChatDescription",
|
||||
"PinChatMessage",
|
||||
"UnpinChatMessage",
|
||||
"UnpinAllChatMessages",
|
||||
"LeaveChat",
|
||||
"GetChat",
|
||||
"GetChatAdministrators",
|
||||
"GetChatMemberCount",
|
||||
"GetChatMember",
|
||||
"SetChatStickerSet",
|
||||
"DeleteChatStickerSet",
|
||||
"GetForumTopicIconStickers",
|
||||
"CreateForumTopic",
|
||||
"EditForumTopic",
|
||||
"CloseForumTopic",
|
||||
"ReopenForumTopic",
|
||||
"DeleteForumTopic",
|
||||
"UnpinAllForumTopicMessages",
|
||||
"AddStickerToSet",
|
||||
"AnswerCallbackQuery",
|
||||
"SetMyCommands",
|
||||
"AnswerInlineQuery",
|
||||
"AnswerPreCheckoutQuery",
|
||||
"AnswerShippingQuery",
|
||||
"AnswerWebAppQuery",
|
||||
"ApproveChatJoinRequest",
|
||||
"BanChatMember",
|
||||
"BanChatSenderChat",
|
||||
"Close",
|
||||
"CloseForumTopic",
|
||||
"CloseGeneralForumTopic",
|
||||
"CopyMessage",
|
||||
"CreateChatInviteLink",
|
||||
"CreateForumTopic",
|
||||
"CreateInvoiceLink",
|
||||
"CreateNewStickerSet",
|
||||
"DeclineChatJoinRequest",
|
||||
"DeleteChatPhoto",
|
||||
"DeleteChatStickerSet",
|
||||
"DeleteForumTopic",
|
||||
"DeleteMessage",
|
||||
"DeleteMyCommands",
|
||||
"GetMyCommands",
|
||||
"SetChatMenuButton",
|
||||
"GetChatMenuButton",
|
||||
"SetMyDefaultAdministratorRights",
|
||||
"GetMyDefaultAdministratorRights",
|
||||
"EditMessageText",
|
||||
"DeleteStickerFromSet",
|
||||
"DeleteWebhook",
|
||||
"EditChatInviteLink",
|
||||
"EditForumTopic",
|
||||
"EditGeneralForumTopic",
|
||||
"EditMessageCaption",
|
||||
"EditMessageLiveLocation",
|
||||
"EditMessageMedia",
|
||||
"EditMessageReplyMarkup",
|
||||
"StopPoll",
|
||||
"DeleteMessage",
|
||||
"SendSticker",
|
||||
"GetStickerSet",
|
||||
"EditMessageText",
|
||||
"ExportChatInviteLink",
|
||||
"ForwardMessage",
|
||||
"GetChat",
|
||||
"GetChatAdministrators",
|
||||
"GetChatMember",
|
||||
"GetChatMemberCount",
|
||||
"GetChatMenuButton",
|
||||
"GetCustomEmojiStickers",
|
||||
"UploadStickerFile",
|
||||
"CreateNewStickerSet",
|
||||
"AddStickerToSet",
|
||||
"SetStickerPositionInSet",
|
||||
"DeleteStickerFromSet",
|
||||
"SetStickerSetThumb",
|
||||
"AnswerInlineQuery",
|
||||
"AnswerWebAppQuery",
|
||||
"SendInvoice",
|
||||
"CreateInvoiceLink",
|
||||
"AnswerShippingQuery",
|
||||
"AnswerPreCheckoutQuery",
|
||||
"SetPassportDataErrors",
|
||||
"SendGame",
|
||||
"SetGameScore",
|
||||
"GetFile",
|
||||
"GetForumTopicIconStickers",
|
||||
"GetGameHighScores",
|
||||
"GetMe",
|
||||
"GetMyCommands",
|
||||
"GetMyDefaultAdministratorRights",
|
||||
"GetStickerSet",
|
||||
"GetUpdates",
|
||||
"GetUserProfilePhotos",
|
||||
"GetWebhookInfo",
|
||||
"HideGeneralForumTopic",
|
||||
"LeaveChat",
|
||||
"LogOut",
|
||||
"PinChatMessage",
|
||||
"PromoteChatMember",
|
||||
"ReopenForumTopic",
|
||||
"ReopenGeneralForumTopic",
|
||||
"Request",
|
||||
"Response",
|
||||
"RestrictChatMember",
|
||||
"RevokeChatInviteLink",
|
||||
"SendAnimation",
|
||||
"SendAudio",
|
||||
"SendChatAction",
|
||||
"SendContact",
|
||||
"SendDice",
|
||||
"SendDocument",
|
||||
"SendGame",
|
||||
"SendInvoice",
|
||||
"SendLocation",
|
||||
"SendMediaGroup",
|
||||
"SendMessage",
|
||||
"SendPhoto",
|
||||
"SendPoll",
|
||||
"SendSticker",
|
||||
"SendVenue",
|
||||
"SendVideo",
|
||||
"SendVideoNote",
|
||||
"SendVoice",
|
||||
"SetChatAdministratorCustomTitle",
|
||||
"SetChatDescription",
|
||||
"SetChatMenuButton",
|
||||
"SetChatPermissions",
|
||||
"SetChatPhoto",
|
||||
"SetChatStickerSet",
|
||||
"SetChatTitle",
|
||||
"SetGameScore",
|
||||
"SetMyCommands",
|
||||
"SetMyDefaultAdministratorRights",
|
||||
"SetPassportDataErrors",
|
||||
"SetStickerPositionInSet",
|
||||
"SetStickerSetThumb",
|
||||
"SetWebhook",
|
||||
"StopMessageLiveLocation",
|
||||
"StopPoll",
|
||||
"TelegramMethod",
|
||||
"UnbanChatMember",
|
||||
"UnbanChatSenderChat",
|
||||
"UnhideGeneralForumTopic",
|
||||
"UnpinAllChatMessages",
|
||||
"UnpinAllForumTopicMessages",
|
||||
"UnpinChatMessage",
|
||||
"UploadStickerFile",
|
||||
)
|
||||
|
|
|
|||
26
aiogram/methods/close_general_forum_topic.py
Normal file
26
aiogram/methods/close_general_forum_topic.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..client.bot import Bot
|
||||
|
||||
|
||||
class CloseGeneralForumTopic(TelegramMethod[bool]):
|
||||
"""
|
||||
Use this method to close an open 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#closegeneralforumtopic
|
||||
"""
|
||||
|
||||
__returning__ = bool
|
||||
|
||||
chat_id: Union[int, str]
|
||||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
||||
return Request(method="closeGeneralForumTopic", data=data)
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
from typing import TYPE_CHECKING, Any, Dict, Optional, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
|
|
@ -21,10 +21,10 @@ class EditForumTopic(TelegramMethod[bool]):
|
|||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
message_thread_id: int
|
||||
"""Unique identifier for the target message thread of the forum topic"""
|
||||
name: str
|
||||
"""New topic name, 1-128 characters"""
|
||||
icon_custom_emoji_id: str
|
||||
"""New unique identifier of the custom emoji shown as the topic icon. Use :class:`aiogram.methods.get_forum_topic_icon_stickers.GetForumTopicIconStickers` to get all allowed custom emoji identifiers."""
|
||||
name: Optional[str] = None
|
||||
"""New topic name, 0-128 characters. If not specififed or empty, the current name of the topic will be kept"""
|
||||
icon_custom_emoji_id: Optional[str] = None
|
||||
"""New unique identifier of the custom emoji shown as the topic icon. Use :class:`aiogram.methods.get_forum_topic_icon_stickers.GetForumTopicIconStickers` to get all allowed custom emoji identifiers. Pass an empty string to remove the icon. If not specified, the current icon will be kept"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
|
|
|||
28
aiogram/methods/edit_general_forum_topic.py
Normal file
28
aiogram/methods/edit_general_forum_topic.py
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..client.bot import Bot
|
||||
|
||||
|
||||
class EditGeneralForumTopic(TelegramMethod[bool]):
|
||||
"""
|
||||
Use this method to edit the name of the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#editgeneralforumtopic
|
||||
"""
|
||||
|
||||
__returning__ = bool
|
||||
|
||||
chat_id: Union[int, str]
|
||||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
name: str
|
||||
"""New topic name, 1-128 characters"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
||||
return Request(method="editGeneralForumTopic", data=data)
|
||||
|
|
@ -29,7 +29,7 @@ class GetChatMember(
|
|||
]
|
||||
):
|
||||
"""
|
||||
Use this method to get information about a member of a chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#getchatmember
|
||||
"""
|
||||
|
|
|
|||
26
aiogram/methods/hide_general_forum_topic.py
Normal file
26
aiogram/methods/hide_general_forum_topic.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..client.bot import Bot
|
||||
|
||||
|
||||
class HideGeneralForumTopic(TelegramMethod[bool]):
|
||||
"""
|
||||
Use this method to hide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. The topic will be automatically closed if it was open. Returns :code:`True` on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#hidegeneralforumtopic
|
||||
"""
|
||||
|
||||
__returning__ = bool
|
||||
|
||||
chat_id: Union[int, str]
|
||||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
||||
return Request(method="hideGeneralForumTopic", data=data)
|
||||
26
aiogram/methods/reopen_general_forum_topic.py
Normal file
26
aiogram/methods/reopen_general_forum_topic.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..client.bot import Bot
|
||||
|
||||
|
||||
class ReopenGeneralForumTopic(TelegramMethod[bool]):
|
||||
"""
|
||||
Use this method to reopen a closed 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. The topic will be automatically unhidden if it was hidden. Returns :code:`True` on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#reopengeneralforumtopic
|
||||
"""
|
||||
|
||||
__returning__ = bool
|
||||
|
||||
chat_id: Union[int, str]
|
||||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
||||
return Request(method="reopenGeneralForumTopic", data=data)
|
||||
|
|
@ -47,6 +47,8 @@ class SendAnimation(TelegramMethod[Message]):
|
|||
"""Mode for parsing entities in the animation caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details."""
|
||||
caption_entities: Optional[List[MessageEntity]] = None
|
||||
"""A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""Pass :code:`True` if the animation needs to be covered with a spoiler animation"""
|
||||
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
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
from typing import TYPE_CHECKING, Any, Dict, Optional, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
|
|
@ -25,6 +25,8 @@ class SendChatAction(TelegramMethod[bool]):
|
|||
"""Unique identifier for the target chat or username of the target channel (in the format :code:`@channelusername`)"""
|
||||
action: str
|
||||
"""Type of action to broadcast. Choose one, depending on what the user is about to receive: *typing* for `text messages <https://core.telegram.org/bots/api#sendmessage>`_, *upload_photo* for `photos <https://core.telegram.org/bots/api#sendphoto>`_, *record_video* or *upload_video* for `videos <https://core.telegram.org/bots/api#sendvideo>`_, *record_voice* or *upload_voice* for `voice notes <https://core.telegram.org/bots/api#sendvoice>`_, *upload_document* for `general files <https://core.telegram.org/bots/api#senddocument>`_, *choose_sticker* for `stickers <https://core.telegram.org/bots/api#sendsticker>`_, *find_location* for `location data <https://core.telegram.org/bots/api#sendlocation>`_, *record_video_note* or *upload_video_note* for `video notes <https://core.telegram.org/bots/api#sendvideonote>`_."""
|
||||
message_thread_id: Optional[int] = None
|
||||
"""Unique identifier for the target message thread; supergroups only"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
|
|
|||
|
|
@ -39,6 +39,8 @@ class SendPhoto(TelegramMethod[Message]):
|
|||
"""Mode for parsing entities in the photo caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details."""
|
||||
caption_entities: Optional[List[MessageEntity]] = None
|
||||
"""A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""Pass :code:`True` if the photo needs to be covered with a spoiler animation"""
|
||||
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
|
||||
|
|
|
|||
|
|
@ -47,6 +47,8 @@ class SendVideo(TelegramMethod[Message]):
|
|||
"""Mode for parsing entities in the video caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details."""
|
||||
caption_entities: Optional[List[MessageEntity]] = None
|
||||
"""A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""Pass :code:`True` if the video needs to be covered with a spoiler animation"""
|
||||
supports_streaming: Optional[bool] = None
|
||||
"""Pass :code:`True` if the uploaded video is suitable for streaming"""
|
||||
disable_notification: Optional[bool] = None
|
||||
|
|
|
|||
26
aiogram/methods/unhide_general_forum_topic.py
Normal file
26
aiogram/methods/unhide_general_forum_topic.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
from __future__ import annotations
|
||||
|
||||
from typing import TYPE_CHECKING, Any, Dict, Union
|
||||
|
||||
from .base import Request, TelegramMethod
|
||||
|
||||
if TYPE_CHECKING:
|
||||
from ..client.bot import Bot
|
||||
|
||||
|
||||
class UnhideGeneralForumTopic(TelegramMethod[bool]):
|
||||
"""
|
||||
Use this method to unhide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the *can_manage_topics* administrator rights. Returns :code:`True` on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#unhidegeneralforumtopic
|
||||
"""
|
||||
|
||||
__returning__ = bool
|
||||
|
||||
chat_id: Union[int, str]
|
||||
"""Unique identifier for the target chat or username of the target supergroup (in the format :code:`@supergroupusername`)"""
|
||||
|
||||
def build_request(self, bot: Bot) -> Request:
|
||||
data: Dict[str, Any] = self.dict()
|
||||
|
||||
return Request(method="unhideGeneralForumTopic", data=data)
|
||||
|
|
@ -42,9 +42,12 @@ from .force_reply import ForceReply
|
|||
from .forum_topic import ForumTopic
|
||||
from .forum_topic_closed import ForumTopicClosed
|
||||
from .forum_topic_created import ForumTopicCreated
|
||||
from .forum_topic_edited import ForumTopicEdited
|
||||
from .forum_topic_reopened import ForumTopicReopened
|
||||
from .game import Game
|
||||
from .game_high_score import GameHighScore
|
||||
from .general_forum_topic_hidden import GeneralForumTopicHidden
|
||||
from .general_forum_topic_unhidden import GeneralForumTopicUnhidden
|
||||
from .inline_keyboard_button import InlineKeyboardButton
|
||||
from .inline_keyboard_markup import InlineKeyboardMarkup
|
||||
from .inline_query import InlineQuery
|
||||
|
|
@ -140,6 +143,7 @@ from .voice import Voice
|
|||
from .web_app_data import WebAppData
|
||||
from .web_app_info import WebAppInfo
|
||||
from .webhook_info import WebhookInfo
|
||||
from .write_access_allowed import WriteAccessAllowed
|
||||
|
||||
__all__ = (
|
||||
"Animation",
|
||||
|
|
@ -186,9 +190,12 @@ __all__ = (
|
|||
"ForumTopic",
|
||||
"ForumTopicClosed",
|
||||
"ForumTopicCreated",
|
||||
"ForumTopicEdited",
|
||||
"ForumTopicReopened",
|
||||
"Game",
|
||||
"GameHighScore",
|
||||
"GeneralForumTopicHidden",
|
||||
"GeneralForumTopicUnhidden",
|
||||
"InlineKeyboardButton",
|
||||
"InlineKeyboardMarkup",
|
||||
"InlineQuery",
|
||||
|
|
@ -287,6 +294,7 @@ __all__ = (
|
|||
"WebAppData",
|
||||
"WebAppInfo",
|
||||
"WebhookInfo",
|
||||
"WriteAccessAllowed",
|
||||
)
|
||||
|
||||
# Load typing forward refs for every TelegramObject
|
||||
|
|
|
|||
|
|
@ -91,6 +91,10 @@ class Chat(TelegramObject):
|
|||
"""*Optional*. For supergroups, the minimum allowed delay between consecutive messages sent by each unpriviledged user; in seconds. Returned only in :class:`aiogram.methods.get_chat.GetChat`."""
|
||||
message_auto_delete_time: Optional[int] = None
|
||||
"""*Optional*. The time after which all messages sent to the chat will be automatically deleted; in seconds. Returned only in :class:`aiogram.methods.get_chat.GetChat`."""
|
||||
has_aggressive_anti_spam_enabled: Optional[bool] = None
|
||||
"""*Optional*. :code:`True`, if aggressive anti-spam checks are enabled in the supergroup. The field is only available to chat administrators. Returned only in :class:`aiogram.methods.get_chat.GetChat`."""
|
||||
has_hidden_members: Optional[bool] = None
|
||||
"""*Optional*. :code:`True`, if non-administrators can only get the list of bots and administrators in the chat. Returned only in :class:`aiogram.methods.get_chat.GetChat`."""
|
||||
has_protected_content: Optional[bool] = None
|
||||
"""*Optional*. :code:`True`, if messages from the chat can't be forwarded to other chats. Returned only in :class:`aiogram.methods.get_chat.GetChat`."""
|
||||
sticker_set_name: Optional[str] = None
|
||||
|
|
@ -403,6 +407,7 @@ class Chat(TelegramObject):
|
|||
def do(
|
||||
self,
|
||||
action: str,
|
||||
message_thread_id: Optional[int] = None,
|
||||
**kwargs: Any,
|
||||
) -> SendChatAction:
|
||||
"""
|
||||
|
|
@ -420,6 +425,7 @@ class Chat(TelegramObject):
|
|||
Source: https://core.telegram.org/bots/api#sendchataction
|
||||
|
||||
:param action: Type of action to broadcast. Choose one, depending on what the user is about to receive: *typing* for `text messages <https://core.telegram.org/bots/api#sendmessage>`_, *upload_photo* for `photos <https://core.telegram.org/bots/api#sendphoto>`_, *record_video* or *upload_video* for `videos <https://core.telegram.org/bots/api#sendvideo>`_, *record_voice* or *upload_voice* for `voice notes <https://core.telegram.org/bots/api#sendvoice>`_, *upload_document* for `general files <https://core.telegram.org/bots/api#senddocument>`_, *choose_sticker* for `stickers <https://core.telegram.org/bots/api#sendsticker>`_, *find_location* for `location data <https://core.telegram.org/bots/api#sendlocation>`_, *record_video_note* or *upload_video_note* for `video notes <https://core.telegram.org/bots/api#sendvideonote>`_.
|
||||
:param message_thread_id: Unique identifier for the target message thread; supergroups only
|
||||
:return: instance of method :class:`aiogram.methods.send_chat_action.SendChatAction`
|
||||
"""
|
||||
# DO NOT EDIT MANUALLY!!!
|
||||
|
|
@ -430,6 +436,7 @@ class Chat(TelegramObject):
|
|||
return SendChatAction(
|
||||
chat_id=self.id,
|
||||
action=action,
|
||||
message_thread_id=message_thread_id,
|
||||
**kwargs,
|
||||
)
|
||||
|
||||
|
|
@ -499,7 +506,7 @@ class Chat(TelegramObject):
|
|||
|
||||
- :code:`chat_id`
|
||||
|
||||
Use this method to get information about a member of a chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a :class:`aiogram.types.chat_member.ChatMember` object on success.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#getchatmember
|
||||
|
||||
|
|
|
|||
16
aiogram/types/forum_topic_edited.py
Normal file
16
aiogram/types/forum_topic_edited.py
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
from typing import Optional
|
||||
|
||||
from aiogram.types import TelegramObject
|
||||
|
||||
|
||||
class ForumTopicEdited(TelegramObject):
|
||||
"""
|
||||
This object represents a service message about an edited forum topic.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#forumtopicedited
|
||||
"""
|
||||
|
||||
name: Optional[str] = None
|
||||
"""*Optional*. New name of the topic, if it was edited"""
|
||||
icon_custom_emoji_id: Optional[str] = None
|
||||
"""*Optional*. New identifier of the custom emoji shown as the topic icon, if it was edited; an empty string if the icon was removed"""
|
||||
9
aiogram/types/general_forum_topic_hidden.py
Normal file
9
aiogram/types/general_forum_topic_hidden.py
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
from aiogram.types import TelegramObject
|
||||
|
||||
|
||||
class GeneralForumTopicHidden(TelegramObject):
|
||||
"""
|
||||
This object represents a service message about General forum topic hidden in the chat. Currently holds no information.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#generalforumtopichidden
|
||||
"""
|
||||
9
aiogram/types/general_forum_topic_unhidden.py
Normal file
9
aiogram/types/general_forum_topic_unhidden.py
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
from aiogram.types import TelegramObject
|
||||
|
||||
|
||||
class GeneralForumTopicUnhidden(TelegramObject):
|
||||
"""
|
||||
This object represents a service message about General forum topic unhidden in the chat. Currently holds no information.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#generalforumtopicunhidden
|
||||
"""
|
||||
|
|
@ -38,3 +38,5 @@ class InputMediaAnimation(InputMedia):
|
|||
"""*Optional*. Animation height"""
|
||||
duration: Optional[int] = None
|
||||
"""*Optional*. Animation duration in seconds"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""*Optional*. Pass :code:`True` if the animation needs to be covered with a spoiler animation"""
|
||||
|
|
|
|||
|
|
@ -30,3 +30,5 @@ class InputMediaPhoto(InputMedia):
|
|||
"""*Optional*. Mode for parsing entities in the photo caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details."""
|
||||
caption_entities: Optional[List[MessageEntity]] = None
|
||||
"""*Optional*. List of special entities that appear in the caption, which can be specified instead of *parse_mode*"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""*Optional*. Pass :code:`True` if the photo needs to be covered with a spoiler animation"""
|
||||
|
|
|
|||
|
|
@ -40,3 +40,5 @@ class InputMediaVideo(InputMedia):
|
|||
"""*Optional*. Video duration in seconds"""
|
||||
supports_streaming: Optional[bool] = None
|
||||
"""*Optional*. Pass :code:`True` if the uploaded video is suitable for streaming"""
|
||||
has_spoiler: Optional[bool] = None
|
||||
"""*Optional*. Pass :code:`True` if the video needs to be covered with a spoiler animation"""
|
||||
|
|
|
|||
|
|
@ -50,8 +50,11 @@ if TYPE_CHECKING:
|
|||
from .force_reply import ForceReply
|
||||
from .forum_topic_closed import ForumTopicClosed
|
||||
from .forum_topic_created import ForumTopicCreated
|
||||
from .forum_topic_edited import ForumTopicEdited
|
||||
from .forum_topic_reopened import ForumTopicReopened
|
||||
from .game import Game
|
||||
from .general_forum_topic_hidden import GeneralForumTopicHidden
|
||||
from .general_forum_topic_unhidden import GeneralForumTopicUnhidden
|
||||
from .inline_keyboard_markup import InlineKeyboardMarkup
|
||||
from .input_file import InputFile
|
||||
from .input_media import InputMedia
|
||||
|
|
@ -82,6 +85,7 @@ if TYPE_CHECKING:
|
|||
from .video_note import VideoNote
|
||||
from .voice import Voice
|
||||
from .web_app_data import WebAppData
|
||||
from .write_access_allowed import WriteAccessAllowed
|
||||
|
||||
|
||||
class Message(TelegramObject):
|
||||
|
|
@ -155,6 +159,8 @@ class Message(TelegramObject):
|
|||
"""*Optional*. Caption for the animation, audio, document, photo, video or voice"""
|
||||
caption_entities: Optional[List[MessageEntity]] = None
|
||||
"""*Optional*. For messages with a caption, special entities like usernames, URLs, bot commands, etc. that appear in the caption"""
|
||||
has_media_spoiler: Optional[bool] = None
|
||||
"""*Optional*. :code:`True`, if the message media is covered by a spoiler animation"""
|
||||
contact: Optional[Contact] = None
|
||||
"""*Optional*. Message is a shared contact, information about the contact"""
|
||||
dice: Optional[Dice] = None
|
||||
|
|
@ -197,16 +203,24 @@ class Message(TelegramObject):
|
|||
"""*Optional*. Message is a service message about a successful payment, information about the payment. `More about payments » <https://core.telegram.org/bots/api#payments>`_"""
|
||||
connected_website: Optional[str] = None
|
||||
"""*Optional*. The domain name of the website on which the user has logged in. `More about Telegram Login » <https://core.telegram.org/widgets/login>`_"""
|
||||
write_access_allowed: Optional[WriteAccessAllowed] = None
|
||||
"""*Optional*. Service message: the user allowed the bot added to the attachment menu to write messages"""
|
||||
passport_data: Optional[PassportData] = None
|
||||
"""*Optional*. Telegram Passport data"""
|
||||
proximity_alert_triggered: Optional[ProximityAlertTriggered] = None
|
||||
"""*Optional*. Service message. A user in the chat triggered another user's proximity alert while sharing Live Location."""
|
||||
forum_topic_created: Optional[ForumTopicCreated] = None
|
||||
"""*Optional*. Service message: forum topic created"""
|
||||
forum_topic_edited: Optional[ForumTopicEdited] = None
|
||||
"""*Optional*. Service message: forum topic edited"""
|
||||
forum_topic_closed: Optional[ForumTopicClosed] = None
|
||||
"""*Optional*. Service message: forum topic closed"""
|
||||
forum_topic_reopened: Optional[ForumTopicReopened] = None
|
||||
"""*Optional*. Service message: forum topic reopened"""
|
||||
general_forum_topic_hidden: Optional[GeneralForumTopicHidden] = None
|
||||
"""*Optional*. Service message: the 'General' forum topic hidden"""
|
||||
general_forum_topic_unhidden: Optional[GeneralForumTopicUnhidden] = None
|
||||
"""*Optional*. Service message: the 'General' forum topic unhidden"""
|
||||
video_chat_scheduled: Optional[VideoChatScheduled] = None
|
||||
"""*Optional*. Service message: video chat scheduled"""
|
||||
video_chat_started: Optional[VideoChatStarted] = None
|
||||
|
|
@ -328,6 +342,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
allow_sending_without_reply: Optional[bool] = None,
|
||||
|
|
@ -356,6 +371,7 @@ class Message(TelegramObject):
|
|||
:param caption: Animation caption (may also be used when resending animation by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the animation caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the animation needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param allow_sending_without_reply: Pass :code:`True` if the message should be sent even if the specified replied-to message is not found
|
||||
|
|
@ -379,6 +395,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
allow_sending_without_reply=allow_sending_without_reply,
|
||||
|
|
@ -396,6 +413,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
reply_to_message_id: Optional[int] = None,
|
||||
|
|
@ -424,6 +442,7 @@ class Message(TelegramObject):
|
|||
:param caption: Animation caption (may also be used when resending animation by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the animation caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the animation needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param reply_to_message_id: If the message is a reply, ID of the original message
|
||||
|
|
@ -447,6 +466,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
|
|
@ -1463,6 +1483,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
allow_sending_without_reply: Optional[bool] = None,
|
||||
|
|
@ -1487,6 +1508,7 @@ class Message(TelegramObject):
|
|||
:param caption: Photo caption (may also be used when resending photos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the photo caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the photo needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param allow_sending_without_reply: Pass :code:`True` if the message should be sent even if the specified replied-to message is not found
|
||||
|
|
@ -1506,6 +1528,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
allow_sending_without_reply=allow_sending_without_reply,
|
||||
|
|
@ -1519,6 +1542,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
reply_to_message_id: Optional[int] = None,
|
||||
|
|
@ -1543,6 +1567,7 @@ class Message(TelegramObject):
|
|||
:param caption: Photo caption (may also be used when resending photos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the photo caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the photo needs to be covered with a spoiler animation
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
:param reply_to_message_id: If the message is a reply, ID of the original message
|
||||
|
|
@ -1562,6 +1587,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
reply_to_message_id=reply_to_message_id,
|
||||
|
|
@ -2068,6 +2094,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
supports_streaming: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
|
|
@ -2097,6 +2124,7 @@ class Message(TelegramObject):
|
|||
:param caption: Video caption (may also be used when resending videos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the video caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the video needs to be covered with a spoiler animation
|
||||
:param supports_streaming: Pass :code:`True` if the uploaded video is suitable for streaming
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
|
|
@ -2121,6 +2149,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
supports_streaming=supports_streaming,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
|
|
@ -2139,6 +2168,7 @@ class Message(TelegramObject):
|
|||
caption: Optional[str] = None,
|
||||
parse_mode: Optional[str] = UNSET,
|
||||
caption_entities: Optional[List[MessageEntity]] = None,
|
||||
has_spoiler: Optional[bool] = None,
|
||||
supports_streaming: Optional[bool] = None,
|
||||
disable_notification: Optional[bool] = None,
|
||||
protect_content: Optional[bool] = None,
|
||||
|
|
@ -2168,6 +2198,7 @@ class Message(TelegramObject):
|
|||
:param caption: Video caption (may also be used when resending videos by *file_id*), 0-1024 characters after entities parsing
|
||||
:param parse_mode: Mode for parsing entities in the video caption. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.
|
||||
:param caption_entities: A JSON-serialized list of special entities that appear in the caption, which can be specified instead of *parse_mode*
|
||||
:param has_spoiler: Pass :code:`True` if the video needs to be covered with a spoiler animation
|
||||
:param supports_streaming: Pass :code:`True` if the uploaded video is suitable for streaming
|
||||
:param disable_notification: Sends the message `silently <https://telegram.org/blog/channels-2-0#silent-messages>`_. Users will receive a notification with no sound.
|
||||
:param protect_content: Protects the contents of the sent message from forwarding and saving
|
||||
|
|
@ -2192,6 +2223,7 @@ class Message(TelegramObject):
|
|||
caption=caption,
|
||||
parse_mode=parse_mode,
|
||||
caption_entities=caption_entities,
|
||||
has_spoiler=has_spoiler,
|
||||
supports_streaming=supports_streaming,
|
||||
disable_notification=disable_notification,
|
||||
protect_content=protect_content,
|
||||
|
|
|
|||
|
|
@ -17,6 +17,8 @@ class ReplyKeyboardMarkup(MutableTelegramObject):
|
|||
|
||||
keyboard: List[List[KeyboardButton]]
|
||||
"""Array of button rows, each represented by an Array of :class:`aiogram.types.keyboard_button.KeyboardButton` objects"""
|
||||
is_persistent: Optional[bool] = None
|
||||
"""*Optional*. Requests clients to always show the keyboard when the regular keyboard is hidden. Defaults to *false*, in which case the custom keyboard can be hidden and opened with a keyboard icon."""
|
||||
resize_keyboard: Optional[bool] = None
|
||||
"""*Optional*. Requests clients to resize the keyboard vertically for optimal fit (e.g., make the keyboard smaller if there are just two rows of buttons). Defaults to *false*, in which case the custom keyboard is always of the same height as the app's standard keyboard."""
|
||||
one_time_keyboard: Optional[bool] = None
|
||||
|
|
|
|||
9
aiogram/types/write_access_allowed.py
Normal file
9
aiogram/types/write_access_allowed.py
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
from aiogram.types import TelegramObject
|
||||
|
||||
|
||||
class WriteAccessAllowed(TelegramObject):
|
||||
"""
|
||||
This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.
|
||||
|
||||
Source: https://core.telegram.org/bots/api#writeaccessallowed
|
||||
"""
|
||||
Loading…
Add table
Add a link
Reference in a new issue