核心用法
Google Home CLI 是一套基于 Google Smart Device Management (SDM) API 的命令行工具集,允许用户通过 curl 和 jq 直接操控 Google Nest 生态设备。主要功能覆盖:
- 设备发现与查询:列出所有关联设备、获取设备状态与特性(traits)
- 恒温器控制:查看当前温度/湿度、设定目标温度(摄氏度)、切换 HVAC 模式(制热/制冷/自动)、控制风扇
- 摄像头与门铃:获取设备状态、下载快照、生成直播流 URL
- 音箱与显示屏:查看设备信息、调节音量、停止播放
使用方式包括直接调用封装好的 google-home-cli 命令,或直接使用原始 curl 请求;同时提供 nest 辅助脚本简化常用操作。
显著优点
1. 纯命令行驱动:无需图形界面,适合远程 SSH 管理、自动化脚本集成
2. 依赖最小化:仅需 curl 和 jq,几乎兼容所有 Unix-like 环境
3. 直接对接官方 API:基于 Google 官方 SDM API,非逆向工程,接口稳定性有保障
4. 灵活配置:支持环境变量与配置文件双模式,便于 CI/CD 或容器化部署
5. 功能覆盖完整:涵盖温控、安防、媒体三大核心场景
潜在缺点与局限性
- OAuth 配置繁琐:需手动创建 Google Cloud 项目、启用 API、配置 OAuth 凭据、注册设备,对普通用户门槛较高
- Token 生命周期管理:访问令牌会过期,需自行实现刷新逻辑,增加维护成本
- 单位限制:温度强制使用摄氏度,华氏度用户需手动换算
- 设备路径冗长:完整设备 ID 格式为
enterprises/PROJECT_ID/devices/DEVICE_ID,交互不够友好 - 权限粒度依赖 Google:部分功能(如摄像头直播)需额外权限,受 Google 策略变更影响
适合人群
- 习惯终端操作的开发者与运维工程师
- 需要将 Nest 设备集成到 Home Assistant、Node-RED 等自动化平台的进阶用户
- 偏好版本控制配置、追求可复现基础设施的极客用户
常规风险
- 凭据泄露风险:
client_secret、refresh_token、access_token需妥善保管,硬编码或误提交至仓库可能导致设备被非法控制 - API 配额与费用:Google Cloud 项目存在 API 调用配额,超出可能产生费用或被限流
- Google 政策变更:SDM API 为 Google 官方服务,接口权限、定价策略可能调整,需关注弃用通知