Commit Graph

240 Commits

Author SHA1 Message Date
bfc896ed35 Merge pull request 'fix: 修复新旧 TTS 语音重叠播放的问题' (#61) from fix-redio into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/61
2026-06-14 12:31:17 +08:00
f6a2348c04 fix:修复语音对话配置 2026-06-14 12:29:46 +08:00
24a6ce5295 fix: 修复新旧 TTS 语音重叠播放的问题
- TTSPlayer 新增 stopCurrentAudio() 方法,play() 开始前先停止旧音频
- onSpeechEnd 发送新 query 前停止上一轮 TTS 播放
2026-06-14 12:01:34 +08:00
hhs
96cf009228 test: 更新测试文件适配构造函数签名变更 2026-06-14 11:55:29 +08:00
hhs
544716fe27 fix: pipeline.go TTS 输出格式/采样率从配置读取
- New() 改为接收 *config.Config 参数
- OutputFmt/SampleRate 从 config.AI.TTS 读取
2026-06-14 11:55:24 +08:00
hhs
8a966c29b7 fix: TTS 服务去除重复默认值,新增 httpClientTimeout 参数
- 去除 model/voice/endpoint 的 fallback 默认值
- HTTP Client 超时从 config 传入
2026-06-14 11:55:20 +08:00
hhs
aae0629b2d fix: LLM 服务去除重复默认值,新增 httpClientTimeout 参数
- 去除 model/endpoint 的 fallback 默认值
- HTTP Client 超时从 config 传入
2026-06-14 11:55:19 +08:00
hhs
03b3566822 fix: STT 服务去除重复默认值,新增 timeout 参数
- Deepgram/MiMo STT 超时从 config 传入
- 去除 model/endpoint 的 fallback 默认值,由 config 层保证
2026-06-14 11:55:18 +08:00
hhs
f1ce28966c fix: handler.go 心跳/版本号/CheckOrigin/历史上限改为配置驱动
- 心跳间隔和超时从 config.Server 读取
- ServerVersion 从 config.App.Version 读取
- CheckOrigin 通过 config.Server.AllowedOrigins 控制
- GetHistory limit 从 config.Session.MaxHistory 读取
2026-06-14 11:55:15 +08:00
hhs
63f8cc279d fix: main.go 使用配置值替代硬编码
- 版本号支持 -ldflags 构建时注入
- Session TTL/maxHistory 从配置读取
- 优雅关闭超时从配置读取
- AI 服务构造函数传入 HTTP Client 超时参数
2026-06-14 11:55:10 +08:00
hhs
4a7cf89f29 fix: 前端 WebSocket URL 改为环境变量或自动推导,消除 localhost 硬编码 2026-06-14 11:55:07 +08:00
hhs
22aefbc216 feat: 扩展配置结构,新增 Session/Heartbeat/Shutdown/STT Timeout/HTTP Client/TTS Output 配置项 2026-06-14 11:55:06 +08:00
c34be3a996 Merge pull request 'fix: 修复 pipeline_test.go 中 New 函数调用参数不足的问题' (#60) from test/pipeline-test into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/60
2026-06-14 11:19:42 +08:00
hhs
00abc6c1e1 fix: 修复 pipeline_test.go 中 New 函数调用参数不足的问题 2026-06-14 11:18:58 +08:00
32f3efbb7a Merge pull request 'fix:修复了模型语音问题' (#59) from fix-redio into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/59
2026-06-14 11:13:39 +08:00
eb7ebecfc0 fix:修复了模型语音问题 2026-06-14 11:12:49 +08:00
b1e71be3d9 Merge pull request 'feat:增加前端样式优化skill和mcp工具' (#58) from frontend10 into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/58
2026-06-14 10:21:26 +08:00
1d938055e8 Merge pull request 'feat: 添加 AI 服务初始化时的模型配置日志' (#57) from feature/log-track into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/57
2026-06-14 10:19:43 +08:00
bf0bb83f7d feat: 增加前端样式优化skill和mcp工具 2026-06-14 10:19:31 +08:00
hhs
37af0dbe06 feat: 添加 AI 服务初始化时的模型配置日志 2026-06-14 10:18:48 +08:00
70dfa1c8f8 feat:样式美化 2026-06-14 10:18:36 +08:00
5aa383cab9 Merge pull request 'feat: 添加 MiMo TTS 语音合成服务' (#56) from feature/mimo-adapter into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/56
2026-06-14 10:06:41 +08:00
hhs
e967d89e7e feat: 添加 MiMo TTS 语音合成服务
实现基于 Xiaomi MiMo TTS API 的语音合成 provider,使用冰糖音色。
- 新增 MiMoService 实现 tts.Service 接口
- 使用 chat/completions 格式,与 MiMo STT 保持一致
- 在 main.go 添加 TTS provider 切换逻辑(mimo/xiaomi)
- 配置文件默认音色设为冰糖
- 包含完整测试覆盖(9 个测试用例)
2026-06-14 10:05:56 +08:00
b8ed49be63 Merge pull request 'docs: 跟进项目完成状况' (#55) from docs/update-docs into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/55
Reviewed-by: cfy777 <3087823110@qq.com>
2026-06-14 09:42:55 +08:00
hhs
2db0e3b0b6 docs: 编写项目 README.md
- 项目简介与三层架构图
- 技术栈、项目结构树
- 快速开始指南(前端/后端启动、配置说明)
- WebSocket 协议概览与文档索引
2026-06-14 09:15:05 +08:00
hhs
ca09a1fb72 chore: 清理配置文件并移动功能创意文档
- .gitignore 添加 .env,防止密钥泄露
- 删除误提交的 backend/.env
- TTS 模型名修正为 mimo-v2.5-tts
- 功能创意.md 移至 docs/10-功能创意.md
2026-06-14 08:53:12 +08:00
hhs
6e0c67e1cb docs: 文档与代码一致性检查与修复
- 修复心跳 Bug:应用层 ping 不更新 lastPong,60 秒后连接会被错误断开
- 03-接口文档:audio/mpeg→audio/mp3、STTConfig/TTSConfig 补充 Model 字段、
  APP_ENV 环境变量名修正、配置搜索路径补充、.env 加载说明、Vite proxy 说明修正
- 02-系统架构:补充 ConfigPanel/Toast 组件、Model Router/Rate Limiter 标注规划中、
  补充 Gin 框架、MVP 存储改为 Memory、AI 服务 provider 更新、Orchestrator 伪代码对齐
- 04-技术选型:新增 AI 服务栈选型章节(STT/LLM/TTS)、PostgreSQL 标注规划中
- 06-语音交互:VAD 参数名修正、STT 改为一次性识别描述、音频编码格式补充
- 07-视觉理解:关键帧检测代码改为 TypeScript、分辨率修正、阈值逻辑统一
- 08-成本控制:变量名修正、未实现功能标注规划中、对话历史裁剪策略补充
- CLAUDE.md:同步更新技术栈、模块结构、存储策略描述
2026-06-14 08:52:36 +08:00
a6ce6d9c4f Merge pull request '功能优化' (#54) from fix-model into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/54
2026-06-13 22:21:42 +08:00
a7d679d04f feat: 功能优化 2026-06-13 22:20:31 +08:00
c31ecc46fc Merge pull request 'fix: MiMo ASR 认证头改为 Authorization: Bearer' (#53) from fix/stt400 into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/53
2026-06-13 21:58:50 +08:00
hhs
322061c387 fix: MiMo ASR 认证头改为 Authorization: Bearer
MiMo API 使用标准 Bearer Token 认证,而非自定义 api-key 头。
2026-06-13 21:57:56 +08:00
4458ee82b2 Merge pull request 'fix: 修复 MiMo ASR endpoint 路径重复拼接导致 404 的问题' (#52) from fix/stt400 into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/52
2026-06-13 21:51:52 +08:00
hhs
420871cd7e fix: 修复 MiMo ASR endpoint 路径重复拼接导致 404 的问题
config.yaml 中 endpoint 已包含 /chat/completions,而 mimo.go 会自动拼接该路径,
导致实际请求地址变为 .../chat/completions/chat/completions。

- config.yaml: endpoint 改为 base URL https://api.xiaomimimo.com/v1
- .env.example: STT endpoint 示例更新为 MiMo 地址
2026-06-13 21:51:26 +08:00
03a05b89a0 Merge pull request 'chore: 更新 STT API Key 和 endpoint' (#51) from fix/config into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/51
2026-06-13 21:44:47 +08:00
hhs
e3eb4f264b chore: 更新 STT API Key 和 endpoint 2026-06-13 21:43:43 +08:00
a404fb97f9 Merge pull request 'feat: 添加 Xiaomi MiMo ASR 语音识别提供者' (#50) from fix/redis-config into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/50
2026-06-13 21:32:39 +08:00
hhs
3d3de828fc feat: 添加 Xiaomi MiMo ASR 语音识别提供者
- 新增 MiMoService 实现 stt.Service 接口,通过 HTTP POST 调用 OpenAI 兼容的 /chat/completions 接口
- 自动将原始 PCM 数据封装为 WAV 格式(MiMo 仅支持 mp3/wav)
- 语言代码映射:zh-CN→zh、en-US→en、其他→auto
- main.go 添加 provider 选择逻辑(mimo/xiaomi → MiMo,其他 → Deepgram)
- 更新 config.yaml 使用正确的 model 名称 mimo-v2.5-asr
- 添加完整单元测试
2026-06-13 21:31:58 +08:00
4dd89be79f Merge pull request 'fix: 修复返回给前端的 totalTokens 为0的问题并提供示例 .env' (#49) from fix/config-file into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/49
2026-06-13 21:12:16 +08:00
hhs
b0a7ce885e fix: 修复返回给前端的 totalTokens 为0的问题并提供示例 .env 2026-06-13 21:09:56 +08:00
89386ac00d Merge pull request 'ci: 更新 Go 容器版本为 1.26.2' (#47) from fix/cicd into develop
Some checks failed
Backend CI / ci (pull_request) Failing after 3m55s
Frontend CI / ci (pull_request) Successful in 3m21s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/47
2026-06-13 20:58:33 +08:00
hhs
a666b82e64 ci: 更新 Go 容器版本为 1.26.2 2026-06-13 20:57:31 +08:00
836a61dfd2 Merge pull request '添加计时器,麦克风,摄像头开关' (#45) from develop-frontend8 into develop
Some checks failed
Frontend CI / ci (pull_request) Successful in 55s
Backend CI / ci (pull_request) Failing after 1m21s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/45
2026-06-13 20:09:03 +08:00
00f10088d0 feat: 底部控制栏添加摄像头/麦克风开关,说话时麦克风脉冲动画
- useVisionSession 新增 isCameraOn/isMicOn 状态 + toggleCamera/toggleMic
- 底部控制栏添加 📷🎤 图标按钮,开启绿色/关闭红色
- 说话时麦克风按钮绿色脉冲缩放动画(micPulse)
- 按钮样式优化:nowrap 防换行,flex-wrap 自适应

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-13 20:01:37 +08:00
2a235a94b2 Merge pull request 'feat: 规范化配置文档' (#44) from fix/config-file into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/44
2026-06-13 19:58:41 +08:00
hhs
3c665cde5d feat: 更新模型配置 2026-06-13 19:57:55 +08:00
hhs
0d9d3db73b feat: 更新配置文档 2026-06-13 19:57:35 +08:00
188782fa66 feat: 添加 LIVE 计时器和语言按钮组(P0 优化)
- 视频区左上角显示 LIVE 绿色圆点 + 连接时长计时器
- Header 添加中文/EN/日 语言按钮组,一键切换语言
- live-badge、lang-group 样式

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-13 19:01:33 +08:00
f764b3a7d8 Merge pull request '增加主题切换功能,优化设置界面的面板' (#43) from develop-frontend7 into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/43
2026-06-13 17:16:30 +08:00
0227822120 feat: 增加深色/浅色主题切换功能
- types 新增 Theme 类型(dark/light)
- storage 新增 loadTheme/saveTheme 持久化主题偏好
- ConfigPanel 新增外观分组,主题下拉选择
- App.tsx 通过 data-theme 属性挂载到 html 元素
- App.css 新增 [data-theme=light] 亮色变量覆盖

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-13 17:08:56 +08:00
f17c3c24a7 refactor: 设置面板改为右侧抽屉,修复布局跳动问题
- ConfigPanel 重写为 Drawer:右侧 320px 滑入面板 + 半透明遮罩
- 设置按钮始终可见,不依赖连接状态
- 抽屉不推挤主布局,点击遮罩或✕关闭
- 设置项分组显示,带功能描述文案

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-13 16:54:57 +08:00