def play_source(self, stream_link, args, resume_time=None, params=None): try: self.pre_cache_initiated = False if resume_time is not None: self.offset = float(resume_time) self.params = params if stream_link is None: tools.cancelPlayback() raise Exception self.playing_file = stream_link self.original_action_args = args self.smart_module = smartPlay.SmartPlay(self.original_action_args) args = tools.get_item_information(args) self.args = args if 'showInfo' in args: self.media_type = 'episode' # Workaround for estuary skin to allow episode information to be displayed in Video Top Info args['art']['tvshow.clearlogo'] = args['art'].get( 'clearlogo', '') else: self.media_type = 'movie' self.trakt_id = args['ids']['trakt'] orginalArgs = json.loads(tools.unquote(self.original_action_args)) if 'resume' in orginalArgs: if orginalArgs['resume'] == 'true': self.tryGetBookmark() self.handleBookmark() item = tools.menuItem(path=stream_link) args['info']['FileNameAndPath'] = tools.unquote(stream_link) item.setInfo(type='video', infoLabels=args['info']) item.setArt(args['art']) item.setCast(args['cast']) item.setUniqueIDs(args['ids']) tools.closeBusyDialog() tools.closeAllDialogs() tools.resolvedUrl(syshandle, True, item) self.keepAlive() except: traceback.print_exc() pass
def myFilesPlay(self, args): args = json.loads(args) if args['debrid_provider'] == 'real_debrid': resolved_link = real_debrid.RealDebrid().unrestrict_link( args['link']) elif args['debrid_provider'] == 'premiumize': resolved_link = args['link'] else: raise IncorrectDebridProvider item = tools.menuItem(path=resolved_link) tools.resolvedUrl(syshandle, True, item)
def play_source(self, stream_link, args): try: self.pre_cache_initiated = False if stream_link is None: tools.playList.clear() raise Exception self.args = args if tools.checkOmniConnect(): port = tools.getSetting('omni.port') stream_link = 'http://localhost:%s?BLASTURL=%s' % (port, stream_link) item = tools.menuItem(path=stream_link) if 'episodeInfo' in args: self.media_type = 'episode' self.trakt_id = args['episodeInfo']['ids']['trakt'] item.setArt(args['episodeInfo']['art']) item.setInfo(type='video', infoLabels=args['episodeInfo']['info']) else: self.media_type = 'movie' self.trakt_id = args['ids']['trakt'] item.setArt(args['art']) item.setInfo(type='video', infoLabels=args['info']) if tools.playList.getposition() == 0 and tools.getSetting('smartPlay.traktresume') == 'true'\ and tools.getSetting('trakt.auth') is not '': tools.log('Getting Trakt Resume Point', 'info') self.traktBookmark() tools.resolvedUrl(syshandle, True, item) try: tools.busyDialog.close() except: pass self.keepAlive() except: import traceback traceback.print_exc()
def play_source(self, stream_link, args): try: self.pre_cache_initiated = False if stream_link is None: tools.cancelPlayback() raise Exception self.original_action_args = args args = tools.get_item_information(args) self.args = args item = tools.menuItem(path=stream_link) if 'showInfo' in args: self.media_type = 'episode' self.trakt_id = args['ids']['trakt'] item.setArt(args['art']) item.setUniqueIDs(args['ids']) item.setInfo(type='video', infoLabels=args['info']) else: self.media_type = 'movie' self.trakt_id = args['ids']['trakt'] item.setUniqueIDs(args['ids']) item.setArt(args['art']) item.setInfo(type='video', infoLabels=args['info']) if tools.playList.getposition() == 0 and tools.getSetting('smartPlay.traktresume') == 'true' \ and tools.getSetting('trakt.auth') is not '': tools.log('Getting Trakt Resume Point', 'info') self.traktBookmark() tools.resolvedUrl(syshandle, True, item) self.keepAlive() try: tools.closeBusyDialog() except: pass except: import traceback traceback.print_exc()
def play_item(self, args): resolved_link = self.resolve_link(args) item = tools.menuItem(path=resolved_link) tools.resolvedUrl(syshandle, True, item)