第7课 移动设备 (Nodes)#

为什么需要了解这个#

想象一下:你的 OpenClaw 助手运行在服务器或家用电脑上。而你想让它能通过手机摄像头拍照、在手机屏幕上显示交互面板,或者获取你的位置信息。为此存在 Nodes(节点)——连接的设备,扩展助手的能力。

Node(节点)是一部手机、平板电脑或另一台电脑,连接到你的 OpenClaw。通过节点,助手在物理世界中获得了"眼睛"、“耳朵"和"双手”。


节点能做什么#

功能 说明 示例
📷 摄像头 从设备摄像头拍照和录像 “拍一下你面前有什么”
🖥️ Canvas 在设备屏幕上显示网页或界面 “在屏幕上显示销售图表”
📍 地理定位 获取当前位置 “我现在在哪里?”
🔔 通知 向设备发送通知 “到超市附近时提醒我”
💻 执行命令 在设备上运行程序 “在 Mac 上运行脚本”
📱 短信 (Android) 发送短信 “给妈妈发条短信”

连接设备#

第1步:安装 OpenClaw 应用#

  • iPhone/iPad:从 App Store 下载 OpenClaw
  • Android:从 Google Play 下载 OpenClaw
  • Mac:使用 macOS 版 OpenClaw 应用(菜单栏应用)

第2步:连接到 Gateway#

在应用中输入你的 Gateway 服务器地址:

  • 地址:你服务器的 IP 或域名
  • 端口:18789(默认)

应用会发送连接请求。

第3步:批准连接#

在服务器上(Gateway 运行的地方)执行:

# 查看等待批准的连接
openclaw devices list

# 批准设备
openclaw devices approve <请求ID>

第4步:检查连接#

# 已连接设备列表
openclaw nodes status

# 设备详细信息
openclaw nodes describe --node <名称或ID>

给设备起个容易记的名字#

openclaw nodes rename --node <ID> --name "我的iPhone"

摄像头#

拍照#

# 用两个摄像头拍照
openclaw nodes camera snap --node "我的iPhone"

# 用前置摄像头拍照
openclaw nodes camera snap --node "我的iPhone" --facing front

# 用后置摄像头拍照
openclaw nodes camera snap --node "我的iPhone" --facing back

在与助手的聊天中可以直接说:“用手机拍张照”

录像#

# 10秒视频
openclaw nodes camera clip --node "我的iPhone" --duration 10s

# 无声视频
openclaw nodes camera clip --node "我的iPhone" --duration 5s --no-audio

限制:视频最长60秒。应用必须在屏幕前台打开(不能在后台)。

录屏#

openclaw nodes screen record --node "我的iPhone" --duration 10s

Canvas —— 在屏幕上展示#

Canvas 是移动设备上的展示屏幕。助手可以在上面展示网页、图表、仪表盘或任何 HTML 内容。

展示网页#

# 在设备屏幕上打开网站
openclaw nodes canvas present --node "我的iPhone" --target https://example.com

# 隐藏 Canvas
openclaw nodes canvas hide --node "我的iPhone"

# 跳转到另一个页面
openclaw nodes canvas navigate https://weather.com --node "我的iPhone"

截取 Canvas 快照#

openclaw nodes canvas snapshot --node "我的iPhone" --format png

在 Canvas 上执行 JavaScript#

openclaw nodes canvas eval --node "我的iPhone" --js "document.title"

在聊天中你可以说:“在手机上显示当前天气”,助手会通过 Canvas 打开相应的页面。


地理定位#

获取当前位置#

openclaw nodes location get --node "我的iPhone"

结果包括坐标(纬度/经度)、精度(米)和时间。

精度参数#

# 精确位置(GPS)
openclaw nodes location get --node "我的iPhone" --accuracy precise

# 大致位置(更快,省电)
openclaw nodes location get --node "我的iPhone" --accuracy coarse

重要:地理定位默认是关闭的。需要在设备上的 OpenClaw 应用设置中开启,并授予位置访问权限。


通知#

向设备发送推送通知:

openclaw nodes notify --node "我的iPhone" \
  --title "提醒" \
  --body "15分钟后有团队会议"

通知优先级#

  • passive —— 静默通知
  • active —— 普通通知(默认)
  • timeSensitive —— 紧急通知(可穿透"勿扰"模式)
openclaw nodes notify --node "我的iPhone" \
  --title "紧急" \
  --body "服务器不可用!" \
  --priority timeSensitive

在设备上执行命令#

在 Mac 节点上可以运行程序:

openclaw nodes run --node "我的Mac" -- echo "来自Mac的问候!"

安全性:命令执行受批准系统(exec approvals)保护。需要事先指定允许哪些命令:

openclaw approvals allowlist add --node "我的Mac" "/usr/bin/say"

短信(仅限 Android)#

在有短信权限的 Android 设备上:

openclaw nodes invoke --node "我的Android" \
  --command sms.send \
  --params '{"to": "+8613800138000", "message": "你好!"}'

实际案例#

你在 Telegram 中给助手发消息:

“用手机拍一下桌上有什么,告诉我你看到了什么”

助手会:

  1. 使用 nodescamera_snap 工具通过手机拍照
  2. 获取照片
  3. 通过 AI 模型分析图片
  4. 回复:“桌上有一台笔记本电脑、一杯咖啡和一个笔记本”

这一切都是自动完成的——你只需描述任务。


使用建议#

  1. 保持应用在前台打开 —— 摄像头和 Canvas 只在应用处于前台时工作
  2. 给设备起个好记的名字 —— 这样更方便使用
  3. 只在需要时开启地理定位 —— 省电
  4. 提前设置权限 —— 摄像头、位置、通知
  5. 远程连接时使用 SSH 隧道或 VPN,如果 Gateway 不能直接访问

本课总结#

  • Node 是一个连接的设备(手机、平板、Mac),扩展助手的能力
  • 通过节点可以使用:摄像头Canvas(屏幕展示)、地理定位通知命令执行
  • 连接方式:安装应用 → 连接到 Gateway → 在服务器上批准
  • 摄像头:前置或后置摄像头拍照和录像
  • Canvas:在设备屏幕上展示网页和界面
  • 地理定位:设备坐标(默认关闭)
  • 摄像头和 Canvas 需要应用在前台运行
  • 助手会自动选择需要的设备和操作——你只需描述任务

🎉 恭喜!你已经完成了 OpenClaw 课程的第二级。现在你学会了配置助手、选择模型、管理记忆、使用工具和技能、设置自动化以及连接移动设备。