ncmiller / roku-cli Goto Github PK
View Code? Open in Web Editor NEWInteractive control of your Roku device from the command-line
License: MIT License
Interactive control of your Roku device from the command-line
License: MIT License
This is a great thing... however why no command line way to send a single keypress? Seems simple enough to implement.. was just wondering why this was never added to this project? Could be useful for bash scripting for example.
roku ip.addr -c H (to send home for example)
If I knew enough Python I'd attempt to add it myself, perhaps this is the motivation I need to do so :)
Fantastic program - I use it daily!
Is it possible to change the ky bindings, such as up-arrow-key = volume up, or the reverse?
Excellent program! Loving it.
One missing item: volumeup or volumedown.
Getting by with:
#!/bin/bash
curl -d '' http://192.168.0.x:8060/keypress/$1
And then summoning it with an example input: roku.sh volumeup
If this could be instead added to the python program, that would be radicalistic!
Cheers,
Tmanok
When choosing a roku, I really don't plan on memorizing IP addresses. I do however know what version each of my roku devices is. If there is a way, could the version be shown as well?
Installed with pip.
roku
Traceback (most recent call last):
File "/usr/bin/roku", line 7, in <module>
from rokucli.cli import main
File "/usr/lib/python3.5/site-packages/rokucli/cli.py", line 4, in <module>
from discover import discover_roku
ImportError: No module named 'discover'
When I Type "roku"
I don't see
Found the following Roku devices:
[1] 192.168.1.116:8060 (Roku 3-4230X SW v7.2.0.4100)
[2] 192.168.1.147:8060 (Roku 3-4200X SW v7.2.0.4100)
Multiple Rokus found. Select the index of the Roku to control:
Select (1 to 2) >
I see... It works when I add it by hand. I am on Arch
Searching for Roku devices within LAN ...
Found the following Roku devices:
Traceback (most recent call last):
File "/usr/sbin/roku", line 33, in
sys.exit(load_entry_point('rokucli==1.0.6', 'console_scripts', 'roku')())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/rokucli-1.0.6-py3.11.egg/rokucli/cli.py", line 166, in main
File "/usr/lib/python3.11/site-packages/rokucli-1.0.6-py3.11.egg/rokucli/cli.py", line 108, in run
File "/usr/lib/python3.11/site-packages/rokucli-1.0.6-py3.11.egg/rokucli/discover.py", line 19, in discover_roku
File "/usr/lib/python3.11/site-packages/roku-4.1.0-py3.11.egg/roku/core.py", line 262, in device_info
resp = self._get("/query/device-info")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/roku-4.1.0-py3.11.egg/roku/core.py", line 211, in _get
return self._call("GET", path, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/site-packages/roku-4.1.0-py3.11.egg/roku/core.py", line 231, in _call
raise RokuException(resp.content)
roku.core.RokuException: b'<!doctype html><title>HTTP Status 404 \xe2\x80\x93 Not Found</title><style type="text/css">body {font-family:Tahoma,Arial,sans-serif;} h1, h2, h3, b {color:white;background-color:#525D76;} h1 {font-size:22px;} h2 {font-size:16px;} h3 {font-size:14px;} p {font-size:12px;} a {color:black;} .line {height:1px;background-color:#525D76;border:none;}</style>
Not much else to say. I haven't done too much digging into the code yet but I would figure it shouldn't be too hard to figure out the on off command?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.