在 DSH Web GUI 的使用场景中,开发者常需要同时处理企业微信、Telegram、Discord 等多个平台的消息。手动逐一配置既繁琐又容易出错。dsh-message-gateway 插件提供了一套统一的连接器管理方案,将消息平台集成到侧边栏,支持流式回复与主动推送。
核心功能¶
该插件在 DSH Web 侧边栏「新会话」按钮下方提供「消息平台」入口,全屏管理多平台连接器。
- 多平台连接器:支持 Telegram、Discord、QQ、Email、钉钉、飞书、Bark、Server酱、Webhooks、企业微信及企业微信智能机器人。
- 企业微信智能机器人常驻桥接:保存凭据后自动建立官方 SDK 长连接,支持流式回复与上下文压缩。
- 通用主动推送通道:通过
POST /gateway/push接口,支持 Base64 图片与 Markdown 格式,供定时任务或自动化脚本调用。 - 凭据管理:凭据明文落盘至
~/.dsh/gateway.(权限 600)。 - 敏感信息脱敏:写入日志或控制台的消息内容会自动遮蔽疑似密钥(如
sk-、GitHub token 等)。 - 连接测试:提供针对各平台的连接测试功能。
- Webhook 接收端点:支持
POST /gateway/webhook/in接收外部系统消息。 - 微信个人号网关:支持对接 Wechaty 网关。
- 多语言支持:支持中文、English、Español。
安装与启用¶
使用官方安装命令即可将插件接入 DSH Web 环境:
dsh plugin --profile web add dsh-message-gateway
重启 dsh web 后,侧边栏「新会话」按钮下方将出现「消息平台」入口。
典型用法¶
- 打开 DSH Web(
dsh web),点击侧边栏「消息平台」按钮。 - 在管理页左侧选择目标平台,右侧填写对应的认证凭据(如 Token、AppID、Secret 等),点击「保存」进行连接。
- 对于企业微信智能机器人,保存
botId和secret后,插件会立即建立常驻连接,无需额外配置即可在企微中与机器人对话。 - 使用通用主动推送通道发送消息:
curl -X POST http://localhost:3000/gateway/push \
-H "Content-Type: application/json" \
-d '{
"platform": "telegram",
"target": "123456789",
"content": "这是通过网关主动推送的消息"
}'
配置项¶
插件提供以下配置项,可通过 dsh plugin config 或 profile 配置文件调整:
botLocale:机器人回复文案语言,默认zh。maxChatAgents:每机器人最多保留的聊天会话数,默认40。autoStartWecom:启动时是否自动用已保存的企微智能机器人凭据连接,默认true。groupReply:是否回复群聊消息,默认true。
注意事项¶
- 插件以当前 DSH 进程的权限运行,凭据明文落盘至
~/.dsh/gateway.,请注意文件权限与系统安全。 - 使用前请检查源码与许可证(MIT),确保符合您的使用规范。
总结¶
dsh-message-gateway 通过统一入口与流式回复能力,降低了多平台消息管理的复杂度,适合需要构建跨平台消息路由与自动化通知场景的开发者。