Tablo Tools - Bulk Export/Delete on Win/Mac/Linux

I would “expect” it run on a specific since the GUI does… but if one-app-fits-all cool!

Note: APL Tablo does this.

1 Like

image

Do the clean/dirty/finished/unwatched icons only show for “bad” recordings?

I have a couple recordings tablo reports "state":"finished","clean":false without any errors. That’s odd, but that’s what it says.

I have other’s on my second device, "state":"failed","clean":false and reports errors. I know this has little to nothing to do with Tablo Tools specifically.

Just asking some have have the icons some don’t, if there’s a pattern.

Do the clean/dirty/finished/unwatched icons only show for “bad” recordings?

Now, yes. That’s a result of collapsing them when comskip is not in use. This also happily happened to make the comskip/comskip-less “all’s good” display the same.

If you’re more curious, here’s the code that does that.

Of course every bit of the logic for those determinations I made up and hoped for the best.

Thanks, I can follow the logic flow, if now completely understand the programming. If it’s a complete success, as reported finished and clean it’s a green check. Otherwise it gets some icons to indicate “issues”.

Ok, not specific to Tablo Tools, finished, unclean - I believe due to being 7 seconds short. I made NO manual adjustments to scheduling offsets. Yet is shows recorded_offsets":{"start":6,"end":1} so it cut off seven seconds

2 tuners, Scheduled 6pm - 12am 1 hour “marathon” episodes recording. 11:00 & 11:30 half hour episodes of another show… so it trims a few seconds, then labels clean = false.

Note: tablo’s web app does not report this. unclean on it’s own isn’t necessary “a problem” from their perspective (and really 7 seconds is negligible)

I’d have to look at the full records you’re talking about or have a more clear description of the recording schedule to try to duplicate what you’re seeing.

In the end, if the shows duration is 1800 and the recording comes up short - 1793, “clean”:false but there’s no error. In tablo’s [web] app it doesn’t report and issue with it. I think I’d have to look at the root - read only log directory to follow which tuners were in use. I’m not going to do that.

Just because it’s “dirty” …tablo’s app don’t seem to report it as bad, I presume, if there’s no error. I suspect it trimmed the few seconds to use the tuner.


I am learning to find the naming templates useful. The the point -n- click is beatiful. It’s really handy for the occasionally recorded shows I don’t have something set up for already. :slight_smile: thanks!

Finally found how and added Error Handling page to (mostly) prevent White Screens of Death.

Not sue how, but I found a way around it :frowning: wasn’t even trying - honest I wasn’t

No notion of what you’d clicked on or were doing when that happened? If not, hopefully I’ll find it in the error logs on my next pass through.

Sorry, just launched it. Worked the previous day, but hard to say where I left off

FunTime with {{Handlebars}} been trying real hard to figure this out… the possibility may exist, though not possible to implement.

Seems there’s a replace function, maybe from different “libraries”

I prefer show titles not start with “The” so I’m trying things like

{{replace "The " "" show.series.title}}

From handlebars-helpers replace actually, I probably want replaceFirst

Replace the first occurrence of substring a with substring b .

It doesn’t seem to parse “the” substring

This isn’t working. Maybe I’m missing the syntax? . Could be what I’ve read it an extra handlebars-helper and beyond the scope of this project. Maybe I just don’t have a clue :frowning:

I recorded several shows titles starting "The " so I’ve something to work with. Should I just have a “post processing” file rename, or explicitly name files/shows with custom templates?

Very close, you just have the variables out of order. This is the extra set of handlerbars helpers I added in, and here’s replace specifically.

So either of these should work:

{{replace show.series.title "The" ""}}
or
{{replace showTitle "The" ""}}

beautiful!

Ultimately I believe strip more closely covers what I’m looking for.

Suppose to work with reg exp, ok, I’ve never learned the art of regular expressions, just the extreme basics. Thinking I just want the "The " from the beginning I could use something like /^The / maybe toss in a $, but anything other than double quotes are literals.

well, never mind, replace and/or strip are working. Not sure how many show titles have capital The in the middle of the title anyhow.


Now for something really exciting.

Can these be nested or compound helpers on a single title?

The Martha Stewart Show - 20200728_1300

{{pascalcase stripShowTitle}}

is awesome (since camelcase leaves the very first character lowercase) results:

TheMarthaStewartShow

Now to remove “The” I can do one of the other. I believe I’m complicating things. Probably would need the complexity of adding “shortcuts”/custom modifications and have it done there. I’m manipulating the variables you’ve already manipulated. I know I overthing things, just getting rid of "The " in one step is cool! Compressing filenames is yet another option I’m really liking! :slight_smile:

I just released v0.3.0-beta.1 which is the CLI. Yay! Here are some pics, go read the minimal release notes, and sorry if you can’t figure out how to run it yet, I’ll have that worked out soon enough.


1 Like

hyper sensitive, I understand it’s a preview beta

- u yes errors with

Invalid values:
Argument: u, Given: "yes", Choices: "YES", "NO", "NAT"

What’s up with object_ids ? I presume it’s the tablo’s objectID. although it’s not readily available in tablo-tools, its not hard to dig out. So I try to get rid of a recording I don’t need… since I know how to truncate "The " from show titles now :slight_smile:

tablo-tools delete -S SID_5087B820425C -i 35290 -u YES
Current Device:  tablo2 - 192.168.0.21 - SID_5087B820425C

FATAL, EXITING...
 No "saved-search" or "ids" parameter found

I’m using this object_id, and had it update, so it could try harder
image

I presume it’s using the default naming template? for all exporting right now?
[edit]
it may be worth noting,

The one I definitely know is that the AppImage works using ./TabloTools-0.3.0-beta.1.AppImage --help

or maybe this is how appimage works, your example uses an absolute path. May or may not work for everyone depending on OS and configuration.

- u yes errors

I made this be case-insensitive

What’s up with object_ids

Definitely the Tablo object_id and I’d broken the CLI option. I don’t really know when it will be used - my best thought has been to provide them in a pre-built command for a set of Selected Recordings.

I presume it’s using the default naming template?

Yes. I knew I’d forget to add at least one major thing! There will be an option to set this.

1 Like

could use something like /^The /

Ultimately this is what you want with strip , but it looks like regexs aren’t working, so you’ll just have to hope no shows appear with capitalized “The” in the middle of the name (shouldn’t?) for now :confused:

Can these be nested or compound helpers on a single title?

Yup. Try this:
{{pascalcase (strip "The" showTitle) }}

OhBoyOhBoy that’s way too cool! I was using too many {{}} for nesting. This has great power and enormous potential beyond …just cool.

I just thought I’d try, since I had a list of shows starting with "The " I didn’t need. You’ve never really worked with objectID, so I didn’t expect too much at this point. But, yea if the CLI can display a list it can be quicker to copy 'n past a handful of numbers than a bunch of show titles for some quick operations. -someday, maybe

That’s find. I was just trying to get things tight and clean. The strip quotes will cover almost every thing, and it’s not overly common. (just one of those annoying things)

With the shortcuts provided and the handlebars-helpers, and even nesting can come up with creative and universal templates.
[edit]
I just realized the nesting is with (parenthesis) really, I suppose it’s documented, somewhere, but it just seems counterintutitive to the curly brace handlebar theme.

1 Like

@JimTX I’m not exactly sure, but I believe I get these occasionally. I don’t know, only suspect it’s related to the TSL (may not have the right letters in the right order at the moment) HTTP security issue that didn’t happen with web apps.

I usually click a different screen then back to export and it virtually always works the second time.

I’ve encountered this in other #tablo-apps:third-party-apps-plex 3rd party apss and still the web app at times - “waiting to reconnect”.

export logs it’s referring to are enabled here…
image
and stored here…
image

Please to note: “This doesn’t clean itself up, so turn it off when you don’t need it and delete the logs files if you want.” Every show you export generates a log, and the accumulate until you delete them!

@JimTX is this what you get -
image

It says No log, I suppose, because it didn’t complete successfully… but if you look there’s a partial log for the export. They are created milliseconds apart, they may not all have the complete error

[warn] An error occurred: Error: Error: Request failed with status code 503

A couple of them just had network error and one just ended with ffmpeg.

I’ve seen post with Tablo Ripper giving the 503 error, technically it’s ffmpeg, so I’m guessing it’s similar to what was tweaked this summer [https://github.com/cyclej/TabloRipper/wiki/Downloads-&-Release-Notes] I had gotten it while using the web app connecting to one of my tablos - reconnecting in 5-4-3-2-1 (counting down to second try).

I believe it’s an annoying, benign error as long as it’s not passed over in a script and episodes get deleted.

Found the source of the problem, not anything I had expected. Ran out of disc space. Partition being 1TB I thought I had ample space. But numerous video files took their toll. Was confused as my warning label might say failed after 16 minutes or so. Failed because insufficient space remained to complete the task. After some major purging and moving of files all is working well now.

Many thanks to all for the suggestions.

1 Like