def guida_tv_canale_giorno(self, cid, dt): res = self.med.OttieniGuidaTV( cid, dt, dt + 86399999) # 86399999 is one day minus 1 ms kodiutils.setContent('videos') if 'listings' in res: for el in res['listings']: program = el['program'] if 'program' in el else {} if (kodiutils.getSettingAsBool('fullguide') or ('mediasetprogram$hasVod' in program and program['mediasetprogram$hasVod'])): infos = _gather_info(el) arts = _gather_art(el) s_time = staticutils.get_date_from_timestamp( el['startTime']).strftime("%H:%M") e_time = staticutils.get_date_from_timestamp( el['endTime']).strftime("%H:%M") s = "{s}-{e} - {t}".format( s=s_time, e=e_time, t=el['mediasetlisting$epgTitle'].encode('utf8')) kodiutils.addListItem(s, { 'mode': 'video', 'guid': program['guid'] }, videoInfo=infos, arts=arts, properties={ 'ResumeTime': '0.0', 'TotalTime': '0.0', 'StartOffset': '0.0' }, isFolder=False) kodiutils.endScript()
def addLive(): kodiutils.setContent('videos') chs = getChannels() if chs: for ch in chs: kodiutils.addListItem(ch['title'], params={"mode": "video", "id": ch['id'] }, thumb=ch['logoUrl'], videoInfo={'mediatype': 'video'}, isFolder=False) kodiutils.endScript()
def elenco_programmi_list(progId): kodiutils.setContent('videos') for lettera in mediaset.get_prog_root(): if lettera['index'] == progId: for programma in lettera["program"]: kodiutils.addListItem(programma["label"],{'mode':'elenco_programmi','prog_url':programma["url"]}, thumb=programma['thumbnail']) kodiutils.endScript()
def addProgramsItems(): kodiutils.setContent('videos') progs = getPrograms() if progs: for p in progs: p['mediatype']='video' kodiutils.addListItem(p['title'], params={"id": p['id'], "mode": "program" }, videoInfo=p, thumb=p['image']) kodiutils.endScript()
def elenco_kids_tutti(self, inonda, page=None): kodiutils.setContent('tvshows') els, hasmore = self.med.OttieniKids(inonda, pageels=self.iperpage, page=page) if els: self.__analizza_elenco(els) if hasmore: kodiutils.addListItem(kodiutils.LANGUAGE(32130), {'mode': 'kids', 'all': 'false' if inonda else 'true', 'page': page + 1 if page else 2}) kodiutils.endScript()
def elenco_tutto_lettera(self, inonda, lettera, page=None): kodiutils.setContent('videos') els, hasmore = self.med.OttieniTuttoLettera( lettera, inonda, pageels=self.iperpage, page=page) if els: self.__analizza_elenco(els) if hasmore: kodiutils.addListItem(kodiutils.LANGUAGE(32130), {'mode': 'tutto', 'all': 'false' if inonda else 'true', 'letter': lettera, 'page': page + 1 if page else 2}) kodiutils.endScript()
def guida_tv_root(self): kodiutils.setContent('videos') els = self.med.OttieniCanaliLive(sort='ShortTitle', range=self.__imposta_range()) for prog in els: infos = _gather_info(prog) arts = _gather_art(prog) if 'tuningInstruction' in prog: if prog['tuningInstruction'] and not prog['mediasetstation$eventBased']: kodiutils.addListItem(prog["title"], {'mode': 'guida_tv', 'id': prog['callSign'], 'week': staticutils.get_timestamp_midnight()}, videoInfo=infos, arts=arts) kodiutils.endScript()
def cerca(): kodiutils.setContent('videos') kb = kodiutils.getKeyboard() kb.setHeading("Cerca un programma") kb.doModal() if kb.isConfirmed(): text = kb.getText() text = pulisci_cerca(text) for lettera in mediaset.get_prog_root(): for programma in lettera["program"]: if (programma["mc"].find(text) > 0): kodiutils.addListItem(programma["label"],{'mode':'elenco_programmi','prog_url':programma["url"]}, thumb=programma['thumbnail']) kodiutils.endScript()
def canali_live_root(self): kodiutils.setContent('videos') now = staticutils.get_timestamp() els = self.med.OttieniProgrammiLive() # (sort='title') chans = {} for chan in els: if 'listings' in chan and chan['listings']: for prog in chan['listings']: if prog['startTime'] <= now <= prog['endTime']: guid = chan['guid'] chans[guid] = {'title': '{} - {}'.format(chan['title'], kodiutils.py2_encode( prog["mediasetlisting$epgTitle"])), 'infos': _gather_info(prog), 'arts': _gather_art(prog), 'restartAllowed': prog['mediasetlisting$restartAllowed']} els = self.med.OttieniCanaliLive(sort='ShortTitle') for prog in els: if (prog['callSign'] in chans and 'tuningInstruction' in prog and prog['tuningInstruction'] and not prog['mediasetstation$eventBased']): chn = chans[prog['callSign']] if chn['arts'] == {}: chn['arts'] = _gather_art(prog) if chn['restartAllowed']: if kodiutils.getSettingAsBool('splitlive'): kodiutils.addListItem(chn['title'], {'mode': 'live', 'guid': prog['callSign']}, videoInfo=chn['infos'], arts=chn['arts']) continue vid = self.__ottieni_vid_restart(prog['callSign']) if vid: kodiutils.addListItem(chn['title'], {'mode': 'video', 'pid': vid}, videoInfo=chn['infos'], arts=chn['arts'], isFolder=False) continue data = {'mode': 'live'} vdata = prog['tuningInstruction']['urn:theplatform:tv:location:any'] for v in vdata: if v['format'] == 'application/x-mpegURL': data['id'] = v['releasePids'][0] else: data['mid'] = v['releasePids'][0] kodiutils.addListItem(chn['title'], data, videoInfo=chn['infos'], arts=chn['arts'], isFolder=False) kodiutils.endScript()
def addVideosItems(id='', type=1, page=1): kodiutils.setContent('videos') res = [] loadAll = kodiutils.getSettingAsBool('loadAll') elPerPage = kodiutils.getSetting('elPerPage') if type==1: res = getProgramVideos(id, page, elPerPage, loadAll) elif type==2: res = getDateVideos(id) elif type==3: res = getCategoryVideos(id, elPerPage) elif type==4: res = getPicksVideos(elPerPage) if res: for ep in res: ep['mediatype']='video' kodiutils.addListItem(ep['title'], params={"id": ep['id'], "mode": "video" }, thumb=ep['image'], videoInfo=ep, isFolder=False) if type == 1 and (not loadAll) and len(getProgramVideos(id, int(page)+1, elPerPage))>0: kodiutils.addListItem(kodiutils.LANGUAGE(32011), params={"id": id, "mode": "program", "page": int(page) + 1}) kodiutils.endScript()
def puntate_epList(progTipo): kodiutils.setContent('videos') for ep in mediaset.get_global_epList(0): if (progTipo in ep["tipo"]): stamp_ep(ep) kodiutils.endScript()
def __imposta_tipo_media(self, prog): kodiutils.setContent(_gather_media_type(prog) + 's')
def sportmediaset_epList(progsportTipo): kodiutils.setContent('videos') for ep in mediaset.get_global_epList(2): if (progsportTipo in ep["url"]): stamp_ep(ep) kodiutils.endScript()
def elenco_puntate(id): kodiutils.setContent('videos') for pun in raiyoyo.get_url_punList(id): stamp_ep(pun) kodiutils.endScript()
def elenco_programmi_epList(groupUrl): kodiutils.setContent('videos') for ep in mediaset.get_prog_epList(groupUrl): stamp_ep(ep) kodiutils.endScript()
def piuvisti_epList(rangeVisti): kodiutils.setContent('videos') for ep in mediaset.get_global_epList(1,rangeVisti): stamp_ep(ep) kodiutils.endScript()
def canali_live_root(): kodiutils.setContent('videos') for ch in mediaset.get_canali_live(): stamp_live(ch) kodiutils.endScript()
def elenco_programmi_epList(groupUrl,groupTitle): kodiutils.setContent('videos') for ep in mediaset.get_prog_epList(groupUrl,groupTitle): stamp_ep(ep) kodiutils.endScript()
def piuvisti_epList(rangeVisti): kodiutils.setContent('videos') for ep in mediaset.get_global_epList(1, rangeVisti): stamp_ep(ep) kodiutils.endScript()
def __imposta_tipo_media(self, prog): kodiutils.log('__analizza_elenco mediatype: {}'.format( _gather_media_type(prog))) if self.detect_media_type: kodiutils.setContent(_gather_media_type(prog) + 's')