Reaccionar ante el mensaje, si incrustar incluye <word Insertar aquí>

0

Pregunta

Tengo un pedazo de código que reacciona a un robot específico en un canal, pero la pieza de código reacciona a todo lo que el bot dice. El bot sólo los tipos a cabo en incrustar mensajes y yo no estaba seguro de cómo hacer que el código se mire en el interior del mensaje incrustado y reaccionar ante el mensaje sólo si una determinada palabra clave que se dice en el interior de la inserción. Código:


client = discord.Client()
token = ("<discord token>")

@client.event
async def on_message(message):
    channel = client.get_channel(825437474871312387)
    if message.channel == channel and message.author.id == 342644185800769537:
        if message.content == "test":
            await message.add_reaction("❤️")
            print("done")



if __name__ == '__main__':

    client.run(token, bot=False)
    print("can you see me?")
discord discord.py python
2021-11-24 00:49:11
1

Mejor respuesta

0

Sí, usted puede agregar reacción sólo a la inserción con un título específico.

@client.event
async def on_message(message):
    channel = client.get_channel(825437474871312387)
    if message.embeds and message.channel == channel and message.author.id == 342644185800769537:
        if message.embeds[0].title == "test":
            await message.add_reaction("❤️")
            print("done")

He añadido una comprobación más a if declaración (if message.embeds) para asegurarse de que el mensaje ha incrustar dentro de ella. Entonces yo uso message.embeds[0] porque message.embeds devuelve una lista de integra. Después de que usted puede obtener información a partir de la inserción como título, autor, etc. (discord.Embed en google docs).

2021-11-24 19:13:56

Gracias por tu ayuda, pero cuando envío un embed con el título "prueba" de que el robot no parece recogerlo porque no estoy recibiendo los mensajes de error o reacciones en la inserción.
Vanden

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................