通过 Starling Home Hub 的本地 REST API 控制 Nest 和 Google Home 智能家居设备。支持恒温器、摄像头、Nest Protect、Nest × Yale 门锁、温度传感器、在家/外出控制及天气服务。用于管理设备状态、设置温度、获取摄像头快照、开关门锁、检查烟雾/一氧化碳警报及切换在家/外出模式。
Starling Home Hub(Nest/Google Home). community help – 不隶属于或认可 Starling LLC, Goog是一项面向实际任务的技能,主要用于Nest 是Google LLC的商标.;Starling Home Hub 是产品.。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;
涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
社区技能 — 与 Starling LLC、Google、Nest 或 Apple 无任何关联,亦未获其认可或授权。 Nest 是 Google LLC 的商标。Starling Home Hub 是 Starling LLC 的产品。本技能需搭配固件版本 8.0 及以上、且已启用 Developer Connect API 的 Starling Home Hub 使用。
通过 starling.sh 脚本,利用 Starling Home Hub Developer Connect(SDC)本地 REST API 控制 Nest 智能家居设备。
| 变量 | 是否必需 | 是否为密钥 | 说明 |
|---|---|---|---|
STARLING_HUB_IP |
是 | 否 | 您的 Starling Home Hub 的本地 IP 地址(例如:192.168.1.151) |
STARLING_API_KEY |
是 | 是 | 在 Starling Home Hub 应用(Developer Connect 设置页)中创建的 API 密钥 |
请设置以下环境变量(切勿在脚本中硬编码密钥):
export STARLING_HUB_IP="192.168.1.xxx" export STARLING_API_KEY="your-api-key" # 来自 Starling Home Hub 应用
脚本路径为:scripts/starling.sh
可选参数:--http(降级使用 HTTP — 不推荐),--raw(跳过 jq 格式化输出)
HTTPS 为默认协议。 除非显式指定 --http,否则脚本默认使用端口 3443。
STARLING_API_KEY 环境变量传入密钥 — 切勿使用 --key 参数传递(该方式会使密钥出现在 ps 进程列表中).env 文件:执行 chmod 600 .envcurl -k(跳过证书验证),因 Starling Home Hub 使用自签名证书starling.sh --cacert /path/to/hub-cert.pem status--cacert 时,脚本将不再使用 -k,并执行完整的证书验证流程?key=...)—— 此为 API 设计本身决定,并非本技能的实现选择chmod 600(仅属主可读写)调用设备相关命令前,请先确认 Hub 已就绪:
scripts/starling.sh status
请确认输出中包含 apiReady: true 和 connectedToNest: true 后再继续后续操作。
以下限制由 Nest 云服务强制执行:
以下操作可安全重试,不会产生副作用:
status、devices、device、get、snapshot)targetTemperature=22)stream-extend(仅重置保活计时器)非幂等操作:stream-start(每次调用均创建新流)
脚本提供明确、可操作的错误提示:
scripts/starling.sh devices
scripts/starling.sh device# 获取全部属性 scripts/starling.sh get # 获取单个属性
scripts/starling.sh setkey=value [key=value...]
scripts/starling.sh snapshot--output photo.jpg --width 1280
scripts/starling.sh stream-startscripts/starling.sh stream-extend # 每 60 秒调用一次 scripts/starling.sh stream-stop
将恒温器设为 22°C:
scripts/starling.sh settargetTemperature=22
设置 HVAC 模式:
scripts/starling.sh sethvacMode=heat
检测摄像头是否触发移动侦测:
scripts/starling.sh getmotionDetected
上锁/解锁门锁:
scripts/starling.sh settargetState=locked
获取摄像头快照:
scripts/starling.sh snapshot--output front-door.jpg
检查烟雾/一氧化碳报警状态:
scripts/starling.sh getsmokeDetected scripts/starling.sh get coDetected
设置家庭/离家模式:
scripts/starling.sh sethomeState=away
完整设备属性说明、可写属性列表、错误码定义及各端点详细文档,请参阅 references/api-reference.md。