@azama2t

Как переслать сообщение юзера в канал?

import telebot

token = '///'
bot = telebot.TeleBot(token)

channel_1_id = -1000000000

@bot.message_handler(content_types='message')
def send(message):
  bot.send_message(chat_id=channel_1_id , text ="любое сообщение (возможно использование нескольких фоток или же одной)")

bot.polling()
  • Вопрос задан
  • 59 просмотров
Пригласить эксперта
Ответы на вопрос 1
@5465
Данный код принимает сообщения от пользователей и пересылает их в канал. Однако, в текущем виде он не предусматривает пересылку фотографий, видео и других медиа-файлов.

Для того, чтобы пересылать не только текстовые сообщения, необходимо внести некоторые изменения в обработчик сообщений. Например, для пересылки фотографий можно использовать метод send_photo бота. Вот пример обработчика, который пересылает все входящие сообщения, включая фотографии:

@bot.message_handler(content_types=['text', 'photo'])
def send(message):
    if message.content_type == 'text':
        bot.send_message(chat_id=channel_1_id, text=message.text)
    elif message.content_type == 'photo':
        photo_file_id = message.photo[-1].file_id
        bot.send_photo(chat_id=channel_1_id, photo=photo_file_id)


В данном обработчике используется условный оператор if для определения типа входящего сообщения. Если тип сообщения - текстовый, то текст пересылается в канал с помощью метода send_message. Если тип сообщения - фотография, то с помощью метода send_photo пересылается сама фотография.

Чтобы протестировать работу бота, необходимо запустить скрипт и отправить ему сообщение или фотографию в Telegram.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы