copyMsg
Метод копирует одно или несколько сообщений. Поддерживает дополнительные параметры (например, изменение подписи).
Параметры метода
| # | Название | Тип | Описание |
|---|---|---|---|
| 1 | msg_ids | int|array|null | ID сообщения или массив ID сообщений. Если null, берется из контекста. |
| 2 | chat_id | int|string|null | Куда копировать. По умолчанию - текущий чат. |
| 3 | from_chat_id | int|string|null | Откуда копировать. По умолчанию - текущий чат. |
| 4 | params | array | Дополнительные параметры (caption, parse_mode, reply_markup, message_thread_id и др.). |
Возвращает
array - массив с ответом от Telegram (результат метода copyMessage или copyMessages).
Примеры использования
1. Простая копия текущего сообщения
Копирует сообщение, на которое триггернулся бот, обратно в этот же чат.
php
$tg->copyMsg();2. Копия в другой канал/чат
Копирует текущее сообщение в канал с ID -100123456789.
php
$tg->copyMsg(chat_id: -100123456789);3. Копия с изменением подписи (caption)
Копирует сообщение и заменяет его текст/подпись.
php
$tg->copyMsg(
chat_id: 12345678,
params: [
'caption' => 'Смотри, какое <b>классное</b> сообщение!',
'parse_mode' => 'HTML',
'reply_markup' => $keyboard // Можно прикрепить новую клавиатуру
]
);4. Массовое копирование
Копирует сообщения с ID 10, 11 и 12 из чата @source_channel в текущий чат.
php
$tg->copyMsg(
msg_ids: [10, 11, 12],
from_chat_id: '@source_channel'
);