diff --git a/src/cogs/auto_responder.py b/src/cogs/auto_responder.py index 639a375..80315a4 100644 --- a/src/cogs/auto_responder.py +++ b/src/cogs/auto_responder.py @@ -267,6 +267,24 @@ class AutoResponder(commands.Cog): extra = [attachment.url for attachment in reaction.message.attachments] await self.transcode_hevc_to_h264(reaction.message, additional=extra) + @commands.Cog.listener("on_raw_reaction_add") + async def on_raw_reaction_add(self, payload: discord.RawReactionActionEvent): + if discord.utils.get(self.bot.cached_messages, id=payload.message_id): + # Handled by on_reaction_add + return + if payload.user_id == self.bot.user.id: + return + + channel = self.bot.get_channel(payload.channel_id) + message = await channel.fetch_message(payload.message_id) + _e = discord.PartialEmoji.from_str(str(payload.emoji)) + reaction = discord.Reaction( + message=message, + data={"emoji": _e, "count": 1, "me": payload.user_id == self.bot.user.id, "burst": False}, + emoji=payload.emoji + ) + user = self.bot.get_user(payload.user_id) + await self.on_reaction_add(reaction, user) def setup(bot):