roku-ecp

Crates.ioroku-ecp
lib.rsroku-ecp
version0.0.3
sourcesrc
created_at2021-01-15 11:34:32.473306
updated_at2021-01-26 06:25:43.468027
descriptionA library for the Roku External Control Protocol (ECP).
homepage
repositoryhttps://github.com/Hermitter/roku-ecp-rs
max_upload_size
id342330
size70,854
Carlos (Hermitter)

documentation

README

roku-ecp-rs

Expect breaking changes until 0.1.0 since Roku ECP has incorrect/missing documentation.

Documentation Crate

A Rust crate for Roku's External Control Protocol.

Installation

Add the following to your Cargo.toml:

[dependencies]
roku_ecp = "0.0.3"

For usage, view the examples.

Available APIs

General:

  • query/media-player
  • keydown/<KEY>
  • keyup/<KEY>
  • keypress/<KEY>
  • launch/<APP_ID>
  • install/<APP_ID>
  • query/device-info
  • query/icon/<APP_ID>
  • query/active-app/<APP_ID>
  • query/apps/<APP_ID>
  • search
  • input (Accelerometer, Orientation, Gyroscope, Magnetometer, Touch and multi-touch)

TV:

Feel free to make a PR for these features. I do not have a Roku TV to test.

  • query/tv-channels
  • query/tv-active-channel
  • launch/tvinput.dtv

Dependencies

Operating Systems

Windows and macOS: None

Linux: OpenSSL + headers > v1.0.1

  • Debian: sudo apt install libssl-dev
  • Fedora: sudo dnf install openssl-devel

Async Runtime

This crate requires an asynchronous runtime such as tokio or async-std.

Finding Your Roku Device's IP

In the main menu, navigate to Settings > Networking > About.

Credits

@carloabelli's roku crate which was used as a reference.

Commit count: 70

cargo fmt