Nuo Plausible statistikos kaupimo, šis tekstas buvo skaitytas 893 kartą/us.
Šio teksto atnaujinimo ar rašymo laikas jau yra senesnis, kaip vieneri metai, tad per šį laiką galėjo mano nuomonė pasikeisti bei aptartos konfigūracijos.
Tekstas buvo atnaujintas: 2020-10-13.
Vienintelis didelis minusas jog Ott-Play negalima paduoti savo programų gidą.
Ten padaryta taip jog jie paima kelis guide.xml failus ir tada sugeneruoja json failą su EPG turiniu.
Tad todėl grotuvas nesugeba nuskaityti xml failo kuris nurodomas m3u faile.
Reikia grotuvą apgauti ir pateikti jam turinį iš savo IP.
Kaip generuoti EPG failą jau rašiau.
Ir apie patį grotuvą rašiau.
Noriu padėkoti @nuboxas jog nepatingėjo sudėlioti viską.
Pasiruošimas
Reikia turėti Nginx ar Apache ir PHP, Mysql bei DNS nukreipimo.
Pradžioje nuo DNS pradedame.
Turint Mikrotik galima sužaisti su DNS static nustatymais.
Arba jeigu turime Raspberry Pi ar tai kažką panašaus, realiai tinka ir VPS, pasikuriame Dnsmasq (dažniausiai būna jau sistemoje).
Jeigu neturime tai:
apt-get install dnsmasq
Atsidarome /etc/dnsmasq.conf
Geriausiai pagal no-resolv ieškoti ir pridėti.
no-resolv Google's nameservers, for example server=1.1.1.1 server=1.0.0.1
Bei susirandame tame pačiame faile conf-dir ir nuimti reikia # ir tada atrodo taip:
Include another lot of configuration options. conf-file=/etc/dnsmasq.more.conf conf-dir=/etc/dnsmasq.d
Tada sukuriame /etc/dnsmasq.d aplankalą ir jame sukuriame failą pavadinimu:
epg.ott-play.com
Ir tada tame faile reikia įrašyti:
address=/epg.ott-play.com/88.88.88.88
Vietoje paryškinto adreso pakeičiame į savo vidinį.
Nepamirštame perkrauti serviso:
systemctl restart dnsmasq
Ir galime daryti ping į adresą ir turime matyti savo IP adresą.
Jeigu nematome savo IP adreso, skaitome ką rašo dnsmasq ir ar išvis sugebėjo startuoti.
systemctl status dnsmasq
Jeigu naudojame Pi-Hole tai reiktų susirasti tutorial dėl hosts pakeitimo jog einant į epg.ott-play.com kreiptų į norimą IP adresą. Nenaudoju dabar Pi-Hole, tai nepamenu kur kas yra.
Tada:
cd /var/www/html/
Realiai ten kur bus talpinami reikalingi failai.
Tame aplankale kur laikysim failus:
git clone https://github.com/nuboxas/epg
Tame aplankale būnant kur jau yra failai reikia:
composer update
Jeigu systemoje nėra composer:
curl -sS https://getcomposer.org/installer -o composer-setup.php
Tada reikės Nginx tokio konfigo kuris eina į:
/etc/nginx/sites-available/default
server { listen 80; server_name epg.ott-play.com; root /var/www/html/epg/public; index index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~ .php$ { try_files $uri /index.php =404; fastcgi_pass unix:/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.ht { deny all; } }
Svarbiausios paryškintos vietos.
Root tai reikia nurodyti kur parsisiuntėm failus ir būtinai į public aplankalą.
Tada reikia fastcgi pasitikrint, kiek pastebiu kartais skiriasi, jog reikia ir versiją prirašyti, kitaip sakant reikia jog PHP veiktų. Pagal savo distribucijos versiją galime susirasti Googlei instrukcijas.
Pasitikriname Nginx konfigūraciją:
nginx -t
Jeigu viskas gerai:
nginx -s reload
Toliau reikės MariaDB:
apt install mariadb-server
Tada įrašius:
mysql_secure_installation
Sukuriame root kodą.
Tada prisijungiame prie DB:
mysql -uroot -p
Suvedame kodą kurį sukūrėm.
Tada kuriame lentą:
CREATE DATABASE db_pavadinimas;
Pasitikriname ar sukurta:
SHOW DATABASES;
Jeigu viskas gerai:
FLUSH PRIVILEGES;
Ir galop įvedame:
quit
Realiai viską galima padaryti ir su Phpmyadmin.
Svarbiausias dalykas jog veiktų MariaDB ir būtų database sukurta.
Persivadiname pagrindiniame aplankale .env.example į .env ir atsidarom ir pasikeičiam:
APP_NAME=EPG APP_ENV=local APP_KEY= APP_DEBUG=true APP_URL=http://epg.ott-play.com LOG_CHANNEL=stack DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=db_pavadinimas DB_USERNAME=root DB_PASSWORD=sukurtas_db_kodas REDIS_ENABLED=false REDIS_HOST=127.0.0.1 REDIS_PORT=6379
Atsidarius: http://epg.ott-play.com turime matyti:
Reiškiasi viskas gerai
Reikia dar jog sukurtų DB lentas tai tiesiog pagrindiniame aplankale:
php artisan migrate
Dabar apie lentas.
Providers nusirodo XML failas.
Jog supildyti tai tiesiog atsidarius providers:
Supildome maždaug taip:
Spaudžiame Go ir turi įmesti į sąrašą.
Jeigu meta klaidą tai apačioje nustatome:
Aktyvuoti EPG paėmimą:
/usr/bin/php /var/www/html/epg/artisan epg:download
Tada visą info sukels į EPG lentą.
Tikriname ir apie veikimo principą
Sutvarkius DNS ir pakeitus jog TV kreiptųsi į turimą DNS.
Galima mėginti perkrauti Ott-Play grotuvą ir laukti rezultato ar sugebės paimti .json failus.
Kompiuteryje irgi galima pasitikrinti ar veikia, tiesiog atsidarome per Chrome:
http://epg.ott-play.com/pr2pr/epg/lrt.json
Jeigu atidaromas json failas bet jis tuščias tada nesutampa pavadinimai kurie yra guide.xml faile.
Pavadinimai yra gaudomi pagal channel id, pas mane dabar rodo id gan kvailą nes kol kas tvarkausi guide.xml failą.
Bet manau principą pagavai.
Turi sutapti pavadinimai m3u faile ir ties channel id tada žino iš kur paimti failą ir kreipdamasis grotuvas gaus atsakymą iš tavo IP kuriame sėdi jau tavo EPG failas ir bus sugeneruotas json kurį ir naudoja Ott-Play.
Pagal tai koks tiekėjas pajungtas, tokį ir turime įrašyti kanalų sąraše:
url-tvg="pr2pr"
Galime naudoti ir kelis vienu metu:
url-tvg="pr2pr;tiekejas2"
Taip pat veikia:
http://epg.ott-play.com/providers
Kuris nurodys kokie EPG dabar veikia:
Pabaigai, palieku adresus iš kurių pareina Ott-Play
Teko su Wireshark patikrint tinklą tai gauname tokius adresus:
http://ott-play.com/samsung/tizen/stb.js
http://ott-play.com/m3u/prov.js
http://ott-play.com/stbPlayer/stbPlayer.js
Bei pagrindinis dėl EPG į kurį kreipiasi per POST:
http://epg.ott-play.com/m3u/gelist.php