PDA

View Full Version : TiVo UI Control via Telnet - No Hacking Required!



Omikron
05-01-2008, 12:34 AM
As many of you may have already heard, TiVo added support for Crestron systems back in software version 9.1 but there isn't a whole lot of information available about from TiVo or from Crestron.

After thinking about it for a small while, my curiosity was piqued, and I decided to try and figure out the protocol Crestron was using to talk to an unhacked TiVo, and how we non-Crestron users could somehow harness it.

As it turns out both the TiVo HD and Series3 units now listen on port 31339 for connections from a Crestron device. What is really interesting about this discovery is that this service is enabled and accessible by default on a stock Series3 running software 9.1 and up. There is NO HACKING REQUIRED to use this interface.

The protocol and its commands aren't published, but some heavy digging on Crestron and debugging the tivoapp binary resulted in some interested finds.

If you telnet into your TiVo on port 31339, you will be presented with the following:


CH_STATUS <CHANNEL> <STATUS>

This prompt reflects the current status of the TiVo and will tell you the current channel being watched, and if it's being recorded.

Once the telnet session is started, the following commands are available:


KEYBOARD - The current purpose and syntax of this command is unknown.

TELEPORT <PLACE>- I'm not sure why this command exists, because I believe anything that TELEPORT does can also be accomplished via IRCODE. That said, the four currently known places you can "teleport" to are TIVO, LIVETV, GUIDE, and NOWPLAYING.

SETCH <CHANNEL> - This command will change the channel on the current tuner being watched to the channel number defined. If the current tuner is recording a program, it will change the other tuner. If both tuners are recording, the channel will not change and the TiVo will respond with "CH_FAILED RECORDING "Show Title". Using this command when a recording is being played back will result in "CH_FAILED NO_LIVE".

FORCECH <CHANNEL> - This command will force the current tuner to the tune the desired channel regardless of what it's doing. If a recording is being recorded it will cancel the recording and change the channel without confirmation.

IRCODE <COMMAND> - IRCODE seems to mimic the old "sendkey" command in almost every way. While it can't handle multiple commands on one line, almost all of the commands listed in sendkey.tcl are valid and working.


The following is a list of IRCODE commands that I have verified as working:


UP
DOWN
LEFT
RIGHT
SELECT
TIVO
LIVETV
THUMBSUP
THUMBSDOWN
CHANNELUP
CHANNELDOWN
RECORD
DISPLAY
DIRECTV
NUM0
NUM1
NUM2
NUM3
NUM4
NUM5
NUM6
NUM7
NUM8
NUM9
ENTER
CLEAR
PLAY
PAUSE
SLOW
FORWARD
REVERSE
STANDBY
NOWSHOWING
REPLAY
ADVANCE
DELIMITER
GUIDE

If take too long to type a command, it will result in COMMAND_TIMEOUT since the interface was designed to receive whole and complete commands, and was not designed to be used manually via telnet.

That's all I've found for now, but I'll be sure to post updates as they come along.

Omikron
05-01-2008, 12:36 AM
[reserved Post]

Omikron
05-01-2008, 02:10 PM
It would appear that the <STATUS> field has 3 states: LOCAL, REMOTE, and RECORDING

It would appear so far that LOCAL refers to the current tuner being watched, REMOTE refers to the tuner not being watched, and RECORDING means that the current tuner is recording.

Can someone do some testing and confirm or refute this?

ciper
05-02-2008, 02:57 AM
Seems like a simple script could be created to give a useable UI to the interface that would also prevent the timeout errors. BTW news sites picked up the story a day after your post. I wonder if you are the source?

Omikron
05-02-2008, 03:12 AM
Seems like a simple script could be created to give a useable UI to the interface that would also prevent the timeout errors. BTW news sites picked up the story a day after your post. I wonder if you are the source?

Actually, I posted this on both TCF and DDB and it seems the TCF thread got far, far more attention. Zatz saw it on TCF, blogged it, and then it got linked by Engadget. That said, I haven't seen any new useful info posted on the TCF side of things so hopefully we'll see some more technical discussion happen on the DDB side.

W4ZOO
05-02-2008, 05:52 PM
Actually, I posted this on both TCF and DDB and it seems the TCF thread got far, far more attention. Zatz saw it on TCF, blogged it, and then it got linked by Engadget. That said, I haven't seen any new useful info posted on the TCF side of things so hopefully we'll see some more technical discussion happen on the DDB side.

I found your site....Thanks

I saw this posted in the Cienmar forums. I think mainlobby will be the first to get this running with two way interface.

philhu
08-04-2008, 06:35 PM
Anymore word on a program to really make this functional?

If not, I'll put something together'

jt1134
08-04-2008, 08:20 PM
Anymore word on a program to really make this functional?

If not, I'll put something together'

http://tivocommunity.com/tivo-vb/showthread.php?p=6495375#post6495375

IvanLewis
10-31-2008, 05:32 AM
hi,



Anymore word on a program to really make this functional?

If not, I'll put something together' :o

fboner
11-12-2008, 11:06 PM
hi,

Anymore word on a program to really make this functional?

If not, I'll put something together' :o

Bump. I too am curious.

ciper
12-04-2008, 08:01 AM
Both of you obviously missed post #8

The latest version is can be found here http://tivocommunity.com/tivo-vb/showpost.php?p=6869402

jeepguy_1980
12-14-2008, 06:16 PM
Java version (http://www.tivocommunity.com/tivo-vb/showthread.php?p=6916985#post6916985)

junk22
04-25-2009, 12:24 PM
As it turns out both the TiVo HD and Series3 units now listen on port 31339 for connections from a Crestron device.

Hi,

Do you know what program causes the tivo to listen on 31339? The Australian TiVo HD's don't appear to be listening on this port, but I would like it to. Perhaps someone could attach a copy of the binary so that I set it up on my TiVo?

Thanks.

Omikron
04-25-2009, 01:09 PM
Hi,

Do you know what program causes the tivo to listen on 31339? The Australian TiVo HD's don't appear to be listening on this port, but I would like it to. Perhaps someone could attach a copy of the binary so that I set it up on my TiVo?

Thanks.

As far as I can tell it's not a separate binary, but rather the tivoapp program itself.

jt1134
04-25-2009, 08:01 PM
Hi,

Do you know what program causes the tivo to listen on 31339? The Australian TiVo HD's don't appear to be listening on this port, but I would like it to. Perhaps someone could attach a copy of the binary so that I set it up on my TiVo?

Thanks.

if you've hacked your tivo, you could just use sendkeyplus (http://dealdatabase.com/forum/showthread.php?t=57094)

valley_nomad
08-26-2009, 01:57 AM
Port 31339 UI control doesn't work on my hacked TiVO HD. I have /sbin/tnlited running that may have interfered with the funtion?

StanSimmons
08-26-2009, 08:20 PM
Go to Messages & Settings > Remote, CableCARD, & Devices > Network Remote Control

Then you have to enable it (by default, the option is set to disabled)

newbie
09-08-2009, 09:14 PM
Transfers via TTG tend to be faster if both tuners are tuned to channels you don't receive (stops buffering). This is a great way to change the channels from our PC.

jeepguy_1980
05-05-2011, 07:57 PM
After thinking about it for a small while, my curiosity was piqued, and I decided to try and figure out the protocol Crestron was using to talk to an unhacked TiVo, and how we non-Crestron users could somehow harness it.

As it turns out both the TiVo HD and Series3 units now listen on port 31339 for connections from a Crestron device. What is really interesting about this discovery is that this service is enabled and accessible by default on a stock Series3 running software 9.1 and up. There is NO HACKING REQUIRED to use this interface.

The protocol and its commands aren't published, but some heavy digging on Crestron and debugging the tivoapp binary resulted in some interested finds.

I think you're about 3 years too late.

http://www.tivocommunity.com/tivo-vb/showthread.php?t=392385

Omikron
05-07-2011, 04:29 AM
I think you're about 3 years too late.

http://www.tivocommunity.com/tivo-vb/showthread.php?t=392385

Your post confuses me. Who is three years too late? For what?