ESPN+ & FOX Sports with Custom Channels via EPlusTV

Fixed for me as well. However, Now I am back to the "event will start soon" on every channel.

1 Like

I'm getting this as well. Everything seems to be set up and running well, I just get the same screen as you on every channel.

1 Like

Last time I got this, It was a VPN issue. My Synology was behind a VPN. SO... I installed docker on the machine I have channels on. It's not behind any VPN. Same issue as before tho... I'm totally drained trying to get this to work.

That screen comes up when it is loading the stream. Let it be and if the stream does not come up after say 10 seconds. Look in the docker I console for some errors. Confused me at first, also.

1 Like

Yeah - I've let it go ages. It's every stream too. I could see logs before on Synology. Can't find them in the W10 docker app.

1 Like

Any luck on your side yet?

from cli: docker logs containerid or docker logs --follow containerid

EDIT: nevermind, the container doesn't seem to send too much to sdtout

you could always do a docker exec -it containerid bash and poke around

Yeah I got the logs from the cmd

Basically, Unable to Parse Stream. Not very helpful

Anyone using the START_CHANNEL variable and having issues with the generated xmltv? On my install, the channels start where I set the start number to, and the beginning of the xmltv file sets the channel-id's correctly. However, all the program information references "1.eplustv" instead of "3001.eplustv" for channel=. So the guide isn't populating properly.

Wow, I'm getting closer myself too. I see in the logs that it was attempting to add the live events but nothing is ever generated at the http://192.168.1.108:8000/channels.m3u link I am trying to open.

I did get it working. Make sure to edit the volumes in the run command to one of these:

In windows I use:

-v C:\docker_volumes\eplustv\config_dir:/app/config
-v C:\docker_volumes\eplustv\dev\shm:/app/tmp

Or I let the docker create annonymous volumes, so:

-v :/app/config -v :/app/tmp

But also make sure all of your environment variables in the run command (server address, ESPN user name and password) are bookended with double quotes ("). The provided run command has single quotes.

Fixing all of that got it working for me.

1 Like

You don’t need to map anything to /app/tmp. Especially not a disk directory called /eplustv/dev/shm.

In the container example /dev/shm is used to map host shared memory directly to /app/tmp in the container but if you’re not doing that there is no reason to map a host disk directory to it as nothing persistent is stored there.

Did you figure out why the "event will start soon" screen never goes away?

1 Like

I assume the live event in question streams fine via the espn app or through a browser if you test it at same time?

1 Like

I got it. After re-reading the instructions by cculpepp, I need to double quote every item. Not just the IP. Working now. Wow what an ordeal...

I dunno. Sometimes it goes away and the event comes on after about 20 seconds and sometimes the "event starts soon" doesnt go away.

1 Like

Thats great news. I'm still struggling, here is what I'm entering:

docker run -p 8096:8096 -v /tmp:/app/config -e ACCESS_URI='http://192.168.1.108:8096' -e ESPN_USER='xxx' -e ESPN_PASS='xxx' -e START_CHANNEL=400 --name ESPN_Pluss m0ngr31/eplustv

and I'm getting the following in my log:
=== Getting events ===

Looking for live events...


(node:19) UnhandledPromiseRejectionWarning: page.goto: Timeout 30000ms exceeded.


=========================== logs ===========================


navigating to "https://www.espn.com/espnplus/schedule?channel=ESPN_PLUS", waiting until "networkidle"


============================================================


    at /app/services/get-events.ts:53:14


    at fulfilled (/app/services/get-events.ts:5:58)


(Use `node --trace-warnings ...` to show where the warning was created)


(node:19) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)


(node:19) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.


Adding event:  Southeast Missouri State vs. SE Louisiana (Softball)


Adding event:  Union vs. #8 Colgate (W Hockey)


Adding event:  Rensselaer vs. Cornell (W Hockey)


Adding event:  St. Lawrence vs. Brown (W Hockey)


Adding event:  #10 Clarkson vs. #7 Yale (W Hockey)
1 Like

Use double quotes instead of single around your environmental variables.

Nope, no difference with single quotes or double quotes, I even tried skipping entering any environmental variables at all, and then entered them using the Portainer.io UI, all three methods result in:

=== Getting events ===,
Looking for live events...,
(node:19) UnhandledPromiseRejectionWarning: page.goto: Timeout 30000ms exceeded.,
=========================== logs ===========================,
navigating to "https://www.espn.com/espnplus/schedule?channel=ESPN_PLUS", waiting until "networkidle",
============================================================,
    at /app/services/get-events.ts:53:14,
    at fulfilled (/app/services/get-events.ts:5:58),
(Use `node --trace-warnings ...` to show where the warning was created),
(node:19) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1),
(node:19) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.,

This means it tried to load the epsn.com site and failed after 30s timeout. I don't know why that would happen.