diff --git a/README.md b/README.md index 76cde82..b7591e2 100644 --- a/README.md +++ b/README.md @@ -1 +1,48 @@ -# xteve_lazystream \ No newline at end of file +# Lazystream Plex/Emby Bundle + +This Docker provides a simple solution to get live NHL and MLB games into your Emby or Plex live TV setup. When combined with a comprehensive IPTV package this setup can you rolling with live TV and high quality sports. If you would only like to use this for the available sports, simply disable guide2go (or any other function you would like) from the cronjob. + +## guide2go + +XMLTV EPG grabber for Schedules Direct, thanks to @marmei \ +GitHub: https://github.com/mar-mei/guide2go \ +Schedules Direct: http://www.schedulesdirect.org/ + +## Lazystream + +GitHub: https://github.com/tarkah/lazystream \ + +## xTeVe + +IPTV and EPG proxy server for Plex, Emby, etc – thanks to @marmei \ +Website: http://xteve.de \ +Discord: https://discordapp.com/channels/465222357754314767/465222357754314773 + +# Setup + +Please note that this Docker is configured to run in host mode. Once the Docker has started, check the configuration folder to complete the setup process. You'll want to edit `config/cronjob.sh` to suit your needs. Read this complete document before starting up the container. + +## Sample volume mapping + +| Container Path | Host Path | +| -------------- | ----------------------------------- | +| /root/.xteve | /mnt/user/appdata/xteve/ | +| /config | /mnt/user/appdata/xteve/\_config/ | +| /guide2go | /mnt/user/appdata/xteve/\_guide2go/ | +| /tmp/xteve | /tmp/xteve/ | +| /TVH | /mnt/user/appdata/tvheadend/data/ | + +## guide2go + +If you have an existing guide2go setup you may copy the `.json` files into the path mounted at `/guide2go`. Otherwise run the following command and follow the on-screen steps +`docker exec -it dockername guide2go -configure /guide2go/your_epg_name.json` + +## Testing cronjob function + +Simply run the cronjob file inside the Docker container +`docker exec -it dockername ./config/cronjob.sh` + +# Credits + +xTeVe and guide2go – @marmei +Original author of the xTeVe/guide2go Docker – @alturismo diff --git a/cronjob.sh b/cronjob.sh index ca23fc8..2e7423e 100644 --- a/cronjob.sh +++ b/cronjob.sh @@ -21,7 +21,10 @@ xTevePORT="34400" ### Generate playlist and xml data from lazystream echo "Running Lazystream..." -lazystream generate xmltv /playlist/lazystream +rm ./playlists/lazystream.m3u +rm ./playlists/lazystream.xml + +lazystream generate xmltv /playlists/lazystream ### Emby ip, Port, apiKey, update ID in case API is used to update EPG directly after guide2go # ONLY when xteve API is in use, otherwise obsolete diff --git a/entrypoint.sh b/entrypoint.sh index eb1e86f..a91cd44 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -5,11 +5,11 @@ crond -l 2 CRONJOB_FILE=/config/cronjob.sh if [ -f "$CRONJOB_FILE" ]; then - echo "$CRONJOB_FILE exist" + echo "$CRONJOB_FILE already exists – if changes are necessary please edit this file." chmod +x $CRONJOB_FILE chmod 777 $CRONJOB_FILE else - echo "$CRONJOB_FILE does not exist" + echo "$CRONJOB_FILE does not exist, auto-generating cronjob file. Please edit to complete setup." cp /cronjob.sh $CRONJOB_FILE chmod +x $CRONJOB_FILE chmod 777 $CRONJOB_FILE @@ -20,15 +20,19 @@ CRON_FILE=/config/cron.txt if [ -f "$CRON_FILE" ]; then . $CRON_FILE else + echo "No cron definition found..." + echo "By default, cronjob will run every night at midnight unless cron file is configured." printf '0 0 * * * /config/cronjob.sh' > /etc/crontabs/root cp /sample_cron.txt /config/sample_cron.txt fi XTEVE_FILE=/config/xteve.txt +echo "Starting xTeVe..." if [ -f "$XTEVE_FILE" ]; then . $XTEVE_FILE else + echo "Starting xTeVe with default config..." cp /sample_xteve.txt /config/sample_xteve.txt xteve -port=34400 -config=/root/.xteve/ fi diff --git a/sample_cron.txt b/sample_cron.txt index 320efe4..137c225 100644 --- a/sample_cron.txt +++ b/sample_cron.txt @@ -1,6 +1,4 @@ printf '45 04 * * * /config/cronjob.sh' > /etc/crontabs/root -### remove from here including this line ### -### edit your cron time -### rename to cron.txt -### restart docker, new cron time from then -### no cron.txt it ll update daily at 00:00 \ No newline at end of file +### Remove this line and everything beneath it ### +### Edit the above cron expression, rename this file to cron.txt, and restart the container. +### If no cron.txt is found the cronjob will run daily at 00:00 \ No newline at end of file diff --git a/sample_xteve.txt b/sample_xteve.txt index e5df2ee..2045e08 100644 --- a/sample_xteve.txt +++ b/sample_xteve.txt @@ -1,6 +1,4 @@ xteve -port=34400 -config=/root/.xteve/test/ -### remove from here including this line ### -### edit your xteve command -### rename to xteve.txt -### restart docker, xteve will run with given parameter -### no xteve.txt it ll start default values -port=34400 -config=/root/.xteve/ \ No newline at end of file +### Remove this line and everything beneath it ### +### Edit the above xteve run command, rename this file to xteve.txt, and restart the container +### If no xteve.txt is found xTeVe will start with default values "-port=34400 -config=/root/.xteve/" \ No newline at end of file