Back to home

mxl2498

dsh-sound-alert

DSH Web 插件:助手回答结束时播放「叮咚」提示音 | DSH plugin that plays a chime when the assistant finishes replying

Stars
0
Language
JavaScript
Created
Aug 16, 2026
Updated
Aug 16, 2026

Introduction

声音提醒(@dsh-external/声音提醒)

DSH Web 客户端插件:助手回答结束时播放一段清脆的“叮咚”提示音

纯浏览器端实现,零音频资源依赖(用 Web Audio API 运行时合成提示音), 不需要服务端逻辑,也不需要重新构建任何官方包。

截图

设置 → 「声音提醒」页(总开关 / 音量 / 监听所有会话):

声音提醒设置页

工作原理

  • 通过 dsh.clientplatform: "web")接入 Web 客户端 Loader 树;
  • 订阅 ctx.sessions 的会话列表与当前会话快照;
  • 检测会话快照 running 状态 true → false 的边缘 —— 即助手结束回答的时刻 —— 播放提示音;
  • 因浏览器自动播放策略,首次播放需要一次用户手势(点击/按键),之后即可随时提醒。

配置

在 profile 的插件 patch(本包的 cordis.patch.yml,可被 profile 覆盖)中调整:

配置项默认值说明
enabledtrue是否启用声音提醒
volume0.5音量 0~1
allSessionsfalsefalse 只监听当前会话;true 监听所有会话的回答结束

示例(在 profile 的 cordis.patch.yml 中覆盖):

- id: sound-alert
  config:
    enabled: true
    volume: 0.7
    allSessions: true

安装(从 GitHub)

# 1. 把插件加入 web profile 的依赖(dsh plugin 会转发给 pnpm 并自动追加进 bundles)
dsh plugin --profile web add github:mxl2498/dsh-sound-alert

# 2. 重启 DSH Desktop / dsh web,使 Loader 树重载

本地开发时也可用 dsh plugin --profile web add file:../dsh-sound-alert 安装本地目录。

安装后 dsh plugin 的 reconcile 会自动把本包追加进 dsh.profile.bundles(因为它声明了 dsh.bundle.patch),随后其 cordis.patch.ymlinsert 条目把插件挂进 Loader 树, Node 半区扫描到 dsh.client 声明后即会服务浏览器端产物。

文件

  • lib/index.js —— 服务端占位插件(Loader 条目)
  • lib/client.js —— 浏览器端实现(__ModuleLoader__ lazy-CJS 包)
  • cordis.patch.yml —— bundle patch(insert + 默认配置)