Tablo lightweight standalone web client, faster start, faster channel change

Hi team,

I was mulling over yesterday’s little glitch for folks who couldn’t use their web app and then thought about how we could have independent access to the Tablo from a web client (that seemed to have caused issues).

I personally could also do with a simple way to get access to our TV without the overhead of guide data syncs from our treadmill to be able to watch telly on the iPad while working out. Also being able to change between the channels super quickly with one button while running was a goal - that’s always been tricky!

I haven’t got my API access yet, asked for it yesterday from team @TabloTV who are going to hook me up - psyched about that! In any case, here’s a screen grab below of how far I got since dinner time. Is this anything that folks would be interested in being able to use?

I’ll throw the code up on GitHub right now it isn’t touching anything more than what you can pull using the Plex client, but as you can see it’s just a simple jQuery standalone piece of HTML with easy access to css styled buttons on the left. Right now it does a couple of AJAX fetches for the stations, and pops up an embedded video for the current channel. Basically uses the same URL hints as the Plex channel code that is already available here:

Plex Channel Github

If it turns out folks think this is of any use, I’ll probably pop it up on the Github in a couple of days once I get it finished off and get it looking in a bit better shape. :smile:

Here’s where I’ve got so far… any ideas/thoughts would be super welcome!

5 Likes

Very nice!!

2 Likes

Full disclosure, the eventual idea is to integrate it with another crazy project I happen to have to provide a “single pane of glass” for our treadmill so you can manage speed, incline fans and also watch and change the channel for the telly at the same time. I’m still threatening the Alexa plug in for both of them… “ALEXA: Station PBS, incline 5%, at 7 mile per hour”. Should make a fun youtube that one :wink:

You’ll see from the treadmill project below there is a significant overlap in “interface design” cough… yeah basically the same dodgy jQuery code :smile:.

… also /me waves at @ventz - we used to work together, he’s been a solid partner in crime for years, and we seem to always pick similar tech! hehehe!

Hello all,

I’ve uploaded my example code for a standalone client to GitHub in case folks want to follow along. Right now you can see the application working on iOS and inside of Safari. There’s a linked YouTube inside the git repo and simple instructions to get going. So far so good, but this is like version 0.000001, your milage may not only vary, you may not even get any… :wink:

1 Like

(haven’t looked at your code) About my only concern is that the token for access to the data is temporal. Might have to be refreshed in playback. I know I’ve considered this for future surlatablo releases.

1 Like

Yeah - I only just got my API access letter that I’ve yet to sign and return today so I’m digging about in the dark right now. The m3u8 seems to return about 12 hours worth of URL, so I’m guessing that might be enough. Who knows, if it lasts an hour I’m in good shape, can’t stand any longer on the treadmill ;-). I’ve not really coded in years, so this is all a little erm… well - yeah, you get the idea.

@jamescuff

Was excited until I read on github only usable with Apple Interfaces.

I’m an Android man only.

That’s ok… I’m patient.

Thanks for developing this.

Chas

1 Like

Thanks @cthompgh - it’s so simple right now the whole thing is just a few lines - the trick is to parse out the m3u8 there’s some libraries that I can probably use (see below). Also - thanks for looking!

I just found an absolutely horrendous error in the code after removing the hardcoded links before publishing, that wasn’t passing the Tablo IP to the functions so it failed superhard. Fixed in GitHub, I’m such a muppet!

1 Like

Yeah this is totally the thing, I’ll try and whack it in tomorrow. Neato!

Hehe - and look at that! If you look at that page, there’s a logo for a company we recognize who use this library in production. Well wouldn’t you know! I guess that’s going to be supported once I work out how to use it. hehe! :smile:

Would it work remotely as well ? I assume it will need a open port and fixed ip address or use a service that changes dhcp to a name.

1 Like

yep - simple port forward… I’d need to put http auth and some https around a proxy though - I wouldn’t be too keen on having the Tablo sitting out in the breeze with zero auth… that would end in all sorts of poorly :slight_smile: The client talks direct to the Tablo as it is right now, so that python would need to get smart. Mind you once you head down that path it starts to look like Plex… I’m so trying not to build a media server… I think I’m going to head that way though… must resist must resist! heheh! :slight_smile:

We were just talking about this. One option is what you suggested. Another “trick” (not really, pretty standard now a days) is a reverse connection to an online service. A particle photon (or one of their fancier new mesh devices - you just need the $15 wifi one) or a raspberry pi on the particle network (free) would work well. This would give you a remote API that would trigger something locally in your house / behind a firewall / without a static IP or caring about your DHCP ip. It works really really well for this purpose.

1 Like

Okay, so I’m going to be selfish and greedy because I keep mentioning this…

You my friend are extremely talented. Would you consider instead of building a home media server, be willing or able to get Tablo recordings straight into plex?

I will gladly contribute a couple cases of beer and whatever else you might want within reason lol to be able to easily get my recordings into plex and use the built in comskip functionality.

There is an existing Tablo channel, don’t know if it maintained any longer. But maybe you can do something with that code…

Ok, so I run macs in the house and many of the products are for pc’s.

I have been using an app or script from the forums to take shows off the Tablo drive and covert them to mp4. I can remember the name of it it for the life of me…but I found the info here on the forum. This a manual process for me. Running the app, waiting for the conversion, moving to a usb drive. Going from usb drive to plex server and loading the shows myself onto my plex server.

Someone also created a docker image that would do this, alas, I cannot figure out how to get it setup.

What I am looking for is the ability to call the Tablo and this may not be the right term. Or better yet, something that runs at night and takes that nights recordings, converts them to mp4 for direct play via plex. Moves the shows to my plex server in the proper location/folders. I can live with manually skipping commercials using thumbnails.

I’m looking for way to get shows off the Tablo hd and moved into plex nightly or early morning. And have it be an automated process.

I am computer literate, but some of this is beyond me. We use tablo for mostly dvr. News and live sports so the slow channel changes are not an issue. Once watch, we watch. We do not channel surf.

We can take it off line if you want to pm me for more information. I am happy to test and help out any way. If not I’ll continue doing what I am doing…

Thanks for your work and positive response. Hope I am more clear this time around.

I am now looking at the rbw post. Maybe I can make sense of that! Thanks for the reference.

That looks like it will do the job. Looks to be a very clean solution! Gotta figure out to set that up and give it go…gonna be a learning curve.

1 Like