OliveTin for Channels: An Interface for Misc Channels DVR Scripts & Tricks

Same in Chrome. The text needs to be highlighted first, and then drag and drop. @Rice also pointed out that drag-and-drop isn't supported on any level in mobile browsers.

I was trying to come up with an approach that doesn't require users with one DVR to do anything new. And, OliveTin's dropdown fields don't support a default value, so even with a single DVR it would need to be selected each time.

One thing I hadn't considered initially was using a different type of field for single vs. multiple DVR scenarios. But, I think this may be the answer within OliveTin's framework. We'll use the current field style with a default value if one DVR is defined, but switch to a drop-down style if multiple DVRs are defined.

It'll take me a bit to work out the scripting to do this, but it should be a better solution.

If you switch to :test, I have this fixed. Once there are :+1: all around for the test container, I'll push a new :latest.

Nice, you nailed it.
Working great here on latest test version.
I can also confirm that Generate filtered Channels DVR log :white_check_mark: works on multiple DVR's.

@chDVRuser @Rice

Pushed a new version under the :test2 tag that uses a dropdown field instead of drag and drop for choosing between DVRs. This is probably as good as we can do on this, given the options available in OliveTin. Hopefully it's a better approach than the previous method. Let me know what you think...

EDIT: Seems like all is well with the latest test builds -- so I've nuked 'em and consolidated recent work under the :latest tag.

I think it’s perfect!! Nice work

Very nice. Works great.

I started playing with this yesterday and it's very cool! @bnhf, thank you for putting your time and effort into developing this for the community.

I do have a question / observation. I notice the cc4c portainer doesn't seem to have a way to update Chrome. It seems fixed at .133 even though the recommended version from @babsonnexus is .199.

I've played around with a couple of different approaches to update it but nothing successful. Any idea why it's held back?

That's pretty typical with Docker, as one of the advantages of containers is having a fixed, known and tested set of dependencies. The Chrome version that's in the container is actually one that people have had success with. In fact, numerous people using non-docker versions have disabled Chrome updates to keep it at the same version that's in the container.

Just for grins, I tried building a fresh version of cc4c (which I've done before), and it wouldn't build either from scratch or attempting to just update and upgrade from the current fancybits image. So there's clearly some work needed for it to be compatible with updated dependencies.

Yup, I understand about dependencies and all. I'm more concerned with security vulnerabilities and bug fixes.

FWIW, I've got 117.0.5938.132 working just fine on MacOS, but I do like the idea of having cc4c running on the main server vs my desktop Mac. And, of course, just because it works on MacOS doesn't mean that it will work on Linux.

For the Generate Filtered Channels DVR Log action
Any chance of saving the search criteria or reading it from a file?

I've got a couple queries I run, one of which shows what happens with recordings.
grep filter for that is

ended prematurely:|[DVR] Error running job|[DVR] Finished job|[DVR] Job cancelled|[DVR] Recording for job|[DVR] Starting job|[TVE] action=auth mvpd|[TVE] action=authed|[TVE] action=navigate
1 Like

Sure. Maybe something like file://filename.grep in the filter field to run a predefined search saved in a file?

That would work.

1 Like

@chDVRuser As one of our resident experts on Channels API endpoints, what would be required to run a metadata update as referenced here?:

Looks like it's going to be implemented in Channels DVR

Is the only way to clear the Logs view by restarting the docker container?

I have 59 entries showing
2023-10-23 20:27:07 List Channels with Comskip Off
2023-10-23 20:26:59 List Channels with Comskip Off
2023-10-23 20:26:53 List Channels with Comskip Off
2023-10-23 20:26:45 List Channels with Comskip Off
2023-10-23 20:26:38 List Channels with Comskip Off
2023-10-23 18:27:21 Generate Filtered Channels DVR Log
2023-10-23 18:27:09 Generate Filtered Channels DVR Log
2023-10-23 18:26:43 Generate Filtered Channels DVR Log
2023-10-23 18:25:45 Generate Filtered Channels DVR Log
2023-10-23 18:15:29 Generate Filtered Channels DVR Log
2023-10-23 18:12:10 Generate Filtered Channels DVR Log
2023-10-23 16:42:31 Generate Filtered Channels DVR Log
2023-10-23 16:42:15 Generate Filtered Channels DVR Log
2023-10-23 16:17:15 Generate Filtered Channels DVR Log
2023-10-23 14:56:56 Generate Filtered Channels DVR Log
2023-10-23 14:26:53 Generate Filtered Channels DVR Log
2023-10-23 14:19:31 Generate Filtered Channels DVR Log
2023-10-23 14:18:13 Generate Filtered Channels DVR Log
2023-10-23 13:59:44 Generate Filtered Channels DVR Log
2023-10-23 13:59:04 Generate Filtered Channels DVR Log
2023-10-23 13:58:33 Generate Filtered Channels DVR Log
2023-10-23 13:50:34 Generate Filtered Channels DVR Log
2023-10-23 13:44:21 Generate Filtered Channels DVR Log
2023-10-23 13:44:11 Generate Filtered Channels DVR Log
2023-10-23 13:44:01 Generate Filtered Channels DVR Log
2023-10-23 13:43:49 Generate Filtered Channels DVR Log
2023-10-23 13:43:36 Generate Filtered Channels DVR Log
2023-10-23 13:39:11 Generate Filtered Channels DVR Log
2023-10-23 13:38:28 Generate Filtered Channels DVR Log
2023-10-23 13:36:37 Generate Filtered Channels DVR Log
2023-10-23 13:23:03 Generate Filtered Channels DVR Log
2023-10-23 13:21:46 Generate Filtered Channels DVR Log
2023-10-23 13:21:13 Generate Filtered Channels DVR Log
2023-10-23 13:20:07 Generate Filtered Channels DVR Log
2023-10-23 13:18:45 Generate Filtered Channels DVR Log
2023-10-23 13:16:11 Generate Filtered Channels DVR Log
2023-10-23 13:15:15 Generate Filtered Channels DVR Log
2023-10-23 13:13:42 Generate Filtered Channels DVR Log
2023-10-23 13:11:57 Generate Filtered Channels DVR Log
2023-10-23 13:11:04 Generate Filtered Channels DVR Log
2023-10-23 13:10:00 Generate Filtered Channels DVR Log
2023-10-23 12:19:13 Generate Filtered Channels DVR Log
2023-10-23 11:58:04 Docker-Compose Examples for Channels & Related Extensions
2023-10-23 11:42:43 Create Channels List in CSV Format
2023-10-23 10:07:29 Channel Lineup Change Notifications (23Oct23_09:11)
2023-10-23 09:11:04 Channel Lineup Change Notifications (23Oct23_08:38)
2023-10-23 08:38:00 Channel Lineup Change Notifications (22Oct23_17:05)
2023-10-22 17:48:57 Docker-Compose Examples for Channels & Related Extensions
2023-10-22 17:47:55 Docker-Compose Examples for Channels & Related Extensions
2023-10-22 17:06:33 Channel Lineup Change Notifications (22Oct23_17:05)
2023-10-22 17:06:22 Channel Lineup Change Notifications (22Oct23_17:05)
2023-10-22 17:06:13 Channel Lineup Change Notifications (22Oct23_17:05)
2023-10-22 17:06:04 Channel Lineup Change Notifications (22Oct23_17:05)
2023-10-22 17:05:54 Channel Lineup Change Notifications
2023-10-22 17:05:40 Channel Lineup Change Notifications (22Oct23_15:05)
2023-10-22 17:05:30 Channel Lineup Change Notifications (22Oct23_15:05)
2023-10-22 17:05:21 Channel Lineup Change Notifications (22Oct23_15:05)
2023-10-22 17:05:09 Channel Lineup Change Notifications (22Oct23_15:05)
2023-10-22 17:05:00 Channel Lineup Change Notifications (22Oct23_15:05)

and can't tell what they are from unless I open the STDOUT and STDERR, and even then some don't display the DVR I ran it against.

If it's not too difficult it would be nice to have a Delete/Clear next to each one.

Good point! Since, I've been in development mode I've been restarting frequently enough that I don't get much build-up of results. But I can see the issue.

As far as making sure that each result reflects which DVR it came from that's something I can work on. A delete button per log entry would be something we'd need to lobby the OliveTin developer for. I'll see what I can figure out about how and where the log entries are stored, and maybe we can reset the entire log without a container restart -- or better yet some sort of a date cutoff to purge older entries?

Let me know which activities need a DVR reference added, as you come across them, and I'll add it.

Another thought I had is if the individual action logs (std & err out), wherever they're currently held, can be moved to ActionLog files in the /config directory then there's no need to keep the Log display on the web page. Maybe replace that page with an ActionLog file picker? One could always delete an ActionLog file from the /config directory if they no longer need to retain it.

List Channels with Comskip Off
Mark an Episode for Re-Recording

I ran into issues previously with docker containers on my Synology when volumes were mapped like you did Channels DVR on docker - #38 by chDVRuser and I found out it works fine if I mapped them to the Docker folder /volume1/docker
So for yours, this should work without causing permission issues

volumes:
      - /volume1/docker/olivetin:/config # replace host path or volume as needed

and then no need to use

    user: root

I don't remember when, but I came to the same conclusion on the volume mapping and mine looks exactly as you show. Thanks for the followup.

1 Like

Thinking about this a bit more, what if we sent all stdout to a log file in addition to stdout? Something like:

host-ip_scriptname_latest.log

So we'd know what was run, for which DVR, and that it would be the most recent -- as we'd overwrite the previous "latest"?

The OliveTin log would be there to look at right away, with our log files available and persistent through restarts.