roku

📺 命令行掌控 Roku 流媒体设备

通过命令行远程控制 Roku 流媒体设备,支持导航、应用启动、文本输入及媒体控制,适合智能家居自动化爱好者。

收藏
10.6k
安装
2.8k
版本
1.0.2
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心功能

roku-cli 是基于 python-roku 的轻量级命令行工具,允许用户通过终端完全控制局域网内的 Roku 流媒体设备。其核心功能涵盖设备发现、遥控器模拟、应用管理及文本输入四大模块。

设备发现与连接roku discover 自动扫描本地网络定位 Roku 设备,支持通过 --ip 参数指定固定 IP 或依赖自动发现机制,兼容 --timeout 调整慢速网络下的扫描时长。

遥控器模拟:完整复刻物理遥控器功能,包括方向键(up/down/left/right)、确认(select)、返回(back)、主页(home),以及播放控制(play/pause/forward/reverse)。高级用法支持 --event keydown|keyup 实现按键长按/释放事件。

应用管理roku apps 列出已安装应用及对应 ID,roku launch 支持通过名称(不区分大小写)或数字 ID 启动应用,便于脚本化调用。

文本输入roku text "query" 在搜索框等输入场景模拟键盘输入,解决物理遥控器输入效率低下的痛点。

显著优点

  • 零配置自动化:自动发现机制消除手动查找 IP 的繁琐,适合家庭网络环境快速部署
  • 脚本友好:纯 CLI 设计天然适配 shell 脚本、cron 任务及家庭自动化系统(如 Home Assistant、Node-RED)
  • 轻量依赖:仅依赖 Python 标准生态,pip 一键安装,跨平台兼容(Linux/macOS/Windows)
  • 功能完整:覆盖日常 90% 以上的遥控器使用场景,包括播放控制、应用切换、文本搜索

局限性与风险

网络依赖:必须处于同一局域网,无法远程控制;网络波动时 --timeout 需手动调优
安全边界:Roku 的"Control by Mobile Apps"设置开启后,局域网内任何设备均可无认证控制,缺乏细粒度权限管控

输入限制roku text 仅支持基础字符,复杂符号或中文输入可能异常

维护状态:GitHub 仓库活跃度一般,长期功能更新与 Roku 新机型兼容性存疑

适用人群

  • 智能家居自动化开发者(需程序化控制电视/盒子)
  • 命令行爱好者偏好 CLI 替代物理遥控器
  • 无障碍需求用户(结合语音转脚本工具)
  • 多 Roku 设备家庭的管理员

常规风险

  • 局域网暴露:若未隔离 IoT 设备网络,恶意内网设备可能劫持控制
  • 脚本误操作:自动化脚本中的错误循环可能导致设备持续响应异常指令
  • 固件兼容性:Roku 系统更新后 ECP(External Control Protocol)接口变更可能造成功能失效

使用建议

建议将 Roku 设备置于独立 VLAN 或 IoT 隔离网络,配合防火墙规则限制控制源 IP;生产环境脚本应加入状态检测与异常熔断机制。

roku 内容

手动下载zip · 1.2 kB
SKILL.mdtext/markdown
请选择文件