Home Assistant + Server酱:家中自动化事件微信推送

效果:门窗传感器、设备状态等自动化事件触发时,微信实时收到通知

前置条件

  • 获取 Server酱 SendKey(30 秒获取教程)。注意:Apprise 的 schan:// 协议仅支持 SCT 开头的 SendKey
  • 运行中的 Home Assistant 实例

配置步骤

configuration.yaml 中添加以下配置,直接填入你的 SendKey:

notify:
  - platform: apprise
    url: schan://你的SENDKEY

保存后,重启 Home Assistant 使配置生效。此时系统会生成 notify.apprise 服务,可在自动化动作中调用。

在自动化配置中,将动作设为调用服务 notify.apprise,Apprise 会自动将 titlemessage 映射为 Server酱 的 titledesp

完整示例

以下是一个完整的自动化配置,当前门传感器状态变为打开时,向微信推送通知:

automation:
  - alias: "前门打开通知"
    trigger:
      - platform: state
        entity_id: binary_sensor.front_door
        to: "on"
    action:
      - service: notify.apprise
        data:
          title: "【提醒】前门状态"
          message: "前门已被打开,请留意。"

常见问题

额度怎么算?

免费版每日可发送 5 条,每分钟上限 50 条;订阅会员目前特价最低 3 元/月,一天最多可发 1000 条(价格详情)。

消息没收到怎么办?

先在命令行验证连通性:pip install apprise && apprise -t "测试" -b "正文" "schan://你的SENDKEY"。若命令行正常但 HA 无推送,检查 HA 日志中的服务调用记录;也可参考常见问题与排查

sctp 开头的 SendKey 怎么用?

sctp 开头的 SendKey 目前不支持 Apprise 协议,如需在 Home Assistant 中使用,请参考 Server酱 官方文档或联系支持。

如何推送到钉钉或飞书?

Server酱 支持多种消息通道,包括钉钉、飞书等,配置方法详见通道对比

相关集成

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