import os
import discord
from discord import Intents
from dotenv import load_dotenv
from chatbot import ChatBot
load_dotenv()
discord_token = os.getenv('DISCORD_TOKEN')
chatbot = ChatBot()
intents = Intents.default()
intents.typing = False
intents.presences = False
intents.messages = True # Enable the messages intent
client = discord.Client(intents=intents)
chat_history = []
@client.event
async def on_ready():
print(f'We have logged in as {client.user}')
@client.event
async def on_message(message):
print("Received a message") # Add this line
if message.author == client.user: # Ignore messages from the bot itself
return
print('Received message:', message)
print(f"Received message content: {message.clean_content}")
if message.content.startswith('/ask'):
user_input = message.content[5:].strip()
print('User input: ', repr(user_input))
print('Received user input: {}'.format(user_input)) # Print the user's question to the console
response = chatbot.get_response(user_input, chat_history)
await message.channel.send(response)
client.run(discord_token)
控制台:
我们已以Ask-Bot#1060身份登录 收到一条消息 收到的消息:<;消息id=1117888736563306637频道=类型=<;消息类型.默认:0&>;作者=<;成员id=940462143654998096名称=‘Dane W’鉴别器=‘4497’机器人=假nick=无公会=>;标志=>; 收到的消息内容:
我在discord一词中输入了"/ask tell me about the striking offense of brandon moreno".我希望我的控制台将该值作为Message.content返回.
Discorde机器人已经被授予了所有必要的权限,并且存在于我要输入消息的频道中.