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

I am getting an error when I do the health check.

curl: (6) Could not resolve host: local-server
HTTP Status: 000
Effective URL: http://local-server:8089/

That will fail since on the Mac I think the url needs be localhost:8089
Ah it was in the variables. do I need to recreate the image.

To make changes to the environment variables, stop the stack. Make your changes, and then click the "Update the stack" button in Portainer.

The provided env vars are just examples -- you need to enter the appropriate values for your setup.

1 Like

Honestly wasnt sure if I was going to get there. Thank you so much!
have my first YouTube streams back!

5 Likes

Indeed! Around 22K downloads now -- believe it or not. :slight_smile:

3 Likes

Me too

Any idea why I'm getting this error when clicking on the Delete Channels DVR Recording Log Files?

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

My DVR_SHARE directory is available on my Docker Host and when I goto the shell the directory pulls up fine to where my DVR share is. Weird

What do you see when you run the OliveTin Post-Install Healthcheck? Are you seeing any failures? Here's mine as an example:

Checking your OliveTin installation...
(extended_check=false)

----------------------------------------

Checking that your selected Channels DVR server (media-server8:8089) is reachable by URL:
HTTP Status: 200 indicates success...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  1276  100  1276    0     0   178k      0 --:--:-- --:--:-- --:--:--  178k
HTTP Status: 200
Effective URL: http://media-server8:8089/

----------------------------------------

Checking that your selected Channels DVR server's data files (/mnt/media-server8-8089) are accessible:
Folders with the names Database, Images, Imports, Logs, Movies, Streaming and TV should be visible...

total 8
drwxr-xr-x 2 1000 1000 4096 Nov 28 04:00 .
drwxr-xr-x 1 root root 4096 Dec 31 00:34 ..
drwxr-xr-x 2 1000 1000    0 Dec 31 00:29 Database
drwxr-xr-x 2 1000 1000    0 Dec 31 03:20 Images
drwxr-xr-x 2 1000 1000    0 Sep 25 08:43 Imports
drwxr-xr-x 2 1000 1000    0 Sep 25 08:43 Logs
drwxr-xr-x 2 1000 1000    0 Dec 27 11:45 Movies
drwxr-xr-x 2 1000 1000    0 Nov 18 06:35 PlayOn
drwxr-xr-x 2 1000 1000    0 Dec 30 01:33 Streaming
drwxr-xr-x 2 1000 1000    0 Dec 29 07:00 TV

----------------------------------------

Checking that your selected Channels DVR server's log files (/mnt/media-server8-8089_logs) are accessible:
Folders with the names data and latest should be visible...

total 12
drwxr-xr-x 2 1000 1000 4096 Dec 28 02:37 .
drwxr-xr-x 1 root root 4096 Dec 31 00:34 ..
drwxr-xr-x 2 1000 1000    0 Sep 21 02:23 2024.09.10.2115
drwxr-xr-x 2 1000 1000    0 Dec  5 19:40 2024.12.05.1913
drwxr-xr-x 2 1000 1000    0 Dec  7 13:40 2024.12.07.0453
drwxr-xr-x 2 1000 1000    0 Dec  9 19:40 2024.12.10.0055
-rwxr-xr-x 1 1000 1000  829 Dec 28 02:37 Channels DVR Server.lnk
drwxr-xr-x 2 1000 1000    0 Dec 31 09:19 data
drwxr-xr-x 2 1000 1000    0 Dec 28 02:37 latest

----------------------------------------

Here's a list of your current OliveTin-related settings:

HOSTNAME=olivetin
CHANNELS_DVR=media-server8:8089
CHANNELS_DVR_ALTERNATES=utheater-pc:8089
CHANNELS_CLIENTS=appletv4k firestick-master
ALERT_SMTP_SERVER=smtp.gmail.com:587
ALERT_EMAIL_FROM=[Redacted]@gmail.com
ALERT_EMAIL_PASS=[Redacted]
ALERT_EMAIL_TO=[Redacted]@gmail.com
UPDATE_YAMLS=false
UPDATE_SCRIPTS=false
PORTAINER_TOKEN=[Redacted]
PORTAINER_HOST=htpc6

----------------------------------------

Here's the contents of /etc/resolv.conf from inside the container:

# Generated by Docker Engine.
# This file can be edited; Docker Engine will not make further changes once it
# has been modified.

nameserver 127.0.0.11
search localdomain tail[Redacted].ts.net
options ndots:0

# Based on host file: '/etc/resolv.conf' (internal resolver)
# ExtServers: [100.100.100.100]
# Overrides: [search]
# Option ndots from: internal

----------------------------------------

Here's the contents of /etc/hosts from inside the container:

127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.21.0.3	olivetin

@chDVRuser could you please move this response, and the one post above it over to the primary OliveTin thread? Thanks.

EDIT: Please post your healthcheck results so I can take a look.

@bnhf

Checking your OliveTin installation...
(extended_check=false)

----------------------------------------

Checking that your selected Channels DVR server (192.168.20.5:8089) is reachable by URL:
HTTP Status: 200 indicates success...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  1276  100  1276    0     0  1246k      0 --:--:-- --:--:-- --:--:-- 1246k
HTTP Status: 200
Effective URL: http://192.168.20.5:8089/

----------------------------------------

Checking that your selected Channels DVR server's data files (/mnt/192.168.20.5-8089) are accessible:
Folders with the names Database, Images, Imports, Logs, Movies, Streaming and TV should be visible...

total 12
drwxrwxrwx 1   99 users   12 Jan 12  2024 .
drwxr-xr-x 1 root root    78 Dec 31 01:56 ..
drwxrwxrwx 1   99 users 4096 Sep 25  2020 .@__thumb
drwxrwxrwx 1   99 users 4096 Dec 31 02:12 Database
drwxrwxrwx 1   99 users   12 Dec 20 18:05 Images
drwxrwxrwx 1   99 users   60 Jul 14 13:02 Imports
drwxrwxrwx 1   99 users   50 Apr 18  2020 Logs
drwxrwxrwx 1   99 users   31 Mar 29  2023 Movies
drwxrwxrwx 1   99 users   42 Dec 30  2021 PlayOn
drwxrwxrwx 1   99 users 4096 Dec 30 19:02 Streaming
drwxrwxrwx 1   99 users  181 Aug 30  2023 TV

----------------------------------------

Checking that your selected Channels DVR server's log files (/mnt/192.168.20.5-8089_logs) are accessible:
Folders with the names data and latest should be visible...

total 8
drwxrwxrwx 1   99 users   50 Apr 18  2020 .
drwxr-xr-x 1 root root    78 Dec 31 01:56 ..
drwxrwxrwx 1   99 users 4096 Dec 27 18:03 comskip
drwxrwxrwx 1   99 users 4096 Dec 27 16:59 recording

----------------------------------------

Here's a list of your current OliveTin-related settings:

HOSTNAME=olivetin
CHANNELS_DVR=192.168.20.5:8089
CHANNELS_DVR_ALTERNATES=
CHANNELS_CLIENTS=192.168.20.189 192.168.20.31 192.168.20.178 192.168.20.36 192.168.20.169
ALERT_SMTP_SERVER=
ALERT_EMAIL_FROM=[Redacted]@
ALERT_EMAIL_PASS=[Redacted]
ALERT_EMAIL_TO=[Redacted]@
UPDATE_YAMLS=true
UPDATE_SCRIPTS=true
PORTAINER_TOKEN=[Redacted]
PORTAINER_HOST=192.168.20.5

----------------------------------------

Here's the contents of /etc/resolv.conf from inside the container:

search local
nameserver 127.0.0.11
options ndots:0

----------------------------------------

Here's the contents of /etc/hosts from inside the container:

127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.26.0.3	olivetin

@shdwkeeper

That's not the correct Channels DVR directory.
The correct one is where the Channels DVR executable files and log file are kept.

Are you running your Channels DVR Server in a docker container?

If you're running Channels DVR Server in a docker container, you'll see these in the DVR log

[SYS] Starting Channels DVR v2024.12.27.0121 (linux-x86_64 pid:7) in 2024/12/30 00:55:05.910018 [SYS] Starting Channels DVR v2024.12.27.0121 (linux-x86_64 pid:7) in /channels-dvr/data

The Channels DVR directory for the executable and log file is /channels-dvr in the container
You have to look at your docker volume mapping to see what host directory you mapped that to.

version: '3.9'
services:
  # Docker container home: https://hub.docker.com/r/fancybits/channels-dvr
  # image uses host mode networking and port is specified by env variable CHANNELS_PORT
  channels-dvr-tve:
    image: fancybits/channels-dvr:tve                        # use :tve tag, not :latest
    container_name: channels-dvr-tve
    network_mode: "host"                                     # must run in host, not bridge mode
    devices:
      - "/dev/dri:/dev/dri"                                  # to enable hardware transcoding
    environment:
      - CHANNELS_PORT=8089                                   # MODIFY the host port number to use
      - TZ=America/Los_Angeles                               # MODIFY your local timezone in standard linux format
    volumes:
      - "/volume1/docker/channels-dvr-tve:/channels-dvr"     # Channels DVR executables and log directory
      - "/volume1/ChDVRtve:/shares/dvr"                      # MODIFY Channels DVR recording directory
      - "/volume1/arkives/importtest:/shares/imports:ro"     # Add volumes for local content import directories
    restart: unless-stopped

In my case, I mapped that to my host directory /volume1/docker/channels-dvr-tve, so I would use that directory as ${LOGS_SHARE}
LOGS_SHARE=/volume1/docker/channels-dvr-tve

If you're not running Channels DVR in a docker container the DVR log entry will tell you the host directory.

[SYS] Starting Channels DVR v2024.12.27.0121 (linux-x86_64 pid:7) in 2024/12/30 00:55:05.910018 [SYS] Starting Channels DVR v2024.12.27.0121 (linux-x86_64 pid:7) in /volume1/@appstore/ChannelsDVR/channels-dvr-tve/data

In my case, I would use the directory /volume1/@appstore/ChannelsDVR/channels-dvr-tve as ${LOGS_SHARE}
LOGS_SHARE=/volume1/@appstore/ChannelsDVR/channels-dvr-tve

If that helps, maybe bnhf could add this to his documentation.

Yes Channels is running on Unraid in Docker, I thought the DVR share is where the recordings are?

OliveTin for Channels needs both.

    volumes:
      - ${DVR_SHARE}:/mnt/${CHANNELS_DVR_HOST}-${CHANNELS_DVR_PORT} # This can either be a Docker volume or a host directory that's connected via Samba or NFS to your Channels DVR network share.
      - ${LOGS_SHARE}:/mnt/${CHANNELS_DVR_HOST}-${CHANNELS_DVR_PORT}_logs # This can either be a Docker volume or a host directory that's connected via Samba or NFS to your Channels DVR logs network share.
DVR_SHARE=/volume1/ChDVRtve
LOGS_SHARE=/volume1/docker/channels-dvr-tve

DVR_SHARE is where your recordings are
LOGS_SHARE is where the executables and log file are

It know it gets confusing with the unclear descriptions and having to use environment variables

My executables and log files are kept in appdata dir on unraid for Docker. I'll map it there. Still got same error after making that change.

Your Channels DVR Server's /dvr directory needs to be bound to this container
One time run mode used...
foreground.sh is exiting for deletelogs with exit code 0

Did you change the OliveTin for Channels environment variables and restart the OliveTin for Channels container using them?

Updating stack restarts container, might be a bug

Hmm, works for me

Standard Output

Checking your OliveTin installation...
(extended_check=false)

----------------------------------------

Checking that your selected Channels DVR server (192.168.1.4:8089) is reachable by URL:
HTTP Status: 200 indicates success...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  1276  100  1276    0     0  1246k      0 --:--:-- --:--:-- --:--:-- 1246k
HTTP Status: 200
Effective URL: http://192.168.1.4:8089/

----------------------------------------

Checking that your selected Channels DVR server's data files (/mnt/192.168.1.4-8089) are accessible:
Folders with the names Database, Images, Imports, Logs, Movies, Streaming and TV should be visible...

total 72
drwxrwxrwx  2 1027 root    4096 Nov 10 18:03 #recycle
d--------- 11 1027 root    4096 Oct 13 14:43 .
drwxr-xr-x  4 root root    4096 Dec 30 09:41 ..
drwxrwxrwx  4 1027 root    4096 Nov 28 18:17 @eaDir
d--------- 32 1027 242120  4096 Dec 31 03:55 Database
d---------  3 1027 242120 20480 Dec 26 22:17 Images
d---------  5 1027 242120  4096 Mar 18  2022 Imports
d---------  4 1027 242120  4096 Feb 10  2022 Logs
d---------  2 1027 242120 12288 Oct  6 18:34 Movies
d---------  6 1027 242120  4096 Dec 27 03:08 Streaming
d--------- 54 1027 242120  4096 Dec 14 15:08 TV

----------------------------------------

Checking that your selected Channels DVR server's log files (/mnt/192.168.1.4-8089_logs) are accessible:
Folders with the names data and latest should be visible...

total 36
drwxr-xr-x  9 1027 users 4096 Dec 26 17:54 .
drwxr-xr-x  4 root root  4096 Dec 30 09:41 ..
drwxr-xr-x  2 root root  4096 Dec 14 08:56 2024.12.14.0053
drwxr-xr-x  2 root root  4096 Dec 14 20:59 2024.12.14.2130
drwxr-xr-x  2 root root  4096 Dec 21 10:08 2024.12.18.0400
drwxr-xr-x  2 root root  4096 Dec 23 09:06 2024.12.23.0634
drwxr-xr-x  2 root root  4096 Dec 23 18:48 2024.12.23.2347
drwxr-xr-x  2 root root  4096 Dec 26 17:54 2024.12.27.0121
drwxr-xr-x 13 root root  4096 Dec 31 18:15 data
lrwxrwxrwx  1 root root    15 Dec 26 17:54 latest -> 2024.12.27.0121

----------------------------------------

Here's a list of your current OliveTin-related settings:

HOSTNAME=olivetin
CHANNELS_DVR=192.168.1.4:8089
CHANNELS_DVR_ALTERNATES=192.168.1.4:8189 192.168.1.4:8190 192.168.1.4:8289 192.168.1.4:8389 192.168.1.4:8489
CHANNELS_CLIENTS=
ALERT_SMTP_SERVER=
ALERT_EMAIL_FROM=[Redacted]@
ALERT_EMAIL_PASS=[Redacted]
ALERT_EMAIL_TO=[Redacted]@
UPDATE_YAMLS=true
UPDATE_SCRIPTS=true
PORTAINER_TOKEN=[Redacted]
PORTAINER_HOST=192.168.1.4

----------------------------------------

Here's the contents of /etc/resolv.conf from inside the container:

search local
nameserver 127.0.0.11
options ndots:0

----------------------------------------

Here's the contents of /etc/hosts from inside the container:

127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.19.0.2	olivetin

I'm trying to run the Delete Channels DVR Recording Log Files and thats where the error appears, the Post-Install Healthcheck runs fine.

What does your healthcheck result look like now?

Same as yours

Checking your OliveTin installation...
(extended_check=false)

----------------------------------------

Checking that your selected Channels DVR server (192.168.20.5:8089) is reachable by URL:
HTTP Status: 200 indicates success...

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  1276  100  1276    0     0  1246k      0 --:--:-- --:--:-- --:--:-- 1246k
HTTP Status: 200
Effective URL: http://192.168.20.5:8089/

----------------------------------------

Checking that your selected Channels DVR server's data files (/mnt/192.168.20.5-8089) are accessible:
Folders with the names Database, Images, Imports, Logs, Movies, Streaming and TV should be visible...

total 12
drwxrwxrwx 1   99 users   12 Jan 12  2024 .
drwxr-xr-x 1 root root    78 Dec 31 18:13 ..
drwxrwxrwx 1   99 users 4096 Sep 25  2020 .@__thumb
drwxrwxrwx 1   99 users 4096 Dec 31 02:12 Database
drwxrwxrwx 1   99 users   12 Dec 20 18:05 Images
drwxrwxrwx 1   99 users   60 Jul 14 13:02 Imports
drwxrwxrwx 1   99 users   50 Apr 18  2020 Logs
drwxrwxrwx 1   99 users   31 Mar 29  2023 Movies
drwxrwxrwx 1   99 users   42 Dec 30  2021 PlayOn
drwxrwxrwx 1   99 users 4096 Dec 30 19:02 Streaming
drwxrwxrwx 1   99 users  181 Aug 30  2023 TV

----------------------------------------

Checking that your selected Channels DVR server's log files (/mnt/192.168.20.5-8089_logs) are accessible:
Folders with the names data and latest should be visible...

total 4
drwxr-xr-x 1   99 users  200 Dec 27 23:40 .
drwxr-xr-x 1 root root    78 Dec 31 18:13 ..
drwxr-xr-x 1 root root   154 Nov 20 15:50 2024.11.18.1326
drwxr-xr-x 1 root root   154 Nov 28 09:55 2024.11.28.0407
drwxr-xr-x 1 root root   134 Dec  5 20:02 2024.12.05.1913
drwxr-xr-x 1 root root   134 Dec  7 13:15 2024.12.07.0453
drwxr-xr-x 1 root root   134 Dec  9 20:02 2024.12.10.0055
drwxr-xr-x 1 root root   154 Dec 27 23:40 2024.12.27.0121
drwxr-xr-x 1 root root  2410 Dec 31 09:48 data
lrwxrwxrwx 1 root root    15 Dec 27 23:40 latest -> 2024.12.27.0121

----------------------------------------

Here's a list of your current OliveTin-related settings:

HOSTNAME=olivetin
CHANNELS_DVR=192.168.20.5:8089
CHANNELS_DVR_ALTERNATES=
CHANNELS_CLIENTS=192.168.20.189 192.168.20.31 192.168.20.178 192.168.20.36 192.168.20.169
ALERT_SMTP_SERVER=
ALERT_EMAIL_FROM=[Redacted]@
ALERT_EMAIL_PASS=[Redacted]
ALERT_EMAIL_TO=[Redacted]@
UPDATE_YAMLS=true
UPDATE_SCRIPTS=true
PORTAINER_TOKEN=[Redacted]
PORTAINER_HOST=192.168.20.5

----------------------------------------

Here's the contents of /etc/resolv.conf from inside the container:

search local
nameserver 127.0.0.11
options ndots:0

----------------------------------------

Here's the contents of /etc/hosts from inside the container:

127.0.0.1	localhost
::1	localhost ip6-localhost ip6-loopback
fe00::0	ip6-localnet
ff00::0	ip6-mcastprefix
ff02::1	ip6-allnodes
ff02::2	ip6-allrouters
172.26.0.3	olivetin

OK, I don't and won't use that action. Could be a bug. I don't know. :man_shrugging:

Did you try killing the background process, refreshing the browser and running it again?