OA0 = Omni AI 0
OA0 是一个探索 AI 的论坛
现在注册
已注册用户请  登录
OA0  ›  技能包  ›  google-home:控制 Google Nest 智能家居设备

google-home:控制 Google Nest 智能家居设备

 
  merge ·  2026-02-10 04:40:23 · 3 次点击  · 0 条评论  

名称: google-home
描述: 通过 Google 智能设备管理 API,使用 curl 和 jq 控制 Google Nest 设备(恒温器、摄像头、门铃)。
元数据: {"clawdbot":{"emoji":"🏠","requires":{"bins":["curl","jq"]}}


Google Home / Nest 命令行工具

通过智能设备管理 (SDM) API,使用 curl 和 jq 控制 Google Nest 设备。

设置(必需)

  1. 创建 Google Cloud 项目
    - 访问 https://console.cloud.google.com
    - 创建一个新项目

  2. 启用 SDM API
    - 进入“API 和服务” → “库”
    - 搜索“Smart Device Management”
    - 启用该 API

  3. 创建 OAuth 凭据
    - 进入“API 和服务” → “凭据”
    - 创建 OAuth 2.0 客户端 ID
    - 下载 JSON 文件
    - 从中提取 client_idclient_secret

  4. 注册您的设备
    - 访问 https://nests.google.com/frame/register-user
    - 接受条款

  5. 获取访问令牌
    bash # 替换为您的实际值 curl -s \ -d "client_id=YOUR_CLIENT_ID" \ -d "client_secret=YOUR_CLIENT_SECRET" \ -d "refresh_token=YOUR_REFRESH_TOKEN" \ -d "grant_type=refresh_token" \ https://www.googleapis.com/oauth2/v4/token

快速开始

# 列出设备
google-home-cli devices

# 获取恒温器信息
google-home-cli thermostat "客厅" --info

# 设置温度(制热/制冷/自动模式)
google-home-cli thermostat "客厅" --temp 72

# 查询摄像头状态
google-home-cli camera "前门" --status

设备命令

恒温器

  • google-home-cli thermostat <名称> — 显示当前温度/湿度
  • --temp <度数> — 设置目标温度
  • --mode heat|cool|auto — 设置 HVAC 模式
  • --fan on|auto — 控制风扇

摄像头与门铃

  • google-home-cli camera <名称> — 获取流状态/设备状态
  • --snapshot — 下载当前快照图片
  • --stream — 启动实时流 URL

扬声器与显示屏

  • google-home-cli speaker <名称> — 设备信息
  • --volume 0-100 — 设置音量
  • --stop — 停止播放

环境变量

export GOOGLE_HOME_CLIENT_ID="your-client-id"
export GOOGLE_HOME_CLIENT_SECRET="your-client-secret"
export GOOGLE_HOME_ACCESS_TOKEN="your-access-token"

替代方案:直接 API 调用

# 列出所有设备
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
  "https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices"

# 获取设备特性
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
  "https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices/YOUR_DEVICE_ID"

辅助脚本

包含一个 nest 命令行辅助脚本,位于 scripts/nest

# 使其全局可用
ln -sf /Users/mitchellbernstein/clawd/skills/google-home/scripts/nest /usr/local/bin/nest

# 列出设备
nest list

# 获取恒温器状态
nest status "enterprises/PROJECT_ID/devices/DEVICE_ID"

# 设置温度(摄氏度)
nest temp "enterprises/PROJECT_ID/devices/DEVICE_ID" 22

# 设置模式
nest mode "enterprises/PROJECT_ID/devices/DEVICE_ID" HEAT

配置

创建配置文件 ~/.config/google-home/config.json

{
  "project_id": "your-google-cloud-project-id",
  "access_token": "your-oauth-access-token"
}

注意事项

  • 令牌会过期,请定期刷新
  • 设备名称使用完整路径:enterprises/PROJECT_ID/devices/DEVICE_ID
  • 温度单位为摄氏度(如需华氏度请自行转换)
  • 摄像头流需要额外权限
3 次点击  ∙  0 人收藏  
登录后收藏  
目前尚无回复
0 条回复
About   ·   Help   ·    
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
Developed with Cursor