From 29b0d6efcafb31c498ef6bba0f37e1ffcdeba0ee Mon Sep 17 00:00:00 2001 From: Oleksandr Kozachuk Date: Sun, 17 Mar 2024 13:46:37 +0100 Subject: [PATCH] Add reaction on message edit. --- fjerkroa_bot/ai_responder.py | 4 ++-- fjerkroa_bot/discord_bot.py | 5 +++++ openai_chat.dat | Bin 30634819 -> 30811308 bytes 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/fjerkroa_bot/ai_responder.py b/fjerkroa_bot/ai_responder.py index 84815ca..abf321b 100644 --- a/fjerkroa_bot/ai_responder.py +++ b/fjerkroa_bot/ai_responder.py @@ -298,8 +298,8 @@ class AIResponder(AIResponderBase): async def memoize_reaction(self, message_user: str, reaction_user: str, operation: str, reaction: str, message: str) -> None: quoted_message = message.replace('\n', '\n> ') - await self.memoize(message_user, reaction_user, - f'> {quoted_message}', + await self.memoize(message_user, 'assistant', + f'\n> {quoted_message}', f'User {reaction_user} has {operation} this raction: {reaction}') async def send(self, message: AIMessage) -> AIResponse: diff --git a/fjerkroa_bot/discord_bot.py b/fjerkroa_bot/discord_bot.py index 98a19cd..651eff7 100644 --- a/fjerkroa_bot/discord_bot.py +++ b/fjerkroa_bot/discord_bot.py @@ -125,6 +125,11 @@ class FjerkroaBot(commands.Bot): async def on_reaction_clear(self, reaction, user): await self.on_reaction_operation(reaction, user, 'clearing') + async def on_message_edit(self, before, after): + await self.memoize(before.author.name, 'assistant', + '\n> ' + before.content.replace('\n', '\n> '), + 'User changed this message to:\n> ' + after.content.replace('\n', '\n> ')) + def on_config_file_modified(self, event): if event.src_path == self.config_file: new_config = self.load_config(self.config_file) diff --git a/openai_chat.dat b/openai_chat.dat index 3a0f5f417081eba98d9d5b5fa0f42e691758b2c2..6a1c066182acd52ef39fd76ec1c6d2c49d238a89 100644 GIT binary patch delta 29694 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 J8((|m{{y$54^aRB delta 9311 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 fkp?B^qsmmyjj9iJNuN8l3`aq4$*#2>AK&Bu^