xunzhi-media-domain
使用顺序
- 再看
references/object-dictionary.md,确认连接对象、转写对象、TTS 对象的真相源。 - 先看
references/api-map.md,确认是 WebSocket、转写还是 TTS。 - 再看
references/realtime-asr.md,理解实时转写会话与消息协议。 - 再看
references/websocket-notification.md,理解服务器推送的消息类型。 - 最后看
references/tts.md和references/gotchas.md。
关键入口
admin/src/main/java/com/hewei/hzyjy/xunzhi/media/api/WebSocketController.javaadmin/src/main/java/com/hewei/hzyjy/xunzhi/media/api/XunfeiTtsController.javaadmin/src/main/java/com/hewei/hzyjy/xunzhi/media/infrastructure/websocket/AudioTranscriptionWebSocketHandler.javaadmin/src/main/java/com/hewei/hzyjy/xunzhi/media/infrastructure/integration/XunfeiAudioService.javaadmin/src/main/java/com/hewei/hzyjy/xunzhi/media/infrastructure/integration/XunfeiLongTextTtsService.java
必守约束
- WebSocket 连接 session 和业务
sessionId不是一回事,不能混写。 - WebSocket 转写必须先鉴权,再进入转写会话。
- 同一个 session 不能无限叠加多个转写上下文。
- 心跳、开始、停止、状态查询的协议字段必须前后端一致。
- 长文本 TTS 的任务创建和查询是两条不同的生命周期。
参考资料
references/object-dictionary.mdreferences/api-map.mdreferences/realtime-asr.mdreferences/websocket-notification.mdreferences/tts.mdreferences/gotchas.md