mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-22 07:03:53 +08:00
177 lines
6.0 KiB
JavaScript
177 lines
6.0 KiB
JavaScript
import { getServiceUrl } from '../api';
|
|
import RequestService from '../httpRequest';
|
|
|
|
|
|
export default {
|
|
// 获取智能体列表
|
|
getAgentList(callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/list`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentList(callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 添加智能体
|
|
addAgent(agentName, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent`)
|
|
.method('POST')
|
|
.data({ agentName: agentName })
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.addAgent(agentName, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 删除智能体
|
|
deleteAgent(agentId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/${agentId}`)
|
|
.method('DELETE')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.deleteAgent(agentId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取智能体配置
|
|
getDeviceConfig(agentId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/${agentId}`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail((err) => {
|
|
console.error('获取配置失败:', err);
|
|
RequestService.reAjaxFun(() => {
|
|
this.getDeviceConfig(agentId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 配置智能体
|
|
updateAgentConfig(agentId, configData, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/${agentId}`)
|
|
.method('PUT')
|
|
.data(configData)
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.updateAgentConfig(agentId, configData, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 新增方法:获取智能体模板
|
|
getAgentTemplate(callback) { // 移除templateName参数
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/template`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail((err) => {
|
|
console.error('获取模板失败:', err);
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentTemplate(callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取智能体会话列表
|
|
getAgentSessions(agentId, params, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/${agentId}/sessions`)
|
|
.method('GET')
|
|
.data(params)
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentSessions(agentId, params, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取智能体聊天记录
|
|
getAgentChatHistory(agentId, sessionId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/${agentId}/chat-history/${sessionId}`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentChatHistory(agentId, sessionId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取音频下载ID
|
|
getAudioId(audioId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/audio/${audioId}`)
|
|
.method('POST')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAudioId(audioId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取智能体的MCP接入点地址
|
|
getAgentMcpAccessAddress(agentId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/mcp/address/${agentId}`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentMcpAccessAddress(agentId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
// 获取智能体的MCP工具列表
|
|
getAgentMcpToolsList(agentId, callback) {
|
|
RequestService.sendRequest()
|
|
.url(`${getServiceUrl()}/agent/mcp/tools/${agentId}`)
|
|
.method('GET')
|
|
.success((res) => {
|
|
RequestService.clearRequestTime();
|
|
callback(res);
|
|
})
|
|
.networkFail(() => {
|
|
RequestService.reAjaxFun(() => {
|
|
this.getAgentMcpToolsList(agentId, callback);
|
|
});
|
|
}).send();
|
|
},
|
|
}
|