From 71b25ef3376327d8e1b16279dadf53d68b57ebba Mon Sep 17 00:00:00 2001 From: wea_ondara Date: Wed, 17 Apr 2024 21:06:42 +0200 Subject: [PATCH] added discord bot --- chat.py | 24 ++++++++++++------------ chat_cli.py | 8 ++++++++ discord_bot.py | 26 ++++++++++++++++++++++++++ discord_bot_token.py | 1 + 4 files changed, 47 insertions(+), 12 deletions(-) create mode 100644 chat_cli.py create mode 100644 discord_bot.py create mode 100644 discord_bot_token.py diff --git a/chat.py b/chat.py index 56df79c..e52fc42 100644 --- a/chat.py +++ b/chat.py @@ -1,16 +1,16 @@ import requests -from utils.prompt import prompt -messages = [] -while True: - user_prompt = prompt('>> User: ') - messages.append({'role': 'user', 'content': user_prompt}) +class ChatClient: + messages = [] - response = requests.post('http://localhost:8900/', json=messages) - if response.status_code == 200: - messages = response.json() - print('>> Bot : ' + messages[-1]['content']) - else: - messages = messages[0:-1] - print('### Error from backend') + def input(self, message): + self.messages.append({'role': 'user', 'content': message}) + + response = requests.post('http://localhost:8900/', json=self.messages) + if response.status_code == 200: + self.messages = response.json() + return self.messages[-1]['content'] + else: + self.messages = self.messages[0:-1] + return '### Error from backend' diff --git a/chat_cli.py b/chat_cli.py new file mode 100644 index 0000000..c650c4a --- /dev/null +++ b/chat_cli.py @@ -0,0 +1,8 @@ +from chat import ChatClient +from utils.prompt import prompt + +client = ChatClient() +while True: + user_prompt = prompt('>> User: ') + response = client.input(user_prompt) + print(response) diff --git a/discord_bot.py b/discord_bot.py new file mode 100644 index 0000000..6ec810d --- /dev/null +++ b/discord_bot.py @@ -0,0 +1,26 @@ +import discord + +from chat import ChatClient +from discord_bot_token import discord_bot_token + +intents = discord.Intents.default() +intents.message_content = True +discord_client = discord.Client(intents=intents) + +chat_client = ChatClient() + +@discord_client.event +async def on_ready(): + print(f'We have logged in as {discord_client.user}') + + +@discord_client.event +async def on_message(message): + if message.author == discord_client.user: + return + + response = chat_client.input(message.content) + await message.channel.send(response) + + +discord_client.run(discord_bot_token) diff --git a/discord_bot_token.py b/discord_bot_token.py new file mode 100644 index 0000000..90fdc24 --- /dev/null +++ b/discord_bot_token.py @@ -0,0 +1 @@ +discord_bot_token = ''