diff --git a/telebot/__init__.py b/telebot/__init__.py index b13c396..9fd86a2 100644 --- a/telebot/__init__.py +++ b/telebot/__init__.py @@ -2117,6 +2117,7 @@ class TeleBot: message_id: Optional[int]=None, inline_message_id: Optional[str]=None, parse_mode: Optional[str]=None, + caption_entities: Optional[List[types.MessageEntity]]=None, reply_markup: Optional[REPLY_MARKUP_TYPES]=None) -> Union[types.Message, bool]: """ Use this method to edit captions of messages @@ -2131,7 +2132,7 @@ class TeleBot: parse_mode = self.parse_mode if (parse_mode is None) else parse_mode result = apihelper.edit_message_caption(self.token, caption, chat_id, message_id, inline_message_id, - parse_mode, reply_markup) + parse_mode, caption_entities, reply_markup) if type(result) == bool: return result return types.Message.de_json(result) diff --git a/telebot/apihelper.py b/telebot/apihelper.py index 2e7ee2a..7647e12 100644 --- a/telebot/apihelper.py +++ b/telebot/apihelper.py @@ -1123,7 +1123,7 @@ def edit_message_text(token, text, chat_id=None, message_id=None, inline_message def edit_message_caption(token, caption, chat_id=None, message_id=None, inline_message_id=None, - parse_mode=None, reply_markup=None): + parse_mode=None, caption_entities=None,reply_markup=None): method_url = r'editMessageCaption' payload = {'caption': caption} if chat_id: @@ -1134,6 +1134,8 @@ def edit_message_caption(token, caption, chat_id=None, message_id=None, inline_m payload['inline_message_id'] = inline_message_id if parse_mode: payload['parse_mode'] = parse_mode + if caption_entities: + payload['caption_entities'] = json.dumps(types.MessageEntity.to_list_of_dicts(caption_entities)) if reply_markup: payload['reply_markup'] = _convert_markup(reply_markup) return _make_request(token, method_url, params=payload, method='post')