Duplicati + Server酱:备份任务完成或失败时推送到微信

效果:Duplicati 备份任务执行完毕后,自动通过 Server酱 将结果推送到微信。

前置条件

  • Server酱 SendKey(30 秒获取教程
  • Duplicati 已安装并创建至少一个备份任务
  • 备份任务所在机器可访问外网

Server酱 支持推送到微信服务号/企业微信/钉钉/飞书等多个通道,详见 /getting-started/channels/。

配置步骤

  1. 在 Duplicati 中打开备份任务,进入 Options → 高级选项。

  2. 添加 send-http-url,填入以下地址(将 你的SENDKEY 替换为实际 SendKey):

https://sctapi.ftqq.com/你的SENDKEY.send?title=备份完成

这是最简配置——备份结束后 Duplicati 向该地址发送 POST 请求,Server酱 推送一条标题为「备份完成」的消息到微信。

3.(可选)如需在消息中包含备份详情或区分成功/失败状态,继续在高级选项中添加:

  • send-http-result-output-format:设为 form,使 Duplicati 以表单形式发送参数,与 Server酱 的 title/desp 参数对接
  • send-http-message:将备份结果映射到 Server酱 的 titledesp 参数(具体语法以 Duplicati 官方文档为准)

配置后,备份的成功/失败状态、耗时等信息可一并推送到微信。

  1. 保存配置,手动运行一次备份任务进行验证。

完整示例

以下为最简配置,在备份任务 Options → 高级选项中添加 send-http-url,值为:

https://sctapi.ftqq.com/你的SENDKEY.send?title=备份完成

Server酱³ 用户将地址替换为:

https://你的UID.push.ft07.com/send/你的SENDKEY.send?title=备份完成

UID 是 SendKey 中 sctpt 之间的数字。

常见问题

每天能发多少条消息?

免费额度为每天 5 条。订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。

备份完成了但微信没收到消息?

先检查 SendKey 是否正确、Duplicati 所在机器能否访问外网。更多排查步骤见 常见问题与排查

备份频繁触发,消息发不出去?

每分钟上限 50 条,会员每日 API 请求上限 1000 次。如备份任务密集,建议适当调整备份频率。

send-http-message 怎么写?

Duplicati 的 send-http-message 语法以官方文档为准。最简方案是直接在 send-http-url 的查询参数中写死 title,不依赖 send-http-message。

相关集成

懒人方案:把这段话复制给你的 AI 助手

把下面这段文字原样粘贴给 Claude Code、Cursor 或任何 AI 编程助手,它就会替你完成 Server酱 的接入:

请帮我把 Server酱 微信通知接入到我当前的项目/工具中:
1. API:POST https://sctapi.ftqq.com/{SendKey}.send,参数 title(必填,不能含换行)、desp(正文,支持 Markdown,可选);成功时返回 JSON 的 code 为 0。
2. 如果我的 SendKey 以 sctp 开头,则改用 https://{uid}.push.ft07.com/send/{SendKey}.send,uid 是 SendKey 中 sctp 与 t 之间的数字。
3. SendKey 从环境变量 SERVERCHAN_SENDKEY 读取;如果没有,提醒我到 https://sct.ftqq.com 免费获取(每天 5 条额度)。
4. 安全要求:不要把 SendKey 硬编码进代码、不要打印到日志、不要提交到 git。
5. 频率约定:任务结束发 1 条结果摘要即可,批量任务合并成一条,不要每步都推。
请根据我当前的项目和场景直接写好代码/配置并验证。