XBMC-Kodi.cz
Playlist O2TV.CZ addon - verze od Pavuucek - Verze k tisku

+- XBMC-Kodi.cz (https://www.xbmc-kodi.cz)
+-- Fórum: KODI - Doplňky (https://www.xbmc-kodi.cz/forum-kodi-doplnky)
+--- Fórum: Live TV & PVR (https://www.xbmc-kodi.cz/forum-live-tv-pvr)
+--- Téma: Playlist O2TV.CZ addon - verze od Pavuucek (/prispevek-playlist-o2tv-cz-addon-verze-od-pavuucek)

Stran: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29


RE: Playlist O2TV.CZ addon - JiRo - 20.10.2018

Takže bych si to dovolil shrnout:
  • primární problém je třeba hledat na straně O2TV, kde používají pro různé služby O2TV různé autentizační postupy navázané primárně na hlavní user/password daného účtu,
  • není to tedy tak, že by se změnil proces autentizace pouze došlo k přidání/změně jednoho postupu, který se pravděpodobně nepovedl a nabořil jim systém uživatelských účtů,
  • proto to zpočátku nefungovalo vůbec, jak se to snažili opravit, tak se něco povedlo, něco ne, někomu to chodilo, někomu ne, záviselo to, kromě jiného, na mixu služeb, které kdo používal,
  • co bylo ještě horší, že se to všechno měnilo, a stále ještě mění, v čase. Co jste jeden den zkusili a nefungovalo, to začalo fungovat druhý den a naopak
  • dnes je tedy možné použít minimálně dva postupy autentizace, jeden původní, který je dosud používán v addon i skript, který ale nemusí fungovat všem, a jeden nový, který popsal @cromac *) v http://www.xbmc-kodi.cz/prispevek-playlist-o2tv-cz-addon?pid=53045#pid53045. Komu všemu a jek dlouho bude fungovat, je samozřejmě otázka, v tomto případě záleží hlavně na O2TV.
*) Tady je na místě poděkovat @cromac za jeho tvrdošíjnost. Přiznám se, že jsme byl k němu zpočátku skeptický, ale ukázalo se, že měl namířeno správným směrem. Ostatně, on i původní addon vznikl odchycením komunikace aplikace na Androidu. Good job!

Teď pár slov k jednotlivým addons/script, jejich funkci a vztahu k autentizaci - tedy video addon video.O2TVGO, service addon playlist.o2tv a skript playlist.o2tv. Myslím, že je vhodné se o tom krátce zmínit, protože to dost věcí vysvětlí:

Addon video.O2TVGO:
  • po spuštění bez parametrů, se autentizuje pomocí user/password, pokud je úspěšná, získá acces token, který si uloží a z O2TV si stáhne si seznam kanálů zaplacené služby i s parametry (stream, logo, ...)
  • pokud se autentizace nezdaří, skončí s chybou
  • je-li autentizace úspěšná, zobrazí seznam kanálů v GUI Kodi, při výběru kanálu předá parametry příslušného streamu playeru Kodi
  • po spuštění s parametrem, kterým je identifikace kanálu, si stáhne z O2TV parametry kanálu, pro autentizaci použije uložený acces token, tzn. že v tomto případě již neprobíhá autentizace přes user/password
Service addon playlist.O2TV:
  • po spuštění nedělá nic, čeká na čas stažení playlistu podle nastavení
  • přijde-li čas ke stažení, autentizuje se pomocí user/password, acces token si nikam neukládá a pokud je autentizace úspěšná, stáhne a uloží playlist
  • pokud se autentizace nezdaří, nahlásí se chyba a čeká se na čas dalšího stažení
Script playlist.O2TV:
  • po spuštění se autentizuje pomocí user/password, acces token si nikam neukládá a pokud je autentizace úspěšná, stáhne a uloží playlist
  • pokud se autentizace nezdaří, skončí s chybou
Protože já už čas na to, abych se addon i skriptu věnoval moc nemám a navíc nejsem programátor, je myslím správná chvíle, aby se toho ujal někdo jiný. Již se k tomu hlásil @pavuucek.

Mělo by se začít tím, že se addon i script uloží to na github a zapracuje to, co prozkoumal @cromac. Protože čas běží, lidé mají zaplaceno a neměli bychom je nechat dlouho čekat, takže by to mělo být hned. Tak co, kdo se toho ujme?

@helperkodi No, na tebe jsme tu opravdu čekali. 1 Takové rady jsou opravdu skvělé. To jsme opravdu netušili, že "Získání playlistu je opravdu složitější a chce to více parametru." Co si asi myslíš, že jsme dělali doposud a co se při tom odposlechu snaží lidé zjistit? Příště se zamysli, než něco takového vyplodíš!


RE: Playlist O2TV.CZ addon - reneone - 20.10.2018

cromac,JiRo,smekam,jste borci


RE: Playlist O2TV.CZ addon - pavuucek - 20.10.2018

@cromac: dobře ty. DOBŘE TY!!! Takhle by to _mohlo_ fungovat. K https://ottmediator.o2tv.cz:4443/ottmediator-war/login jsem se taky dopracoval, jenže bohužel se stále pohybujeme na úrovni zmatků na straně O2 a jedinýho co jsem se od tý stránky dočkal byla chyba 401 :-( . Já jsem na tom pořád tak, že přihlášení přes androidí appku funguje jen přes mobilní síť (JEN přihlášení) a přes prohlížeč ani win10 appku nefunguje vůbec nic, takže mám prozatím smůlu.
A jak to tak vypadá, tak si budu muset přestat sedět na vlastních úpravách a pustit repozitář s doplňkem na github, ať už mi to funguje, nebo ne...


RE: Playlist O2TV.CZ addon - JiRo - 20.10.2018

Tak než si tvorbu pluginu převezmou následovníci, přidal jsem do prvního příspěvku Playlist O2TV addon verzi 0.0.4 o kterou se zasloužil @croma, kterému tímto ještě jednou děkuji.  Měla by vyřešit problémy s autentizací.

Prosím o zpětnou vazbu. Já patřím k těm, který, funguje i předchozí verze, takže jistotu, že vše bude všem fungovat 100% nemám.

@pavuucek Pusť to na github, rád pomůžu. 1


RE: Playlist O2TV.CZ addon - kapacitos78 - 20.10.2018

JiRo: funguje to! Díky oběma :)


RE: Playlist O2TV.CZ addon - JackOneil - 20.10.2018

Potvrzuju ze jak tento addon tak i ostatni ktere jsou k o2tv tak funguji. Dobra prace !


RE: Playlist O2TV.CZ addon - predator.1 - 20.10.2018

Musíte počkat na potvrzení inženýra helperkodi


RE: Playlist O2TV.CZ addon - ros - 20.10.2018

@JiRo
Hoši,hoši - děkuji. Streamy aplikací Playlist O2TV  staženy, mohu přehrávat v externích přehrávačích. Pokud jde o vlastní addon O2TV GO , tak ten stále nefunguje - neplatné přihlášení.


RE: Playlist O2TV.CZ addon - stava - 20.10.2018

(20.10.2018, 11:08)cromac Napsal(a): Ahoj,

tak po změně hesla se mi mobilní aplikace rozjela. Bohužel addon byl stále nefunkční. Tak sem si tu komunikaci na mobilu sniffnul a autentizační proces je teď jiný. Udělal sem změny ve funkci "refresh_access_token", která je v o2tvgo.py a doplněk je funkční. 

Tímto bych poprosil někoho kdo se v pythonu opravdu vyzná zda by to nepřepsal do nějaké rozumné podoby a dal na github, aby se vydal update.

Změny ve funkci aplikujete na vlastní nebezpečí. Žádný support z mé strany k tomu nebude poskytován. Nerozumím tomu natolik abych si na to troufnul.

Díky


Cromac


Kód:
    def refresh_access_token(self):
        _COMMON_HEADERS0 = {
            'X-Nangu-Device-Name': self.device_id,
            'X-Nangu-App-Version': 'Android',
            'User-Agent': 'okhttp/3.10.0',
            'Accept-Encoding': 'gzip',
            'Connection': 'Keep-Alive',
            'Content-Type': 'application/x-www-form-urlencoded',
            }
        headers0 = _COMMON_HEADERS0
        data0 = {'username': self.username,
                 'password': self.password}
        req0 = \
            requests.post('https://ottmediator.o2tv.cz:4443/ottmediator-war/login'
                          , data=data0, headers=headers0, verify=False)
        j = req0.json()
        service_id = str(j['services'][0]['service_id'])
        remote_access_token = str(j['remote_access_token'])

        datax = {'service_id': service_id,
                 'remote_access_token': remote_access_token}
        reqx = \
            requests.post('https://ottmediator.o2tv.cz:4443/ottmediator-war/loginChoiceService'
                          , data=datax, headers=headers0, verify=False)

        _COMMON_HEADERS1 = \
            {'Content-Type': 'application/x-www-form-urlencoded',
             'Connection': 'Keep-Alive'}
        headers1 = _COMMON_HEADERS1
        data1 = {
            'client_id': 'tef-web-portal-etnetera',
            'client_secret': '2b16ac9984cd60dd0154f779ef200679',
            'platform_id': '231a7d6678d00c65f6f3b2aaa699a0d0',
            'language': 'cs',
            'grant_type': 'remote_access_token',
            'remote_access_token': remote_access_token,
            'authority': 'tef-sso',
            'isp_id': '1',
            }
        req1 = requests.post('https://oauth.o2tv.cz/oauth/token',
                             data=data1, headers=headers1, verify=False)

        j = req1.json()
        self.access_token = j['access_token']
        self.expires_in = j['expires_in']
        return self.access_token

Diky mocccc, vyborna prace 2 
po uprave o2tvgo.py v doplnku O2tv Go, opet funkcni


RE: Playlist O2TV.CZ addon - veleslavin - 20.10.2018

@JiRo,cromac a všichni ostatni díky,smekám.vše funkcní...


RE: Playlist O2TV.CZ addon - Martor - 20.10.2018

Moc všechny zdravím, především pak cromaca, smekám, skvělá práce, moc Ti děkuji!
Touto cestou poztvrzuji, že cromacův update přihlašování funguje PARÁDNĚ!

Zdraví,
Martin

P.S. JiRo omlouvám se, SZ jsem si zpanul a díky za podporu ;)


RE: Playlist O2TV.CZ addon - jim_h - 21.10.2018

Ahoj, mohl by mi někdo prosím poradit, jak znovu rozchodit O2TV? Mám stejný problém, jako ostatní, že mi nedávno přestal doplněk chodit. Zkusil jsem tedy po pročtení diskuze nainstalovat Playlist 0.0.4, ale nějak bez úspěchu. Po instalaci mi mi to vyhodí hlášku "Neúspěšné nastavení služby". A jestli chci nastavit parametry služby, dám ano. Ale po vyplnění přihlašovacích údajů a potvrzení mi tato hláška vyskočí znova. A tahle to jde pořád. Neměl někdo podobný problém?

Tak už jsem to rozběhal, pomohlo přeinstalování celého pluginu verzi plugin.video.o2tvgo-1.1.8.a.zip. Díky všem, kdo to tak rychle vyřešil.


RE: Playlist O2TV.CZ addon - fischio - 21.10.2018

(21.10.2018, 10:43)jim_h Napsal(a): Ahoj, mohl by mi někdo prosím poradit, jak znovu rozchodit O2TV?  Mám stejný problém, jako ostatní, že mi nedávno přestal doplněk chodit. Zkusil jsem tedy po pročtení diskuze nainstalovat Playlist 0.0.4, ale nějak bez úspěchu. Po instalaci mi mi to vyhodí hlášku "Neúspěšné nastavení služby". A jestli chci nastavit parametry služby, dám ano. Ale po vyplnění přihlašovacích údajů a potvrzení mi tato hláška vyskočí znova. A tahle to jde pořád. Neměl někdo podobný problém?

Tak už jsem to rozběhal, pomohlo přeinstalování celého pluginu verzi  plugin.video.o2tvgo-1.1.8.a.zip. Díky všem, kdo to tak rychle vyřešil.



RE: Playlist O2TV.CZ addon - JiRo - 21.10.2018

Při včerejší překotné práci jsem zapomněl ošetřit stav neplatné autentizace. Tedy stav, kdy je zadáno špatné nebo neexistující jméno a heslo. Zapomněl, ačkoliv mě na to @croma upozorňoval. Omlouvám se za to.  Provedl jsme rychlou opravu toho a nyní je v prvním příspěvku Playlist O2TV addon k dispozici nová verze 0.0.5. Její stažení není bezpodmínečně nutné, ale doporučuji ho. Pokrývá definovaným způsobem i ty stavy, kdy dojde ke změně na straně autentizačního procesu O2TV a autentizace neproběhne z těchto důvodů.

@pavuucek & @cromac Doplnil jsem do modulu o2tvgo základní ošetření výjimky při neplatné autentizaci. Bohužel současný stav je takový, že O2TV nevrací v případě neúspěchu v jakékoliv fázi autentizace žádnou odpověď. Takže vše je pokryto jednou společnou výjimkou, která se z modulu vrací přes AuthenticationError. Nevím, zda je to ze strany O2TV finání řešení. Pokud O2TV doplní návratové kódy, bylo by vhodné to vrátit minimálně na stejnou úroveň, jako to bylo v předchozí verzi autentizace. Tam se to při chybě při autentizaci odlišovalo návratem přes AuthenticationError nebo přes obecnou Exception s parametrem chybového kódu.


RE: Playlist O2TV.CZ addon - LubHalka - 21.10.2018

Ahoj, chtěl bych poprosit o pomoc s instalací a spuštěním tohoto addonu. Jsem uplný nováček s kodi. nějak jsem prostudoval forum, ale moc mi to nepomohlo. Addon samotný se mi nainstalovat podařilo, i přihlásit se a ukázavo mi to, že se kanály stahují.  Ale nezobrazují se mi v nabídce kodi. Díky za rady, budu moc vděčný za jakoukoliv pomoc. 


Díky už jsem to vyřešil. Měl jsem špatně nastavenou cestu k m3u8.


RE: Playlist O2TV.CZ addon - Billy-sk - 22.10.2018

Tu chybu z Androidu (mam verziu 7) uz teda opravovat nebudete?

OSError: (1, 'Operation not permitted', '/storage/emulated/0/Android/data/org.xbmc.kodi/files/.kodi/userdata/addon_data/service.playlist.o2tv/streamer.sh')

Pravdepodobne nema pravo zapisovat niekde, ci?


RE: Playlist O2TV.CZ addon - Konf - 23.10.2018

Dobrá práce pánové, Díky!!!


RE: Playlist O2TV.CZ addon - pavuucek - 24.10.2018

Jelikož mě to už taky skoro všechno nějak funguje, takže myslím že můžu v klidu vypustit do širého světa co jsem zatim spáchal:
Račte navštívit https://github.com/Pavuucek/O2TVKodi a užívati dle libosti.
případný nedostatky, co jsem zatim neobjevil budu nejspíš řešit až mě pustěji z hospitalu...


RE: Playlist O2TV.CZ addon - tomino2 - 24.10.2018

Asi blbá otázka, ale kam se stahuje ten playlist ze service addonu? Nemohu ho na kartě nikde najít (NOOBS, Libreelec Raspberry), ani nevidím žádnou možnost nastavení cesty...Díky za nakopnutí.


RE: Playlist O2TV.CZ addon - pavuucek - 24.10.2018

@tomino2: pravděpodpbně v /storage/.kodi/userdata/addon_data/service.playlist.o2tv. když se na malinu připojíš přes síť (smb) tak bys měl adresář userdata normálně vidět.