title: Discord.py wait for message or reaction
body: <p>I'm quite new to both Python and Discord.py, and I'm trying to find how to make the bot wait for either a message or reaction from user at the same time.</p>
  <p>I tried separating each but just resulted in the bot needing a message response before a reaction.</p>
  <p>Here's a similar code I'm trying to do:</p>
  <pre><code>@bot.event
  async def on_message(ctx):
      if ctx.author == bot.user:
          return
  
      if ctx.content == &quot;$respond&quot;:
          message = await ctx.send(&quot;Waiting for response...&quot;)
  
          while True:
              try:
                  response = #Will wait for a message(Yes or No) or reaction(Check or Cross) from ctx.author for 30 secs
              except asyncio.TimeoutError:
                  await message.edit(content=f&quot;{ctx.author} did not respond anymore!&quot;)
                  break
  
              if response.content == &quot;yes&quot;:
                  await message.edit(content=f&quot;{ctx.author} said yes!&quot;)
                  continue
              
              elif response.content == &quot;no&quot;:
                  await message.edit(content=f&quot;{ctx.author} said nyo!&quot;)
                  continue
              
              #These are reactions
              elif str(response.emoji) == &quot;✅&quot;:
                  await message.edit(content=f&quot;ctx.author reacted ✅!&quot;)
                  continue
              
              elif str(response.emoji) == &quot;❌&quot;:
                  await messave.edit(content=f&quot;Stopped listening to responses.&quot;)
                  break
  </code></pre>