|
|
@@ -643,10 +643,12 @@ async function handleFinishRecording() {
|
|
|
const blob = await recorder.stopRecording()
|
|
|
recorder.onChunk.value = null
|
|
|
if (ctl) {
|
|
|
+ // 走 WebSocket 流式路径。WS 失败时,不自动降级 HTTP —— 让错误泡泡的"重试"按钮走人工路径。
|
|
|
+ // attachStudentBlob 必须在 ctl.finish() 之前:服务端 done 事件回来前,blob 已经挂到学生消息上,replay 才能用。
|
|
|
engine.attachStudentBlob(ctl.studentMsgId, blob)
|
|
|
ctl.finish()
|
|
|
} else {
|
|
|
- // 没启动流式(异常情况)→ 直接走旧 HTTP 路径
|
|
|
+ // 没启动流式(异常情况)→ 直接走旧 HTTP 路径
|
|
|
await engine.sendStudentMessage(blob)
|
|
|
}
|
|
|
} catch (err) {
|