Hi, I have seen a few Australians around here.
I was wondering if anybody has managed to integrate the Optus / iiNet FetchTV box?
There does not seem to be an API available and I can’t find anything on how to even get a status from that box. So far all I can get is if it is online or not. (nmap)
Most of the other things I can probably get via the Harmony Remote. But it would be nice to know if something is recording or even what channel is being watched.
Fetch TV is now on google assistant (google home) so it uses the fetch activation code and your 4 digit passcode to connect. If you have one just say “hey google” “talk to fetch” and it allows you to set it up.
Unfortunately I am not smart enough to make it work with home assistant. How do we ask if anyone is interested in creating this for us as I would love to have control over it through hassio?
I know that the last reply here was a while ago, but has there been any movement on this? I was looking at getting the fetch tv box with iinet as they are throwing it in for free with some of their plans at the moment.
There are only 8 votes (including mine) on getting Fetch TV integrated into Home Assistant so either there are not many Aussies with that combination or people are happy with using the Fetch remote / app - I’m not one of them
Given the Google Assistant integration which is possible via Home Assistant wouldn’t it be possible to write custom actions which then could be triggered via Home Assistant cards? A handful of commands would quickly provide the most used commands; e.g.
Volume up
Volume down
Change to <channel>
Record current program
Pause/resume
...
Of course the other option is to remain with the Google Assistant voice interface. While I’m usually quite impressed with Google Assistant (running on Google devices) the Fetch integration is a bit hit and miss - hence the above question
I still wonder whether the route of Google Assistant custom actions could work. The currently available Google Assistant integration (via the voice interface) under the cover would issue some custom commands created by the Fetch TV team. So if we can mirror these same commands we should have a way to replicate these controls, right?
I did a NMAP scan on the fetch mighty box and found some interesting results:
(Note: I don’t own a fetch box, I used a family members box for this)
(Note 2: I don’t know alot about what im doing. Please correct me if i am wrong )
At port 9080 and if you have Netflix open (and only Netflix it seems, I tried other apps and the connection was refused), it loads a web page with the text “status=ok”. NMAP says it supports GET, POST, OPTIONS and HEAD
It has something called “rpcbind”:111 and UPNP:49152 (maybe could get media and states from that?)
Log below:
PORT STATE SERVICE VERSION
80/tcp open tcpwrapped
111/tcp open rpcbind 2 (RPC #100000)
| rpcinfo:
| program version port/proto service
| 100000 2 111/tcp rpcbind
|_ 100000 2 111/udp rpcbind
8060/tcp open tcpwrapped
9080/tcp open http Mongoose httpd
|_http-title: Site doesn't have a title (application/json).
| http-methods:
|_ Supported Methods: GET HEAD POST OPTIONS
49152/tcp open upnp
| fingerprint-strings:
| FourOhFourRequest, GetRequest:
| HTTP/1.0 404 Not Found
| SERVER: Linux/4.1.20-1.9, UPnP/1.0, DLNADOC/1.50
| CONTENT-LENGTH: 48
| CONTENT-TYPE: text/html
| <html><body><h1>404 Not Found</h1></body></html>
| HTTPOptions:
| HTTP/1.0 501 Not Implemented
| SERVER: Linux/4.1.20-1.9, UPnP/1.0, DLNADOC/1.50
| CONTENT-LENGTH: 54
| CONTENT-TYPE: text/html
| <html><body><h1>501 Not Implemented</h1></body></html>
| RPCCheck, kumo-server:
| HTTP/0.0 400 Bad Request
| SERVER: Linux/4.1.20-1.9, UPnP/1.0, DLNADOC/1.50
| CONTENT-LENGTH: 50
| CONTENT-TYPE: text/html
|_ <html><body><h1>400 Bad Request</h1></body></html>
56790/tcp open tcpwrapped
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port49152-TCP:V=7.93%I=7%D=7/5%Time=64A4F143%P=i686-pc-windows-windows%
SF:r(FourOhFourRequest,A9,"HTTP/1\.0\x20404\x20Not\x20Found\r\nSERVER:\x20
SF:Linux/4\.1\.20-1\.9,\x20UPnP/1\.0,\x20DLNADOC/1\.50\r\nCONTENT-LENGTH:\
SF:x2048\r\nCONTENT-TYPE:\x20text/html\r\n\r\n<html><body><h1>404\x20Not\x
SF:20Found</h1></body></html>")%r(GetRequest,A9,"HTTP/1\.0\x20404\x20Not\x
SF:20Found\r\nSERVER:\x20Linux/4\.1\.20-1\.9,\x20UPnP/1\.0,\x20DLNADOC/1\.
SF:50\r\nCONTENT-LENGTH:\x2048\r\nCONTENT-TYPE:\x20text/html\r\n\r\n<html>
SF:<body><h1>404\x20Not\x20Found</h1></body></html>")%r(HTTPOptions,B5,"HT
SF:TP/1\.0\x20501\x20Not\x20Implemented\r\nSERVER:\x20Linux/4\.1\.20-1\.9,
SF:\x20UPnP/1\.0,\x20DLNADOC/1\.50\r\nCONTENT-LENGTH:\x2054\r\nCONTENT-TYP
SF:E:\x20text/html\r\n\r\n<html><body><h1>501\x20Not\x20Implemented</h1></
SF:body></html>")%r(RPCCheck,AD,"HTTP/0\.0\x20400\x20Bad\x20Request\r\nSER
SF:VER:\x20Linux/4\.1\.20-1\.9,\x20UPnP/1\.0,\x20DLNADOC/1\.50\r\nCONTENT-
SF:LENGTH:\x2050\r\nCONTENT-TYPE:\x20text/html\r\n\r\n<html><body><h1>400\
SF:x20Bad\x20Request</h1></body></html>")%r(kumo-server,AD,"HTTP/0\.0\x204
SF:00\x20Bad\x20Request\r\nSERVER:\x20Linux/4\.1\.20-1\.9,\x20UPnP/1\.0,\x
SF:20DLNADOC/1\.50\r\nCONTENT-LENGTH:\x2050\r\nCONTENT-TYPE:\x20text/html\
SF:r\n\r\n<html><body><h1>400\x20Bad\x20Request</h1></body></html>");
MAC Address: BC:14:EF:F6:D1:55 (Iton Technology Limited)
Device type: general purpose
Running: Linux 3.X|4.X
OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
OS details: Linux 3.2 - 4.9
Uptime guess: 2.770 days (since Sun Jul 2 19:59:50 2023)
Network Distance: 1 hop
TCP Sequence Prediction: Difficulty=260 (Good luck!)
IP ID Sequence Generation: All zeros