Agent Chat fixed
This commit is contained in:
10
Html/app.py
10
Html/app.py
@@ -98,9 +98,10 @@ agent_manager = AgentManager()
|
|||||||
|
|
||||||
|
|
||||||
class AgentNamespace(Namespace):
|
class AgentNamespace(Namespace):
|
||||||
def on_connect(self):
|
def on_login(self, data):
|
||||||
user = request.args.get('username')
|
data = json.loads(data)
|
||||||
folder_name = request.args.get('folder')
|
user = data['username']
|
||||||
|
folder_name = data['folder']
|
||||||
user_uuid = user_id2uuid[user]
|
user_uuid = user_id2uuid[user]
|
||||||
session['user_id'] = user_uuid
|
session['user_id'] = user_uuid
|
||||||
print(f'User connected with session user_id: {user_uuid}')
|
print(f'User connected with session user_id: {user_uuid}')
|
||||||
@@ -114,6 +115,7 @@ class AgentNamespace(Namespace):
|
|||||||
user_uuid, agent = agent_manager.new_agent(markdown, markdown_prompts, score_prompts, id=user_uuid)
|
user_uuid, agent = agent_manager.new_agent(markdown, markdown_prompts, score_prompts, id=user_uuid)
|
||||||
join_room(user_uuid) # 将该用户加入以user_id为名的room
|
join_room(user_uuid) # 将该用户加入以user_id为名的room
|
||||||
|
|
||||||
|
|
||||||
def on_message(self, data):
|
def on_message(self, data):
|
||||||
print(f"Message from client: {data}")
|
print(f"Message from client: {data}")
|
||||||
id = session.get('user_id')
|
id = session.get('user_id')
|
||||||
@@ -122,7 +124,7 @@ class AgentNamespace(Namespace):
|
|||||||
res = agent_manager.invoke(id, data, backboard_manager.get_backboard(id).get_info_prompt())
|
res = agent_manager.invoke(id, data, backboard_manager.get_backboard(id).get_info_prompt())
|
||||||
reply = f"AI: {res.content['speak']}"
|
reply = f"AI: {res.content['speak']}"
|
||||||
# 将回复发送回前端
|
# 将回复发送回前端
|
||||||
emit('receive_message', reply)
|
emit('message', reply)
|
||||||
|
|
||||||
|
|
||||||
def on_disconnect(self):
|
def on_disconnect(self):
|
||||||
|
|||||||
@@ -3,22 +3,21 @@ var socket;
|
|||||||
document.addEventListener('DOMContentLoaded', function() {
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
data = window.appData;
|
data = window.appData;
|
||||||
console.log(data);
|
console.log(data);
|
||||||
socket = new WebSocket('ws://localhost:5500/agent');
|
socket = io('http://localhost:5500/agent?username='+data.username+'&folder='+data.folder);
|
||||||
socket.onopen = () => {
|
socket.on('connect', function() {
|
||||||
console.log('Connected to agent WebSocket');
|
console.log('Connected to server');
|
||||||
ws.send(JSON.stringify({ message: 'Hello from client' })); // 发送数据
|
socket.emit('login',JSON.stringify(data));
|
||||||
};
|
});
|
||||||
// 监听来自服务器的消息
|
// 监听来自服务器的消息
|
||||||
socket.onmessage = (event) => {
|
socket.on('message', function(data) {
|
||||||
// 显示服务器的回复消息
|
// 显示服务器的回复消息
|
||||||
data = event.data
|
|
||||||
const serverMessage = document.createElement('div');
|
const serverMessage = document.createElement('div');
|
||||||
serverMessage.innerHTML = `<div class="chat-message server-message"><b>服务器:</b> ${marked.parse(data)}</div>`;
|
serverMessage.innerHTML = `<div class="chat-message server-message"><b>服务器:</b> ${marked.parse(data)}</div>`;
|
||||||
document.getElementById('chatbox').appendChild(serverMessage);
|
document.getElementById('chatbox').appendChild(serverMessage);
|
||||||
|
|
||||||
// 滚动到最新消息
|
// 滚动到最新消息
|
||||||
document.getElementById('chatbox').scrollTop = document.getElementById('chatbox').scrollHeight;
|
document.getElementById('chatbox').scrollTop = document.getElementById('chatbox').scrollHeight;
|
||||||
};
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
@@ -45,23 +44,6 @@ chineseRadio.addEventListener('change', function() {
|
|||||||
if (chineseRadio.checked) language = 'zn';
|
if (chineseRadio.checked) language = 'zn';
|
||||||
});
|
});
|
||||||
|
|
||||||
function sendMessage() {
|
|
||||||
const input = document.getElementById('messageInput').value;
|
|
||||||
if (input.trim() === '') return;
|
|
||||||
|
|
||||||
// 创建一个新的消息元素
|
|
||||||
const newMessage = document.createElement('div');
|
|
||||||
newMessage.classList.add('chat-message');
|
|
||||||
newMessage.innerHTML = `<b>${language === 'en' ? 'You:' : '你:'}</b> ${input}`;
|
|
||||||
chatbox.appendChild(newMessage);
|
|
||||||
|
|
||||||
// 清空输入框
|
|
||||||
document.getElementById('messageInput').value = '';
|
|
||||||
|
|
||||||
// 滚动到最新消息
|
|
||||||
chatbox.scrollTop = chatbox.scrollHeight;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 发送消息
|
// 发送消息
|
||||||
@@ -78,7 +60,7 @@ function sendMessage() {
|
|||||||
document.getElementById('chatbox').appendChild(userMessage);
|
document.getElementById('chatbox').appendChild(userMessage);
|
||||||
|
|
||||||
// 发送消息到服务器
|
// 发送消息到服务器
|
||||||
socket.emit('send_message', input);
|
socket.emit('message', input);
|
||||||
|
|
||||||
// 清空输入框
|
// 清空输入框
|
||||||
document.getElementById('messageInput').value = '';
|
document.getElementById('messageInput').value = '';
|
||||||
|
|||||||
@@ -10,7 +10,8 @@
|
|||||||
<script>
|
<script>
|
||||||
document.cookie = "vscode-tkn=44edc269-6f88-46ab-9790-dc253f66ac36; path=/; SameSite=None; Secure";
|
document.cookie = "vscode-tkn=44edc269-6f88-46ab-9790-dc253f66ac36; path=/; SameSite=None; Secure";
|
||||||
</script>
|
</script>
|
||||||
<script src="https://cdn.bootcdn.net/ajax/libs/marked/13.0.2/marked.min.js"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/marked/15.0.3/marked.min.js"></script>
|
||||||
|
<script src="https://cdn.socket.io/4.0.0/socket.io.min.js"></script>
|
||||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet">
|
||||||
<script src="https://unpkg.com/split.js/dist/split.min.js"></script>
|
<script src="https://unpkg.com/split.js/dist/split.min.js"></script>
|
||||||
</head>
|
</head>
|
||||||
|
|||||||
@@ -3,4 +3,4 @@ array = list(map(int, input().split()))
|
|||||||
q = int(input())
|
q = int(input())
|
||||||
while q!=0:
|
while q!=0:
|
||||||
q-=1
|
q-=1
|
||||||
|
1
|
||||||
2
cake/bootstrap.min.css.map/.config
Normal file
2
cake/bootstrap.min.css.map/.config
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
user_id=cake
|
||||||
|
path=bootstrap.min.css.map
|
||||||
@@ -1,2 +1,4 @@
|
|||||||
user_id=cake
|
{
|
||||||
path=folder
|
"user_id": "cake",
|
||||||
|
"path": "folder"
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user