Загрузка...

Как сделать чтобы бот реагировал на свое же сообщение?

Тема в разделе Python создана пользователем Окулист 29 ноя 2024. 274 просмотра

  1. Окулист
    Окулист Автор темы 29 ноя 2024 Мы вас пока лечим 249 18 ноя 2022
     
  2. Киана
    Вырежи функцию с установкой эмоджи на aiogram и перепиши используя гпт на telebot, если есть вообще такое
     
  3. Shkiper
    Shkiper 29 ноя 2024 220 14 июл 2017
    Чтобы ваш бот в Telegram реагировал на свое сообщение, вы можете использовать метод add_reaction Telegram Bot API (доступно с API версии 6.7). Вот пример на Python с использованием библиотеки aiogram:
    Пример кода:

    pythonКопировать код
    from aiogram import Bot, Dispatcher, types
    from aiogram.utils import executor

    # Вставьте токен вашего бота
    TOKEN = "ВАШ_ТОКЕН_БОТА"

    bot = Bot(token=TOKEN)
    dp = Dispatcher(bot)

    @dp.message_handler(commands=['start'])
    async def send_message_with_reaction(message: types.Message):
    # Отправляем сообщение
    sent_message = await message.answer("Привет! Вот тестовое сообщение с реакцией.")

    # Добавляем реакцию к только что отправленному сообщению
    await bot.add_reaction(chat_id=sent_message.chat.id, message_id=sent_message.message_id, emoji="")

    if __name__ == "__main__":
    executor.start_polling(dp, skip_updates=True)

    Что здесь происходит:


    Бот отправляет сообщение с помощью метода answer (или send_message).
    Затем он добавляет реакцию на это сообщение, используя метод add_reaction.

    Предварительные требования:


    Убедитесь, что у вас последняя версия библиотеки aiogram:bashКопировать код
    pip install aiogram
    Telegram Bot API должен быть версии 6.7 или выше.
    Ваш бот должен иметь право добавлять реакции (например, в группе, где включены реакции).

    Если используете другую библиотеку, например pyTelegramBotAPI, принцип аналогичен — после отправки сообщения вызвать метод API для добавления реакции.
    --- Сообщение объединено с предыдущим 29 ноя 2024
    from aiogram import Bot, Dispatcher, types
    from aiogram.utils import executor

    # Вставьте токен вашего бота
    TOKEN = "ВАШ_ТОКЕН_БОТА"

    bot = Bot(token=TOKEN)
    dp = Dispatcher(bot)

    @dp.message_handler(commands=['start'])
    async def send_message_with_reaction(message: types.Message):
    # Отправляем сообщение
    sent_message = await message.answer("Привет! Вот тестовое сообщение с реакцией.")

    # Добавляем реакцию к только что отправленному сообщению
    await bot.add_reaction(chat_id=sent_message.chat.id, message_id=sent_message.message_id, emoji="")

    if __name__ == "__main__":
    executor.start_polling(dp, skip_updates=True)
     
  4. am1rqr
    Это не бот отправляет лайк, а параметр переданный в ответ "message_effect_id". В инете можешь найти адишники всякиз эффектов и прикреплять к send_message, answer и тд

    Незнаю есть ли это в телеботе, но в аиограме точно есть
     
    29 ноя 2024 Изменено
  5. Еремей
    Еремей 3 дек 2024 Гламурный эмо-гопник 1740 20 июл 2018
    отправляя сообщение записывай его в переменную типа
    ⁡p = await client.message_send(...)

    А дальше через функцию SendReactionRequest: https://tl.telethon.dev/methods/messages/send_reaction.html
    Чтобы получить peer, можешь юзать
    ⁡p.peer_id
    ⁡ , для
    ⁡message_id=p.id

    Ставь
    ⁡big=True
    ⁡ и
    ⁡reaction=[types.ReactionEmoji(emoticon='сюда эмодзи лайка')]
     
    3 дек 2024 Изменено
Top
Загрузка...