Telegram API и Telegram Bot API Как переслать сообщение с чужого канала в свой?
Задача получить сообщение из чужого канала и переслать его в свой.
Bot API не позволяет парсить чужие каналы, поэтому для получения сообщения из канала я использую TLSharp.
Получаю последнее сообщение в канале:
public async Task<TLMessage> GetLastMessage(TLChannel channelFrom)
{
TLChannelMessages resp = (TLChannelMessages)await _client.GetHistoryAsync(new TLInputPeerChannel()
{
ChannelId = channelFrom.Id,
AccessHash = channelFrom.AccessHash ?? 0,
}, limit: 1000);
TLMessage lastMessage = (TLMessage)resp.Messages?.Where(x => x is TLMessage).First();
return lastMessage;
}
Метод возвращает переменную типа TLMessage, в это и есть сообщение.
Провозился весь день, как либо распарсить его не смог.
Нужно это сообщение отравить в свой канал с помощью Bot API.
Обычные сообщения отправляю вот так:
Текстовое сообщение:
TelegramBotClient client = new TelegramBotClient(ApiKey);
await client.SendTextMessageAsync(MyChatId, "Hello World");
Сообщение с медиа:
var photos = post.Photo.Select(x => new InputMediaPhoto(x)).ToList();
botClient = new TelegramBotClient(TelegramToken);
Message[] messages = await botClient.SendMediaGroupAsync(
chatId: Channel,
inputMedia: photos
);
Как можно методу SendMediaGroupAsync передать TLMessage?
Спасибо