Moonraker + Server酱:Klipper 3D 打印状态推送到微信

效果:Klipper 打印完成或出错时,自动推送消息到微信,不用守在打印机旁。

前置条件

  • Server酱 SendKey(30 秒获取教程)。schan:// 协议仅支持 SCT 开头的 SendKey,不支持 sctp 开头的 SendKey。
  • 已安装 Klipper + Moonraker 的 3D 打印机环境(Mainsail 或 Fluidd 均可)。
  • Moonraker 内置 apprise 通知组件(notifier),无需额外安装。
  • 如需推送到企业微信/钉钉/飞书群,参见通道说明

配置步骤

1. 命令行验证连通性

在 Moonraker 所在机器上执行,确认 apprise 与 Server酱 通路正常:

pip install apprise && apprise -t "测试" -b "正文" "schan://你的SENDKEY"

收到微信推送即说明通路正常。

2. 在 moonraker.conf 中添加 notifier 段

编辑 moonraker.conf,添加以下配置:

[notifier my_phone]
url: schan://你的SENDKEY

notifier 段的事件触发字段请参考 Moonraker 官方文档配置。

3. 重启 Moonraker

保存 moonraker.conf 后重启 Moonraker 服务使配置生效。重启方式以你的安装方式为准。

常见问题

免费额度够用吗?

Server酱免费版每天 5 条。3D 打印通知频率低,日常使用足够。订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。

每分钟能发多少条?

每分钟上限 50 条,会员每日 API 请求上限 1000 条。

配置后没收到消息?

先确认命令行验证步骤能收到推送;再检查 moonraker.conf 中 notifier 段缩进与格式;最后确认 Moonraker 已重启。更多排查见常见问题与排查

sctp 开头的 SendKey 能用吗?

不能。schan:// 是 Apprise 中 Server酱 的专用协议,仅支持 SCT 开头的 SendKey。sctp 开头的 SendKey 不能使用 schan:// 协议,可尝试其他接入方式,如 Python 脚本推送

消息内容能自定义吗?

notifier 段的消息模板字段以 Moonraker 官方文档为准。

相关集成

懒人方案:把这段话复制给你的 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 条结果摘要即可,批量任务合并成一条,不要每步都推。
请根据我当前的项目和场景直接写好代码/配置并验证。