• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 15 Hlas(ů) - 2.4 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Oneplay
Ve verzi 2.2.8 je přidaná do kontextového menu doplňku i PVR/IPTV SC možnost spuštění živého streamu od začátku.
 
Citovat
Zdravím ve verzi 2.2.8 nejedou v živém vysílání některé programy (např. čt2, Oneplay sporty atd.). Přes PVR/IPTV SC jdou.
 
Citovat
@pepemaj: nějak se mi tam dostal kód z experimentů  8 Opraveno ve verzi 2.2.9
 
Citovat
@waladir: Moc děkuji za doplnění této funkce!! Funguje přesně, jak jsem si představoval.
 
Citovat
Ve verzi 2.3.0 je opravená chybka při vynucení resetu profilu, pokud vybraný profil neexistuje.
 
Citovat
ahoj, mozna zas probehla nejaka zmena na backendu, od vcerejsiho vecera mi oneplay hlasi problem pri vyberu uctu, sitova chyba nebo timeout. Skusil sem backoutovat na starsi verze ale chovaji se stejne. Nez se pustim do premazani muzete mi nekdo s vic ucty pls potvrdit ze to bezi ? dik
 
Citovat
@ruya: můžeš mi poslat log (viz. první příspěvěk)? Nejsi sám a díky jedné dobré duši snad vím, jak to opravit, ale log by se hodil.

Pokud máte někdo stejný problém, zkuste verzi z přílohy. Mně se to bohužel neděje, takže neověřím, že úprava opravdu pomohla.


Přiložené soubory
.zip   plugin.video.oneplay.zip (Velikost: 110,3 KB / Stažení: 11)
 
Citovat
diky, prilozil jsem do sz, nasimuloval jsem to pres nastaveni doplnku, nova session. Pak jsem jeste znova skusil jit do nastaveni, ucty, nacteni uctu a to mi oproti vcerejsku uz proslo tzn znovu se to chytlo a chyby uz nehlasi. Bohuzel ten zip uz tedy ted nevyzkousim.
 
Citovat
chyba je jiná, než jsem čekal, ale úprava by měla pomoct. Ještě počkám, jestli to někdo zvládne otestovat, že to skutečně pomůže, než to dám do repozitáře.
 
Citovat
# PŘED (ř. 164): našel novou verzi, ale stejně vrátil chybu if getattr(error, 'code', None) == 404: self.get_version() # najde v1.14 return {'result': {'status': 'Error', 'message': 'Síťová chyba nebo timeout'}} # ← chyba!
# PO: po detekci volání zopakuje s novou verzí if getattr(error, 'code', None) == 404 and _retry: self.get_version() return self.call_api(api, data, ..., _retry=False) # ← zopakuje → funguje
api.py

current_user = step.get('currentUser') or {}
na 

current_user = step.get('currentUser') or step.get('user', {}).get('loggedUser', {})
session.py
tato oprava pomohla  
 
Citovat
@ladan69: změna verze je jeden problém a chyba spadne je jednou (asi by šlo přidat i automatické zopakování, jak naznačuješ). Podstatné bude ta druhá úprava, kde předpokládám došlo k úpravě API. Ale je to zjevně nějak selektivní, protože mně to funguje se starou verzí a data jsou vrácená v původním formátu. Večer to projdu, dořeším ještě jednu věc a dám to do repozitáře.
 
Citovat
Ve verzi 2.3.1 jsem přidal obecnou úpravu volání API (díky @directcz) a také ošetřil změny v API (díky @ladan69: ). Mělo by to řešit problémy s přihlášením po přechodu na novější verzi.
 
Citovat
Máš tam preklep. V session.py máš:
current_user = step.get('currentUser') or set.get('user', {}).get('loggedUser', {})

a má byť

current_user = step.get('currentUser') or step.get('user', {}).get('loggedUser', {})
 
Citovat
@skyjet: díky za upozornění. Jsem slepej a i když ještě kontroluju rozdíly, tak jsem to přehlídnul  11 Opravené ve verzi 2.3.2.
 
Citovat
@waladir: dvě chyby, které jsem našel ve 2.3.2 (stejné i ve 2.2.6):

1) Vyhledávání vrací jen TV kanály. page_search_display v categories.py bere jen první karusel záložky „Vše“ (block['layout']['blocks'][0]['carousels'][0]), což je řádek „TV kanály“. Filmy, pořady, TV program a sport z dalších karuselů se zahodí. Např. „Love Cast“ vrátí jen FILMBOX+ love&crime a Prima LOVE HD, přitom API pošle 135 výsledků.

Oprava: projít všechny karusely a vyhodit duplicity (stejný pořad je v několika řádcích):
 
Kód:
if block['schema'] == 'TabBlock' and 'layout' in block and 'blocks' in block['layout']:
                seen = set()
                for layout_block in block['layout']['blocks']:
                    for carousel in layout_block.get('carousels', []):
                        tiles = []
                        for tile in carousel.get('tiles', []):
                            key = json.dumps(tile.get('action', {}).get('params', {}).get('payload'), sort_keys=True)
                            if key not in seen:
                                seen.add(key)
                                tiles.append(tile)
                        parse_tiles(None, dict(carousel, tiles=tiles), 1)

2) Podcasty (contentType podcast) hlásí „Neznámý contentType“. Mají ale sezóny a díly stejně jako pořad, takže stačí v parse_tiles místo if contentType in ['show']: dát if contentType in ['show', 'podcast']:. Pak jde podcast otevřít i z Mého seznamu a díly se přehrají.

Ještě drobnost: po přepnutí profilu v Nastavení Oneplay – Profily se změna projeví až po vypršení session (token je vázaný na profil, platí 4 h), takže Můj seznam ukazuje dál starý profil. Pomohlo by v set_active_profile zavolat Session().remove_session().

Díky za doplněk!
 
Citovat
@matata: díky, změny jsem zakomponoval do verze 2.3.3. Ve vyhledávání jsem akorát navíc odfiltroval karusel Brzo v TV, ať to není zbytečně zaplevelené něčím, co nejde přehrát.
 
Citovat
  


Přejít na fórum:


Prochází: 9 host(ů)