外观
接口与配置概览
前端(大屏 + 移动端)依赖的后端接口、WebSocket 通道、环境变量与关键时序参数集中列于此,便于对接与排障。
一、前端依赖的接口清单
| 接口 | 方法 | 用途 | 调用方 | 所属项目 |
|---|---|---|---|---|
/ai/chat/stream | GET(SSE) | 智能交互流式问答 参数: messagesessionId | 大屏 | 业务后台 |
/ai/orchestrate/chat/stream | POST(SSE) | 专家问答流式问答(Dify 风格事件) | 大屏 | 业务后台 |
/digitalHuman/question/list | GET | 「猜你想问」分页推荐问题 | 大屏 + 手机 | 业务后台 |
/ai/kb/categories/chat-options | GET | 专家问答知识库分类下拉 | 大屏 + 手机 | 业务后台 |
/digital-human/nlu/recognize | POST | 语义识别,返回结构化意图 | 大屏 | 数字人后台 |
/digital-human/tts/aliyun | POST | 文本转语音,返回 audio/mpeg 二进制(即将弃用) | 大屏 | 数字人后台 |
/digital-human/tts/aliyunStream/ws | WebSocket | 文本转语音(流式双工,统一采用) | 大屏 | 数字人后台 |
/digital-human/asr/recognize | POST(multipart) | 语音转文本 | 大屏 + 手机 | 数字人后台 |
/digital-human/pairing/qrcode | GET | 生成配对码与有效期 | 大屏 | 数字人后台 |
/digital-human/pairing/kick | POST | 踢出已配对设备 | 大屏 | 数字人后台 |
/ws/digital-human | WebSocket | 大屏与手机的长连接通道 | 大屏 + 手机 | 数字人后台 |
WebSocket 的消息类型(COMMAND / RESPONSE / PAIRING_SUCCESS 等)见 移动端与大屏交互。
二、环境变量
| 变量 | 用途 |
|---|---|
VITE_APP_AI_API | 数字人服务代理前缀(如 /dhman-api),NLU / TTS / ASR / 配对接口共用 |
VITE_APP_BASE_API | 若依业务前缀(如 /dev-api),/ai/... 系列接口走此项 |
VITE_AI_APP_HOST | AI 服务 IP:端口,WebSocket 地址自动拼为 {ws|wss}://{host}/ws/digital-human |
VITE_APP_AVATAR_URL | 数字人 React 应用 iframe 地址【兜底备用】 |
VITE_APP_UE_SIGNALLING_URL | UE 信令服务地址(如 ws://localhost:91);配置后走 UE 自集成方案 |
VITE_MOBILE_URL | 移动端入口地址(兜底,默认 {origin}{pathname}#/mobile) |
三、关键时序参数
| 参数 | 值 |
|---|---|
| 心跳间隔 | 30s |
| WS 最大重连次数 / 退避 | 5 次 / 1s × 2^n,上限 30s |
| 配对码有效期 | 300s(后端可覆盖) |
| 二维码刷新冷却 | 60s |
| SSE 空闲超时 | 30s |
| 录音时长 | 大屏 ≤60s;移动端 1~60s |
| 打字机速度 | 默认 35ms/字;跟随音频时下限 15ms |
| 段间停顿 | 220ms |
| 模块切换等待 | 600ms |
| 配对超时(移动端) | 5min |
四、UE 相关配置与采样约定
- UE 信令端口:默认
91,须与VITE_APP_UE_SIGNALLING_URL一致; - 音频采样率:前端统一转 PCM 16bit 单声道 16000Hz 投喂 UE;后端双工链路
duplex-sample-rate = 16000; - UE 库版本:
@epicgames-ps/lib-pixelstreamingfrontend-ue5.4须与推流端 UE 版本同为-ue5.4。
详见 UE 联调。