XBMC-Kodi.cz

Úplná verze: Připojení CZ/SK poskytovatelů OTT IPTV k TVHeadendu
Prohlížíte si holou variantu vašeho obsahu. Prohlédněte si plnou verzi s příslušným formátováním.
Stran: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
: diky za odpověď tohle mam v playlist.sh : data=/storage/.kodi/userdata/addon_data/playlist.o2tv/playlist.sh to by mohlo bejt dobře cache mam cache=
Edit: ta cesta je jenom takhle : /storage/.kodi/userdata/addon_data/playlist.o2tv/  bez toho playlist.sh
Trochu si mi rozšířil obzory,díky.
: Dobre to neni, ma tam byt cesta k adresari (mas to tam i napsane: # Absolutní cesta k adresáři služby ve tvaru /.../).
Takze to zmen na: data=/storage/.kodi/userdata/addon_data/playlist.o2tv/
Edit: Zkontroluj si jestli mas v tom adresari: /storage/.kodi/userdata/addon_data/playlist.o2tv/ soubor: access.id (generuje ho login.sh), pokud ne zkontroluj si cestu v data= i v login.sh
: ano to uz jsem všechno předělal playlist se mi vygeneroval ale je prázdnej tak teď nevím co dal...

Kód:
TVHSERVER:~/.kodi/userdata/addon_data/playlist.o2tv # ./playlist.sh
Get subscription...
Get channels list...
ERROR: No channels purchased
Tak už vše ok diky za spolupráci. Jdu dodělat stromek a pak řízky.
Nainstaloval jsem si skript playlist.o2tv-0.7.zip dle https://www.xbmc-kodi.cz/prispevek-prehl...9#pid67399
V Tvheadend vidím muxy, ale výsledek scanu je "NEÚSPĚŠNÝ", můžete prosím poradit v čem je problém (playlist se mi vygeneroval, access.id mám také)?

V logu stream.sh mám prázdný výsledek STREAM u každého kanálu.

Zde je ukázka mého playlistu:


Kód:
#EXTM3U
#EXTINF:-1 tvh-epg="0" tvg-logo="https://cnt.o2tv.cz/contentserver/contents/19859586/categories/img/sizes/640x640/canvas/640x640/19859586.jpg",Nick Jr.
pipe:///home/osmc/o2tv/streamer.sh Nick%20Jr. nickjr.
#EXTINF:-1 tvh-epg="0" tvg-logo="https://cnt.o2tv.cz/contentserver/contents/1160655/categories/img/sizes/640x640/canvas/640x640/1160655.png",ČT1 HD
pipe:///home/osmc/o2tv/streamer.sh %C4%8CT1%20HD ct1hd
Problém byl v přehozených parametrech ve skriptech playlist.o2tv-0.7.zip

provedl jsem tuto změnu 


Kód:
       device_id=$(echo ${access_id} | cut -d' ' -f1)
       access_token=$(echo ${access_id} | cut -d' ' -f2)
       subscription=$(echo ${access_id} | cut -d' ' -f3)

A dále v Tvheadend  jsem v Síti nastavil max. počet vstupních streamů na 1, protože když jsem nechal 0, tak se spustili všechny naráz a nějak se to nestíhalo zpracovat.
Abych přispěl svou troškou do mlýna, vyplodil jsem Kodi addon který slouží jako "wrapper" pro O2TV skripty od . Skripty jsou přímo součástí addonu, addon zároveň umožňuje základní nastavení a zavolání login.sh a playlist.sh z GUI. Instalace skriptů a nastavení je tak o něco přívětivější pro uživatele, kteří si úplně netykají s ssh atp.

: pointa addonu je taková, že údaje z nastavení addonu se vyexportují do souboru settings.sh, který je potřeba includnout v Tvých skriptech někde pod tím úvodním natavením. Aktuálně to mám takto:
Kód:
ADDONDIR=$1
if [ -n "${ADDONDIR}" -a -d "${ADDONDIR}" -a -f "${ADDONDIR}/settings.sh" ]; then
   source ${ADDONDIR}/settings.sh
fi
Vše by mělo být z pohledu Tvých skriptů transparentní, pokud soubor settings.sh neexistuje (v adresáři, který addon předá sriptu jako parametr), vychází se z nastavení přímo ve skriptech. Je to OK? Jakmile to pořádně vyzkouším, hodím to na Github.
Jo, to je bezpochyby správný postup.

Škoda, já jsem také udělal pro *ELEC instalace univerzální addon pro OTT služby s podobnými funkcemi, používám nástroje *ELEC pro přenos parametrů z nastavení addon (což je asi v podstatě totéž, co dělá ten tvůj settings.sh) a periodické spouštění scriptů (je-li třeba). Rozhodoval jsme se, zda to mám zveřejnit, ale pokud ses do toho dal taky, tak se o to už nemusím snažit. Ono se mi to docela hodí...
Informace ke scriptu O2TV

Vytvořil jsem novou verzi scriptu, tentokrát už konečně se zvláštním souborem parametrů. Mělo by to zjednodušit instalaci nových verzí.

Bohužel jsme udělal chybu a ve snaze k "dokonalosti" jsme script login.sh doplnil možností autentizace pomocí refresh tokenu, ale nedomyslel jsem některé komplikace. A tak jsme nově vydanou verzi 0.8 za pár hodin nahradil verzí 0.9. Všem, kteří si stáhli 0.8, se omlouvám.

Možnost stažení verze 0.9 naleznete zde.
Kodi addon umožňující instalaci O2TV skriptů od a základní nastavení parametrů v GUI Kodi je ke stažení na GitHubu . Sripty v0.9 od jsou přímo součástí addonu, jedíná změna oproti jejich původní verzi je nasměrování proměnné DATA do data-adresáře addonu (tam se následně ukládá access token a stažený playlist).

Postup instalace:
  1. stáhnout ZIP soubor s (ideálně  6 ) nejnovější verzí addonu z GitHubu
  2. v Kodi standardně nainstalovat addon ze ZIP, addon je po instalaci přístupný v sekci "Doplňky videí" pod názvem "O2TV client"
  3. v konfiguraci addonu nastavit údaje v sekci "Přihlášení", případně další v sekci "Rozšířená nastavení"
  4. základní konfiguraci uložit pomocí tlačítka "OK" (to je důležité, protože v následujícíh krocích addon přistupuje k uložené konfiguraci)
  5. spustit akci "Přihlásit" v sekci "Akce" (výsledek není zatím nijak validován, ale každopádně by se po dokončení měla v pravém horním rohu obrazovky objevit hláška "O2TV plugin - Přihlásit")
  6. spustit akci "Generovat playlist" v sekci "Akce" (výsledek není zatím nijak validován, ale každopádně by se po dokončení měla v pravém horním rohu obrazovky objevit hláška "O2TV plugin - Generovat playlist")
  7. nastavit TvHeadend (sítě, muxy, služby, programy)
Výše uvedený postup by mělo stačit absolvovat pouze při instalaci, eventuálně při změně nějakých údajů v konfiguraci.

Po eventuální aktualizaci addonu je potřeba spustit akci "Nastavit spustitelné oprávnění" v sekci "Akce" v konfiguraci addonu. Akce nastaví skirptům od spustitelná oprávnění. V tomto případě je to potřeba zejména pro streamer.sh, ale spustitelná oprávnění se nastaví i pro login.sh a playlist.sh.

To-Do:
  1. validace výsledků akce "Přihlásit" a "Generovat playlist" (možná obě akce sloučit do jedné)
  2. použít addon i pro další OTT player skripty
  3. vyhnout se nutnosti uložit konfiguraci v bodě 4)
  4. vyhnout se nutnosti spouštět akci "Nastavit spustitelné oprávnění" po aktualizaci addonu
Pokud někdo tuší, jak by se daly vyřešit  zejm. body 3) a 4) v To-Do listu (existují v Kodi např. nějaké události, na které by se dalo nabindovat?), uvítám jakékoliv info 6 . Nic moc relevantního jsem k tomu nenašel 10
Scripty O2TV

Rád bych tu položil několik otázek, abych získal zpětnou vazbu.
  1. jak se líbí poslední verze (0.9) scriptů pro O2TV a jestli je popis jejich implementace dostatečně jasný a způsob používání zřejmý?
  2. Stačí editace config.json souboru editorem nebo byste chtěli raději nějaký sofistikovanější script, který by vás navedl k zadání jednotlivých parametrů a jednorázovému vytvoření souboru config.json?
  3. Používá někdo addon od (viz předchozí příspěvek) a jaký je obecně názor na to, mít addon který generuje scripty pro Tvheadend?
  4. Všiml jsem si, že od publikace vezoe 0.8 a následně 0.9 si přesto několik uživatelů nainstalovalo i starší verz 0.7. Proč?
  5. Pokud někdo přešel od IPTV Simple Client k Tvheadend, zajímá mě, zda by to udělal, kdyby playlist pro IPTV Simple Clienta fungoval bezchybně?

Tvůj addon jsem si nainstaloval a vyzkoušel. Upřímně řečeno jsme měl trochu jinou představu o řešení. Tohle je tak někde napůl cesty mezi řešení pouze formou scriptu a plnohodnotného addon a la . Já bych spíše preferoval buď jedno nebo druhé a pokud scripty překlápět do addon, tak především proto aby:
  1. se daly jako addon instalovat - to tvoje řešení splňuje bezezbytku,
  2. využily by se funkce nastavení addon pro zadání všech parametrů - to by asi nebyl problém rozšířit.
Jinak systém Kodi addons má support pro provedení akce při ukončení nastavení addon - to by ti mohlo splnit tvé požadavky na událost, na kterou by se dala navázat nějaká akce. Jinak addon typu plugin bych v tomto případě nahradil buď jako addon script a nebo jako addon service.
nainstaloval jsem verzi 0.7 a a to ještě 0.9 nebyla a protože moje znalosti jsou dost slabý tak jsem se ještě neodvážil přejít na 0.9.
Každopádně v nový verzi vidím že se všechny parametry zadávají do config.json. Takže vlastně povýšit verzi by snad neměl být problém. Zkusím o víkendu.
Jinak návody jsou bych řek vyčerpávající ale to že mám dlouhý vedení to bude můj problém.
Jinak díky za tvoji práci i za support.

Posílám tedy zpětnou vazbu a možná pár dotazů.
 
1. Super popis přehledný. Bez problému jsem rozjel jak na CoreElec (ODROID-N2 4GB RAM) tak na Synolgy (DS916+ 8GB RAM). Jen bych do postupu instalace doplnil přesný příkaz spuštění pro skripty login.sh (./login.sh) a playlist.sh (./playlist.sh).
 
Otázky:
1a. config.json
-device_type – má nějaký vliv popis (PC, STB, ...) na kvalitu? A jaký? Zadávám STB.
-resolution – zde SD nebo HD
Píšeš, že při zadání STB a HD je 1920x1080fps50 co nastane pří zadání PC nebo TABLET a HD?
 
1b. Zadávání dalších parametrů do playlistu se dá taky někde nastavit, aby to dělalo automaticky. Editoval jsem pouze config.json a pak spustil scripty.
Je možně někde nastavit kvalitu zvuku 2.0 nebo 5.1.
Dostal jsem pouze toto.
Kód:
#EXTINF:-1 tvh-epg="0",O2TV Tenis HD
pipe:///volume1/tv/o2tv/streamer.sh O2%20Tenis%20HD o2tenishd

 
2. Podle mě stačí editorem. Možná by stálo za úvahu zda do config.json nedoplnit popis jednotlivých parametrů. Na druhou stranu by to nemuselo být tak přehledné jak je teď.
 
3. Já asi ne. Jelikož potřebuji generovat i skripty mimo KODI (Synology).
 
4. Nic.
 
5. Myslím , že hlavním účelem je centrální server TVH a pak klient, který se na něj připojuje vzhledem k tomu, že dnes může být třeba u O2 omezen počet zařízení.
 
Ještě bych měl jednu docela důležitou otázku. Nevím zda přímo na tebe.
Cuká se mi obraz i zvuk a nevím, čím to může být.
Server je buď na zařízení Odroid a Synology. Klienti jsou CoreElec nebo tablet Apple.
 
Při zadávání do TVH jsem postupoval dle tohoto návodu.
https://www.xbmc-kodi.cz/prispevek-zakla...2#pid38882
Jen maly napad na zlepseni. U O2 lze mit pod jednim uctem vice TV sluzeb a dokonce i kazdou s jinou nabidkou. Nejspis to byva v pripade, ze jeden zakaznik ma O2TV na vice fyzckych adresach (pripojkach), alespon takto to mame my.

Pokud ma nekdo pod jednim uctem vice sluzeb, vypada pak services takto:
Kód:
{
        "service_id":"xxx",
        "description": "0000000000 O2 TV M",
        "tvod_purchase_available": true
}, {
        "service_id":"xxx",
        "description": "0000000000 O2 TV L",
        "tvod_purchase_available": true
}, {
        "service_id":"xxx",
        "description": "0000000000 O2 TV M",
        "tvod_purchase_available": true
}

moc se v Shelu a JQ nevyznam, ale pokud by se radka c.72 v souboru login.sh zmenila z:
Kód:
service_id=$(echo ${services} | jq -r '.[].service_id')
na:
Kód:
service_id=$(echo ${services} | jq -r '.[0].service_id')
vybiralo by to alespon prvni service_id, takhle to vybere vsechny oddelene mezerou a tim se pak nedari prihlasit.
Nebo poradi sluzby dat jako paramtr do configu
Zdravím, nejsem si jistý zdali se nejedná o problém pouze na mé straně, nicméně:

rozhodl jsem se upgradovat železo a na novém nastavit řešení v nějaké definitivní podobě (původní řešení bylo poněkud zprasené různým testováním + běží z flashdisku což pro své použití nepovažuji za vhodné. další důvod pro škatulata je o chlup výkonnější CPU "nové" krabičky. Zotac bez úprav disponuje wifi, takže se hodí spíše do ložnice kde není kabel, Dell bez wifi může ležet na kabelu u routeru a zastupovat v této sestavě "server".)
Původní HW Zotac IP42 PLUS, 6GB RAM, bez HDD vše na 16GB Flash
Nový HW - Dell Optiplex 9020, 8GB RAM, 128 GB M.2 SSD

Internetové připojení mám od O2, modem/router Smartbox, O2TV v rámci internetu. Set top box nechci pořizovat z principu třetího ovladače k jedné televizi.

Na "staré" sestavě je použitý skript ve verzi 0.7

Na novém železe jsem zkusil zprovoznit verzi 0.9, v souboru config.json použil své přihlašovací údaje a doplnil název zařízení a device ID z původní konfigurace.

Oba stroje jsou shodně instalovány Libreelec 9.2.0 Kodi 18.5-Leia

Login.sh vrací:
1st authentication method will be used!
wget: server returned error: HTTP/1.1 401 401
WARNING: 1st authentication method not succeeded, 2nd authentication method will be used!
wget: error getting response: Connection reset by peer
ERROR: Bad username and/or password

Co jsem udělal:
Zkusil se přihlásit na O2tv.cz, zkontroloval připojená zařízení

Přesunul všechny soubory skriptu z umístění /storage/.kodi/userdata/televize/ (takto to mám v původním řešení) do /storage/downloads/

vyzkoušel v novém umístění po změně oprávnění na rwxrwxrwx se stejným výsledkem

Nakopírování všech souborů původního řešení do /storage/.kodi/userdata/televize/ po spuštění login.sh stejný výsledek

Spuštění původního železa a test O2TV - funguje

Spuštění login.sh na původním stroji - stejný výsledek jako na novém ERROR: Bad username and/or password, nicméně streamy běží dále.

Instalace doplňku O2TVgo v poslední verzi na nové řešení - tady vyskočila chyba ve které byl vypsaný https://ottmediator.o2tv.cz PORT - a bohužel více jsem nestihl vyčíst, chybu jsem odeslal autorovi aplikace. Log nedokáži dohledat, na to zřejmě moje znalosti linuxu nestačí (nejsou valné)

Stejná chyba se projevuje i na "starém" železe kde doplněk fungoval

Nevím jestli test s doplňky od Pavuucka je k něčemu užitečný
Nevím jestli diagnostika kterou jsem provedl je dostatečná

Mám pocit že došlo k nějaké změně v autorizaci u O2

Za zajímavé považuji, že ačkoliv login.sh vrací chybu, streamy stále fungují.

EDIT: Našel jsem v logu Kodi pravděpodobnou příčinu problému - jedná se tedy o záznam chyby z doplňku O2TVgo
ConnectionError: HTTPSConnectionPool(host='ottmediator.o2tv.cz', port=4443): Max retries exceeded with url: /ottmediator-war/login (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f81595ceb90>: Failed to establish a new connection: [Errno 110] Connection timed out',))

Pokud tomu správně rozumím,  musím počkat než budu moci pokus opakovat protože jsem překročil počet pokusů o přihlášení. Nemažu se třeba bude pro někoho užitečné


EDIT: Nakonec jsem vydumal, že problém neměl žádnou souvislost s LE/Kodi, ale jednalo se o infrastrukturní problém - přidával jsem do sítě Wifi AP/router a opomenul vypnout ipv6 DHCP. Sice jsem si toho hnedle všiml a vypnul DHCP i pro to ipv6, nicméně O2 smartbox se zachoval velice nesmart a pomohlo až jeho resetování do továrního nastavení.
Zajímavé informace, díky za ně. To, že to funguje i přesto, že se nemůžeš přihlásit je v pořádku. Pokud sis všechno překopíroval, tedy i access.id, tak je to možné. Na ten problém s přihlášením se podívám.
[EDIT]
On je obecně problém s tím, že O2TV podporuje historicky několik verzí služeb, s různým systémem přihlášení a já všechno nemohu vyzkoušet a ověřit a to je pak problém napsat scripty tak, aby vyhovovaly všem kombinacím. Navíc mám handicap v tom, že já si platím pouze Sport Pack, u kterého to může být jiné, než o standardních tarifů.

Díky za zpětnou vazbu, pokusím se odpovědět.
 
ad. 1a rozlišení pro ostatní typy zařízení jsou nižší, upřímně, kromě PC jsme to nezkoušel. Až budu mít chvíli, můžu ty varianty ozkoušet a udělat tabulku. Obecně platí, že STB a HD je nejvyšší kvalita, ostatní kombinace mají kvalitu nižší.

ad. 1b. Zadávání dalších parametrů do playlistu - je zatím je možné pouze přidat logo. Až bude EPG, tak ještě přibude možnost přidat odkaz na EPG. Nic dalšího se automaticky do playlistu už přidat nedá.

ad. 2. Komentáře standardní json neumožňuje.
 
ad. Cuká se mi obraz i zvuk... Na to je těžké odpovědět. Těch důvodů může být více. Záleží také, čemu říkáš "cukání". Pokud je to v plynulosti přehrávání (není to tedy "bufferování přehrávače") tak bych spíše hledal problém úrovni nastavení přehrávače klientů Nastavení > Přehrávač > Video, sekce Přehrávání a Zobrazení.
.reklama+1 Díky za informaci. Tohle já prostě nemohu otestovat, protože mám tarif, který nabízí pouze jednu "service". Je jasné, že pokud ti to vrací to, co popisuješ, tak to fungovat nemůže a tvoje úprava je správná.

Otázka je, co s tím. Vybrat první položku je správný krok tak, aby to vůbec a nějak fungovalo (správně jsem to měl udělat už hned, protože to, že to server vrací jako pole [], byť dosud jen s jednou položkou, mě mělo trknout 10). Dám to do další verze. Ale asi to nebude vyhovovat vždy a všem. Dát to jako parametr do configu taky není problém, ale to si musím pořádně rozmyslet. Tohle bych ještě mohl vyzkoušet "odladit" naslepo. Pak se ale ještě nabízí otázka, zda je možné vybrat libovolnou službu z těch nabízených a jak to pak dopadne při generaci playlistu, protože tam se ještě budou muset kontrolovat jednotlivé kanály, zda patří do nabídky a zda jsou zaplacené. A tohle už chce analyzovat na příslušných datech a to jen tak naslepo nedoladím.
Můžeš prosím vyzkoušet novou verzi login. Stačí si stáhnout přiložený zip a rozbalit do příslušného adresáře. Soubor se jmenuje login-0.10.sh, takže se ti ten původní nepřepíše. Spustíš ho jako obvykle, např. ./login-0.10.sh
: Ten nový skript vyzkouším, stejně to teď celé refreshuji protože po problému se sítí nějak netuším v jakém stavu se nacházím, děkuji.
Jinak jak jsem editoval, našel jsem problém v infrastruktuře - nejspíš to bylo něco zaseklého v DNS protože cokoliv co jsem adresoval na IP (dovnitř/ven) fungovalo, ale při použití doménového jména se odpovědi vracely na špatnou IP

Troufám si tvrdit, že ta chyba kterou jsem obdržel definuje problém v síti, alespoň malý poznatek kdyby na to ještě někdo narazil.
Hodně mi s identifikací pomohlo, když jsem si všiml, že se nepřipojí ani Steam klient -  začal jsem hledat problém v infrastruktuře a přestal se vrtat v LE
OK. Tak pak dej vědět.
: Funguje bez problému ještě jednou díky
Stran: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22