nightflyer73 / plugin.video.raitv

Kodi plugin for RAI
GNU General Public License v3.0
48 stars 44 forks source link

Risolvi "Programmi on demand" vuoto #49

Closed maxbambi closed 5 years ago

Gythion commented 5 years ago

Il pulsante "Cerca" sulla cartella non trova niente

maxbambi commented 5 years ago

@Gythion

Il pulsante "Cerca" sulla cartella non trova niente

La correzione che ho proposto risolveva un altro problema! A parte tutto, a cosa ti riferisci? alla voce 'Cerca' all'interno di Programmi on Demand? Perché a me sembra funzionare...

Gythion commented 5 years ago

Su Windows funziona, su Android no

maxbambi commented 5 years ago

Io uso kodi con ubuntu e non ho attualmente un dispositivo android con kodi installato.... la parte di codice che effettua la ricerca è questa:

    def search_ondemand_programmes():
        kb = xbmc.Keyboard()
        kb.setHeading("Cerca un programma")
        kb.doModal()
        if kb.isConfirmed():
            name = kb.getText().decode('utf8')
            xbmc.log("Searching for programme: " + name)
            raiplay = RaiPlay()
            dir = raiplay.getProgrammeList(raiplay.AzTvShowPath)
            for letter in dir:
                for item in dir[letter]:
                    if item["name"].lower().find(name) != -1:
                         liStyle = xbmcgui.ListItem(item["name"], thumbnailImage=raiplay.getThumbnailUrl(item["images"]["landscape"]))
                         addDirectoryItem({"mode": "ondemand", "path_id": item["PathID"], "sub_type": "PLR programma Page"}, liStyle)
             xbmcplugin.addSortMethod(handle, xbmcplugin.SORT_METHOD_LABEL)
             xbmcplugin.endOfDirectory(handle=handle, succeeded=True)

cioè in pratica viene memorizzata tutta la lista dei programmi, lettera per lettera, e successivamente vengono visualizzati solo quelli che verificano la condizione item["name"].lower().find(name) != -1

La ricerca avviene con il nome programma reso minuscolo, ma non viene effettuata la stessa trasformazione anche alla chiave di ricerca: pertanto cercare con lettere maiuscole non porta a nessun risultato! (sarebbe da correggere)

Ci sarebbe da capire cosa falllisce nella versione android:

energywave commented 5 years ago

La butto lì: potrebbe essere magari che la tastiera Android modifichi la lettera iniziale mettendola maiuscola? Stando al codice questo porterebbe al risultato lamentato. Ho fatto una prova con il mio Samsung S8 con tastiera Samsung ma la lettera rimane minuscola. Potrebbe essere che tastiere diverse si comportino diversamente. Ad ogni modo forse conviene fare il .lower() anche del testo immesso e non se ne parla più ;)

Gythion commented 5 years ago

Potrebbe essere tutto, ma adesso stà funzionando. Max, perchè non diventi tu Master del Plugin!?

maxbambi commented 5 years ago

Io devo ringraziare @nightflyer73 perché è lui che si è cercato le informazioni per creare questo plugin e altri simili... Io mi sono studiato questo codice per prenderne spunto nel creare l'equivalente in e2iplayer per enigma2. Ho visto fra le fork che quella di @DeTosc è stata aggiornata di recente con l'adeguamento anche a python 3 e ha incluso subito anche il mio suggerimento... dunque io proporrei la sua come quella su cui fare i prossimi aggiornamenti, se @nightflyer73 non continuerà lo sviluppo...

Gythion commented 5 years ago

Sì, ma ho notato che non si collega più da tempo...Altra curiosità, dove si trova l'aggiornamento tuo sul sito di RaiPlay?

maxbambi commented 5 years ago

Altra curiosità, dove si trova l'aggiornamento tuo sul sito di RaiPlay?

Scusami, ma non ho capito a cosa ti riferisci?

Gythion commented 5 years ago

Beh, è semplice, la modifica del file che hai realizzato, come faccio a trovarla sul sito di RaiPlay, con il tasto F12?

cttynul commented 5 years ago

La versione scritta per renderla compatibile con Python 3 l'avevo scritta io e sto aspettando che il mantainer del repository accetti, eventualmente, la pull request

@maxbambi ho inserito il tuo fix all'interno del mio fork di Rai on Demand, risolvendo anche il probelma della ricerca su Android e rendendo il codice compatibile anche con Python 3 (il decode sulle stringhe è deprecato, alla luce della nuova gestione delle stringhe nella nuova versione).

Sono disposto a tenere l'addon aggiornato e fixare eventuali problemi a tempo perso, in caso vogliate far presente un bug o contribuire potete aprire, rispettivamente, un issue o una pull request sul mio repository.

PS. Qui in mezzo c'è qualcuno che mi ha inviato una mail riguardo lo sviluppo dell'addon?

Gythion commented 5 years ago

Sì, probabilmente la mail te l'ho mandata io; cmq, ribadisco il concetto, chiedo a @maxbambi e @cttynul di diventare master, in quanto @nightflyer73 sembra un pò disperso...