Задать вопрос
@frykktik

Бот должен отпровлять сообщение в чат когда кто то кликнул на эмоджи, как это сделать?

Мучаюсь который час над ботом, надо что бы он когда кто то кликает на эмоджи отправлял в отдельный канал об этом сообщение. Ниже код и он не работает.

вот мой код:
@bot.event
async def on_reaction_add(reaction, user):
    Channel = bot.get_channel(930870896107860031)
    if reaction.message.channel.id == Channel:
      if reaction.emoji == "\U0001F4B5":
          my_channel = bot.get_channel(931423249210966056)
          await my_channel.send("аааа")

Заранее спасибо за помощь!
  • Вопрос задан
  • 99 просмотров
Подписаться 1 Средний 1 комментарий
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
on_reaction_add вызывается только тогд , когда сообщение было отправлено при запущенном боте (грубо)
https://discordpy.readthedocs.io/en/async/api.html...

Лучше использовать on_raw_reaction_add
https://discordpy.readthedocs.io/en/latest/api.htm...
В случае с on_raw_reaction_add(payload) id канала лежит в payload.channel_id

Ну и подобное условие вряд ли сработает, пытаетесь сравнить объект класса Channel с числом. Если сравниваете id - то сравнивайте ID, не нужно получить канал в таком случае
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы