This commit is contained in:
Song367 2025-06-18 19:15:03 +08:00
parent 3ebdf2931b
commit 8ee2da7ff2

View File

@ -193,6 +193,9 @@
audio.value = sex_audio[selectedGender]
});
let trigger_status = true
let end_talk = ""
// Set initial conversation ID based on default gender
document.addEventListener('DOMContentLoaded', function() {
const genderSelect = document.getElementById('gender');
@ -203,7 +206,7 @@
async function getToken() {
try {
const response = await fetch('http://192.168.2.183:8080/token', {
const response = await fetch('http://14.103.170.252:6211/token', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
@ -285,11 +288,19 @@
console.info('speakError', data)
})
duix.on('asrResult', async (data) => {
console.info('asrResult', data);
duix.break()
// if (data == "你好") {
console.info('asrResult', data, trigger_status);
if (data == "小公" || data == "小共" || data == "小工"){
duix.break()
trigger_status = true
return
}
if (trigger_status) {
try {
const response = await fetch('http://192.168.2.183:8080/chat', {
trigger_status = false;
const response = await fetch('http://14.103.170.252:6211/chat', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
@ -305,8 +316,8 @@
const reader = response.body.getReader();
const decoder = new TextDecoder();
let fullAnswer = '';
let triggered = false;
let pre_talk = '';
while (true) {
const { value, done } = await reader.read();
@ -322,6 +333,8 @@
if (responseData.audio_data) {
conversationL = responseData.conversation_id
console.log("执行输入answer")
pre_talk = responseData.answer
duix.speak({
content: responseData.answer,
audio: responseData.audio_data
@ -332,6 +345,9 @@
// Handle end of stream
if (responseData.isEnd) {
console.log("pretalk : ", pre_talk, "---------", trigger_status)
end_talk = pre_talk
// trigger_status = true
break;
}
}
@ -340,13 +356,13 @@
} catch (error) {
console.error('Error in chat API:', error);
}
// }
}
// test = [
// 'https://p3-bot-sign.byteimg.com/tos-cn-i-v4nquku3lp/0f1be92489b849f3b7568e9b17334e42.wav~tplv-v4nquku3lp-image.image?rk3s=68e6b6b5&x-expires=1752754758&x-signature=rXa5LFcZttKGZpHMVIP6SgZTsRI%3D','https://p6-bot-sign.byteimg.com/tos-cn-i-v4nquku3lp/9898244b02be4765a964cf4b3d4afcd0.wav~tplv-v4nquku3lp-image.image?rk3s=68e6b6b5&x-expires=1752754726&x-signature=%2BbIrCv%2B5yAUxZvNqBURCnSRVqWo%3D','https://p9-bot-sign.byteimg.com/tos-cn-i-v4nquku3lp/4bffded0446648a2aef1d2d7e59ddd0c.wav~tplv-v4nquku3lp-image.image?rk3s=68e6b6b5&x-expires=1752754642&x-signature=E5Dr2R%2Fhd%2Ft7K593ka393OlCPNg%3D']
// for (let index = 0; index < test.length; index++) {
// const element = test[index];
// duix.speak({content: "我会尽量帮助您", audio: element})
// duix.speak({content: "我", audio: element})
// }
});
@ -355,7 +371,11 @@
// console.info('report', data)
})
duix.on('speakEnd', async(data) => {
console.info('公证speakEnd: ', data)
console.info('公证speakEnd: ', data["content"], "----------------", end_talk, "-----------------", trigger_status)
if(end_talk == data["content"]){
trigger_status = true
}
})
duix.init({