mirror of
https://github.com/aiogram/aiogram.git
synced 2025-12-09 17:33:44 +00:00
Some useful Message edit functions
Message.edit_caption Message.edit_media Message.edit_reply_markup
This commit is contained in:
parent
dd899c9ca0
commit
0045eaca24
1 changed files with 62 additions and 1 deletions
|
|
@ -13,7 +13,7 @@ from .chat import Chat, ChatType
|
||||||
from .contact import Contact
|
from .contact import Contact
|
||||||
from .document import Document
|
from .document import Document
|
||||||
from .game import Game
|
from .game import Game
|
||||||
from .input_media import MediaGroup
|
from .input_media import MediaGroup, InputMedia
|
||||||
from .invoice import Invoice
|
from .invoice import Invoice
|
||||||
from .location import Location
|
from .location import Location
|
||||||
from .message_entity import MessageEntity
|
from .message_entity import MessageEntity
|
||||||
|
|
@ -776,6 +776,67 @@ class Message(base.TelegramObject):
|
||||||
disable_web_page_preview=disable_web_page_preview,
|
disable_web_page_preview=disable_web_page_preview,
|
||||||
reply_markup=reply_markup)
|
reply_markup=reply_markup)
|
||||||
|
|
||||||
|
async def edit_caption(self, caption: base.String,
|
||||||
|
parse_mode: typing.Union[base.String, None] = None,
|
||||||
|
reply_markup=None):
|
||||||
|
"""
|
||||||
|
Use this method to edit captions of messages sent by the bot or via the bot (for inline bots).
|
||||||
|
|
||||||
|
Source: https://core.telegram.org/bots/api#editmessagecaption
|
||||||
|
|
||||||
|
:param caption: New caption of the message
|
||||||
|
:type caption: :obj:`typing.Union[base.String, None]`
|
||||||
|
:param parse_mode: Send Markdown or HTML, if you want Telegram apps to show bold, italic,
|
||||||
|
fixed-width text or inline URLs in your bot's message.
|
||||||
|
:type parse_mode: :obj:`typing.Union[base.String, None]`
|
||||||
|
:param reply_markup: A JSON-serialized object for an inline keyboard
|
||||||
|
:type reply_markup: :obj:`typing.Union[types.InlineKeyboardMarkup, None]`
|
||||||
|
:return: On success, if edited message is sent by the bot, the edited Message is returned,
|
||||||
|
otherwise True is returned.
|
||||||
|
:rtype: :obj:`typing.Union[types.Message, base.Boolean]`
|
||||||
|
"""
|
||||||
|
return await self.bot.edit_message_caption(chat_id=self.chat.id, message_id=self.message_id, caption=caption,
|
||||||
|
parse_mode=parse_mode, reply_markup=reply_markup)
|
||||||
|
|
||||||
|
async def edit_media(self, media: InputMedia, reply_markup=None):
|
||||||
|
"""
|
||||||
|
Use this method to edit audio, document, photo, or video messages.
|
||||||
|
If a message is a part of a message album, then it can be edited only to a photo or a video.
|
||||||
|
Otherwise, message type can be changed arbitrarily.
|
||||||
|
When inline message is edited, new file can't be uploaded.
|
||||||
|
Use previously uploaded file via its file_id or specify a URL.
|
||||||
|
|
||||||
|
On success, if the edited message was sent by the bot,
|
||||||
|
the edited Message is returned, otherwise True is returned.
|
||||||
|
|
||||||
|
Source https://core.telegram.org/bots/api#editmessagemedia
|
||||||
|
|
||||||
|
:param media: A JSON-serialized object for a new media content of the message
|
||||||
|
:type media: :obj:`types.InputMedia`
|
||||||
|
:param reply_markup: A JSON-serialized object for a new inline keyboard
|
||||||
|
:type reply_markup: :obj:`typing.Union[types.InlineKeyboardMarkup, None]`
|
||||||
|
:return: On success, if the edited message was sent by the bot, the edited Message is returned,
|
||||||
|
otherwise True is returned
|
||||||
|
:rtype: :obj:`typing.Union[types.Message, base.Boolean]`
|
||||||
|
"""
|
||||||
|
return await self.bot.edit_message_media(media=media, chat_id=self.chat.id, message_id=self.message_id,
|
||||||
|
reply_markup=reply_markup)
|
||||||
|
|
||||||
|
async def edit_reply_markup(self, reply_markup=None):
|
||||||
|
"""
|
||||||
|
Use this method to edit only the reply markup of messages sent by the bot or via the bot (for inline bots).
|
||||||
|
|
||||||
|
Source: https://core.telegram.org/bots/api#editmessagereplymarkup
|
||||||
|
|
||||||
|
:param reply_markup: A JSON-serialized object for an inline keyboard
|
||||||
|
:type reply_markup: :obj:`typing.Union[types.InlineKeyboardMarkup, None]`
|
||||||
|
:return: On success, if edited message is sent by the bot, the edited Message is returned,
|
||||||
|
otherwise True is returned.
|
||||||
|
:rtype: :obj:`typing.Union[types.Message, base.Boolean]`
|
||||||
|
"""
|
||||||
|
return await self.bot.edit_message_reply_markup(chat_id=self.chat.id, message_id=self.message_id,
|
||||||
|
reply_markup=reply_markup)
|
||||||
|
|
||||||
async def delete(self):
|
async def delete(self):
|
||||||
"""
|
"""
|
||||||
Delete this message
|
Delete this message
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue