move to s6 overlay structure (#13)
* move to s6 overlay structure * Use alpine:latest and latest s6 * cleanup Dockerfile * use .env file on docker run * change mappings so all under one folder * Update README * change cron default to hourly to keep things updated * add section about editing xteve settings * add nice 'logging' to stdout
This commit is contained in:
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
appdata/
|
||||
customrun.sh
|
||||
.env
|
||||
100
Dockerfile
100
Dockerfile
@@ -1,40 +1,35 @@
|
||||
FROM alpine:latest
|
||||
|
||||
RUN apk update
|
||||
RUN apk upgrade
|
||||
RUN apk add --no-cache ca-certificates
|
||||
LABEL maintainer="taylorbourne taylorbourne@me.com.com"
|
||||
|
||||
MAINTAINER taylorbourne taylorbourne@me.com.com
|
||||
# Install S6 overlay
|
||||
ARG S6_OVERLAY_RELEASE=https://github.com/just-containers/s6-overlay/releases/latest/download/s6-overlay-amd64.tar.gz
|
||||
ENV S6_OVERLAY_RELEASE=${S6_OVERLAY_RELEASE}
|
||||
|
||||
# Extras
|
||||
RUN apk add --no-cache curl
|
||||
ADD ${S6_OVERLAY_RELEASE} /tmp/s6overlay.tar.gz
|
||||
|
||||
# Timezone (TZ)
|
||||
RUN apk update && apk add --no-cache tzdata
|
||||
RUN tar xzf /tmp/s6overlay.tar.gz -C / \
|
||||
&& rm /tmp/s6overlay.tar.gz
|
||||
|
||||
# Add packages
|
||||
RUN apk upgrade --update --no-cache \
|
||||
&& apk add --no-cache \
|
||||
ca-certificates \
|
||||
curl \
|
||||
tzdata \
|
||||
bash \
|
||||
coreutils \
|
||||
shadow \
|
||||
ffmpeg \
|
||||
vlc \
|
||||
gnutls-utils
|
||||
|
||||
# Update Timezone
|
||||
ENV TZ=America/Los_Angeles
|
||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||
|
||||
# Add Bash shell & dependancies
|
||||
RUN apk add --no-cache bash busybox-suid su-exec
|
||||
|
||||
# Volumes
|
||||
VOLUME /config
|
||||
VOLUME /playlists
|
||||
VOLUME /guide2go
|
||||
VOLUME /root/.xteve
|
||||
VOLUME /tmp/xteve
|
||||
|
||||
# Add ffmpeg and vlc
|
||||
RUN apk add ffmpeg
|
||||
RUN apk add vlc
|
||||
RUN sed -i 's/geteuid/getppid/' /usr/bin/vlc
|
||||
|
||||
# Add GNUtls so we can update certs
|
||||
RUN apk add --no-cache gnutls-utils
|
||||
|
||||
# Add xTeve and guide2go
|
||||
RUN wget https://github.com/xteve-project/xTeVe-Downloads/raw/master/xteve_linux_amd64.zip -O temp.zip; unzip temp.zip -d /usr/bin/; rm temp.zip
|
||||
ADD guide2go /usr/bin/guide2go
|
||||
|
||||
# Add lazystream
|
||||
RUN wget https://github.com/tarkah/lazystream/releases/download/v1.9.7/lazystream-v1.9.7-x86_64-unknown-linux-musl.tar.gz -O lazystream.tar.gz; \
|
||||
@@ -43,20 +38,51 @@ RUN wget https://github.com/tarkah/lazystream/releases/download/v1.9.7/lazystrea
|
||||
rm lazystream.tar.gz; \
|
||||
rm -rf lazystream/
|
||||
|
||||
ADD cronjob.sh /
|
||||
ADD entrypoint.sh /
|
||||
ADD sample_cron.txt /
|
||||
ADD sample_xteve.txt /
|
||||
# Add abc user
|
||||
RUN groupmod -g 1000 users && \
|
||||
useradd -u 911 -U -d /home/abc -s /bin/bash abc && \
|
||||
usermod -G users abc
|
||||
|
||||
# Copy root folder
|
||||
COPY root/ /
|
||||
|
||||
# Volumes
|
||||
VOLUME /config
|
||||
VOLUME /playlists
|
||||
VOLUME /guide2go
|
||||
VOLUME /xteve
|
||||
VOLUME /tmp/xteve
|
||||
|
||||
# Set executable permissions
|
||||
RUN chmod +x /entrypoint.sh
|
||||
RUN chmod +x /cronjob.sh
|
||||
RUN chmod +x /usr/bin/lazystream
|
||||
RUN chmod +x /usr/bin/xteve
|
||||
RUN chmod +x /usr/bin/guide2go
|
||||
|
||||
# Expose Port
|
||||
EXPOSE 34400
|
||||
# Build arg
|
||||
ARG XTEVE_PORT=34400
|
||||
|
||||
# Entrypoint
|
||||
ENTRYPOINT ["./entrypoint.sh"]
|
||||
# Env
|
||||
ENV PUID=1000 \
|
||||
PGID=1000 \
|
||||
XTEVE_PORT=${XTEVE_PORT} \
|
||||
use_xTeveAPI=yes \
|
||||
use_lazystream=yes \
|
||||
include_nhl=yes\
|
||||
include_mlb=yes \
|
||||
use_guide2go=no \
|
||||
JsonList="CBLguide.json SATguide.json SATSport.json" \
|
||||
use_embyAPI=no \
|
||||
embyIP= \
|
||||
embyPORT=8096 \
|
||||
embyApiKey= \
|
||||
embyID= \
|
||||
use_plexAPI=no \
|
||||
plexIP= \
|
||||
plexPORT=32400 \
|
||||
plexToken= \
|
||||
plexID=
|
||||
|
||||
# Expose Port
|
||||
EXPOSE ${XTEVE_PORT}
|
||||
|
||||
ENTRYPOINT [ "/init" ]
|
||||
99
README.md
99
README.md
@@ -1,23 +1,78 @@
|
||||
# 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.
|
||||
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 get 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).
|
||||
|
||||
## Run Command
|
||||
- [Run](#run)
|
||||
- [Setup](#setup)
|
||||
- [Env file](#env-file)
|
||||
- [Cron schedule](#cron-schedule)
|
||||
- [Sample volume mapping](#sample-volume-mapping)
|
||||
- [xTeVe](#xteve)
|
||||
- [guide2go](#guide2go)
|
||||
- [Testing cronjob function](#testing-cronjob-function)
|
||||
- [Credits](#credits)
|
||||
- [guide2go](#guide2go-1)
|
||||
- [Lazystream](#lazystream)
|
||||
- [xTeVe](#xteve-1)
|
||||
|
||||
# Run
|
||||
|
||||
```
|
||||
docker run -d \
|
||||
--name=xteve_lazystream \
|
||||
-p 34400:34400 \
|
||||
-e TZ="America/Los_Angeles" \
|
||||
--env-file=.env \
|
||||
--log-opt max-size=10m \
|
||||
--log-opt max-file=3 \
|
||||
-e TZ="America/Los_Angeles" \
|
||||
-v /mnt/user/appdata/xteve/:/root/.xteve:rw \
|
||||
-v /mnt/user/appdata/xteve/_config/:/config:rw \
|
||||
-v /mnt/user/appdata/xteve/_guide2go/:/guide2go:rw \
|
||||
-v /mnt/user/appdata/xteve/.xteve:/xteve:rw \
|
||||
-v /mnt/user/appdata/xteve/config/:/config:rw \
|
||||
-v /mnt/user/appdata/xteve/guide2go/:/guide2go:rw \
|
||||
-v /mnt/user/appdata/xteve/playlists/:/playlists:rw \
|
||||
-v /tmp/xteve/:/tmp/xteve:rw \
|
||||
taylorbourne/xteve_lazystream
|
||||
```
|
||||
|
||||
# Setup
|
||||
|
||||
## Env file
|
||||
|
||||
Defaults & behavior can be changed through environment variables. `sample.env` should be renamed to `.env` and supplied through the `--env-file` docker run option. The `.env` file can also be picked up if using this in a `docker compose` setup.
|
||||
|
||||
## Cron schedule
|
||||
|
||||
By default, the cron job is scheduled to run every hour. A custom cron schedule can be specified by renaming the `sample_cron.txt` file in the `/config` volume to `cron.txt` and editing the schedule. Make sure to restart your container to take effect.
|
||||
|
||||
## Sample volume mapping
|
||||
|
||||
| Container Path | Host Path |
|
||||
| -------------- | --------------------------------- |
|
||||
| /xteve | /mnt/user/appdata/xteve/.xteve |
|
||||
| /config | /mnt/user/appdata/xteve/config |
|
||||
| /guide2go | /mnt/user/appdata/xteve/guide2go |
|
||||
| /playlists | /mnt/user/appdata/xteve/playlists |
|
||||
| /tmp/xteve | /tmp/xteve |
|
||||
|
||||
## xTeVe
|
||||
|
||||
By default, xTeVe is setup with all 200 channels mapped for NHL and MLB games. This can be setup directly with Plex / Emby to work out of the box without any changes. If needed, changes can be made to xTeVe by going to `127.0.0.1:34400/web/`.
|
||||
|
||||
## 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 ./cronjob.sh`
|
||||
|
||||
# Credits
|
||||
|
||||
[Lazystream](https://github.com/tarkah/lazystream) – [@tarkah](https://github.com/tarkah/)
|
||||
[xTeVe](https://github.com/xteve-project/xTeVe) and [guide2go](https://github.com/mar-mei/guide2go) – [@marmei](https://github.com/mar-mei)
|
||||
Original author of the [xTeVe/guide2go Docker](https://github.com/alturismo/xteve_guide2goe) – [@alturismo](https://github.com/alturismo)
|
||||
|
||||
## guide2go
|
||||
|
||||
XMLTV EPG grabber for Schedules Direct, thanks to @marmei
|
||||
@@ -32,34 +87,4 @@ GitHub: https://github.com/tarkah/lazystream
|
||||
|
||||
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/ |
|
||||
| /playlists | /mnt/user/appdata/xteve/playlists/ |
|
||||
| /tmp/xteve | /tmp/xteve/ |
|
||||
|
||||
## 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
|
||||
|
||||
[Lazystream](https://github.com/tarkah/lazystream) – [@tarkah](https://github.com/tarkah/)
|
||||
[xTeVe](https://github.com/xteve-project/xTeVe) and [guide2go](https://github.com/mar-mei/guide2go) – [@marmei](https://github.com/mar-mei)
|
||||
Original author of the [xTeVe/guide2go Docker](https://github.com/alturismo/xteve_guide2goe) – [@alturismo](https://github.com/alturismo)
|
||||
Discord: https://discordapp.com/channels/465222357754314767/465222357754314773
|
||||
124
cronjob.sh
124
cronjob.sh
@@ -1,124 +0,0 @@
|
||||
#!/bin/bash
|
||||
echo "Running scripts..."
|
||||
|
||||
##### Config
|
||||
use_embyAPI="no"
|
||||
use_guide2go="no"
|
||||
use_lazystream="no"
|
||||
use_plexAPI="no"
|
||||
use_xTeveAPI="yes"
|
||||
|
||||
##### Lazystream Config
|
||||
include_nhl="no"
|
||||
include_mlb="no"
|
||||
|
||||
### List of created lineup json files in /guide2go
|
||||
# Exmaple with 3 lineups
|
||||
JsonList="CBLguide.json SATguide.json SATSport.json"
|
||||
|
||||
### to create your lineups run the below command and follow the on-screen instructions
|
||||
# docker exec -it <yourdockername> guide2go -configure /guide2go/<lineupnamehere>.json
|
||||
|
||||
### xTeVe
|
||||
xTeveIP="192.168.1.2"
|
||||
xTevePORT="34400"
|
||||
|
||||
### Emby
|
||||
# Only necessary if xTeVe API is active
|
||||
# API Key, https://github.com/MediaBrowser/Emby/wiki/Api-Key-Authentication
|
||||
# embyID, settings, scroll down click API, Scheduled Task Service, GET /ScheduledTasks, Try, Execute, look for "Refresh Guide" ID, sample here 9492d30c70f7f1bec3757c9d0a4feb45
|
||||
embyIP="192.168.1.2"
|
||||
embyPORT="8096"
|
||||
embyApiKey=""
|
||||
embyID="9492d30c70f7f1bec3757c9d0a4feb45"
|
||||
|
||||
### Plex
|
||||
# Only necessary if xTeVe API is active
|
||||
# Finding your Plex token: https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/
|
||||
# Finding Plex ID: http://YOUR_IP_HERE:32400/?X-Plex-Token=YOUR_TOKEN_HERE , look for "tv.plex.providers.epg.xmltv: " and enter the value blow.
|
||||
plexIP="192.168.1.2"
|
||||
plexPORT="32400"
|
||||
plexToken=""
|
||||
plexID=""
|
||||
|
||||
# cronjob, check sample_cron.txt with an editor to adjust time
|
||||
|
||||
### END Config
|
||||
##
|
||||
#
|
||||
|
||||
### Generate playlist and XML data from Lazystream
|
||||
if [ "$use_lazystream" = "yes" ]; then
|
||||
|
||||
if [ "$include_nhl" = "yes" ]; then
|
||||
echo "Running Lazystream (NHL)..."
|
||||
mkdir -p /playlists/lazystream
|
||||
lazystream generate xmltv \
|
||||
--channel-prefix Lazystream:\ NHL \
|
||||
--start-channel 1000 \
|
||||
/playlists/lazystream/lazystream-nhl
|
||||
fi
|
||||
if [ "$include_mlb" = "yes" ]; then
|
||||
echo "Running Lazystream (MLB)..."
|
||||
mkdir -p /playlists/lazystream
|
||||
lazystream --sport mlb generate xmltv \
|
||||
--channel-prefix Lazystream:\ MLB \
|
||||
--start-channel 2000 \
|
||||
/playlists/lazystream/lazystream-mlb
|
||||
fi
|
||||
fi
|
||||
|
||||
# run guide2go in a loop
|
||||
if [ "$use_guide2go" = "yes" ]; then
|
||||
echo "Running guide2Go..."
|
||||
for jsons in $JsonList
|
||||
do
|
||||
jsonefile="${jsons%.*}"
|
||||
filecache=' "file.cache": "/guide2go/cache_'$jsons'",'
|
||||
fileoutput=' "file.output": "/guide2go/'$jsonefile'.xml",'
|
||||
sed -i "/file.cache/c $filecache" /guide2go/$jsons
|
||||
sed -i "/file.output/c $fileoutput" /guide2go/$jsons
|
||||
guide2go -config /guide2go/$jsons
|
||||
done
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
# update xteve via API
|
||||
if [ "$use_xTeveAPI" = "yes" ]; then
|
||||
echo "Updating xTeVe..."
|
||||
if [ -z "$xTeveIP" ]; then
|
||||
echo "no xTeve credentials provided"
|
||||
else
|
||||
curl -X POST -d '{"cmd":"update.m3u"}' http://$xTeveIP:$xTevePORT/api/
|
||||
sleep 1
|
||||
curl -X POST -d '{"cmd":"update.xmltv"}' http://$xTeveIP:$xTevePORT/api/
|
||||
sleep 1
|
||||
curl -X POST -d '{"cmd":"update.xepg"}' http://$xTeveIP:$xTevePORT/api/
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# update Emby via API
|
||||
if [ "$use_embyAPI" = "yes" ]; then
|
||||
echo "Updating Emby..."
|
||||
if [ -z "$embyIP" ]; then
|
||||
echo "no Emby credentials provided"
|
||||
else
|
||||
curl -X POST "http://$embyIP:$embyPORT/emby/ScheduledTasks/Running/$embyID?api_key=$embyApiKey" -H "accept: */*" -d ""
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# update Plex via API
|
||||
if [ "$use_plexAPI" = "yes" ]; then
|
||||
echo "Updating Plex..."
|
||||
if [ -z "$plexIP" ]; then
|
||||
echo "no Plex credentials provided"
|
||||
else
|
||||
curl -X POST "http://$plexIP:$plexPORT/livetv/dvrs/$plexID/reloadGuide?X-Plex-Token=$plexToken"
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
|
||||
exit
|
||||
@@ -1,54 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
crond -l 2
|
||||
|
||||
# Update hosts file
|
||||
export IP=$(getent ahostsv4 freegamez.ga | awk '{ print $1 }' | head -1)
|
||||
echo $IP playback.svcs.mlb.com >> /etc/hosts
|
||||
echo $IP mf.svc.nhl.com >> /etc/hosts
|
||||
echo $IP mlb-ws-mf.media.mlb.com >> /etc/hosts
|
||||
cat /etc/hosts
|
||||
|
||||
# Update certs
|
||||
rm /root/.gnutls/known_hosts
|
||||
printf 'y\n' | gnutls-cli --tofu playback.svcs.mlb.com:443
|
||||
printf 'y\n' | gnutls-cli --tofu mf.svc.nhl.com:443
|
||||
printf 'y\n' | gnutls-cli --tofu mlb-ws-mf.media.mlb.com:443
|
||||
cat /root/.gnutls/known_hosts
|
||||
|
||||
CRONJOB_FILE=/config/cronjob.sh
|
||||
|
||||
if [ -f "$CRONJOB_FILE" ]; then
|
||||
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, auto-generating cronjob file. Please edit to complete setup."
|
||||
cp /cronjob.sh $CRONJOB_FILE
|
||||
chmod +x $CRONJOB_FILE
|
||||
chmod 777 $CRONJOB_FILE
|
||||
fi
|
||||
|
||||
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
|
||||
|
||||
exit
|
||||
84
root/cronjob.sh
Executable file
84
root/cronjob.sh
Executable file
@@ -0,0 +1,84 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
function prepend() {
|
||||
time=`date +"%Y/%m/%d %H:%M:%S"`
|
||||
while read line;
|
||||
do echo "${time} ${1}${line}";
|
||||
done;
|
||||
}
|
||||
|
||||
exec 1> >(prepend "[cronjob.sh] ")
|
||||
|
||||
echo "Running scripts..."
|
||||
|
||||
### Generate playlist and XML data from Lazystream
|
||||
if [ "$use_lazystream" = "yes" ]; then
|
||||
|
||||
if [ "$include_nhl" = "yes" ]; then
|
||||
echo "Running Lazystream (NHL)..."
|
||||
mkdir -p /playlists/lazystream
|
||||
lazystream generate xmltv \
|
||||
--channel-prefix Lazystream:\ NHL \
|
||||
--start-channel 1000 \
|
||||
/playlists/lazystream/lazystream-nhl
|
||||
fi
|
||||
if [ "$include_mlb" = "yes" ]; then
|
||||
echo "Running Lazystream (MLB)..."
|
||||
mkdir -p /playlists/lazystream
|
||||
lazystream --sport mlb generate xmltv \
|
||||
--channel-prefix Lazystream:\ MLB \
|
||||
--start-channel 2000 \
|
||||
/playlists/lazystream/lazystream-mlb
|
||||
fi
|
||||
fi
|
||||
|
||||
# run guide2go in a loop
|
||||
if [ "$use_guide2go" = "yes" ]; then
|
||||
echo "Running guide2Go..."
|
||||
for jsons in $JsonList
|
||||
do
|
||||
jsonefile="${jsons%.*}"
|
||||
filecache=' "file.cache": "/guide2go/cache_'$jsons'",'
|
||||
fileoutput=' "file.output": "/guide2go/'$jsonefile'.xml",'
|
||||
sed -i "/file.cache/c $filecache" /guide2go/$jsons
|
||||
sed -i "/file.output/c $fileoutput" /guide2go/$jsons
|
||||
guide2go -config /guide2go/$jsons
|
||||
done
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
|
||||
# update xteve via API
|
||||
if [ "$use_xTeveAPI" = "yes" ]; then
|
||||
echo "Updating xTeVe..."
|
||||
curl -s -X POST -d '{"cmd":"update.m3u"}' http://127.0.0.1:$XTEVE_PORT/api/
|
||||
sleep 1
|
||||
curl -s -X POST -d '{"cmd":"update.xmltv"}' http://127.0.0.1:$XTEVE_PORT/api/
|
||||
sleep 1
|
||||
curl -s -X POST -d '{"cmd":"update.xepg"}' http://127.0.0.1:$XTEVE_PORT/api/
|
||||
sleep 1
|
||||
fi
|
||||
|
||||
# update Emby via API
|
||||
if [ "$use_embyAPI" = "yes" ]; then
|
||||
echo "Updating Emby..."
|
||||
if [ -z "$embyIP" ]; then
|
||||
echo "no Emby credentials provided"
|
||||
else
|
||||
curl -s -X POST "http://$embyIP:$embyPORT/emby/ScheduledTasks/Running/$embyID?api_key=$embyApiKey" -H "accept: */*" -d ""
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# update Plex via API
|
||||
if [ "$use_plexAPI" = "yes" ]; then
|
||||
echo "Updating Plex..."
|
||||
if [ -z "$plexIP" ]; then
|
||||
echo "no Plex credentials provided"
|
||||
else
|
||||
curl -s -X POST "http://$plexIP:$plexPORT/livetv/dvrs/$plexID/reloadGuide?X-Plex-Token=$plexToken"
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
|
||||
exit
|
||||
201
root/defaults/lazystream-mlb.m3u
Normal file
201
root/defaults/lazystream-mlb.m3u
Normal file
@@ -0,0 +1,201 @@
|
||||
#EXTM3U
|
||||
#EXTINF:-1 CUID="2000" tvg-id="2000" tvg-name="Lazystream: MLB 1",Lazystream: MLB 1
|
||||
.
|
||||
#EXTINF:-1 CUID="2001" tvg-id="2001" tvg-name="Lazystream: MLB 2",Lazystream: MLB 2
|
||||
.
|
||||
#EXTINF:-1 CUID="2002" tvg-id="2002" tvg-name="Lazystream: MLB 3",Lazystream: MLB 3
|
||||
.
|
||||
#EXTINF:-1 CUID="2003" tvg-id="2003" tvg-name="Lazystream: MLB 4",Lazystream: MLB 4
|
||||
.
|
||||
#EXTINF:-1 CUID="2004" tvg-id="2004" tvg-name="Lazystream: MLB 5",Lazystream: MLB 5
|
||||
.
|
||||
#EXTINF:-1 CUID="2005" tvg-id="2005" tvg-name="Lazystream: MLB 6",Lazystream: MLB 6
|
||||
.
|
||||
#EXTINF:-1 CUID="2006" tvg-id="2006" tvg-name="Lazystream: MLB 7",Lazystream: MLB 7
|
||||
.
|
||||
#EXTINF:-1 CUID="2007" tvg-id="2007" tvg-name="Lazystream: MLB 8",Lazystream: MLB 8
|
||||
.
|
||||
#EXTINF:-1 CUID="2008" tvg-id="2008" tvg-name="Lazystream: MLB 9",Lazystream: MLB 9
|
||||
.
|
||||
#EXTINF:-1 CUID="2009" tvg-id="2009" tvg-name="Lazystream: MLB 10",Lazystream: MLB 10
|
||||
.
|
||||
#EXTINF:-1 CUID="2010" tvg-id="2010" tvg-name="Lazystream: MLB 11",Lazystream: MLB 11
|
||||
.
|
||||
#EXTINF:-1 CUID="2011" tvg-id="2011" tvg-name="Lazystream: MLB 12",Lazystream: MLB 12
|
||||
.
|
||||
#EXTINF:-1 CUID="2012" tvg-id="2012" tvg-name="Lazystream: MLB 13",Lazystream: MLB 13
|
||||
.
|
||||
#EXTINF:-1 CUID="2013" tvg-id="2013" tvg-name="Lazystream: MLB 14",Lazystream: MLB 14
|
||||
.
|
||||
#EXTINF:-1 CUID="2014" tvg-id="2014" tvg-name="Lazystream: MLB 15",Lazystream: MLB 15
|
||||
.
|
||||
#EXTINF:-1 CUID="2015" tvg-id="2015" tvg-name="Lazystream: MLB 16",Lazystream: MLB 16
|
||||
.
|
||||
#EXTINF:-1 CUID="2016" tvg-id="2016" tvg-name="Lazystream: MLB 17",Lazystream: MLB 17
|
||||
.
|
||||
#EXTINF:-1 CUID="2017" tvg-id="2017" tvg-name="Lazystream: MLB 18",Lazystream: MLB 18
|
||||
.
|
||||
#EXTINF:-1 CUID="2018" tvg-id="2018" tvg-name="Lazystream: MLB 19",Lazystream: MLB 19
|
||||
.
|
||||
#EXTINF:-1 CUID="2019" tvg-id="2019" tvg-name="Lazystream: MLB 20",Lazystream: MLB 20
|
||||
.
|
||||
#EXTINF:-1 CUID="2020" tvg-id="2020" tvg-name="Lazystream: MLB 21",Lazystream: MLB 21
|
||||
.
|
||||
#EXTINF:-1 CUID="2021" tvg-id="2021" tvg-name="Lazystream: MLB 22",Lazystream: MLB 22
|
||||
.
|
||||
#EXTINF:-1 CUID="2022" tvg-id="2022" tvg-name="Lazystream: MLB 23",Lazystream: MLB 23
|
||||
.
|
||||
#EXTINF:-1 CUID="2023" tvg-id="2023" tvg-name="Lazystream: MLB 24",Lazystream: MLB 24
|
||||
.
|
||||
#EXTINF:-1 CUID="2024" tvg-id="2024" tvg-name="Lazystream: MLB 25",Lazystream: MLB 25
|
||||
.
|
||||
#EXTINF:-1 CUID="2025" tvg-id="2025" tvg-name="Lazystream: MLB 26",Lazystream: MLB 26
|
||||
.
|
||||
#EXTINF:-1 CUID="2026" tvg-id="2026" tvg-name="Lazystream: MLB 27",Lazystream: MLB 27
|
||||
.
|
||||
#EXTINF:-1 CUID="2027" tvg-id="2027" tvg-name="Lazystream: MLB 28",Lazystream: MLB 28
|
||||
.
|
||||
#EXTINF:-1 CUID="2028" tvg-id="2028" tvg-name="Lazystream: MLB 29",Lazystream: MLB 29
|
||||
.
|
||||
#EXTINF:-1 CUID="2029" tvg-id="2029" tvg-name="Lazystream: MLB 30",Lazystream: MLB 30
|
||||
.
|
||||
#EXTINF:-1 CUID="2030" tvg-id="2030" tvg-name="Lazystream: MLB 31",Lazystream: MLB 31
|
||||
.
|
||||
#EXTINF:-1 CUID="2031" tvg-id="2031" tvg-name="Lazystream: MLB 32",Lazystream: MLB 32
|
||||
.
|
||||
#EXTINF:-1 CUID="2032" tvg-id="2032" tvg-name="Lazystream: MLB 33",Lazystream: MLB 33
|
||||
.
|
||||
#EXTINF:-1 CUID="2033" tvg-id="2033" tvg-name="Lazystream: MLB 34",Lazystream: MLB 34
|
||||
.
|
||||
#EXTINF:-1 CUID="2034" tvg-id="2034" tvg-name="Lazystream: MLB 35",Lazystream: MLB 35
|
||||
.
|
||||
#EXTINF:-1 CUID="2035" tvg-id="2035" tvg-name="Lazystream: MLB 36",Lazystream: MLB 36
|
||||
.
|
||||
#EXTINF:-1 CUID="2036" tvg-id="2036" tvg-name="Lazystream: MLB 37",Lazystream: MLB 37
|
||||
.
|
||||
#EXTINF:-1 CUID="2037" tvg-id="2037" tvg-name="Lazystream: MLB 38",Lazystream: MLB 38
|
||||
.
|
||||
#EXTINF:-1 CUID="2038" tvg-id="2038" tvg-name="Lazystream: MLB 39",Lazystream: MLB 39
|
||||
.
|
||||
#EXTINF:-1 CUID="2039" tvg-id="2039" tvg-name="Lazystream: MLB 40",Lazystream: MLB 40
|
||||
.
|
||||
#EXTINF:-1 CUID="2040" tvg-id="2040" tvg-name="Lazystream: MLB 41",Lazystream: MLB 41
|
||||
.
|
||||
#EXTINF:-1 CUID="2041" tvg-id="2041" tvg-name="Lazystream: MLB 42",Lazystream: MLB 42
|
||||
.
|
||||
#EXTINF:-1 CUID="2042" tvg-id="2042" tvg-name="Lazystream: MLB 43",Lazystream: MLB 43
|
||||
.
|
||||
#EXTINF:-1 CUID="2043" tvg-id="2043" tvg-name="Lazystream: MLB 44",Lazystream: MLB 44
|
||||
.
|
||||
#EXTINF:-1 CUID="2044" tvg-id="2044" tvg-name="Lazystream: MLB 45",Lazystream: MLB 45
|
||||
.
|
||||
#EXTINF:-1 CUID="2045" tvg-id="2045" tvg-name="Lazystream: MLB 46",Lazystream: MLB 46
|
||||
.
|
||||
#EXTINF:-1 CUID="2046" tvg-id="2046" tvg-name="Lazystream: MLB 47",Lazystream: MLB 47
|
||||
.
|
||||
#EXTINF:-1 CUID="2047" tvg-id="2047" tvg-name="Lazystream: MLB 48",Lazystream: MLB 48
|
||||
.
|
||||
#EXTINF:-1 CUID="2048" tvg-id="2048" tvg-name="Lazystream: MLB 49",Lazystream: MLB 49
|
||||
.
|
||||
#EXTINF:-1 CUID="2049" tvg-id="2049" tvg-name="Lazystream: MLB 50",Lazystream: MLB 50
|
||||
.
|
||||
#EXTINF:-1 CUID="2050" tvg-id="2050" tvg-name="Lazystream: MLB 51",Lazystream: MLB 51
|
||||
.
|
||||
#EXTINF:-1 CUID="2051" tvg-id="2051" tvg-name="Lazystream: MLB 52",Lazystream: MLB 52
|
||||
.
|
||||
#EXTINF:-1 CUID="2052" tvg-id="2052" tvg-name="Lazystream: MLB 53",Lazystream: MLB 53
|
||||
.
|
||||
#EXTINF:-1 CUID="2053" tvg-id="2053" tvg-name="Lazystream: MLB 54",Lazystream: MLB 54
|
||||
.
|
||||
#EXTINF:-1 CUID="2054" tvg-id="2054" tvg-name="Lazystream: MLB 55",Lazystream: MLB 55
|
||||
.
|
||||
#EXTINF:-1 CUID="2055" tvg-id="2055" tvg-name="Lazystream: MLB 56",Lazystream: MLB 56
|
||||
.
|
||||
#EXTINF:-1 CUID="2056" tvg-id="2056" tvg-name="Lazystream: MLB 57",Lazystream: MLB 57
|
||||
.
|
||||
#EXTINF:-1 CUID="2057" tvg-id="2057" tvg-name="Lazystream: MLB 58",Lazystream: MLB 58
|
||||
.
|
||||
#EXTINF:-1 CUID="2058" tvg-id="2058" tvg-name="Lazystream: MLB 59",Lazystream: MLB 59
|
||||
.
|
||||
#EXTINF:-1 CUID="2059" tvg-id="2059" tvg-name="Lazystream: MLB 60",Lazystream: MLB 60
|
||||
.
|
||||
#EXTINF:-1 CUID="2060" tvg-id="2060" tvg-name="Lazystream: MLB 61",Lazystream: MLB 61
|
||||
.
|
||||
#EXTINF:-1 CUID="2061" tvg-id="2061" tvg-name="Lazystream: MLB 62",Lazystream: MLB 62
|
||||
.
|
||||
#EXTINF:-1 CUID="2062" tvg-id="2062" tvg-name="Lazystream: MLB 63",Lazystream: MLB 63
|
||||
.
|
||||
#EXTINF:-1 CUID="2063" tvg-id="2063" tvg-name="Lazystream: MLB 64",Lazystream: MLB 64
|
||||
.
|
||||
#EXTINF:-1 CUID="2064" tvg-id="2064" tvg-name="Lazystream: MLB 65",Lazystream: MLB 65
|
||||
.
|
||||
#EXTINF:-1 CUID="2065" tvg-id="2065" tvg-name="Lazystream: MLB 66",Lazystream: MLB 66
|
||||
.
|
||||
#EXTINF:-1 CUID="2066" tvg-id="2066" tvg-name="Lazystream: MLB 67",Lazystream: MLB 67
|
||||
.
|
||||
#EXTINF:-1 CUID="2067" tvg-id="2067" tvg-name="Lazystream: MLB 68",Lazystream: MLB 68
|
||||
.
|
||||
#EXTINF:-1 CUID="2068" tvg-id="2068" tvg-name="Lazystream: MLB 69",Lazystream: MLB 69
|
||||
.
|
||||
#EXTINF:-1 CUID="2069" tvg-id="2069" tvg-name="Lazystream: MLB 70",Lazystream: MLB 70
|
||||
.
|
||||
#EXTINF:-1 CUID="2070" tvg-id="2070" tvg-name="Lazystream: MLB 71",Lazystream: MLB 71
|
||||
.
|
||||
#EXTINF:-1 CUID="2071" tvg-id="2071" tvg-name="Lazystream: MLB 72",Lazystream: MLB 72
|
||||
.
|
||||
#EXTINF:-1 CUID="2072" tvg-id="2072" tvg-name="Lazystream: MLB 73",Lazystream: MLB 73
|
||||
.
|
||||
#EXTINF:-1 CUID="2073" tvg-id="2073" tvg-name="Lazystream: MLB 74",Lazystream: MLB 74
|
||||
.
|
||||
#EXTINF:-1 CUID="2074" tvg-id="2074" tvg-name="Lazystream: MLB 75",Lazystream: MLB 75
|
||||
.
|
||||
#EXTINF:-1 CUID="2075" tvg-id="2075" tvg-name="Lazystream: MLB 76",Lazystream: MLB 76
|
||||
.
|
||||
#EXTINF:-1 CUID="2076" tvg-id="2076" tvg-name="Lazystream: MLB 77",Lazystream: MLB 77
|
||||
.
|
||||
#EXTINF:-1 CUID="2077" tvg-id="2077" tvg-name="Lazystream: MLB 78",Lazystream: MLB 78
|
||||
.
|
||||
#EXTINF:-1 CUID="2078" tvg-id="2078" tvg-name="Lazystream: MLB 79",Lazystream: MLB 79
|
||||
.
|
||||
#EXTINF:-1 CUID="2079" tvg-id="2079" tvg-name="Lazystream: MLB 80",Lazystream: MLB 80
|
||||
.
|
||||
#EXTINF:-1 CUID="2080" tvg-id="2080" tvg-name="Lazystream: MLB 81",Lazystream: MLB 81
|
||||
.
|
||||
#EXTINF:-1 CUID="2081" tvg-id="2081" tvg-name="Lazystream: MLB 82",Lazystream: MLB 82
|
||||
.
|
||||
#EXTINF:-1 CUID="2082" tvg-id="2082" tvg-name="Lazystream: MLB 83",Lazystream: MLB 83
|
||||
.
|
||||
#EXTINF:-1 CUID="2083" tvg-id="2083" tvg-name="Lazystream: MLB 84",Lazystream: MLB 84
|
||||
.
|
||||
#EXTINF:-1 CUID="2084" tvg-id="2084" tvg-name="Lazystream: MLB 85",Lazystream: MLB 85
|
||||
.
|
||||
#EXTINF:-1 CUID="2085" tvg-id="2085" tvg-name="Lazystream: MLB 86",Lazystream: MLB 86
|
||||
.
|
||||
#EXTINF:-1 CUID="2086" tvg-id="2086" tvg-name="Lazystream: MLB 87",Lazystream: MLB 87
|
||||
.
|
||||
#EXTINF:-1 CUID="2087" tvg-id="2087" tvg-name="Lazystream: MLB 88",Lazystream: MLB 88
|
||||
.
|
||||
#EXTINF:-1 CUID="2088" tvg-id="2088" tvg-name="Lazystream: MLB 89",Lazystream: MLB 89
|
||||
.
|
||||
#EXTINF:-1 CUID="2089" tvg-id="2089" tvg-name="Lazystream: MLB 90",Lazystream: MLB 90
|
||||
.
|
||||
#EXTINF:-1 CUID="2090" tvg-id="2090" tvg-name="Lazystream: MLB 91",Lazystream: MLB 91
|
||||
.
|
||||
#EXTINF:-1 CUID="2091" tvg-id="2091" tvg-name="Lazystream: MLB 92",Lazystream: MLB 92
|
||||
.
|
||||
#EXTINF:-1 CUID="2092" tvg-id="2092" tvg-name="Lazystream: MLB 93",Lazystream: MLB 93
|
||||
.
|
||||
#EXTINF:-1 CUID="2093" tvg-id="2093" tvg-name="Lazystream: MLB 94",Lazystream: MLB 94
|
||||
.
|
||||
#EXTINF:-1 CUID="2094" tvg-id="2094" tvg-name="Lazystream: MLB 95",Lazystream: MLB 95
|
||||
.
|
||||
#EXTINF:-1 CUID="2095" tvg-id="2095" tvg-name="Lazystream: MLB 96",Lazystream: MLB 96
|
||||
.
|
||||
#EXTINF:-1 CUID="2096" tvg-id="2096" tvg-name="Lazystream: MLB 97",Lazystream: MLB 97
|
||||
.
|
||||
#EXTINF:-1 CUID="2097" tvg-id="2097" tvg-name="Lazystream: MLB 98",Lazystream: MLB 98
|
||||
.
|
||||
#EXTINF:-1 CUID="2098" tvg-id="2098" tvg-name="Lazystream: MLB 99",Lazystream: MLB 99
|
||||
.
|
||||
#EXTINF:-1 CUID="2099" tvg-id="2099" tvg-name="Lazystream: MLB 100",Lazystream: MLB 100
|
||||
.
|
||||
405
root/defaults/lazystream-mlb.xml
Normal file
405
root/defaults/lazystream-mlb.xml
Normal file
@@ -0,0 +1,405 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE tv SYSTEM "xmltv.dd">
|
||||
|
||||
<tv generator-info-name="lazystream" source-info-name="lazystream - 1.9.7">
|
||||
<channel id="2000">
|
||||
<display-name>Lazystream: MLB 1</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2001">
|
||||
<display-name>Lazystream: MLB 2</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2002">
|
||||
<display-name>Lazystream: MLB 3</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2003">
|
||||
<display-name>Lazystream: MLB 4</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2004">
|
||||
<display-name>Lazystream: MLB 5</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2005">
|
||||
<display-name>Lazystream: MLB 6</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2006">
|
||||
<display-name>Lazystream: MLB 7</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2007">
|
||||
<display-name>Lazystream: MLB 8</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2008">
|
||||
<display-name>Lazystream: MLB 9</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2009">
|
||||
<display-name>Lazystream: MLB 10</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2010">
|
||||
<display-name>Lazystream: MLB 11</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2011">
|
||||
<display-name>Lazystream: MLB 12</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2012">
|
||||
<display-name>Lazystream: MLB 13</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2013">
|
||||
<display-name>Lazystream: MLB 14</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2014">
|
||||
<display-name>Lazystream: MLB 15</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2015">
|
||||
<display-name>Lazystream: MLB 16</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2016">
|
||||
<display-name>Lazystream: MLB 17</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2017">
|
||||
<display-name>Lazystream: MLB 18</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2018">
|
||||
<display-name>Lazystream: MLB 19</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2019">
|
||||
<display-name>Lazystream: MLB 20</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2020">
|
||||
<display-name>Lazystream: MLB 21</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2021">
|
||||
<display-name>Lazystream: MLB 22</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2022">
|
||||
<display-name>Lazystream: MLB 23</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2023">
|
||||
<display-name>Lazystream: MLB 24</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2024">
|
||||
<display-name>Lazystream: MLB 25</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2025">
|
||||
<display-name>Lazystream: MLB 26</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2026">
|
||||
<display-name>Lazystream: MLB 27</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2027">
|
||||
<display-name>Lazystream: MLB 28</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2028">
|
||||
<display-name>Lazystream: MLB 29</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2029">
|
||||
<display-name>Lazystream: MLB 30</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2030">
|
||||
<display-name>Lazystream: MLB 31</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2031">
|
||||
<display-name>Lazystream: MLB 32</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2032">
|
||||
<display-name>Lazystream: MLB 33</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2033">
|
||||
<display-name>Lazystream: MLB 34</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2034">
|
||||
<display-name>Lazystream: MLB 35</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2035">
|
||||
<display-name>Lazystream: MLB 36</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2036">
|
||||
<display-name>Lazystream: MLB 37</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2037">
|
||||
<display-name>Lazystream: MLB 38</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2038">
|
||||
<display-name>Lazystream: MLB 39</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2039">
|
||||
<display-name>Lazystream: MLB 40</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2040">
|
||||
<display-name>Lazystream: MLB 41</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2041">
|
||||
<display-name>Lazystream: MLB 42</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2042">
|
||||
<display-name>Lazystream: MLB 43</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2043">
|
||||
<display-name>Lazystream: MLB 44</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2044">
|
||||
<display-name>Lazystream: MLB 45</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2045">
|
||||
<display-name>Lazystream: MLB 46</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2046">
|
||||
<display-name>Lazystream: MLB 47</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2047">
|
||||
<display-name>Lazystream: MLB 48</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2048">
|
||||
<display-name>Lazystream: MLB 49</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2049">
|
||||
<display-name>Lazystream: MLB 50</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2050">
|
||||
<display-name>Lazystream: MLB 51</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2051">
|
||||
<display-name>Lazystream: MLB 52</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2052">
|
||||
<display-name>Lazystream: MLB 53</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2053">
|
||||
<display-name>Lazystream: MLB 54</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2054">
|
||||
<display-name>Lazystream: MLB 55</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2055">
|
||||
<display-name>Lazystream: MLB 56</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2056">
|
||||
<display-name>Lazystream: MLB 57</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2057">
|
||||
<display-name>Lazystream: MLB 58</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2058">
|
||||
<display-name>Lazystream: MLB 59</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2059">
|
||||
<display-name>Lazystream: MLB 60</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2060">
|
||||
<display-name>Lazystream: MLB 61</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2061">
|
||||
<display-name>Lazystream: MLB 62</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2062">
|
||||
<display-name>Lazystream: MLB 63</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2063">
|
||||
<display-name>Lazystream: MLB 64</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2064">
|
||||
<display-name>Lazystream: MLB 65</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2065">
|
||||
<display-name>Lazystream: MLB 66</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2066">
|
||||
<display-name>Lazystream: MLB 67</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2067">
|
||||
<display-name>Lazystream: MLB 68</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2068">
|
||||
<display-name>Lazystream: MLB 69</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2069">
|
||||
<display-name>Lazystream: MLB 70</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2070">
|
||||
<display-name>Lazystream: MLB 71</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2071">
|
||||
<display-name>Lazystream: MLB 72</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2072">
|
||||
<display-name>Lazystream: MLB 73</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2073">
|
||||
<display-name>Lazystream: MLB 74</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2074">
|
||||
<display-name>Lazystream: MLB 75</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2075">
|
||||
<display-name>Lazystream: MLB 76</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2076">
|
||||
<display-name>Lazystream: MLB 77</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2077">
|
||||
<display-name>Lazystream: MLB 78</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2078">
|
||||
<display-name>Lazystream: MLB 79</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2079">
|
||||
<display-name>Lazystream: MLB 80</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2080">
|
||||
<display-name>Lazystream: MLB 81</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2081">
|
||||
<display-name>Lazystream: MLB 82</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2082">
|
||||
<display-name>Lazystream: MLB 83</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2083">
|
||||
<display-name>Lazystream: MLB 84</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2084">
|
||||
<display-name>Lazystream: MLB 85</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2085">
|
||||
<display-name>Lazystream: MLB 86</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2086">
|
||||
<display-name>Lazystream: MLB 87</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2087">
|
||||
<display-name>Lazystream: MLB 88</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2088">
|
||||
<display-name>Lazystream: MLB 89</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2089">
|
||||
<display-name>Lazystream: MLB 90</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2090">
|
||||
<display-name>Lazystream: MLB 91</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2091">
|
||||
<display-name>Lazystream: MLB 92</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2092">
|
||||
<display-name>Lazystream: MLB 93</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2093">
|
||||
<display-name>Lazystream: MLB 94</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2094">
|
||||
<display-name>Lazystream: MLB 95</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2095">
|
||||
<display-name>Lazystream: MLB 96</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2096">
|
||||
<display-name>Lazystream: MLB 97</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2097">
|
||||
<display-name>Lazystream: MLB 98</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2098">
|
||||
<display-name>Lazystream: MLB 99</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="2099">
|
||||
<display-name>Lazystream: MLB 100</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/mlb/mlb_logo1.jpg"></icon>
|
||||
</channel>
|
||||
</tv>
|
||||
201
root/defaults/lazystream-nhl.m3u
Normal file
201
root/defaults/lazystream-nhl.m3u
Normal file
@@ -0,0 +1,201 @@
|
||||
#EXTM3U
|
||||
#EXTINF:-1 CUID="1000" tvg-id="1000" tvg-name="Lazystream: NHL 1",Lazystream: NHL 1
|
||||
.
|
||||
#EXTINF:-1 CUID="1001" tvg-id="1001" tvg-name="Lazystream: NHL 2",Lazystream: NHL 2
|
||||
.
|
||||
#EXTINF:-1 CUID="1002" tvg-id="1002" tvg-name="Lazystream: NHL 3",Lazystream: NHL 3
|
||||
.
|
||||
#EXTINF:-1 CUID="1003" tvg-id="1003" tvg-name="Lazystream: NHL 4",Lazystream: NHL 4
|
||||
.
|
||||
#EXTINF:-1 CUID="1004" tvg-id="1004" tvg-name="Lazystream: NHL 5",Lazystream: NHL 5
|
||||
.
|
||||
#EXTINF:-1 CUID="1005" tvg-id="1005" tvg-name="Lazystream: NHL 6",Lazystream: NHL 6
|
||||
.
|
||||
#EXTINF:-1 CUID="1006" tvg-id="1006" tvg-name="Lazystream: NHL 7",Lazystream: NHL 7
|
||||
.
|
||||
#EXTINF:-1 CUID="1007" tvg-id="1007" tvg-name="Lazystream: NHL 8",Lazystream: NHL 8
|
||||
.
|
||||
#EXTINF:-1 CUID="1008" tvg-id="1008" tvg-name="Lazystream: NHL 9",Lazystream: NHL 9
|
||||
.
|
||||
#EXTINF:-1 CUID="1009" tvg-id="1009" tvg-name="Lazystream: NHL 10",Lazystream: NHL 10
|
||||
.
|
||||
#EXTINF:-1 CUID="1010" tvg-id="1010" tvg-name="Lazystream: NHL 11",Lazystream: NHL 11
|
||||
.
|
||||
#EXTINF:-1 CUID="1011" tvg-id="1011" tvg-name="Lazystream: NHL 12",Lazystream: NHL 12
|
||||
.
|
||||
#EXTINF:-1 CUID="1012" tvg-id="1012" tvg-name="Lazystream: NHL 13",Lazystream: NHL 13
|
||||
.
|
||||
#EXTINF:-1 CUID="1013" tvg-id="1013" tvg-name="Lazystream: NHL 14",Lazystream: NHL 14
|
||||
.
|
||||
#EXTINF:-1 CUID="1014" tvg-id="1014" tvg-name="Lazystream: NHL 15",Lazystream: NHL 15
|
||||
.
|
||||
#EXTINF:-1 CUID="1015" tvg-id="1015" tvg-name="Lazystream: NHL 16",Lazystream: NHL 16
|
||||
.
|
||||
#EXTINF:-1 CUID="1016" tvg-id="1016" tvg-name="Lazystream: NHL 17",Lazystream: NHL 17
|
||||
.
|
||||
#EXTINF:-1 CUID="1017" tvg-id="1017" tvg-name="Lazystream: NHL 18",Lazystream: NHL 18
|
||||
.
|
||||
#EXTINF:-1 CUID="1018" tvg-id="1018" tvg-name="Lazystream: NHL 19",Lazystream: NHL 19
|
||||
.
|
||||
#EXTINF:-1 CUID="1019" tvg-id="1019" tvg-name="Lazystream: NHL 20",Lazystream: NHL 20
|
||||
.
|
||||
#EXTINF:-1 CUID="1020" tvg-id="1020" tvg-name="Lazystream: NHL 21",Lazystream: NHL 21
|
||||
.
|
||||
#EXTINF:-1 CUID="1021" tvg-id="1021" tvg-name="Lazystream: NHL 22",Lazystream: NHL 22
|
||||
.
|
||||
#EXTINF:-1 CUID="1022" tvg-id="1022" tvg-name="Lazystream: NHL 23",Lazystream: NHL 23
|
||||
.
|
||||
#EXTINF:-1 CUID="1023" tvg-id="1023" tvg-name="Lazystream: NHL 24",Lazystream: NHL 24
|
||||
.
|
||||
#EXTINF:-1 CUID="1024" tvg-id="1024" tvg-name="Lazystream: NHL 25",Lazystream: NHL 25
|
||||
.
|
||||
#EXTINF:-1 CUID="1025" tvg-id="1025" tvg-name="Lazystream: NHL 26",Lazystream: NHL 26
|
||||
.
|
||||
#EXTINF:-1 CUID="1026" tvg-id="1026" tvg-name="Lazystream: NHL 27",Lazystream: NHL 27
|
||||
.
|
||||
#EXTINF:-1 CUID="1027" tvg-id="1027" tvg-name="Lazystream: NHL 28",Lazystream: NHL 28
|
||||
.
|
||||
#EXTINF:-1 CUID="1028" tvg-id="1028" tvg-name="Lazystream: NHL 29",Lazystream: NHL 29
|
||||
.
|
||||
#EXTINF:-1 CUID="1029" tvg-id="1029" tvg-name="Lazystream: NHL 30",Lazystream: NHL 30
|
||||
.
|
||||
#EXTINF:-1 CUID="1030" tvg-id="1030" tvg-name="Lazystream: NHL 31",Lazystream: NHL 31
|
||||
.
|
||||
#EXTINF:-1 CUID="1031" tvg-id="1031" tvg-name="Lazystream: NHL 32",Lazystream: NHL 32
|
||||
.
|
||||
#EXTINF:-1 CUID="1032" tvg-id="1032" tvg-name="Lazystream: NHL 33",Lazystream: NHL 33
|
||||
.
|
||||
#EXTINF:-1 CUID="1033" tvg-id="1033" tvg-name="Lazystream: NHL 34",Lazystream: NHL 34
|
||||
.
|
||||
#EXTINF:-1 CUID="1034" tvg-id="1034" tvg-name="Lazystream: NHL 35",Lazystream: NHL 35
|
||||
.
|
||||
#EXTINF:-1 CUID="1035" tvg-id="1035" tvg-name="Lazystream: NHL 36",Lazystream: NHL 36
|
||||
.
|
||||
#EXTINF:-1 CUID="1036" tvg-id="1036" tvg-name="Lazystream: NHL 37",Lazystream: NHL 37
|
||||
.
|
||||
#EXTINF:-1 CUID="1037" tvg-id="1037" tvg-name="Lazystream: NHL 38",Lazystream: NHL 38
|
||||
.
|
||||
#EXTINF:-1 CUID="1038" tvg-id="1038" tvg-name="Lazystream: NHL 39",Lazystream: NHL 39
|
||||
.
|
||||
#EXTINF:-1 CUID="1039" tvg-id="1039" tvg-name="Lazystream: NHL 40",Lazystream: NHL 40
|
||||
.
|
||||
#EXTINF:-1 CUID="1040" tvg-id="1040" tvg-name="Lazystream: NHL 41",Lazystream: NHL 41
|
||||
.
|
||||
#EXTINF:-1 CUID="1041" tvg-id="1041" tvg-name="Lazystream: NHL 42",Lazystream: NHL 42
|
||||
.
|
||||
#EXTINF:-1 CUID="1042" tvg-id="1042" tvg-name="Lazystream: NHL 43",Lazystream: NHL 43
|
||||
.
|
||||
#EXTINF:-1 CUID="1043" tvg-id="1043" tvg-name="Lazystream: NHL 44",Lazystream: NHL 44
|
||||
.
|
||||
#EXTINF:-1 CUID="1044" tvg-id="1044" tvg-name="Lazystream: NHL 45",Lazystream: NHL 45
|
||||
.
|
||||
#EXTINF:-1 CUID="1045" tvg-id="1045" tvg-name="Lazystream: NHL 46",Lazystream: NHL 46
|
||||
.
|
||||
#EXTINF:-1 CUID="1046" tvg-id="1046" tvg-name="Lazystream: NHL 47",Lazystream: NHL 47
|
||||
.
|
||||
#EXTINF:-1 CUID="1047" tvg-id="1047" tvg-name="Lazystream: NHL 48",Lazystream: NHL 48
|
||||
.
|
||||
#EXTINF:-1 CUID="1048" tvg-id="1048" tvg-name="Lazystream: NHL 49",Lazystream: NHL 49
|
||||
.
|
||||
#EXTINF:-1 CUID="1049" tvg-id="1049" tvg-name="Lazystream: NHL 50",Lazystream: NHL 50
|
||||
.
|
||||
#EXTINF:-1 CUID="1050" tvg-id="1050" tvg-name="Lazystream: NHL 51",Lazystream: NHL 51
|
||||
.
|
||||
#EXTINF:-1 CUID="1051" tvg-id="1051" tvg-name="Lazystream: NHL 52",Lazystream: NHL 52
|
||||
.
|
||||
#EXTINF:-1 CUID="1052" tvg-id="1052" tvg-name="Lazystream: NHL 53",Lazystream: NHL 53
|
||||
.
|
||||
#EXTINF:-1 CUID="1053" tvg-id="1053" tvg-name="Lazystream: NHL 54",Lazystream: NHL 54
|
||||
.
|
||||
#EXTINF:-1 CUID="1054" tvg-id="1054" tvg-name="Lazystream: NHL 55",Lazystream: NHL 55
|
||||
.
|
||||
#EXTINF:-1 CUID="1055" tvg-id="1055" tvg-name="Lazystream: NHL 56",Lazystream: NHL 56
|
||||
.
|
||||
#EXTINF:-1 CUID="1056" tvg-id="1056" tvg-name="Lazystream: NHL 57",Lazystream: NHL 57
|
||||
.
|
||||
#EXTINF:-1 CUID="1057" tvg-id="1057" tvg-name="Lazystream: NHL 58",Lazystream: NHL 58
|
||||
.
|
||||
#EXTINF:-1 CUID="1058" tvg-id="1058" tvg-name="Lazystream: NHL 59",Lazystream: NHL 59
|
||||
.
|
||||
#EXTINF:-1 CUID="1059" tvg-id="1059" tvg-name="Lazystream: NHL 60",Lazystream: NHL 60
|
||||
.
|
||||
#EXTINF:-1 CUID="1060" tvg-id="1060" tvg-name="Lazystream: NHL 61",Lazystream: NHL 61
|
||||
.
|
||||
#EXTINF:-1 CUID="1061" tvg-id="1061" tvg-name="Lazystream: NHL 62",Lazystream: NHL 62
|
||||
.
|
||||
#EXTINF:-1 CUID="1062" tvg-id="1062" tvg-name="Lazystream: NHL 63",Lazystream: NHL 63
|
||||
.
|
||||
#EXTINF:-1 CUID="1063" tvg-id="1063" tvg-name="Lazystream: NHL 64",Lazystream: NHL 64
|
||||
.
|
||||
#EXTINF:-1 CUID="1064" tvg-id="1064" tvg-name="Lazystream: NHL 65",Lazystream: NHL 65
|
||||
.
|
||||
#EXTINF:-1 CUID="1065" tvg-id="1065" tvg-name="Lazystream: NHL 66",Lazystream: NHL 66
|
||||
.
|
||||
#EXTINF:-1 CUID="1066" tvg-id="1066" tvg-name="Lazystream: NHL 67",Lazystream: NHL 67
|
||||
.
|
||||
#EXTINF:-1 CUID="1067" tvg-id="1067" tvg-name="Lazystream: NHL 68",Lazystream: NHL 68
|
||||
.
|
||||
#EXTINF:-1 CUID="1068" tvg-id="1068" tvg-name="Lazystream: NHL 69",Lazystream: NHL 69
|
||||
.
|
||||
#EXTINF:-1 CUID="1069" tvg-id="1069" tvg-name="Lazystream: NHL 70",Lazystream: NHL 70
|
||||
.
|
||||
#EXTINF:-1 CUID="1070" tvg-id="1070" tvg-name="Lazystream: NHL 71",Lazystream: NHL 71
|
||||
.
|
||||
#EXTINF:-1 CUID="1071" tvg-id="1071" tvg-name="Lazystream: NHL 72",Lazystream: NHL 72
|
||||
.
|
||||
#EXTINF:-1 CUID="1072" tvg-id="1072" tvg-name="Lazystream: NHL 73",Lazystream: NHL 73
|
||||
.
|
||||
#EXTINF:-1 CUID="1073" tvg-id="1073" tvg-name="Lazystream: NHL 74",Lazystream: NHL 74
|
||||
.
|
||||
#EXTINF:-1 CUID="1074" tvg-id="1074" tvg-name="Lazystream: NHL 75",Lazystream: NHL 75
|
||||
.
|
||||
#EXTINF:-1 CUID="1075" tvg-id="1075" tvg-name="Lazystream: NHL 76",Lazystream: NHL 76
|
||||
.
|
||||
#EXTINF:-1 CUID="1076" tvg-id="1076" tvg-name="Lazystream: NHL 77",Lazystream: NHL 77
|
||||
.
|
||||
#EXTINF:-1 CUID="1077" tvg-id="1077" tvg-name="Lazystream: NHL 78",Lazystream: NHL 78
|
||||
.
|
||||
#EXTINF:-1 CUID="1078" tvg-id="1078" tvg-name="Lazystream: NHL 79",Lazystream: NHL 79
|
||||
.
|
||||
#EXTINF:-1 CUID="1079" tvg-id="1079" tvg-name="Lazystream: NHL 80",Lazystream: NHL 80
|
||||
.
|
||||
#EXTINF:-1 CUID="1080" tvg-id="1080" tvg-name="Lazystream: NHL 81",Lazystream: NHL 81
|
||||
.
|
||||
#EXTINF:-1 CUID="1081" tvg-id="1081" tvg-name="Lazystream: NHL 82",Lazystream: NHL 82
|
||||
.
|
||||
#EXTINF:-1 CUID="1082" tvg-id="1082" tvg-name="Lazystream: NHL 83",Lazystream: NHL 83
|
||||
.
|
||||
#EXTINF:-1 CUID="1083" tvg-id="1083" tvg-name="Lazystream: NHL 84",Lazystream: NHL 84
|
||||
.
|
||||
#EXTINF:-1 CUID="1084" tvg-id="1084" tvg-name="Lazystream: NHL 85",Lazystream: NHL 85
|
||||
.
|
||||
#EXTINF:-1 CUID="1085" tvg-id="1085" tvg-name="Lazystream: NHL 86",Lazystream: NHL 86
|
||||
.
|
||||
#EXTINF:-1 CUID="1086" tvg-id="1086" tvg-name="Lazystream: NHL 87",Lazystream: NHL 87
|
||||
.
|
||||
#EXTINF:-1 CUID="1087" tvg-id="1087" tvg-name="Lazystream: NHL 88",Lazystream: NHL 88
|
||||
.
|
||||
#EXTINF:-1 CUID="1088" tvg-id="1088" tvg-name="Lazystream: NHL 89",Lazystream: NHL 89
|
||||
.
|
||||
#EXTINF:-1 CUID="1089" tvg-id="1089" tvg-name="Lazystream: NHL 90",Lazystream: NHL 90
|
||||
.
|
||||
#EXTINF:-1 CUID="1090" tvg-id="1090" tvg-name="Lazystream: NHL 91",Lazystream: NHL 91
|
||||
.
|
||||
#EXTINF:-1 CUID="1091" tvg-id="1091" tvg-name="Lazystream: NHL 92",Lazystream: NHL 92
|
||||
.
|
||||
#EXTINF:-1 CUID="1092" tvg-id="1092" tvg-name="Lazystream: NHL 93",Lazystream: NHL 93
|
||||
.
|
||||
#EXTINF:-1 CUID="1093" tvg-id="1093" tvg-name="Lazystream: NHL 94",Lazystream: NHL 94
|
||||
.
|
||||
#EXTINF:-1 CUID="1094" tvg-id="1094" tvg-name="Lazystream: NHL 95",Lazystream: NHL 95
|
||||
.
|
||||
#EXTINF:-1 CUID="1095" tvg-id="1095" tvg-name="Lazystream: NHL 96",Lazystream: NHL 96
|
||||
.
|
||||
#EXTINF:-1 CUID="1096" tvg-id="1096" tvg-name="Lazystream: NHL 97",Lazystream: NHL 97
|
||||
.
|
||||
#EXTINF:-1 CUID="1097" tvg-id="1097" tvg-name="Lazystream: NHL 98",Lazystream: NHL 98
|
||||
.
|
||||
#EXTINF:-1 CUID="1098" tvg-id="1098" tvg-name="Lazystream: NHL 99",Lazystream: NHL 99
|
||||
.
|
||||
#EXTINF:-1 CUID="1099" tvg-id="1099" tvg-name="Lazystream: NHL 100",Lazystream: NHL 100
|
||||
.
|
||||
405
root/defaults/lazystream-nhl.xml
Normal file
405
root/defaults/lazystream-nhl.xml
Normal file
@@ -0,0 +1,405 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE tv SYSTEM "xmltv.dd">
|
||||
|
||||
<tv generator-info-name="lazystream" source-info-name="lazystream - 1.9.7">
|
||||
<channel id="1000">
|
||||
<display-name>Lazystream: NHL 1</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1001">
|
||||
<display-name>Lazystream: NHL 2</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1002">
|
||||
<display-name>Lazystream: NHL 3</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1003">
|
||||
<display-name>Lazystream: NHL 4</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1004">
|
||||
<display-name>Lazystream: NHL 5</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1005">
|
||||
<display-name>Lazystream: NHL 6</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1006">
|
||||
<display-name>Lazystream: NHL 7</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1007">
|
||||
<display-name>Lazystream: NHL 8</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1008">
|
||||
<display-name>Lazystream: NHL 9</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1009">
|
||||
<display-name>Lazystream: NHL 10</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1010">
|
||||
<display-name>Lazystream: NHL 11</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1011">
|
||||
<display-name>Lazystream: NHL 12</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1012">
|
||||
<display-name>Lazystream: NHL 13</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1013">
|
||||
<display-name>Lazystream: NHL 14</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1014">
|
||||
<display-name>Lazystream: NHL 15</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1015">
|
||||
<display-name>Lazystream: NHL 16</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1016">
|
||||
<display-name>Lazystream: NHL 17</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1017">
|
||||
<display-name>Lazystream: NHL 18</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1018">
|
||||
<display-name>Lazystream: NHL 19</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1019">
|
||||
<display-name>Lazystream: NHL 20</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1020">
|
||||
<display-name>Lazystream: NHL 21</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1021">
|
||||
<display-name>Lazystream: NHL 22</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1022">
|
||||
<display-name>Lazystream: NHL 23</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1023">
|
||||
<display-name>Lazystream: NHL 24</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1024">
|
||||
<display-name>Lazystream: NHL 25</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1025">
|
||||
<display-name>Lazystream: NHL 26</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1026">
|
||||
<display-name>Lazystream: NHL 27</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1027">
|
||||
<display-name>Lazystream: NHL 28</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1028">
|
||||
<display-name>Lazystream: NHL 29</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1029">
|
||||
<display-name>Lazystream: NHL 30</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1030">
|
||||
<display-name>Lazystream: NHL 31</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1031">
|
||||
<display-name>Lazystream: NHL 32</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1032">
|
||||
<display-name>Lazystream: NHL 33</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1033">
|
||||
<display-name>Lazystream: NHL 34</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1034">
|
||||
<display-name>Lazystream: NHL 35</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1035">
|
||||
<display-name>Lazystream: NHL 36</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1036">
|
||||
<display-name>Lazystream: NHL 37</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1037">
|
||||
<display-name>Lazystream: NHL 38</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1038">
|
||||
<display-name>Lazystream: NHL 39</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1039">
|
||||
<display-name>Lazystream: NHL 40</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1040">
|
||||
<display-name>Lazystream: NHL 41</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1041">
|
||||
<display-name>Lazystream: NHL 42</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1042">
|
||||
<display-name>Lazystream: NHL 43</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1043">
|
||||
<display-name>Lazystream: NHL 44</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1044">
|
||||
<display-name>Lazystream: NHL 45</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1045">
|
||||
<display-name>Lazystream: NHL 46</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1046">
|
||||
<display-name>Lazystream: NHL 47</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1047">
|
||||
<display-name>Lazystream: NHL 48</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1048">
|
||||
<display-name>Lazystream: NHL 49</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1049">
|
||||
<display-name>Lazystream: NHL 50</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1050">
|
||||
<display-name>Lazystream: NHL 51</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1051">
|
||||
<display-name>Lazystream: NHL 52</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1052">
|
||||
<display-name>Lazystream: NHL 53</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1053">
|
||||
<display-name>Lazystream: NHL 54</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1054">
|
||||
<display-name>Lazystream: NHL 55</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1055">
|
||||
<display-name>Lazystream: NHL 56</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1056">
|
||||
<display-name>Lazystream: NHL 57</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1057">
|
||||
<display-name>Lazystream: NHL 58</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1058">
|
||||
<display-name>Lazystream: NHL 59</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1059">
|
||||
<display-name>Lazystream: NHL 60</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1060">
|
||||
<display-name>Lazystream: NHL 61</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1061">
|
||||
<display-name>Lazystream: NHL 62</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1062">
|
||||
<display-name>Lazystream: NHL 63</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1063">
|
||||
<display-name>Lazystream: NHL 64</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1064">
|
||||
<display-name>Lazystream: NHL 65</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1065">
|
||||
<display-name>Lazystream: NHL 66</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1066">
|
||||
<display-name>Lazystream: NHL 67</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1067">
|
||||
<display-name>Lazystream: NHL 68</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1068">
|
||||
<display-name>Lazystream: NHL 69</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1069">
|
||||
<display-name>Lazystream: NHL 70</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1070">
|
||||
<display-name>Lazystream: NHL 71</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1071">
|
||||
<display-name>Lazystream: NHL 72</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1072">
|
||||
<display-name>Lazystream: NHL 73</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1073">
|
||||
<display-name>Lazystream: NHL 74</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1074">
|
||||
<display-name>Lazystream: NHL 75</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1075">
|
||||
<display-name>Lazystream: NHL 76</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1076">
|
||||
<display-name>Lazystream: NHL 77</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1077">
|
||||
<display-name>Lazystream: NHL 78</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1078">
|
||||
<display-name>Lazystream: NHL 79</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1079">
|
||||
<display-name>Lazystream: NHL 80</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1080">
|
||||
<display-name>Lazystream: NHL 81</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1081">
|
||||
<display-name>Lazystream: NHL 82</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1082">
|
||||
<display-name>Lazystream: NHL 83</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1083">
|
||||
<display-name>Lazystream: NHL 84</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1084">
|
||||
<display-name>Lazystream: NHL 85</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1085">
|
||||
<display-name>Lazystream: NHL 86</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1086">
|
||||
<display-name>Lazystream: NHL 87</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1087">
|
||||
<display-name>Lazystream: NHL 88</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1088">
|
||||
<display-name>Lazystream: NHL 89</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1089">
|
||||
<display-name>Lazystream: NHL 90</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1090">
|
||||
<display-name>Lazystream: NHL 91</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1091">
|
||||
<display-name>Lazystream: NHL 92</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1092">
|
||||
<display-name>Lazystream: NHL 93</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1093">
|
||||
<display-name>Lazystream: NHL 94</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1094">
|
||||
<display-name>Lazystream: NHL 95</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1095">
|
||||
<display-name>Lazystream: NHL 96</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1096">
|
||||
<display-name>Lazystream: NHL 97</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1097">
|
||||
<display-name>Lazystream: NHL 98</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1098">
|
||||
<display-name>Lazystream: NHL 99</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
<channel id="1099">
|
||||
<display-name>Lazystream: NHL 100</display-name>
|
||||
<icon src="http://home.windstream.net/dgrodecki/images/nhl/nhl_logo2.jpg"></icon>
|
||||
</channel>
|
||||
</tv>
|
||||
@@ -1,4 +1,4 @@
|
||||
printf '45 04 * * * /config/cronjob.sh' > /etc/crontabs/root
|
||||
printf '0 * * * * /cronjob.sh' > /etc/crontabs/root
|
||||
### 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
|
||||
### If no cron.txt is found the cronjob will run every hour
|
||||
115
root/defaults/xteve-settings.json
Normal file
115
root/defaults/xteve-settings.json
Normal file
@@ -0,0 +1,115 @@
|
||||
{
|
||||
"api": true,
|
||||
"authentication.api": false,
|
||||
"authentication.m3u": false,
|
||||
"authentication.pms": false,
|
||||
"authentication.web": false,
|
||||
"authentication.xml": false,
|
||||
"backup.keep": 10,
|
||||
"backup.path": "/xteve/backup/",
|
||||
"git.branch": "master",
|
||||
"buffer": "ffmpeg",
|
||||
"buffer.size.kb": 5120,
|
||||
"buffer.timeout": 500,
|
||||
"cache.images": false,
|
||||
"epgSource": "XEPG",
|
||||
"ffmpeg.options": "-hide_banner -loglevel error -i [URL] -c copy -f mpegts pipe:1",
|
||||
"ffmpeg.path": "/usr/bin/ffmpeg",
|
||||
"vlc.options": "-I dummy [URL] --sout #std{mux=ts,access=file,dst=-}",
|
||||
"vlc.path": "/usr/bin/cvlc",
|
||||
"files": {
|
||||
"hdhr": {},
|
||||
"m3u": {
|
||||
"MLXAQ0TBXCTR3TV9D0K8": {
|
||||
"compatibility": {
|
||||
"group.title": 0,
|
||||
"stream.id": 100,
|
||||
"streams": 100,
|
||||
"tvg.id": 100
|
||||
},
|
||||
"counter.download": 98,
|
||||
"counter.error": 4,
|
||||
"description": "",
|
||||
"file.source": "/playlists/lazystream/lazystream-nhl.m3u",
|
||||
"file.xteve": "MLXAQ0TBXCTR3TV9D0K8.m3u",
|
||||
"id.provider": "MLXAQ0TBXCTR3TV9D0K8",
|
||||
"last.update": "2020-03-04 15:29:04",
|
||||
"name": "nhl",
|
||||
"provider.availability": 95,
|
||||
"tuner": 4,
|
||||
"type": "m3u"
|
||||
},
|
||||
"MT0Y8RELU1MT4Q86IAHO": {
|
||||
"compatibility": {
|
||||
"group.title": 0,
|
||||
"stream.id": 100,
|
||||
"streams": 100,
|
||||
"tvg.id": 100
|
||||
},
|
||||
"counter.download": 94,
|
||||
"counter.error": 4,
|
||||
"description": "",
|
||||
"file.source": "/playlists/lazystream/lazystream-mlb.m3u",
|
||||
"file.xteve": "MT0Y8RELU1MT4Q86IAHO.m3u",
|
||||
"id.provider": "MT0Y8RELU1MT4Q86IAHO",
|
||||
"last.update": "2020-03-04 15:29:04",
|
||||
"name": "mlb",
|
||||
"provider.availability": 95,
|
||||
"tuner": 4,
|
||||
"type": "m3u"
|
||||
}
|
||||
},
|
||||
"xmltv": {
|
||||
"X0M9AR41W0FL06FNRT81": {
|
||||
"compatibility": {
|
||||
"xmltv.channels": 100,
|
||||
"xmltv.programs": 0
|
||||
},
|
||||
"counter.download": 151,
|
||||
"counter.error": 4,
|
||||
"description": "",
|
||||
"file.source": "/playlists/lazystream/lazystream-nhl.xml",
|
||||
"file.xteve": "X0M9AR41W0FL06FNRT81.xml",
|
||||
"id.provider": "X0M9AR41W0FL06FNRT81",
|
||||
"last.update": "2020-03-04 15:29:05",
|
||||
"name": "nhl",
|
||||
"provider.availability": 97,
|
||||
"type": "xmltv"
|
||||
},
|
||||
"XXDC0UWZB20AXXKCO4G9": {
|
||||
"compatibility": {
|
||||
"xmltv.channels": 100,
|
||||
"xmltv.programs": 11
|
||||
},
|
||||
"counter.download": 149,
|
||||
"counter.error": 4,
|
||||
"description": "",
|
||||
"file.source": "/playlists/lazystream/lazystream-mlb.xml",
|
||||
"file.xteve": "XXDC0UWZB20AXXKCO4G9.xml",
|
||||
"id.provider": "XXDC0UWZB20AXXKCO4G9",
|
||||
"last.update": "2020-03-04 15:29:05",
|
||||
"name": "mlb",
|
||||
"provider.availability": 97,
|
||||
"type": "xmltv"
|
||||
}
|
||||
}
|
||||
},
|
||||
"files.update": true,
|
||||
"filter": {},
|
||||
"language": "en",
|
||||
"log.entries.ram": 500,
|
||||
"m3u8.adaptive.bandwidth.mbps": 10,
|
||||
"mapping.first.channel": 1000,
|
||||
"port": "34400",
|
||||
"ssdp": true,
|
||||
"temp.path": "/tmp/xteve/",
|
||||
"tuner": 4,
|
||||
"update": [
|
||||
"0000"
|
||||
],
|
||||
"user.agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:73.0) Gecko/20100101 Firefox/73.0",
|
||||
"uuid": "2020-02-4R8O-BG0O65",
|
||||
"version": "2.1.0",
|
||||
"xepg.replace.missing.images": true,
|
||||
"xteveAutoUpdate": true
|
||||
}
|
||||
14
root/etc/cont-init.d/10-adduser
Normal file
14
root/etc/cont-init.d/10-adduser
Normal file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
groupmod -o -g "$PGID" abc
|
||||
usermod -o -u "$PUID" abc
|
||||
|
||||
echo '
|
||||
-------------------------------------
|
||||
GID/UID
|
||||
-------------------------------------'
|
||||
echo "
|
||||
User uid: $(id -u abc)
|
||||
User gid: $(id -g abc)
|
||||
-------------------------------------
|
||||
"
|
||||
11
root/etc/cont-init.d/40-install-defaults
Normal file
11
root/etc/cont-init.d/40-install-defaults
Normal file
@@ -0,0 +1,11 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
cp /defaults/sample_cron.txt /config/sample_cron.txt
|
||||
|
||||
cp -n /defaults/xteve-settings.json /xteve/settings.json
|
||||
|
||||
mkdir -p /playlists/lazystream/
|
||||
cp -n /defaults/lazystream-mlb.m3u /playlists/lazystream/lazystream-mlb.m3u
|
||||
cp -n /defaults/lazystream-mlb.xml /playlists/lazystream/lazystream-mlb.xml
|
||||
cp -n /defaults/lazystream-nhl.m3u /playlists/lazystream/lazystream-nhl.m3u
|
||||
cp -n /defaults/lazystream-nhl.xml /playlists/lazystream/lazystream-nhl.xml
|
||||
33
root/etc/cont-init.d/50-update-hosts
Normal file
33
root/etc/cont-init.d/50-update-hosts
Normal file
@@ -0,0 +1,33 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
function prepend() {
|
||||
while read line;
|
||||
do echo "${1}${line}";
|
||||
done;
|
||||
}
|
||||
|
||||
exec 1> >(prepend "[update-hosts] ")
|
||||
|
||||
|
||||
# Update hosts file
|
||||
export IP=$(getent ahostsv4 freegamez.ga | awk '{ print $1 }' | head -1)
|
||||
|
||||
echo $IP playback.svcs.mlb.com >> /etc/hosts
|
||||
echo $IP mf.svc.nhl.com >> /etc/hosts
|
||||
echo $IP mlb-ws-mf.media.mlb.com >> /etc/hosts
|
||||
|
||||
cat /etc/hosts
|
||||
|
||||
# Update certs
|
||||
rm -f /home/abc/.gnutls/known_hosts
|
||||
rm -f /root/.gnutls/known_hosts
|
||||
|
||||
printf 'y\n' | gnutls-cli --tofu playback.svcs.mlb.com:443
|
||||
printf 'y\n' | gnutls-cli --tofu mf.svc.nhl.com:443
|
||||
printf 'y\n' | gnutls-cli --tofu mlb-ws-mf.media.mlb.com:443
|
||||
|
||||
install -D /root/.gnutls/known_hosts /home/abc/.gnutls/known_hosts
|
||||
|
||||
rm -rf /root/.gnutls
|
||||
|
||||
cat /home/abc/.gnutls/known_hosts
|
||||
9
root/etc/cont-init.d/60-chown-files
Normal file
9
root/etc/cont-init.d/60-chown-files
Normal file
@@ -0,0 +1,9 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
chown -R abc:abc /config
|
||||
chown -R abc:abc /playlists
|
||||
chown -R abc:abc /guide2go
|
||||
chown -R abc:abc /xteve
|
||||
chown -R abc:abc /tmp/xteve
|
||||
|
||||
chown -R abc:abc /home/abc
|
||||
1
root/etc/crontabs/root
Normal file
1
root/etc/crontabs/root
Normal file
@@ -0,0 +1 @@
|
||||
0 * * * * /cronjob.sh
|
||||
12
root/etc/services.d/crond/run
Normal file
12
root/etc/services.d/crond/run
Normal file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
CRON_FILE=/config/cron.txt
|
||||
|
||||
if [ -f "$CRON_FILE" ]; then
|
||||
. $CRON_FILE
|
||||
else
|
||||
echo "[crond-setup] No cron definition found..."
|
||||
echo "[crond-setup] By default, cronjob will run every night at midnight unless cron file is configured."
|
||||
fi
|
||||
|
||||
crond -f
|
||||
5
root/etc/services.d/xteve/run
Normal file
5
root/etc/services.d/xteve/run
Normal file
@@ -0,0 +1,5 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
exec \
|
||||
s6-setuidgid abc /bin/bash -c \
|
||||
'xteve -port=$XTEVE_PORT -config=/xteve/'
|
||||
10
run.sh
10
run.sh
@@ -2,12 +2,14 @@
|
||||
|
||||
docker run -d \
|
||||
--name=xteve_lazystream \
|
||||
-p 34400:34400 \
|
||||
-e TZ="America/Los_Angeles" \
|
||||
--env-file=.env \
|
||||
--log-opt max-size=10m \
|
||||
--log-opt max-file=3 \
|
||||
-e TZ="America/Los_Angeles" \
|
||||
-v /mnt/user/appdata/xteve/:/root/.xteve:rw \
|
||||
-v /mnt/user/appdata/xteve/_config/:/config:rw \
|
||||
-v /mnt/user/appdata/xteve/_guide2go/:/guide2go:rw \
|
||||
-v /mnt/user/appdata/xteve/.xteve:/xteve:rw \
|
||||
-v /mnt/user/appdata/xteve/config/:/config:rw \
|
||||
-v /mnt/user/appdata/xteve/guide2go/:/guide2go:rw \
|
||||
-v /mnt/user/appdata/xteve/playlists/:/playlists:rw \
|
||||
-v /tmp/xteve/:/tmp/xteve:rw \
|
||||
taylorbourne/xteve_lazystream
|
||||
|
||||
44
sample.env
Normal file
44
sample.env
Normal file
@@ -0,0 +1,44 @@
|
||||
##### Config
|
||||
|
||||
### Set as same user on your machine, run id -u & id -g to get your user / group id
|
||||
PUID=1000
|
||||
PGID=1000
|
||||
|
||||
### Xteve Config
|
||||
XTEVE_PORT=34400
|
||||
use_xTeveAPI=yes
|
||||
|
||||
### Lazystream Config
|
||||
use_lazystream=yes
|
||||
include_nhl=yes
|
||||
include_mlb=yes
|
||||
|
||||
### Guide2go Config
|
||||
use_guide2go=no
|
||||
|
||||
## List of created lineup json files in /guide2go
|
||||
# Exmaple with 3 lineups
|
||||
JsonList="CBLguide.json SATguide.json SATSport.json"
|
||||
|
||||
## to create your lineups run the below command and follow the on-screen instructions
|
||||
# docker exec -it <yourdockername> guide2go -configure /guide2go/<lineupnamehere>.json
|
||||
|
||||
### Emby
|
||||
# Only necessary if xTeVe API is active
|
||||
# API Key, https://github.com/MediaBrowser/Emby/wiki/Api-Key-Authentication
|
||||
# embyID, settings, scroll down click API, Scheduled Task Service, GET /ScheduledTasks, Try, Execute, look for "Refresh Guide" ID, sample here 9492d30c70f7f1bec3757c9d0a4feb45
|
||||
use_embyAPI=no
|
||||
embyIP=
|
||||
embyPORT=8096
|
||||
embyApiKey=
|
||||
embyID=
|
||||
|
||||
### Plex
|
||||
# Only necessary if xTeVe API is active
|
||||
# Finding your Plex token: https://support.plex.tv/articles/204059436-finding-an-authentication-token-x-plex-token/
|
||||
# Finding Plex ID: http://YOUR_IP_HERE:32400/?X-Plex-Token=YOUR_TOKEN_HERE , look for "tv.plex.providers.epg.xmltv: " and enter the value blow.
|
||||
use_plexAPI=no
|
||||
plexIP=
|
||||
plexPORT=32400
|
||||
plexToken=
|
||||
plexID=
|
||||
@@ -1,4 +0,0 @@
|
||||
xteve -port=34400 -config=/root/.xteve/test/
|
||||
### 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/"
|
||||
Reference in New Issue
Block a user