dsh-messager 0.3.5 → 0.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/README.en.md +5 -4
  2. package/README.md +5 -4
  3. package/lib/channels/dingtalk.d.ts +3 -5
  4. package/lib/channels/dingtalk.d.ts.map +1 -1
  5. package/lib/channels/dingtalk.js +3 -6
  6. package/lib/channels/dingtalk.js.map +1 -1
  7. package/lib/channels/discord.d.ts +2 -3
  8. package/lib/channels/discord.d.ts.map +1 -1
  9. package/lib/channels/discord.js +2 -3
  10. package/lib/channels/discord.js.map +1 -1
  11. package/lib/channels/feishu.d.ts +3 -14
  12. package/lib/channels/feishu.d.ts.map +1 -1
  13. package/lib/channels/feishu.js +6 -15
  14. package/lib/channels/feishu.js.map +1 -1
  15. package/lib/channels/telegram.d.ts.map +1 -1
  16. package/lib/channels/telegram.js +0 -1
  17. package/lib/channels/telegram.js.map +1 -1
  18. package/lib/channels/wecom.d.ts +1 -1
  19. package/lib/channels/wecom.d.ts.map +1 -1
  20. package/lib/channels/wecom.js +1 -2
  21. package/lib/channels/wecom.js.map +1 -1
  22. package/lib/client.js +188 -35
  23. package/lib/client.js.map +1 -1
  24. package/lib/config-route.d.ts +18 -7
  25. package/lib/config-route.d.ts.map +1 -1
  26. package/lib/config-route.js +59 -16
  27. package/lib/config-route.js.map +1 -1
  28. package/lib/config-shared.d.ts +1 -1
  29. package/lib/config-shared.d.ts.map +1 -1
  30. package/lib/config-shared.js +1 -1
  31. package/lib/config-shared.js.map +1 -1
  32. package/lib/config.d.ts +0 -6
  33. package/lib/config.d.ts.map +1 -1
  34. package/lib/config.js +0 -1
  35. package/lib/config.js.map +1 -1
  36. package/lib/environment.d.ts +68 -0
  37. package/lib/environment.d.ts.map +1 -0
  38. package/lib/environment.js +87 -0
  39. package/lib/environment.js.map +1 -0
  40. package/lib/index.d.ts.map +1 -1
  41. package/lib/index.js +69 -14
  42. package/lib/index.js.map +1 -1
  43. package/lib/templates.d.ts +1 -3
  44. package/lib/templates.d.ts.map +1 -1
  45. package/lib/templates.js +1 -3
  46. package/lib/templates.js.map +1 -1
  47. package/lib/types/client/card-controller.d.ts +51 -1
  48. package/lib/types/client/card-controller.d.ts.map +1 -1
  49. package/lib/types/client/desktop.d.ts +30 -0
  50. package/lib/types/client/desktop.d.ts.map +1 -0
  51. package/lib/types/client/diff.d.ts +20 -2
  52. package/lib/types/client/diff.d.ts.map +1 -1
  53. package/lib/types/client/index.d.ts.map +1 -1
  54. package/lib/types/client/locales.d.ts +10 -2
  55. package/lib/types/client/locales.d.ts.map +1 -1
  56. package/lib/types/client/section.d.ts.map +1 -1
  57. package/lib/types/client/settings-form.d.ts +8 -1
  58. package/lib/types/client/settings-form.d.ts.map +1 -1
  59. package/lib/types/config-shared.d.ts +1 -1
  60. package/lib/types/config-shared.d.ts.map +1 -1
  61. package/lib/types/config.d.ts +0 -6
  62. package/lib/types/config.d.ts.map +1 -1
  63. package/package.json +1 -1
package/README.en.md CHANGED
@@ -6,7 +6,7 @@ A task notification plugin for DeepSeek Harness (DSH). Get system, browser, Feis
6
6
 
7
7
  ## Compatibility
8
8
 
9
- **v0.3.5 supports DSH `0.2.0-rc.1` and compatible later 0.2.x releases.** Keep the matching older plugin version for DSH 0.1.x. Upgrade DSH before installing this version; existing notification settings need no migration.
9
+ **v0.3.6 supports DSH `0.2.0-rc.1` and compatible later 0.2.x releases.** Keep the matching older plugin version for DSH 0.1.x. Upgrade DSH before installing this version; existing notification settings need no migration.
10
10
 
11
11
  ## Install
12
12
 
@@ -34,14 +34,15 @@ dsh web
34
34
 
35
35
  ## Use
36
36
 
37
- Open **Settings → Messenger** (「通知&信使」), choose the events and channels you want, enter any webhook or bot credentials, and save. System and browser notifications are enabled by default; third-party channels are disabled by default. Browser notifications require site permission.
37
+ Open **Settings → Messenger** (「通知&信使」), choose the events and channels you want, enter any webhook or bot credentials, and save. Browser notifications are enabled by default. System notifications default to off in the desktop app and on elsewhere; third-party channels default to off. Browser or app notifications require the corresponding permission.
38
38
 
39
- Notifications cover interactions, root-session task completion, and task errors. Running status does not trigger a notification. Saved settings take effect immediately.
39
+ Notifications cover interactions, root-session task completion, and task errors. Running status does not trigger a notification. In the desktop app, losing window focus can also trigger completion notices for the open session. Push messages no longer include links. Saved settings take effect immediately.
40
40
 
41
41
  ## Troubleshooting
42
42
 
43
43
  - **Settings section missing or config route returns 404:** Check the active `web` profile, restart DSH, and verify DSH/plugin version compatibility.
44
44
  - **No browser notification:** Check site permission. By default, notifications appear only when the page is hidden or unfocused.
45
+ - **No desktop notification:** Check app notification permission. If the system drops the app's notifications, enable the **System notifications** channel in settings as a fallback.
45
46
  - **Settings unavailable with `--patch`:** That development mode loads only the host side. Install with `dsh plugin add` to use the settings page.
46
47
 
47
- [v0.3.5 release notes](RELEASE_NOTES_v0.3.5.md) · [中文](README.md) · [MIT License](LICENSE)
48
+ [中文](README.md) · [MIT License](LICENSE)
package/README.md CHANGED
@@ -6,7 +6,7 @@ DeepSeek Harness(DSH)的任务通知插件。会话需要审批、提问或
6
6
 
7
7
  ## 兼容版本
8
8
 
9
- **v0.3.5 支持 DSH `0.2.0-rc.1` 及兼容的后续 0.2.x 版本。** 使用 DSH 0.1.x 请保留对应的旧版插件。升级到 DSH 0.2.x 后再安装本版本;现有通知配置无需迁移。
9
+ **v0.3.6 支持 DSH `0.2.0-rc.1` 及兼容的后续 0.2.x 版本。** 使用 DSH 0.1.x 请保留对应的旧版插件。升级到 DSH 0.2.x 后再安装本版本;现有通知配置无需迁移。
10
10
 
11
11
  ## 安装
12
12
 
@@ -34,14 +34,15 @@ dsh web
34
34
 
35
35
  ## 使用
36
36
 
37
- 打开 DSH 设置页的「通知&信使」分区,选择触发时机、启用通道并填写对应的 webhook 或 Bot 信息,然后保存。系统通知和浏览器通知默认开启;第三方通道默认关闭。浏览器通知还需要授予站点通知权限。
37
+ 打开 DSH 设置页的「通知&信使」分区,选择触发时机、启用通道并填写对应的 webhook 或 Bot 信息,然后保存。浏览器通知默认开启;系统通知在桌面版默认关闭、其他环境默认开启;第三方通道默认关闭。浏览器或应用通知还需要相应权限。
38
38
 
39
- 通知只针对需要交互、根会话任务完成和任务出错;运行中的蓝色状态不会触发通知。配置修改保存后即可生效。
39
+ 通知只针对需要交互、根会话任务完成和任务出错;运行中的蓝色状态不会触发通知。桌面版窗口失焦时也会提醒当前会话完成。推送消息不再附带跳转链接。配置修改保存后即可生效。
40
40
 
41
41
  ## 常见问题
42
42
 
43
43
  - **设置分区未出现或配置路由返回 404**:检查插件是否安装到当前使用的 `web` profile、DSH 是否已重启,以及 DSH 与插件版本是否兼容。
44
44
  - **浏览器通知未出现**:检查站点通知权限;默认仅在页面隐藏或失焦时发送。
45
+ - **桌面版通知未出现**:检查应用通知权限;如桌面应用的通知被系统丢弃,可在设置页启用「系统通知」通道作为备用。
45
46
  - **用 `--patch` 调试时设置不可用**:该模式只加载 host 端。要使用设置页,请通过 `dsh plugin add` 安装。
46
47
 
47
- [v0.3.5 更新说明](RELEASE_NOTES_v0.3.5.md) · [English](README.en.md) · [MIT License](LICENSE)
48
+ [English](README.en.md) · [MIT License](LICENSE)
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 钉钉自定义机器人通道(webhook):actionCard 卡片(标题 + markdown 正文 + 打开按钮),host 端投递。
2
+ * 钉钉自定义机器人通道(webhook):actionCard 卡片(标题 + 正文),host 端投递。
3
3
  *
4
4
  * 可选加签(机器人「安全设置-加签」):
5
5
  * string_to_sign = `${timestamp}\n${secret}`
@@ -15,18 +15,16 @@ export interface DingtalkChannelOptions {
15
15
  secret?: string;
16
16
  timeoutMs: number;
17
17
  }
18
- /** 钉钉 actionCard 载荷。 */
18
+ /** 钉钉 actionCard 载荷(无跳转按钮)。 */
19
19
  export interface DingtalkActionCardPayload {
20
20
  msgtype: 'actionCard';
21
21
  actionCard: {
22
22
  title: string;
23
23
  text: string;
24
24
  btnOrientation: '0';
25
- singleTitle: string;
26
- singleURL: string;
27
25
  };
28
26
  }
29
- /** 构建钉钉 actionCard 载荷(纯函数;title 限 20 字符;正文空时退化为链接)。 */
27
+ /** 构建钉钉 actionCard 载荷(纯函数;title 限 20 字符;无正文时正文退化为标题)。 */
30
28
  export declare function buildDingtalkPayload(payload: NotificationPayload): DingtalkActionCardPayload;
31
29
  /**
32
30
  * 钉钉加签:
@@ -1 +1 @@
1
- {"version":3,"file":"dingtalk.d.ts","sourceRoot":"","sources":["../../src/channels/dingtalk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAA;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAwB;AACxB,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,cAAc,EAAE,GAAG,CAAA;QACnB,WAAW,EAAE,MAAM,CAAA;QACnB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;CACF;AAED,uDAAuD;AACvD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,yBAAyB,CAY5F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAM7F;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAoBpF"}
1
+ {"version":3,"file":"dingtalk.d.ts","sourceRoot":"","sources":["../../src/channels/dingtalk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAA;IAClB,qCAAqC;IACrC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,+BAA+B;AAC/B,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,YAAY,CAAA;IACrB,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;QACZ,cAAc,EAAE,GAAG,CAAA;KACpB,CAAA;CACF;AAED,yDAAyD;AACzD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,GAAG,yBAAyB,CAS5F;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAM7F;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAoBpF"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 钉钉自定义机器人通道(webhook):actionCard 卡片(标题 + markdown 正文 + 打开按钮),host 端投递。
2
+ * 钉钉自定义机器人通道(webhook):actionCard 卡片(标题 + 正文),host 端投递。
3
3
  *
4
4
  * 可选加签(机器人「安全设置-加签」):
5
5
  * string_to_sign = `${timestamp}\n${secret}`
@@ -9,17 +9,14 @@
9
9
  * 注意:actionCard 的 title 限 20 字符,超出会被平台拒绝,需截断。
10
10
  */
11
11
  import { createHmac } from 'node:crypto';
12
- /** 构建钉钉 actionCard 载荷(纯函数;title 限 20 字符;正文空时退化为链接)。 */
12
+ /** 构建钉钉 actionCard 载荷(纯函数;title 限 20 字符;无正文时正文退化为标题)。 */
13
13
  export function buildDingtalkPayload(payload) {
14
- const link = `[打开 DSH](${payload.url})`;
15
14
  return {
16
15
  msgtype: 'actionCard',
17
16
  actionCard: {
18
17
  title: payload.title.slice(0, 20),
19
- text: payload.body === '' ? link : `${payload.body}\n\n${link}`,
18
+ text: payload.body === '' ? payload.title : payload.body,
20
19
  btnOrientation: '0',
21
- singleTitle: '打开 DSH',
22
- singleURL: payload.url,
23
20
  },
24
21
  };
25
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dingtalk.js","sourceRoot":"","sources":["../../src/channels/dingtalk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAsBxC,uDAAuD;AACvD,MAAM,UAAU,oBAAoB,CAAC,OAA4B;IAC/D,MAAM,IAAI,GAAG,YAAY,OAAO,CAAC,GAAG,GAAG,CAAA;IACvC,OAAO;QACL,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE;YACV,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,OAAO,IAAI,EAAE;YAC/D,cAAc,EAAE,GAAG;YACnB,WAAW,EAAE,QAAQ;YACrB,SAAS,EAAE,OAAO,CAAC,GAAG;SACvB;KACF,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,MAAc,EAAE,SAAiB;IACnF,MAAM,YAAY,GAAG,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/E,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACxC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IACtD,OAAO,GAAG,UAAU,GAAG,SAAS,aAAa,SAAS,SAAS,OAAO,EAAE,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;gBACtC,CAAC,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAC9F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBACnD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAClF,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAsD,CAAA;YAClH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACjH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"dingtalk.js","sourceRoot":"","sources":["../../src/channels/dingtalk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAoBxC,yDAAyD;AACzD,MAAM,UAAU,oBAAoB,CAAC,OAA4B;IAC/D,OAAO;QACL,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE;YACV,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,EAAE,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;YACxD,cAAc,EAAE,GAAG;SACpB;KACF,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,MAAc,EAAE,SAAiB;IACnF,MAAM,YAAY,GAAG,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/E,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACxC,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IACtD,OAAO,GAAG,UAAU,GAAG,SAAS,aAAa,SAAS,SAAS,OAAO,EAAE,CAAA;AAC1E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;gBACtC,CAAC,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAC9F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;gBACnD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAClF,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAsD,CAAA;YAClH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,sCAAsC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACjH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Discord 通道(webhook):embed 卡片(标题/正文/链接 + kind 颜色),host 端投递。
2
+ * Discord 通道(webhook):embed 卡片(标题/正文 + kind 颜色),host 端投递。
3
3
  *
4
4
  * 成功判定:任意 2xx(Discord 通常返回 204 No Content,无 body 可解析,
5
5
  * 因此与飞书/企微/钉钉的 errcode 判定不同,不解析响应 JSON)。
@@ -18,11 +18,10 @@ export interface DiscordEmbedPayload {
18
18
  embeds: Array<{
19
19
  title: string;
20
20
  description?: string;
21
- url: string;
22
21
  color: number;
23
22
  }>;
24
23
  }
25
- /** 构建 Discord embed 载荷(纯函数;title ≤ 256、description ≤ 4096)。 */
24
+ /** 构建 Discord embed 载荷(纯函数;title ≤ 256、description ≤ 4096;不含链接)。 */
26
25
  export declare function buildDiscordPayload(payload: NotificationPayload): DiscordEmbedPayload;
27
26
  export declare function createDiscordChannel(options: DiscordChannelOptions): NotifyChannel;
28
27
  //# sourceMappingURL=discord.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,MAAM,CAMtE;AAED,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,KAAK,CAAC;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;KACd,CAAC,CAAA;CACH;AAED,+DAA+D;AAC/D,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,GAAG,mBAAmB,CAUrF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAclF"}
1
+ {"version":3,"file":"discord.d.ts","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,8DAA8D;AAC9D,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,GAAG,MAAM,CAMtE;AAED,qCAAqC;AACrC,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,KAAK,CAAC;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,EAAE,MAAM,CAAA;KACd,CAAC,CAAA;CACH;AAED,oEAAoE;AACpE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,GAAG,mBAAmB,CASrF;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,aAAa,CAclF"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Discord 通道(webhook):embed 卡片(标题/正文/链接 + kind 颜色),host 端投递。
2
+ * Discord 通道(webhook):embed 卡片(标题/正文 + kind 颜色),host 端投递。
3
3
  *
4
4
  * 成功判定:任意 2xx(Discord 通常返回 204 No Content,无 body 可解析,
5
5
  * 因此与飞书/企微/钉钉的 errcode 判定不同,不解析响应 JSON)。
@@ -13,14 +13,13 @@ export function embedColorOf(kind) {
13
13
  case 'error': return 0xE74C3C;
14
14
  }
15
15
  }
16
- /** 构建 Discord embed 载荷(纯函数;title ≤ 256、description ≤ 4096)。 */
16
+ /** 构建 Discord embed 载荷(纯函数;title ≤ 256、description ≤ 4096;不含链接)。 */
17
17
  export function buildDiscordPayload(payload) {
18
18
  return {
19
19
  username: 'DSH',
20
20
  embeds: [{
21
21
  title: payload.title.slice(0, 256),
22
22
  ...(payload.body === '' ? {} : { description: payload.body.slice(0, 4096) }),
23
- url: payload.url,
24
23
  color: embedColorOf(payload.kind),
25
24
  }],
26
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,8DAA8D;AAC9D,MAAM,UAAU,YAAY,CAAC,IAAiC;IAC5D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,CAAC,OAAO,QAAQ,CAAA;QACnC,KAAK,WAAW,CAAC,CAAC,OAAO,QAAQ,CAAA;QACjC,KAAK,OAAO,CAAC,CAAC,OAAO,QAAQ,CAAA;IAC/B,CAAC;AACH,CAAC;AAaD,+DAA+D;AAC/D,MAAM,UAAU,mBAAmB,CAAC,OAA4B;IAC9D,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,CAAC;gBACP,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAClC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC5E,GAAG,EAAE,OAAO,CAAC,GAAG;gBAChB,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;aAClC,CAAC;KACH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAA8B;IACjE,OAAO;QACL,EAAE,EAAE,SAAS;QACb,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBAClD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YACjF,gCAAgC;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"discord.js","sourceRoot":"","sources":["../../src/channels/discord.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,8DAA8D;AAC9D,MAAM,UAAU,YAAY,CAAC,IAAiC;IAC5D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,aAAa,CAAC,CAAC,OAAO,QAAQ,CAAA;QACnC,KAAK,WAAW,CAAC,CAAC,OAAO,QAAQ,CAAA;QACjC,KAAK,OAAO,CAAC,CAAC,OAAO,QAAQ,CAAA;IAC/B,CAAC;AACH,CAAC;AAYD,oEAAoE;AACpE,MAAM,UAAU,mBAAmB,CAAC,OAA4B;IAC9D,OAAO;QACL,QAAQ,EAAE,KAAK;QACf,MAAM,EAAE,CAAC;gBACP,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAClC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAAC;gBAC5E,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;aAClC,CAAC;KACH,CAAA;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAA8B;IACjE,OAAO;QACL,EAAE,EAAE,SAAS;QACb,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE;gBAC/C,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBAClD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YACjF,gCAAgC;QAClC,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -21,27 +21,16 @@ export interface FeishuCardPayload {
21
21
  };
22
22
  template: 'green' | 'orange' | 'red';
23
23
  };
24
- elements: ({
24
+ elements: Array<{
25
25
  tag: 'div';
26
26
  text: {
27
27
  tag: 'lark_md';
28
28
  content: string;
29
29
  };
30
- } | {
31
- tag: 'action';
32
- actions: Array<{
33
- tag: 'button';
34
- text: {
35
- tag: 'plain_text';
36
- content: string;
37
- };
38
- url: string;
39
- type: 'primary';
40
- }>;
41
- })[];
30
+ }>;
42
31
  };
43
32
  }
44
- /** 构建飞书卡片(纯函数)。 */
33
+ /** 构建飞书卡片(纯函数;不含任何跳转链接)。 */
45
34
  export declare function buildCardPayload(payload: NotificationPayload): FeishuCardPayload;
46
35
  /**
47
36
  * 按飞书签名规范签名:
@@ -1 +1 @@
1
- {"version":3,"file":"feishu.d.ts","sourceRoot":"","sources":["../../src/channels/feishu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAWD,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE;QACJ,MAAM,EAAE;YAAE,KAAK,EAAE;gBAAE,GAAG,EAAE,YAAY,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC;YAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;SAAE,CAAA;QAC/F,QAAQ,EAAE,CACN;YAAE,GAAG,EAAE,KAAK,CAAC;YAAC,IAAI,EAAE;gBAAE,GAAG,EAAE,SAAS,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,GACzD;YAAE,GAAG,EAAE,QAAQ,CAAC;YAAC,OAAO,EAAE,KAAK,CAAC;gBAAE,GAAG,EAAE,QAAQ,CAAC;gBAAC,IAAI,EAAE;oBAAE,GAAG,EAAE,YAAY,CAAC;oBAAC,OAAO,EAAE,MAAM,CAAA;iBAAE,CAAC;gBAAC,GAAG,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,SAAS,CAAA;aAAE,CAAC,CAAA;SAAE,CACnI,EAAE,CAAA;KACJ,CAAA;CACF;AAED,mBAAmB;AACnB,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,CAwBhF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,OAAO,EAAE,CAAC,EACV,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,CAAC,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAIzC;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAuBhF"}
1
+ {"version":3,"file":"feishu.d.ts","sourceRoot":"","sources":["../../src/channels/feishu.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAWD,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,aAAa,CAAA;IACvB,IAAI,EAAE;QACJ,MAAM,EAAE;YAAE,KAAK,EAAE;gBAAE,GAAG,EAAE,YAAY,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC;YAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAA;SAAE,CAAA;QAC/F,QAAQ,EAAE,KAAK,CAAC;YAAE,GAAG,EAAE,KAAK,CAAC;YAAC,IAAI,EAAE;gBAAE,GAAG,EAAE,SAAS,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,CAAC,CAAA;KAC3E,CAAA;CACF;AAED,4BAA4B;AAC5B,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,iBAAiB,CAehF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,EAChD,OAAO,EAAE,CAAC,EACV,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAChB,CAAC,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAIzC;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,aAAa,CAuBhF"}
@@ -12,7 +12,7 @@ function cardTemplateOf(kind) {
12
12
  case 'error': return 'red';
13
13
  }
14
14
  }
15
- /** 构建飞书卡片(纯函数)。 */
15
+ /** 构建飞书卡片(纯函数;不含任何跳转链接)。 */
16
16
  export function buildCardPayload(payload) {
17
17
  return {
18
18
  msg_type: 'interactive',
@@ -21,20 +21,11 @@ export function buildCardPayload(payload) {
21
21
  title: { tag: 'plain_text', content: payload.title },
22
22
  template: cardTemplateOf(payload.kind),
23
23
  },
24
- elements: [
25
- ...(payload.body === ''
26
- ? []
27
- : [{ tag: 'div', text: { tag: 'lark_md', content: payload.body } }]),
28
- {
29
- tag: 'action',
30
- actions: [{
31
- tag: 'button',
32
- text: { tag: 'plain_text', content: '打开 DSH' },
33
- url: payload.url,
34
- type: 'primary',
35
- }],
36
- },
37
- ],
24
+ // minimal 级别没有正文:正文退化为标题,保证卡片始终有正文元素
25
+ elements: [{
26
+ tag: 'div',
27
+ text: { tag: 'lark_md', content: payload.body === '' ? payload.title : payload.body },
28
+ }],
38
29
  },
39
30
  };
40
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"feishu.js","sourceRoot":"","sources":["../../src/channels/feishu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feishu.js","sourceRoot":"","sources":["../../src/channels/feishu.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,eAAO,MAAM,iBAAiB,6BAA6B,CAAA;AAE3D,8BAA8B;AAC9B,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED,sBAAsB;AACtB,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,oBAAoB,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,CAAA;CAC/C;AAED,6CAA6C;AAC7C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAUtG;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAkBpF"}
1
+ {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAA;IAChB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,eAAO,MAAM,iBAAiB,6BAA6B,CAAA;AAE3D,8BAA8B;AAC9B,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO/C;AAED,sBAAsB;AACtB,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,oBAAoB,EAAE;QAAE,WAAW,EAAE,OAAO,CAAA;KAAE,CAAA;CAC/C;AAED,6CAA6C;AAC7C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,GAAG,mBAAmB,CAStG;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAkBpF"}
@@ -21,7 +21,6 @@ export function buildTelegramPayload(payload, chatId) {
21
21
  const lines = [`<b>${escapeHtml(payload.title)}</b>`];
22
22
  if (payload.body !== '')
23
23
  lines.push(escapeHtml(payload.body));
24
- lines.push(`<a href="${escapeHtml(payload.url)}">打开 DSH</a>`);
25
24
  return {
26
25
  chat_id: chatId,
27
26
  text: lines.join('\n').slice(0, 4096),
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAA;AAE3D,8BAA8B;AAC9B,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI;SACR,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AAC7B,CAAC;AAUD,6CAA6C;AAC7C,MAAM,UAAU,oBAAoB,CAAC,OAA4B,EAAE,MAAc;IAC/E,MAAM,KAAK,GAAG,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACrD,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC7D,KAAK,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;IAC7D,OAAO;QACL,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QACrC,UAAU,EAAE,MAAM;QAClB,oBAAoB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;KAC5C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,QAAQ,GAAG,GAAG,iBAAiB,OAAO,OAAO,CAAC,QAAQ,cAAc,CAAA;YAC1E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9E,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAuD,CAAA;YACnH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAA;YAChF,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../src/channels/telegram.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAWH,MAAM,CAAC,MAAM,iBAAiB,GAAG,0BAA0B,CAAA;AAE3D,8BAA8B;AAC9B,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI;SACR,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;AAC7B,CAAC;AAUD,6CAA6C;AAC7C,MAAM,UAAU,oBAAoB,CAAC,OAA4B,EAAE,MAAc;IAC/E,MAAM,KAAK,GAAG,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACrD,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;IAC7D,OAAO;QACL,OAAO,EAAE,MAAM;QACf,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QACrC,UAAU,EAAE,MAAM;QAClB,oBAAoB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;KAC5C,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAA+B;IACnE,OAAO;QACL,EAAE,EAAE,UAAU;QACd,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,QAAQ,GAAG,GAAG,iBAAiB,OAAO,OAAO,CAAC,QAAQ,cAAc,CAAA;YAC1E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;gBACrC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBACnE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAC9E,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAuD,CAAA;YACnH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC;gBAC/C,MAAM,IAAI,KAAK,CAAC,sBAAsB,MAAM,CAAC,WAAW,IAAI,eAAe,EAAE,CAAC,CAAA;YAChF,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * 企业微信群机器人通道(webhook):POST markdown 消息,host 端投递。
3
3
  *
4
- * 消息:msgtype=markdown,content 为「加粗标题 + 正文 + 打开链接」。
4
+ * 消息:msgtype=markdown,content 为「加粗标题 + 正文」。
5
5
  * 可选加签(机器人「安全设置-加签」):
6
6
  * string_to_sign = `${timestamp}\n${secret}`
7
7
  * sign = base64(HmacSHA256(string_to_sign, key=secret)) // 无需 URL 编码
@@ -1 +1 @@
1
- {"version":3,"file":"wecom.d.ts","sourceRoot":"","sources":["../../src/channels/wecom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAA;IAClB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,0BAA0B;AAC1B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,UAAU,CAAA;IACnB,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAC9B;AAED,mDAAmD;AACnD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,oBAAoB,CAKpF;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAK1F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,aAAa,CAoB9E"}
1
+ {"version":3,"file":"wecom.d.ts","sourceRoot":"","sources":["../../src/channels/wecom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAA;AAEtE,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAA;IAClB,uCAAuC;IACvC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,0BAA0B;AAC1B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,UAAU,CAAA;IACnB,QAAQ,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;CAC9B;AAED,mDAAmD;AACnD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,GAAG,oBAAoB,CAIpF;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAK1F;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,mBAAmB,GAAG,aAAa,CAoB9E"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * 企业微信群机器人通道(webhook):POST markdown 消息,host 端投递。
3
3
  *
4
- * 消息:msgtype=markdown,content 为「加粗标题 + 正文 + 打开链接」。
4
+ * 消息:msgtype=markdown,content 为「加粗标题 + 正文」。
5
5
  * 可选加签(机器人「安全设置-加签」):
6
6
  * string_to_sign = `${timestamp}\n${secret}`
7
7
  * sign = base64(HmacSHA256(string_to_sign, key=secret)) // 无需 URL 编码
@@ -14,7 +14,6 @@ export function buildWecomPayload(payload) {
14
14
  const lines = [`**${payload.title}**`];
15
15
  if (payload.body !== '')
16
16
  lines.push(payload.body);
17
- lines.push(`[打开 DSH](${payload.url})`);
18
17
  return { msgtype: 'markdown', markdown: { content: lines.join('\n').slice(0, 4000) } };
19
18
  }
20
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"wecom.js","sourceRoot":"","sources":["../../src/channels/wecom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAgBxC,mDAAmD;AACnD,MAAM,UAAU,iBAAiB,CAAC,OAA4B;IAC5D,MAAM,KAAK,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,IAAI,CAAC,CAAA;IACtC,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,GAAG,GAAG,CAAC,CAAA;IACtC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAA;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB,EAAE,MAAc,EAAE,SAAiB;IAChF,MAAM,YAAY,GAAG,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/E,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IACtD,OAAO,GAAG,UAAU,GAAG,SAAS,aAAa,SAAS,SAAS,IAAI,EAAE,CAAA;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAA4B;IAC7D,OAAO;QACL,EAAE,EAAE,OAAO;QACX,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;gBACtC,CAAC,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAC3F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAC/E,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAsD,CAAA;YAClH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC9G,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"wecom.js","sourceRoot":"","sources":["../../src/channels/wecom.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAgBxC,mDAAmD;AACnD,MAAM,UAAU,iBAAiB,CAAC,OAA4B;IAC5D,MAAM,KAAK,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,IAAI,CAAC,CAAA;IACtC,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACjD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAA;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,UAAkB,EAAE,MAAc,EAAE,SAAiB;IAChF,MAAM,YAAY,GAAG,GAAG,SAAS,KAAK,MAAM,EAAE,CAAA;IAC9C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/E,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAA;IACtD,OAAO,GAAG,UAAU,GAAG,SAAS,aAAa,SAAS,SAAS,IAAI,EAAE,CAAA;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAA4B;IAC7D,OAAO;QACL,EAAE,EAAE,OAAO;QACX,KAAK,CAAC,IAAI,CAAC,OAA4B;YACrC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,SAAS;gBACtC,CAAC,CAAC,OAAO,CAAC,UAAU;gBACpB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAC3F,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAChD,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;aAC/C,CAAC,CAAA;YACF,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;YAC/E,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAsD,CAAA;YAClH,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,KAAK,CAAC,mCAAmC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC9G,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}