Iv just upgraded to Virgin and was given a TiVo box which can be controlled using various commands - once a telnet session has been established.
To find the ip of your Tivo box i tend to use a network scanner on my phone whilst connected to the same network, but im sure the ip is listed in settings of the box some where. You need to telnet to the box on using port 31339
Once connected you can send various commands to the box to do pretty much anything, although you need to enter the commands quickly for them to work as the box constantly send a “status” command out to the screen which interrupts the command i was trying to send as it wasnt designed to receive telnet requests.
I found the following telnet commands over at http://www.tivocommunity.com/community/index.php?threads/tivo-ui-control-via-telnet-no-hacking-required.392385/:
List of commands:
You can also use SETCH 144 to turn to a channel instantly.
After some research i was able to send a command without logging into my telnet session on the command line and being interrupted by constant status updates:
echo SETCH 144| telnet 192.168.0.10 31339
echo IRCODE STANDBY | telnet 192.168.0.10 31339
Which then allowed me to add a command line switch to Home Assistant:
command_on: 'echo IRCODE STANDBY | telnet 192.168.0.10 31339’
command_off: 'echo IRCODE STANDBY | telnet 192.168.0.10 31339’
friendly_name: Virgin On
Which then allowed me to use Alexa to control the TV using emulated Hue.
“Alexa, turn virgin on”
“Alexa, turn itv on”
The channel is then changed instantly, before Alexa has even had a chance to say “Ok”!