{"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 --ipapps
完整按键参考
所有支持的遥控器按键详见 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(部分网络会屏蔽组播流量)
热门AI工具
相关专题
本专题聚焦Go-Zero的API开发,拆解.api描述文件的语法结构、路由与分组定义、参数绑定与校验规则,说明统一响应体、JWT鉴权、跨域与接口文档生成的落地方式,并给出网关聚合与接口测试的实践建议。
0
2026.11.12
本专题围绕Go-Zero的安装与工具链配置展开,讲清Go版本要求、goctl安装方式、代理镜像、protoc依赖与环境变量设置,说明多版本共存、升级回退与CI流水线安装的做法,并整理安装阶段的常见报错与验证步骤。
0
2026.11.12
本专题整理Go-Zero的入门知识,从框架定位、环境准备到跑通第一个API服务,讲清目录分层、配置加载、日志与中间件的基本用法,并对比Gin、Kratos的差异,帮助Go开发者建立整体认知,判断它是否适合当前项目。
0
2026.11.12
本专题从实际API接口调试场景出发,讲解Postman身份认证的完整配置流程,包括常见认证协议介绍、授权参数设置、访问令牌填写、OAuth 2.0授权及认证失败排查,帮助用户正确完成接口授权与访问验证。
0
2026.11.06
围绕Postman HTTP请求头配置展开,讲解Headers选项的具体使用方式,包括Key和Value参数填写、请求头信息添加、常见Header字段设置及请求头修改方法,帮助用户解决接口调试过程中遇到的请求头配置问题。
0
2026.11.06
详细介绍Postman接口请求的创建与发送方法,涵盖GET和POST请求、URL配置、请求参数、Headers请求头、Body请求体设置以及响应结果查看,帮助用户掌握Postman接口请求的完整操作流程。
0
2026.11.06
DBeaver数据导入专题,整理Excel、CSV、SQL、TXT等常见文件的数据导入方法,涵盖目标数据库选择、数据表创建、字段映射、数据类型设置及导入参数配置等操作,帮助用户将本地文件中的数据写入数据库,并了解批量导入、重复数据处理和导入失败等常见问题的解决方法。
0
2026.11.05
DBeaver安全防护专题,围绕数据库连接安全、账号密码保护和访问权限管理展开,整理SSL/TLS加密连接、SSH隧道、数据库凭据保存及证书验证等配置方法,同时介绍敏感信息保护、远程连接风险和高权限账号使用等注意事项,帮助用户提高数据库日常管理的安全性。
0
2026.11.05
本专题聚焦DBeaver数据库连接配置与管理,覆盖从新建连接、选择数据库类型到填写连接参数和验证连接的完整流程。针对MySQL、PostgreSQL、SQL Server等常见数据库,整理相应的连接设置方法,并提供驱动缺失、认证失败和连接异常等问题的排查方向。
0
2026.11.04
热门下载
相关下载
精品课程
共6课时 | 12.1万人学习
共79课时 | 161.8万人学习
共6课时 | 54.7万人学习
最新文章