feat: память сессии — контекст диалога, кнопка Сброс
This commit is contained in:
+17
-3
@@ -21,6 +21,7 @@
|
||||
<div id="controls">
|
||||
<button id="btnRecord">🎙 Записать</button>
|
||||
<button id="btnPlay" disabled>▶ Прослушать</button>
|
||||
<button id="btnReset">🗑 Сброс</button>
|
||||
</div>
|
||||
|
||||
<div id="status"></div>
|
||||
@@ -37,7 +38,7 @@
|
||||
|
||||
let mediaRecorder, chunks = [], userBlob = null;
|
||||
let isRecording = false, micAnalyser = null, micAnimId = null;
|
||||
let audioContext = null;
|
||||
let audioContext = null, sessionSid = null;
|
||||
|
||||
function setStatus(msg) { status.textContent = msg; }
|
||||
|
||||
@@ -133,10 +134,12 @@
|
||||
const cRes = await fetch('/api/chat', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ model: 'gpt-oss-120b', message: text }),
|
||||
signal: (() => { const ac = new AbortController(); setTimeout(() => ac.abort(), 60000); return ac.signal; })(),
|
||||
body: JSON.stringify({ model: 'gpt-oss-120b', message: text, sid: sessionSid }),
|
||||
signal: (() => { const ac = new AbortController(); setTimeout(() => ac.abort(), 120000); return ac.signal; })(),
|
||||
});
|
||||
const cData = await cRes.json();
|
||||
if (cData.sid) sessionSid = cData.sid;
|
||||
const cData = await cRes.json();
|
||||
chat.innerHTML += '<div class="bot">🤖 GPT-OSS: ' + (cData.response || cData.error || 'Ошибка') + '</div>';
|
||||
chat.scrollTop = chat.scrollHeight;
|
||||
setStatus('✅ Готово');
|
||||
@@ -149,6 +152,17 @@
|
||||
userBlob = null;
|
||||
btnPlay.disabled = true;
|
||||
}
|
||||
|
||||
document.getElementById('btnReset').onclick = async () => {
|
||||
await fetch('/api/reset', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({ sid: sessionSid }),
|
||||
});
|
||||
sessionSid = null;
|
||||
chat.innerHTML = '';
|
||||
setStatus('🧹 История очищена');
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user