lxm
d9f84fe041
refactor(登录): 移除验证码视图并简化控制器状态管理
移除登录流程中的验证码输入页面,将登录简化为单一步骤。删除 LoginViewState 枚举及相关状态变量,清理不再使用的 UI 组件和方法,使代码结构更清晰。
8 months ago
lxm
bda611aff0
fix(auth_interceptor): 优化错误处理逻辑并抑制特定接口的snackbar
添加特定接口的错误提示抑制逻辑,避免不必要的用户干扰
统一并改进HTTP错误响应消息的映射,提供更友好的本地化提示
移除重复的snackbar显示代码,简化异常处理流程
8 months ago
liwei1dao
9cdcfcedbf
Merge branch 'new_dev' of https://github.com/deepcloud2048/deep_voice into new_dev
8 months ago
liwei1dao
ddca55c945
feat(qq_music): 添加自动暂停音乐方法以简化暂停逻辑
新增 autopauseMusic 方法,该方法在 QQ 音乐插件、服务层和控制器中实现。它封装了检查播放状态并暂停的逻辑,替换了原先需要先同步播放信息再手动暂停的多步操作,使代码更简洁并减少潜在的错误。
8 months ago
lxm
aeaa07bd84
Merge branch 'new_dev' of github.com:deepcloud2048/deep_voice into new_dev
8 months ago
liwei1dao
b093fdd9cc
Merge branch 'new_dev' of https://github.com/deepcloud2048/deep_voice into new_dev
8 months ago
liwei1dao
73ccaf8015
feat(mcp): 支持streamable HTTP传输并移除搜索工具集成
- 在DBMCPServer模型中添加type字段以区分传输类型
- 实现CustomStreamableHttpClientTransport用于HTTP/JSON传输
- 移除ToolsSystemFunctionHandler及相关搜索工具集成
- 优化MCP客户端初始化,根据type选择SSE或HTTP传输
- 修复iOS端工具调用ID生成逻辑,提升兼容性
8 months ago
lxm
3fff1dd2c8
feat(i18n): 为语音识别连接失败添加多语言错误提示
在翻译控制器中检测到特定错误信息(如“Xunfei connection failed”或“Socket is not connected”)时,将显示用户友好的本地化提示信息“asrConnectionFailed”,而不是原始技术错误信息。
为此在所有支持的语言文件(zh_cn、zh_hk、zh_tw、en_us等)中添加了对应的翻译条目。
8 months ago
lxm
c6e76c5d56
feat(meeting): 支持多语言会议模板筛选
添加语言字段至数据库表,根据用户设备语言自动筛选对应模板
8 months ago
lxm
372aac71e8
refactor(android): 临时注释工具函数初始化以进行调试
移除 MCPClient 初始化时对 initializeToolsFunctions 的调用,改为注释状态。
此变更为临时调试措施,旨在隔离问题以定位音乐服务初始化过程中的潜在故障。
8 months ago
lxm
2befcb9b25
Merge branch 'new_dev' of github.com:deepcloud2048/deep_voice into new_dev
8 months ago
lxm
40df5f0f00
feat(i18n): 添加安卓前台服务通知的多语言翻译
为支持安卓前台服务的通知本地化,在多个语言文件中新增翻译键值。
同时在对应的安卓服务文件中添加注释,说明前台通知的触发条件。
8 months ago
lxm
0d90c92923
feat(android): 同步Flutter本地化字符串到原生前台服务通知
添加 NativeLocalizationSync 服务,用于将Flutter应用的本地化字符串同步到Android原生前台服务通知中。在应用启动、语言切换和应用生命周期恢复时自动同步,确保原生通知内容与当前应用语言保持一致。
主要修改:
1. 新增 native_localization_sync.dart 服务,通过MethodChannel将本地化字符串传递给Android原生
2. 在MainApp、SettingsController和AppLifecycleManager中添加同步调用
3. 更新所有Android前台服务(音频录制、BLE代理、QQ音乐、导航、音乐服务)以使用同步的本地化字符串
4. 添加中英文通知文本到翻译文件
5. 在MainActivity中实现原生端字符串接收和存储逻辑
8 months ago
liwei1dao
2056fd0279
Merge branch 'new_dev' of https://github.com/deepcloud2048/deep_voice into new_dev
8 months ago
liwei1dao
7a832bd563
feat(chat_api): 添加网络搜索工具函数支持
在MCPClient中新增ToolsSystemFunctionHandler,用于注册web_search函数。
该函数允许通过外部API进行网络搜索,需要传入服务器地址和用户token。
修改AgentService、ChatApiService和MCPClient的初始化方法以传递这些参数。
8 months ago
liwei1dao
b45510cc1b
feat(chat_api): 添加网络搜索工具函数支持
在 MCPClient 中新增 initializeToolsFunctions 方法,用于注册 web_search 工具函数。
该函数通过外部 API 实现网络搜索能力,可用于百科、新闻、汇率等查询。
需要传入服务地址和用户令牌进行鉴权。
8 months ago
lxm
3985fdb381
fix(音频播放): 修复会议详情页音频播放按钮无响应问题
添加播放器准备状态检查和错误处理机制,确保音频文件存在且播放器初始化成功后才允许播放。在UI层添加状态验证和异常捕获,提供用户友好的错误提示。同时为iOS平台配置音频会话,并增加详细日志记录便于调试。
8 months ago
lxm
78e165f8fe
fix: 修复任务类型监听器中文本列表更新顺序错误
当任务类型值在3到5之间时,应优先更新textList,再根据类型值更新其他字段。原逻辑在类型值>=5时更新personnel、summary等字段后,才在else if中处理类型值>=3的情况,导致textList更新被覆盖。
调整条件判断顺序,确保在类型值>=3时立即更新textList,然后当类型值>=5时再更新其他字段。
8 months ago
lxm
53ec87c10d
fix: 修复应用本地化回退区域设置错误
使用静态常量 `fallbackLocale` 替代方法调用 `getSmartFallbackLocale()`,以避免潜在的运行时错误并确保回退区域设置的一致性。
8 months ago
lxm
7216d355cd
fix: 将默认回退语言从中文改为英文
修改fallbackLocale常量从Locale('zh', 'CN')改为Locale('en', 'US'),确保应用在用户语言不可用时能回退到更通用的英文界面,提升国际用户的默认体验。
8 months ago
lxm
8ec6fd30f9
Merge branch 'new_dev' of github.com:deepcloud2048/deep_voice into new_dev
8 months ago
lxm
0e39764035
fix(meeting): 修复录音文件名生成与文件遍历问题
修复录音文件名中可能包含路径分隔符的问题,新增 sanitizeRecordingFileStem 方法处理本地化标题中的特殊字符
修复文件遍历时未递归查找子目录的问题,使用 recursive: true 参数
修复活动录音文件比较时未统一使用 basename 的问题,避免路径不匹配
8 months ago
lxm
62e9d22c22
feat(meeting): 为本地录音添加暂存标题功能
在保存录音时,不再直接重命名文件,而是将新标题暂存到存储中。当导入本地录音时,会优先使用暂存的标题作为显示名称,避免因文件重命名导致的导入失败问题。
8 months ago
liwei1dao
5603d2a67e
fix(ios): 修复音频会话配置以正确处理音乐播放和TTS的音频打断
修改音乐服务插件,移除音频会话的 mixWithOthers 选项,使应用播放音乐时能打断外部音乐
在播放、恢复、切换歌曲时重新设置音频会话,确保正确激活
在停止播放时停用音频会话并通知其他应用恢复播放
修改语音插件,在TTS播放时使用 mixWithOthers 替代 duckOthers 选项
添加空闲时停用音频会话的逻辑,避免影响其他应用的音频播放
同时更新应用版本号至 1.0.22
8 months ago
lxm
21a1725807
chore: 更新 Firebase 配置以使用新项目
更新 firebase.json、GoogleService-Info.plist 和 firebase_options.dart 中的配置,将项目从 `voitrans-e0e3d` 切换到 `voitrans`。这包括更新项目 ID、应用 ID、API 密钥和存储桶等设置,以匹配新的 Firebase 项目环境。
8 months ago
liwei1dao
1b1e6ddda5
Merge branch 'new_dev' of https://github.com/deepcloud2048/deep_voice into new_dev
8 months ago
liwei1dao
76a0649890
fix(ios): 修复PiP音频会话配置以支持后台混音
在iOS 14.5以下版本中,PiP功能缺少.mixWithOthers选项,可能导致音频中断。现在统一为所有支持的iOS版本添加此选项,确保PiP音频在后台能与其他音频混合播放。同时将音频会话初始化时机从插件注册时延迟到实际创建PiP视图时,避免不必要的音频会话激活。
8 months ago
lxm
29425b8367
fix(azure_speech): 修复多中文变体时错误启用讯飞ASR的问题
当配置的语言列表包含两个或以上的中文变体(如 zh-CN 和 zh-TW)时,即使所有语言都在讯飞支持范围内,也应禁用讯飞ASR,因为讯飞无法同时处理多个中文方言。此修改在决定是否启用讯飞ASR的条件中增加了对多中文变体的检查。
8 months ago
lxm
02b5cbea76
feat(azure_speech): 支持多语言自动检测时选择最佳匹配语言
扩展自动语言检测功能,使其能够从支持的语言列表中选择最佳匹配的语言代码。当检测到中文时,优先选择 zh-CN,其次 zh-HK、zh-TW 或其他 zh- 变体;检测到英文时,优先选择 en-US 或其他 en- 变体。这确保了语音识别使用最准确的语言配置,提升了多语言场景下的识别准确性。
8 months ago
lxm
12a49c59cd
feat: 添加ASR初始化日志以增强调试能力
在iOS和Android平台添加ASR引擎初始化时的详细日志记录,包括支持的语音、区域配置、音频源类型以及讯飞配置状态。这些日志有助于在部署和生产环境中快速诊断语音识别初始化问题。
8 months ago
lxm
5bb6930768
fix(azure_speech): 修正讯飞语音识别支持的语言代码
将支持的语言代码中的错误值"en-TW"更正为"zh-TW",以正确匹配台湾中文的语言标识。同时为语音识别入口添加登录和积分检查逻辑,并在相关方法上补充注释说明。
8 months ago
liwei1dao
5b2e356906
feat(translation): 增加QQ音乐播放暂停支持
在切换翻译模式时,暂停QQ音乐播放并在退出时恢复播放,避免音频冲突
8 months ago
lxm
ddda2b8ad0
fix: 为WebView和底部弹窗添加SafeArea避免刘海屏遮挡
为所有WebView页面和底部弹窗添加SafeArea包装,设置top: false以避免系统状态栏区域遮挡内容。同时调整底部按钮位置,考虑底部安全区域边距,确保在刘海屏设备上UI显示正常。
8 months ago
lxm
cd94daef52
fix: 在多个视图的Scaffold body中包裹SafeArea防止内容被状态栏遮挡
为多个视图的Scaffold body添加SafeArea包装,设置top: false以避免内容被系统状态栏遮挡,确保UI在不同设备上正确显示
8 months ago
lxm
0634fbed4f
feat: 更新语音打断功能文案并添加提示信息
将"语音打断"功能重命名为"单轮对话"以更准确描述其行为,并添加详细说明的提示工具。同时,将iOS代理服务的默认中断状态设为false以匹配新功能逻辑。
- 更新中英文翻译文件,修改"voice_interrupt"键名对应的显示文本
- 在主页视图的开关旁添加信息图标,点击显示功能使用说明
- 调整AgentServiceImpl中isInterrupt的默认值为false,确保与单轮对话模式一致
9 months ago
liwei1dao
af224bf73c
Merge branch 'liwei' of https://github.com/deepcloud2048/deep_voice into new_dev
9 months ago
liwei1dao
5cdef5423b
fix(agent_service): 优化语音识别启动逻辑并添加调试日志
- 调整初始化检查顺序,避免在未初始化时执行蓝牙操作
- 添加 ble_wakeup 模式连续触发保护,防止重复启动
- 增加关键节点调试日志,便于问题排查
- 移除部分冗余日志输出
9 months ago
lxm
3bbb8aec02
chore(ios): 添加 ITSAppUsesNonExemptEncryption 配置项
为满足 App Store 对加密导出合规性的要求,在 Info.plist 中添加 ITSAppUsesNonExemptEncryption 键并设置为 false,声明应用使用的加密不涉及豁免条款。
9 months ago
liwei1dao
e676882597
chore: 添加调试日志以跟踪语音对话流程
添加开发者前缀的打印语句,便于调试语音对话的开始、结束和设备通信流程
9 months ago
liwei1dao
b726f422a7
Merge branch 'liwei' of https://github.com/deepcloud2048/deep_voice into liwei
9 months ago
liwei1dao
9ee0b4fd70
feat(opus): 添加 iOS Opus 解码支持并优化音频录制管理
- 新增 jl_opus iOS 插件,提供 Opus 文件解码功能
- 在 ble_service 中添加 Opus 文件解码方法,支持通过 MethodChannel 调用
- 优化音频录制文件管理,添加延迟停止机制避免数据截断
- 修复 agent_service 中音乐播放状态恢复逻辑
- 调整 opus_test 控制器以支持跨平台解码调用
9 months ago
lxm
5d967375a2
Revert "fix(语音识别): 修复从蓝牙唤醒模式切换时编码器未关闭的问题"
This reverts commit e3f0f9bccd .
9 months ago
liwei1dao
e3f0f9bccd
fix(语音识别): 修复从蓝牙唤醒模式切换时编码器未关闭的问题
在 startRecognition 方法中,当上一次识别模式为 ble_wakeup 而当前模式不是 ble_wakeup 时,主动调用 BleService.shared.closeCodec() 关闭蓝牙编码器,避免资源泄漏和状态不一致。同时移除冗余的 AudioSessionHub 调用并调整代码格式。
9 months ago
liwei1dao
98a57c6235
fix(ios): 修复耳机检测逻辑以正确应用音频会话配置
重构耳机检测逻辑,使用统一的 `detectHeadphonesOutput` 方法替代分散的端口类型检查,提高代码可维护性并确保音频会话配置在不同耳机类型下的一致性。
9 months ago
liwei1dao
20c35a3c7a
fix: 修复语音识别标点处理及MCP连接稳定性问题
修复语音识别在非push_to_talk模式下未移除首标点的问题,提升听写体验
优化MCP客户端连接管理,增加心跳检测和连接状态主动检查,避免假死连接
移除调试日志语句,避免生产环境日志污染
9 months ago
liwei1dao
aa31f526f7
fix(azure_speech): 修复语音合成会话管理逻辑
修复 Azure TTS 助手中的会话管理问题,确保音频合成和播放仅在正确的会话上下文中执行。移除冗余的会话 ID 处理逻辑,并添加会话快照检查以防止跨会话音频数据干扰。
具体修改包括:
- 在合成开始和音频处理事件中添加会话 ID 一致性检查
- 移除 `effectiveSessionId` 计算逻辑,直接使用传入的 sessionid
- 在停止合成时清空会话快照
- 注释调试日志以减少控制台输出
9 months ago
liwei1dao
3d280a834c
fix: 修复语音识别与TTS播放的音频会话冲突
修复iOS端音频会话冲突问题,避免语音识别时TTS仍在播放导致无声或异常。
- 注释掉AgentServiceImpl中初始化时设置识别模式和音频会话的代码,避免干扰
- 调整translation_controller中ASR服务启动逻辑,同时传译模式使用phone_call,面对面模式使用push_to_talk
- 修复AzureTtsHelper中播放状态管理,增加播放失败处理和状态重置
- 重新启用音频路由变化处理,当检测到音频会话切换到录音时立即停止TTS播放
- 添加调试日志便于问题追踪
9 months ago
liwei1dao
484b17a4e2
feat: 为语音服务添加模式参数支持
- 在 ASR 和 TTS 服务接口中添加模式参数,支持 normal、phone_call、push_to_talk 等模式
- 修改翻译控制器,根据当前翻译模式设置对应的 TTS 和 ASR 模式
- 重构 iOS 音频会话配置逻辑,优化不同模式下的音频路由和蓝牙设备处理
- 统一 TTS 模式设置方法名,将 setPhoneCallMode 重命名为 setTtsMode
9 months ago
lxm
d2dd59e1fe
Merge branch 'new_dev' of github.com:deepcloud2048/deep_voice into new_dev
9 months ago
liwei1dao
ae4d282aaf
fix(agent_service): 设置默认识别模式为normal并移除冗余日志
移除AgentServiceImpl中的冗余日志输出
在AgentServicePlugin中设置currentRecognitionMode默认值
添加AzureTtsHelper的调试日志用于跟踪识别模式
9 months ago