Frndly TV for Channels

Is your Frndly TV for Channels docker container at http://192.168.1.3:8183 ?

Use what your Frndly for Channels docker page displays

Per the instructions you said you followed, that would be

Add to Channels

You can retrieve the Channels configuration via the status page below.

http://127.0.0.1:8183(if accessing from different device, replace 127.0.0.1 with the IP of the device)

Where would I find that?

here

In other words, the IP address and port of the Frndly TV for Channels docker container you created.

1 Like

Got it. Now it works. Thanks!

1 Like

I am using the Python code and everything is working fine but I do have just 3 questions.

  1. The EPG for all 40 channels is populating correctly using just source #1. Do I need the second source?
  2. I've added my WAN facing IP to the command line but localnews is still NYC. I've confirmed that my IP is valid for my area.
  3. Can I create a Windows service with the Python command line that is dependent on the Channels DVR service?

Thanks!

If you want to get the other 5 channels, then yes you need the second source. Those are the Dove channels and cowboy way. If you aren’t interest in those channels then you don’t need the second source.

I've added my WAN facing IP to the command line but localnews is still NYC. I've confirmed that my IP is valid for my area.

It’s possible you entered it wrong when doing your setup. Or maybe it really isn’t geolocated correctly for the area you want. Just google “what are some [city] ip addresses” replacing city with where you want. The IP address doesn’t have to be your own. Just so long as it geolocation is where you want.

.

Thank you for your response and suggestions!

I've added that source and included it in my Frndly TV collection.

Thanks for the suggestion. I copied and pasted from whatismyip. I can try that but as I mentioned, the IP I'm using does map to my city. My wife is from NYC, maybe she'll enjoy it. :slight_smile:

Thanks!

localnews is now local to my area and not New York City. I'm using the same IP as I did before but I'm not questioning why it's working now. (If it's not broken, it can't be fixed.) It could have been a typo but as I mentioned above, I copied and pasted my IP.

Setting up Frndly Channels (Python) as a Windows service:

  1. I used the NSSM tool to create a service. The service invokes python (using its full path) from a startup directory (C:\frndlytv-for-channels) with the required arguments. It didn't work until added my login information to the service in service.msc. The service is working now. The real test will be when the system boots up after a power glitch.
    (NSSM - the Non-Sucking Service Manager)
  2. The service is not currently dependent on anything (dependency information is grayed out) but I'll check to see how to make it dependent on ChannelsDVR.

P.S. To determine your WAN facing IP, type in "what is my IP" into a browser.

FrndlyTV

I am trying to. use FRNDLY using the Python solution. I ran the Python script--but not sure what .m3u and epg I am supposed to use when setting this up in Channels. (I read the documentation--but this point wasn't clear to me). Suggestions?

Both. You use both sources. And then you can combine them in to a channel collection if you want.

Every hundred posts or so someone goes over the 2 source method. Lol. I think @chDVRuser last went over it around post 759.

I saw post 759--but this is a Docker implementation. Is the Python implementation done the same way?

Once you get to setting it up in Channels, there’s no difference between whether it is running from docker or python. The Channels steps are the same.

So, this Python method: that also needs to run on a computer or server that's always-on, just like Docker?

2 Likes

Yes, see posts from above

Yes, the computer needs to be on when you want to watch or record Frndly in Channels.

I tried the Python version:

git clone GitHub - matthuisman/frndlytv-for-channels: Frndly TV for Channels
cd frndlytv-for-channels
pip install --no-cache-dir -r requirements.txt
python app.py --PORT 8183 --USERNAME "MY_EMAIL" --PASSWORD "MY_PASSWORD" --IP "72.229.28.185"

but I keep getting this error:

it shows c:\ so i guess your cd command didn't work. you need to ensure each command succeeds and doesn't print any errors before going to the next

1 Like

Quick and Easy Synology frndlytv-for-channels Setup

I was recently contacted via PM by a member who was having trouble setting frndlytv-for-channels up on a Synology. Since I went through the basic procedure in PM with them, I figured I should include it here for other members who may be searching for a way to implement frndlytv-for-channels on a Synology but may be new to (or intimidated) by Docker. And the best part of this method is you don't really have to do anything with Container Manager, or Compose or Portainer or whatnot. Just need to use scheduled tasks.


First go to the Synology task scheduler [control panel] - [task scheduler].

Next from the menu bar [create] - [scheduled task] - [user defined script].

Under general you can call it whatever you want. For user, I have only ever used root as my user for all my installation tasks. But I imagine any administrator account with full permissions will work fine.

Under schedule select "run on following date" and select do not repeat.

Under task settings send run details to whatever email account you want to be notified about success/failure. Since this is going to be an on demand manual task, do not select "send run details only when the script terminates abnormally". You want to know if it runs at all or if its been successful or failed, so you always want to be notified. In the user defined script, use what I have listed below the screenshot, making sure to change your username and password accordingly.

sudo -s docker stop frndlytv-for-channels
sudo -s docker rm frndlytv-for-channels
sudo -s docker pull matthuisman/frndlytv-for-channels
sudo -s docker run -d --restart unless-stopped --env "[email protected]" --env "PASSWORD=yourpassword" --name frndlytv-for-channels -p 8183:80 matthuisman/frndlytv-for-channels

That script will remove any previous version of frndlytv-for-channels (don't worry you won't lose any settings in ChannelsDVR) and install (update) frndlytv-for-channels. There are two additional --env variables in the screenshot that can be ignored by most users. The IP helps LocalNow correctly geolocate (especially if you are behind a VPN). The KEEP_ALIVE helps with rare recording failures due to timeouts (and is explained much higher up in this thread). Neither of these variables should be needed by most users.

Hit the [OK] button (or SAVE or ACCEPT or the equivalent). You will likely get a warning message about using root or an administrator account. Select [OK] if you have the basic understanding that those accounts are powerful and you are proceeding at your own risk. You may even be ask for the account Synology password to complete the task creation.

On the schedule task list right click this new task and select [RUN] - [OK].

In a couple of minutes you should get an email stating it completed normally (or if there where errors, what those errors were).

You can confirm the docker is running correctly by going to the frndlytv-for-channels status page at http://SYNOLOGY-IP:8183/ substituting SYNOLOGY-IP with the address of the Synology server hosting your dockers. The status page should look something like below (URLs will be different for you).

Then use the standard double source method to setup in ChannelsDVR.

3 Likes

Nice writeup. Thanks for sharing it.
Much easier for new users to use the task manager than trying to ssh in and run shell commands.

Docker commands do require user root to run them, so you could remove the sudo -s in the script commands, although leaving them in doesn't hurt.
I use sudo - after connecting via SSH to get a root user shell when executing docker commands.

I don't think this approach is better over the Synology provided tools but if you want to script it then run your docker pull as the very first step (and a better choice would be to throw in some kind of guard to exit the script if you can not pull the image. sudo -s docker pull ..... || exit 1)

The reason you want to pull first is that pulling is likely the longest step and the one that has the potential for failure. If you stop and rm the container first then you run the likely risk that you can't run again, or at least you aren't going to run a new image.

Again, this really isn't an approach you should be using unless you're comfortable with troubleshooting when things go off and you'll need to shell in to do any of that and run docker commands. Best is to stick with the tools that are provided, either the graphical Docker interface or the newer Container Station interface.