Version of Channels DVR

Is there any way of having our Version of Channels DVR updated automatically?

The server does check for stable release updates and installs automatically. If you mean for prereleases, you can make that happen easily with a cronjob.

I just checked mine and it was outdated and then did an update. Doesn't it do that with every update?

This page will show you the latest stable release versions, as well as the changelogs:

Could anyone please explain step by step how this is done. I know enough about terminal to get around in it, but have never created a cronjob.

Which parts of the process did you have questions about? A good place to start is the included documentation; crontab is both the name of the file as well as the program used to manage that file:

  • man crontab
  • man 5 crontab

Also, I have found the Arch wiki to be a great general resource that can easily be applied to most operating systems/distributions, not just Arch: Cron.

I am running Channels on a Mac. So I guess I need to have a script that would go to the DVR webpage, select the update drop down menu, select Pre-Release and then load it. That is where I get stuck. Automator can open the webpage, but there is no handle I can see to select a specific item on that page and open it.

I can schedule the time it runs in Automator, so that part is actually easily achieved.

Automator would not be my first choice; if you're going to use cron, you're probably better suited to using a shell script. You said you had familiarity with the command line, so I figured you would take that route and that's why I directed you to the manpages.

If you're looking to do this in Automator, I can't help you. Otherwise, scripts for checking for updates have been shared many times in the forum; I haven't had my coffee yet, so I'll let you search for those posts.

well I managed to get it almost working

I wrote this script which gets as far as downloading the software and opening the webpage, cant figure out how to make it click the Upgrade Now button.

tell application "Terminal"

activate

do shell script "curl -XPUT http://127.0.0.1:8089/updater/check/prerelease"

end tell

tell application "Safari"

open location "http://127.0.0.1:8089"

end tell

The /updater/check/prerelease endpoint will automatically update the DVR if a new version is found. Sending a PUT to that endpoint is the same thing as pressing the button on the webpage. (It will also wait until the DVR is idle to perform the update if it is in use when the update check is requested.)

There is no need to open the webpage at all.

The script as written does download the update but does not execute it actually loading. When I go to the DVR setting the button is waiting for me to execute the upgrade it just downloaded

The upgrade is executed automatically once the dvr is idle. It won't upgrade while still recording or watching.

You may need to just refresh the browser. I notice that when I update, after the upgrade it will still show the previous version as the installed one.

Yep, once I turned off the Apple TV the update ran. Created an Applescript with the curl command. Then created a Launch Agent (launchd) to run the AppleScript at 2am everyday.

1 Like