copy_message#

template<class Agent>
api_result<message_id_t, Agent&&> copy_message(Agent &&agent, copy_message_args_t args)#

agent is any object satisfying agent concept.

Use this method to copy messages of any kind. Service messages and invoice messages can’t be copied. The method is analogous to the method forwardMessage, but the copied message doesn’t have a link to the original message. Returns the MessageId of the sent message on success.

struct copy_message_args_t#

Arguments that should be passed to copy_message().

variant_t<integer_t, string_t> chat_id#

Unique identifier for the target chat or username of the target channel (in the format @channelusername)

variant_t<integer_t, string_t> from_chat_id#

Unique identifier for the chat where the original message was sent (or channel username in the format @channelusername)

integer_t message_id#

Message identifier in the chat specified in from_chat_id

optional_t<string_t> caption#

New caption for media, 0-1024 characters after entities parsing. If not specified, the original caption is kept

optional_t<string_t> parse_mode#

Mode for parsing entities in the new caption. See formatting options for more details.

optional_t<array_t<message_entity_t>> caption_entities#

List of special entities that appear in the new caption, which can be specified instead of parse_mode

optional_t<boolean_t> disable_notification#

Sends the message silently. Users will receive a notification with no sound.

optional_t<integer_t> reply_to_message_id#

If the message is a reply, ID of the original message

optional_t<boolean_t> allow_sending_without_reply#

Pass True, if the message should be sent even if the specified replied-to message is not found

optional_t<variant_t<inline_keyboard_markup_t, reply_keyboard_markup_t, reply_keyboard_remove_t, force_reply_t>> reply_markup#

Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.