TiVo Community
TiVo Community
TiVo Community
Go Back   TiVo Community > Underground Playground > Developers Corner
TiVo Community
Reply
Forum Jump
 
Thread Tools
Old 06-26-2014, 07:05 PM   #1
telemark
Registered User
 
Join Date: Nov 2013
Posts: 1,540
html Remote

I have a few devices that can't run a Tivo remote, so I made a basic remote that runs from a cgi web server, and is controllable by most web browsers.

The codebase is really small and simple so anyone should be able to customize.

Requires:
Perl
CGI webserver on home network
Backend tested on OS X and BSD
Frontend tested on Chrome, Safari, iOS

TODO:
Build in web server
FrontEnd:
- Redo Image
- Keyboard shortcuts

v2:
- Multi Tivo Support (up to 2 units)
- TV passthru Support (up to 2 models)
- Add ABCD keys
- Closed Captioning
- Optional debugging

The frontend UI would be at:
http://webserver/htmlremote/ or
http://webserver/htmlRemote/index.html

The backend API calls are:
http://webserver/htmlRemote/trTIVO.cgi?ircode=NUM2
http://webserver/htmlRemote/trTV.cgi?ircode=MUTE

trTIVO defaults to localhost, either edit it with a hostname/ip.
Or to utilize autodiscovery, leave as is and install wmcbrine's rproxy.

To enable TV control, grab the scripts for your TV model. http://www.tivocommunity.com/tivo-vb...d.php?t=518917
Edit trTV.cgi with the path to the scripts.
Edit trTIVO.cgi to enable.

Attached Images
File Type: jpg Remote Screenshot.jpg (40.3 KB, 45 views)
Attached Files
File Type: zip htmlRemote.zip (71.6 KB, 19 views)
File Type: zip htmlRemote2.zip (72.9 KB, 26 views)

Last edited by telemark; 07-07-2014 at 09:06 AM.
telemark is offline   Reply With Quote
Old 06-27-2014, 01:30 AM   #2
wmcbrine
Ziphead
 
wmcbrine's Avatar
 
Join Date: Aug 2003
Posts: 10,025
TV Power, Input, Vol +/- and Mute are good places to reclaim space -- although it's possible to send these codes to the TiVo, they don't actually do anything, except get logged. (A real peanut just sends them as IR codes directly to the TV.)

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
wmcbrine is offline   Reply With Quote
Old 06-27-2014, 03:15 AM   #3
telemark
Registered User
 
Join Date: Nov 2013
Posts: 1,540
Yeah, I was debating about that.

The IR and BT Tivo remotes I have still trigger the Tivo's orange light when using Volume. I was wondering if it resets some activity indicator, which might not be used, or is this used on the Mini timeout?

In any case, I'm thinking of adding pass-thru support for IP controllable TV's. I think I'll try a couple brands and if it works well, I'll leave it in. And if it's problematic, I'll take it out and reclaim the pixels.

telemark is offline   Reply With Quote
Old 06-27-2014, 08:03 AM   #4
nooneuknow
TiVo User Since 2007
 
Join Date: Feb 2011
Location: Cox Cable Market, NV
Posts: 3,591
Quote:
Originally Posted by telemark View Post
Yeah, I was debating about that.

The IR and BT Tivo remotes I have still trigger the Tivo's orange light when using Volume. I was wondering if it resets some activity indicator, which might not be used, or is this used on the Mini timeout?

In any case, I'm thinking of adding pass-thru support for IP controllable TV's. I think I'll try a couple brands and if it works well, I'll leave it in. And if it's problematic, I'll take it out and reclaim the pixels.
TiVos do use inactivity sensing to tell when it should be safe to do things without prompting the user. This is done by a timer on last remote activity, which is precisely why TV control commands are also sent to the TiVo.

__________________
...
nooneuknow is offline   Reply With Quote
Old 07-06-2014, 08:28 PM   #5
telemark
Registered User
 
Join Date: Nov 2013
Posts: 1,540
I've been running with TV control for a week so it's stable enough to release:

v2 added:
- Multi Tivo Support (up to 2 units)
- TV control pass-through support (up to 2 models)
- ABCD buttons
- Closed Captioning buttons
- Optional debugging

Release is in first post.


Last edited by telemark; 07-14-2014 at 07:55 AM.
telemark is offline   Reply With Quote
Old 07-07-2014, 10:53 PM   #6
qlude
Registered User
 
Join Date: Jul 2014
Posts: 10
Awesome! Looking forward to trying this out.

qlude is offline   Reply With Quote
Old 09-23-2015, 12:20 PM   #7
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
Amazing

This is awesome work. Exactly what I'm looking for, I think....

mjbok is offline   Reply With Quote
Old 09-23-2015, 12:23 PM   #8
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
Small improvement suggestion

If the remote image had a clear background it could be easily implemented into other pages seemlessly.

mjbok is offline   Reply With Quote
Old 09-23-2015, 12:25 PM   #9
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
Is the 2nd attachment v2?

Or are both the same, but 2 has the additional options?

mjbok is offline   Reply With Quote
Old 09-23-2015, 12:56 PM   #10
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
API calls

Is there something that needs to be added for the API calls? You list a path for it.

mjbok is offline   Reply With Quote
Old 09-23-2015, 03:22 PM   #11
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
I'm missing something stupid I'm sure

I edited the cgi file and put in my ip address for my Tivo, but am getting no response after hosting it on my webserver.

mjbok is offline   Reply With Quote
Old 09-23-2015, 09:50 PM   #12
wmcbrine
Ziphead
 
wmcbrine's Avatar
 
Join Date: Aug 2003
Posts: 10,025
Quote:
Originally Posted by mjbok View Post
I edited the cgi file and put in my ip address for my Tivo, but am getting no response after hosting it on my webserver.
Did you enable network remote control on the TiVo? It's off by default.

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
wmcbrine is offline   Reply With Quote
Old 09-25-2015, 12:49 PM   #13
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
First thing I checked

Quote:
Originally Posted by wmcbrine View Post
Did you enable network remote control on the TiVo? It's off by default.
I checked and network control is indeed on and I can send telnet commands from my PC so I know that part works.

mjbok is offline   Reply With Quote
Old 09-25-2015, 01:05 PM   #14
mjbok
Registered User
 
Join Date: Jan 2007
Posts: 12
Code attached

I put the files (attached below) into my var/www folder. I did a sudo chmod +x trIRCODE.cgi command.

The webpage comes up with the remote image, but the buttons trigger no actions

The IP address is correct.

Any help would be greatly appreciated

//I had to zip the files because it would not allow me to attach a CGI or HTML file

Attached Images
File Type: jpg peanut.jpg (22.0 KB, 8 views)
Attached Files
File Type: zip tivoreview.zip (71.5 KB, 4 views)
mjbok is offline   Reply With Quote
Old 10-13-2015, 05:51 PM   #15
stealthdave
Registered User
 
Join Date: Jan 2005
Posts: 3
I actually built a page once that used standard http calls to send the IR codes to the TiVo directly from Javascript rather than going through an external cgi script to translate to a telnet call. Had it working on my TiVoHD and a hacked Series 1. Unfortunately, this project was lost in the Great Data Loss of '14. (2 drives in a RAID simultaneously! ARGH!!!) Of course, I never got around to publishing it publicly, and I can't find any docs for HTML access online, so I can 't reproduce it.

If you can find the HTML commands, you can eliminate the need for a web server and cgi entirely by using a JSONP call instead of AJAX. You don't even need a full JSONP implementation since you don't require a response back:

Code:
var irSend = document.createElement('script');
irSend.src = tivoLink + '/some?key=' + irCommand;
irSend = null; // cleanup
Makes the whole thing very compact, but I can't for the life of me find the original references.

- Dave

stealthdave is offline   Reply With Quote
Old 10-14-2015, 08:47 AM   #16
gonzotek
tivo_xml developer
 
gonzotek's Avatar
 
Join Date: Sep 2004
Location: Outside Phildadelphia
Posts: 2,360
Quote:
Originally Posted by stealthdave View Post
I actually built a page once that used standard http calls to send the IR codes to the TiVo directly from Javascript rather than going through an external cgi script to translate to a telnet call. Had it working on my TiVoHD and a hacked Series 1. Unfortunately, this project was lost in the Great Data Loss of '14. (2 drives in a RAID simultaneously! ARGH!!!) Of course, I never got around to publishing it publicly, and I can't find any docs for HTML access online, so I can 't reproduce it.

If you can find the HTML commands, you can eliminate the need for a web server and cgi entirely by using a JSONP call instead of AJAX. You don't even need a full JSONP implementation since you don't require a response back:

Code:
var irSend = document.createElement('script');
irSend.src = tivoLink + '/some?key=' + irCommand;
irSend = null; // cleanup
Makes the whole thing very compact, but I can't for the life of me find the original references.

- Dave
Are you sure this was possible on a TiVoHD? I *thought* the html command interface was a function of TiVoWeb (or TiVoWebPlus), which never made it to Series3 and above machines (and only some S2s). I'd love to be wrong!

__________________
Follow @pytivo on Twitter for project updates and more!
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
|
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
A Web app for Roku Remote Control
gonzotek is online now   Reply With Quote
Old 10-14-2015, 12:40 PM   #17
stealthdave
Registered User
 
Join Date: Jan 2005
Posts: 3
Quote:
Originally Posted by gonzotek View Post
Are you sure this was possible on a TiVoHD? I *thought* the html command interface was a function of TiVoWeb (or TiVoWebPlus), which never made it to Series3 and above machines (and only some S2s). I'd love to be wrong!
On the Series 1 it was absolutely a function of TiVoWebPlus. (I miss that app!) The more I search, though, I think I may be misremembering it working on the TiVoHD. Which is too bad; that would be pretty darned convenient.

stealthdave is offline   Reply With Quote
Old 10-16-2015, 12:25 AM   #18
telemark
Registered User
 
Join Date: Nov 2013
Posts: 1,540
Sorry I missed this question, it got buried behind other threads.

I think mjbok's problem might have stemmed from running the code on a public web server. This means the back-end can't reach a Tivo through a NAT router without port forwarding. It's best to run the back-end on a home server.

I thought about rewriting this with WebSockets but it seemed less common than cgi.

telemark is offline   Reply With Quote
Old 11-02-2015, 01:09 PM   #19
solutionsetc
Registered User
 
solutionsetc's Avatar
 
Join Date: Apr 2009
Location: Northern Sierra Nevada
Posts: 761
Quote:
Originally Posted by telemark View Post
I made a basic remote that runs from a cgi web server, and is controllable by most web browsers.

v2:
- Add ABCD keys
What are the IRCodes for these keys? I am also looking for 'Back' and 'Zoom' keys as well.

Thanks!

solutionsetc is offline   Reply With Quote
Old 11-03-2015, 06:33 PM   #20
wmcbrine
Ziphead
 
wmcbrine's Avatar
 
Join Date: Aug 2003
Posts: 10,025
Quote:
Originally Posted by solutionsetc View Post
What are the IRCodes for these keys? I am also looking for 'Back' and 'Zoom' keys as well.
Hint: My Network Remote is open source...

__________________

To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
wmcbrine is offline   Reply With Quote
Reply
Forum Jump







Thread Tools


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Advertisements





TiVo Community
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.
vBulletin Skins by: Relivo Media


(C) 2016 DBNet - All Rights Reserved. No information may be posted elsewhere without written permission.
TiVoŽ is a registered trademark of TiVo Inc. This site is not owned or operated by TiVo Inc.
All times are GMT -5. The time now is 09:07 AM.
Page generated in 0.21899605 seconds (70.10% PHP - 29.90% MySQL) with 19 queries