Nest Devices

🏠 官方 API 掌控全屋智能

smart-home榜 #7

通过 Google Device Access API 控制 Nest 智能家居设备,支持温控器调节、摄像头实时查看及门铃事件推送,需 $5 注册费与云项目配置。

收藏
11.4k
安装
2.4k
版本
1.1.0
CLS 安全性认证2026-06-23
点击查看完整报告 >

使用说明

核心用法

nest-devices 是一个基于 Google Smart Device Management API 的智能家居控制技能,支持 Nest 温控器、摄像头和门铃设备的程序化操控。

基础功能

  • 温控器控制:获取状态、设定温度(支持 °C/°F)、切换模式(HEAT/COOL/HEATCOOL/OFF)、启用节能模式
  • 摄像头管理:生成 RTSP 实时流地址(有效期约 5 分钟)
  • 设备枚举:列出关联的所有 Nest 设备及其 ID

实时事件推送(高级)

通过 Google Cloud Pub/Sub + Cloudflare Tunnel 实现门铃响铃、移动侦测、人员识别、声音检测等事件的即时 webhook 推送,无需轮询。

---

显著优点

1. 官方 API 支持:基于 Google 官方 Device Access API,协议稳定、功能完整
2. 多语言支持:提供 Python API 与命令行工具,便于集成到自动化工作流

3. 实时事件能力:Pub/Sub 架构支持真正的推送式通知,延迟低

4. 凭证管理灵活:支持 1Password 集成与环境变量两种安全存储方式

5. 温度参考表:内置节能/舒适/夜间等场景的温度建议

---

潜在缺点与局限性

| 问题 | 说明 |
|------|------|
| 准入门槛 | 需支付 $5 注册费,完成 Google Cloud 项目配置与 OAuth 流程 |
| 配置复杂 | 实时事件功能涉及 GCP Pub/Sub、Cloudflare Tunnel、systemd 服务,技术门槛较高 |
| 流地址时效 | 摄像头 RTSP 流仅 5 分钟有效期,需频繁刷新 |
| 设备兼容性 | 部分旧款 Nest 设备可能不支持全部 API 特性 |
| 依赖外部服务 | 事件推送依赖 Google Cloud 和 Cloudflare 的可用性 |

---

适合人群

  • 智能家居爱好者:希望程序化控制 Nest 设备的技术用户
  • 家庭自动化开发者:需要将温控/安防集成到自研系统的工程师
  • 远程家庭管理者:需要实时接收门铃/异常事件通知的用户
  • 节能优化用户:希望通过自动化调度降低能源消耗

---

常规风险

1. OAuth 凭证泄露:refresh_token 一旦泄露,攻击者可长期控制设备;建议使用 1Password 等加密存储
2. Webhook 暴露面:实时事件功能需暴露公网端点,需配置 CLAWDBOT_HOOKS_TOKEN 鉴权防止未授权访问

3. 云服务依赖:GCP 或 Cloudflare 服务中断将导致事件推送失败

4. 隐私合规:摄像头/门铃数据流经第三方云服务,需确保符合本地隐私法规

安全解读

核心用法

nest-devices 是一个用于控制 Google Nest 智能家居设备的 Skill,基于官方 Smart Device Management (SDM) API 实现。用户可通过命令行或 Python API 完成设备发现、状态查询与指令下发。

基础功能

  • 恒温器控制:查询当前温度/湿度,设置目标温度(支持摄氏/华氏),切换加热/制冷/节能模式
  • 摄像头管理:生成 RTSP 实时流地址(有效期约5分钟),支持远程查看
  • 门铃监控:获取设备在线状态与事件历史

实时事件推送(高阶功能):
通过 Google Cloud Pub/Sub + Cloudflare Tunnel 搭建 webhook 通道,实现门铃按铃、移动侦测、人形识别等事件的秒级推送,无需轮询。

显著优点

1. 官方 API 保障:基于 Google 第一方 SDM API,协议稳定、文档完善,非逆向破解方案
2. 安全凭证管理:原生支持 1Password CLI 集成,OAuth 凭据可安全托管于密码管理器,避免环境变量泄露风险

3. 端到端加密:所有外部通信强制 HTTPS/TLS 1.3,本地 webhook 仅监听 localhost

4. 模块化设计:核心逻辑封装为 NestClient 类,易于集成到更大的自动化工作流

5. 事件驱动架构:Pub/Sub 推送机制相比轮询显著降低 API 调用频次与延迟

潜在缺点与局限性

| 限制项 | 说明 |
|--------|------|

setup 门槛 | 需支付 $5 Google Device Access 注册费,配置 OAuth 2.0、GCP 项目、Pub/Sub 等多步骤 |
实时流时效 | RTSP 流地址5分钟过期,需重新生成,不适合长期录制 |

设备兼容性 | 仅支持 2019 年后迁移至 Google Account 的 Nest 设备,旧版 Nest 账号设备不兼容 |

网络依赖 | 实时事件需公网可访问的 webhook 端点(Cloudflare Tunnel 或其他反向代理) |

地域限制 | 部分 Nest 功能因地区法规差异可用性不同 |

适合人群

  • 已拥有 Nest 设备且愿意投入时间完成技术 setup 的进阶用户
  • 需要将智能家居与自托管自动化系统(如 Home Assistant、Clawdbot)集成的开发者
  • 注重数据隐私、偏好本地优先架构而非完全依赖 Google Home app 的用户

常规风险

  • 凭证泄露风险:OAuth refresh token 一旦泄露可被用于长期控制设备;务必使用 1Password 或硬件安全模块存储
  • Webhook 暴露面:Cloudflare Tunnel 将本地服务暴露至公网,需确保 CLAWDBOT_HOOKS_TOKEN 强度足够且定期轮换
  • 服务依赖:Google 可能调整 SDM API 权限或费率,需关注官方变更公告
  • 物理安全风险:自动化温控若配置错误可能导致管道冻裂或能源浪费,建议保留手动覆盖机制

Nest Devices 内容

scripts文件夹
手动下载zip · 9.2 kB
nest-webhook.pytext/plain
请选择文件