Estoy intentando agregar un emoji personalizado como reacción a un mensaje que usa discord.py versión 0.16.12 y no puedo ponerlo en funcionamiento. Aquí está el código que estoy usando:
@bot.event async def on_message(message): if message.content.find(':EmojiName:'): await bot.add_reaction(message, '')
También he intentado pasar el ID de emoji como una cadena similar a discord.js (message, '#EmojiID#')
. ¿Se supone que debo pasar la función add_reaction
un objeto emoji? Y si ese es el caso, ¿cómo puedo encontrar el objeto emoji específico de la función get_all_emojis
?
Puede usar la función de utilidad discord.utils.get
para obtener el objeto Emoji
apropiado.
from discord.utils import get @bot.event async def on_message(message): # we do not want the bot to reply to itself if message.author == bot.user: return if ':EmojiName:' in message.content: emoji = get(bot.get_all_emojis(), name='EmojiName') await bot.add_reaction(message, emoji)
No importa, amigos, lo descubrí. Tienes que pasarle el propio objeto emoji. Para la posteridad, aquí está el código que terminé usando:
async def on_message(message): if message.content.find(':EmojiName:'): for x in client.get_all_emojis(): if x.id == '#EmojiID#': return await client.add_reaction(message, x)