Roku Control

Polar Sponsor
爱发电 赞助
.NET 9.0

{"answer":"通过局域网(ECP协议)控制Roku设备。适用于控制Roku电视或流媒体设备、换台、启动应用(如Netflix、YouTube、Hulu等)、菜单导航、调节音量、播放/暂停内容、搜索节目或关机。通过局域网运行,无需认证。"}

Roku Control : Control Roku 设备在您的本地网络上使用外部控制协议( ECP)

功能概述

Roku Control : Control Roku 设备在您的本地网络上使用外部控制协议( ECP)是一项面向实际任务的技能,主要用于不需要认证、 云服务或复杂的设置 - 只是本地的 HTTP 命令。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。

核心要点

  • 使用时应结合输入条件选择合适的执行方式,核对必要参数、依赖环境与输出内容,并按原始要求处理异常情况。
  • 该技能适合需要稳定复用相关能力的场景,可作为自动化工作流的一部分,也便于后续检查、调整和扩展。
  • 从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。

使用与执行

实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。

结果检查与注意事项

执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。

Roku 控制

通过外部控制协议(ECP)在本地网络中控制 Roku 设备。无需身份验证、云服务或复杂配置——仅需发送本地 HTTP 命令即可。

前提条件

  • Roku 设备与 OpenClaw 处于同一网络中
  • Roku 的 IP 地址(可自动发现)

初始设置

1. 发现你的 Roku 设备:

python3 scripts/roku_control.py discover

该命令将列出当前网络中所有 Roku 设备及其对应的 IP 地址。

2. 保存 IP 地址:

记录下你的 Roku 设备 IP 地址(例如:192.168.1.100),后续命令中将用到。

3. 测试连通性:

python3 scripts/roku_control.py --ip 192.168.1.100 info

常用操作

设备信息

# 获取设备详细信息
python3 scripts/roku_control.py --ip 192.168.1.100 info

# 列出所有已安装应用
python3 scripts/roku_control.py --ip 192.168.1.100 apps

# 查看当前正在播放的内容
python3 scripts/roku_control.py --ip 192.168.1.100 active

导航与控制

# 导航菜单
python3 scripts/roku_control.py --ip 192.168.1.100 key Up
python3 scripts/roku_control.py --ip 192.168.1.100 key Down
python3 scripts/roku_control.py --ip 192.168.1.100 key Left
python3 scripts/roku_control.py --ip 192.168.1.100 key Right
python3 scripts/roku_control.py --ip 192.168.1.100 key Select

# 返回主屏幕
python3 scripts/roku_control.py --ip 192.168.1.100 key Home

# 返回上一级
python3 scripts/roku_control.py --ip 192.168.1.100 key Back

播放控制

# 播放 / 暂停
python3 scripts/roku_control.py --ip 192.168.1.100 key Play
python3 scripts/roku_control.py --ip 192.168.1.100 key Pause

# 快退 / 快进
python3 scripts/roku_control.py --ip 192.168.1.100 key Rev
python3 scripts/roku_control.py --ip 192.168.1.100 key Fwd

# 即时回放(后退 10 秒)
python3 scripts/roku_control.py --ip 192.168.1.100 key InstantReplay

音量与电源

# 音量控制(仅适用于 Roku TV 或启用 HDMI-CEC 的设备)
python3 scripts/roku_control.py --ip 192.168.1.100 key VolumeUp
python3 scripts/roku_control.py --ip 192.168.1.100 key VolumeDown
python3 scripts/roku_control.py --ip 192.168.1.100 key VolumeMute

# 关机
python3 scripts/roku_control.py --ip 192.168.1.100 key PowerOff

启动应用

# 通过应用 ID 启动(更快)
python3 scripts/roku_control.py --ip 192.168.1.100 launch 12  # Netflix

# 通过应用名称启动(不区分大小写)
python3 scripts/roku_control.py --ip 192.168.1.100 launch Netflix
python3 scripts/roku_control.py --ip 192.168.1.100 launch YouTube
python3 scripts/roku_control.py --ip 192.168.1.100 launch "Disney+"

搜索与文本输入

# 发送搜索文本
python3 scripts/roku_control.py --ip 192.168.1.100 text "Breaking Bad"

# 此方式比逐键模拟快得多,特别适合搜索场景

自然语言映射

将用户请求映射为对应命令:

导航:

  • “返回主屏幕” → key Home
  • “返回” → key Back
  • “向下滚动” / “向下移动” → key Down
  • “选择此项” / “点击” → key Select

播放控制:

  • “播放” / “继续” → key Play
  • “暂停” → key Pause
  • “快退” → key Rev
  • “快进” → key Fwd
  • “后退 10 秒” / “重播刚才的内容” → key InstantReplay

音量控制:

  • “调高音量” → key VolumeUp
  • “调低音量” → key VolumeDown
  • “静音” / “取消静音” → key VolumeMute

应用启动:

  • “打开 Netflix” → launch Netflix
  • “启动 YouTube” → launch YouTube
  • “启动 Hulu” → launch Hulu

搜索:

  • “搜索 Breaking Bad” → text "Breaking Bad"
  • “查找 Stranger Things” → 先触发搜索界面,再发送文本

电源控制:

  • “关闭电视” → key PowerOff

常见应用 ID

完整列表请参阅 references/common-apps.md。

快速参考:

  • Netflix:12
  • YouTube:837
  • Hulu:2285
  • Disney+:291097
  • Amazon Prime Video:13
  • HBO Max:61322
  • The Roku Channel:151908

获取你设备上已安装应用的 ID:

python3 scripts/roku_control.py --ip  apps

完整按键参考

所有支持的遥控器按键详见 references/remote-keys.md。

常用按键:Home、Back、Up、Down、Left、Right、Select、Play、Pause、Rev、Fwd、VolumeUp、VolumeDown、VolumeMute、PowerOff、Search、Info

高级工作流

观看 Netflix

# 返回主屏幕并启动 Netflix
python3 scripts/roku_control.py --ip 192.168.1.100 key Home
sleep 1
python3 scripts/roku_control.py --ip 192.168.1.100 launch 12

搜索并播放

# 打开搜索界面,输入文本,选择首个结果
python3 scripts/roku_control.py --ip 192.168.1.100 key Search
sleep 1
python3 scripts/roku_control.py --ip 192.168.1.100 text "The Office"
sleep 1
python3 scripts/roku_control.py --ip 192.168.1.100 key Select

快速回放

# 后退 10 秒并恢复播放
python3 scripts/roku_control.py --ip 192.168.1.100 key InstantReplay
sleep 1
python3 scripts/roku_control.py --ip 192.168.1.100 key Play

观影夜模式

# 启动流媒体应用并调节音量
python3 scripts/roku_control.py --ip 192.168.1.100 launch "Disney+"
sleep 2
python3 scripts/roku_control.py --ip 192.168.1.100 key VolumeDown
python3 scripts/roku_control.py --ip 192.168.1.100 key VolumeDown

设备映射

将 Roku 的 IP 地址存入 references/roku.json 文件中:

{
  "living_room": {
    "ip": "192.168.1.100",
    "name": "Living Room TV",
    "model": "Roku Ultra"
  },
  "bedroom": {
    "ip": "192.168.1.101",
    "name": "Bedroom Roku",
    "model": "Roku Streaming Stick+"
  }
}

之后可在对话中直接使用友好名称引用设备。

故障排查

“未发现 Roku 设备”

  • 确保 Roku 设备已开机并接入网络
  • 确认 OpenClaw 与 Roku 设备处于同一网络/子网中
  • 部分路由器会屏蔽 SSDP 发现流量——若已知 IP,可尝试手动指定
  • 检查 Roku 的网络设置(路径:Settings → Network)

“连接超时”

  • 确认 IP 地址正确无误
  • 执行 ping 测试:ping
  • 检查防火墙是否阻止了 8060 端口
  • Roku 可能已变更 IP(建议配置 DHCP 保留地址)

“按键无效”

  • 部分按键仅在 Roku TV 上可用(如音量、电源、信号源切换)
  • 音量控制需依赖 HDMI-CEC 或 Roku TV
  • 较老型号可能不支持电源控制命令
  • 兼容性详情请查阅 references/remote-keys.md

应用无法启动

  • 确认应用已安装:运行 apps 命令验证
  • 使用正确的应用 ID(按名称匹配时区分大小写)
  • 部分应用需在其自身 UI 中完成额外身份验证

设备发现失败

  • 若已知 IP,可手动指定:查看路由器 DHCP 租约表
  • Roku 的 IP 显示在 Settings → Network → About 页面中
  • 为保障稳定性,建议配置静态 IP 或 DHCP 保留地址

与其他技能集成

观影夜例程

与 Govee 灯光技能联动:

# 调暗灯光
for light in "living room" "tv lights"; do
  python3 govee-lights/scripts/govee_control.py brightness "$light" 15
  python3 govee-lights/scripts/govee_control.py temp "$light" 2700
done

# 启动流媒体应用
python3 roku-control/scripts/roku_control.py --ip 192.168.1.100 launch Netflix

# 设置适宜音量
python3 roku-control/scripts/roku_control.py --ip 192.168.1.100 key VolumeDown

注意事项

  • ECP 协议完全基于局域网运行(无需互联网连接)
  • 无需身份验证或 API 密钥
  • 命令响应即时(受限于局域网传输速度)
  • 可独立控制多个 Roku 设备
  • 兼容 Roku TV、Streaming Stick 及 Roku 机顶盒
  • 不支持开机指令(ECP 协议限制——Roku 必须处于唤醒状态)
  • 如需开机,请使用 HDMI-CEC 或网络唤醒(Wake-on-LAN)功能(如设备支持)

限制说明

  • 无法唤醒完全关机状态下的 Roku(ECP 仅在设备已开机时生效)
  • 音量与电源控制仅适用于 Roku TV 或启用 HDMI-CEC 的设备
  • 部分命令无成功/失败反馈
  • 文本输入为逐字符发送(长文本搜索效率较低)
  • 设备发现依赖 SSDP(部分网络会屏蔽组播流量)

相关专题

更多
Postman身份认证怎么配置
Postman身份认证怎么配置

本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。

2026.11.06

0

12

Postman请求头Headers怎么设置
Postman请求头Headers怎么设置

围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。

2026.11.06

0

13

Postman接口请求发送教程
Postman接口请求发送教程

详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。

2026.11.06

0

10

DBeaver怎么导入数据
DBeaver怎么导入数据

DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。

2026.11.05

0

12

DBeaver安全防护教程大全
DBeaver安全防护教程大全

DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。

2026.11.05

0

12

DBeaver连接创建与配置教程
DBeaver连接创建与配置教程

本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。

2026.11.04

0

16

XORM框架结构体映射与表结构同步
XORM框架结构体映射与表结构同步

本专题围绕XORM框架的结构体映射展开,说明表名与字段的命名策略、xorm标签常用属性、主键自增与时间字段自动填充,并演示Sync2自动建表、增量字段升级、索引声明与反向生成结构体的完整流程。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

15

XORM框架安装配置与数据库连接
XORM框架安装配置与数据库连接

本专题聚焦XORM框架的配置与连接环节,拆解MySQL、PostgreSQL、SQLite、SQL Server的DSN写法与驱动选择,讲清连接池参数、多数据源拆分、读写分离与超时重连的处理方式,并补充容器与兼容数据库的适配经验。

2026.11.04

0

16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 134.1万人学习