Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] play = Addon.plugin_queries['play'] if play: Addon.log('play ' + play) video_url = crack.resolve_movie(play) xbmcplugin.setResolvedUrl(Addon.plugin_handle, True, xbmcgui.ListItem(path=video_url)) if mode == 'main': Addon.log(mode) for cat in crack.get_categories(): Addon.add_directory({ 'mode': 'list_genres', 'cat': cat['id'] }, cat['name']) if mode == 'list_genres': Addon.log('%s: cat=%s' % (mode, Addon.plugin_queries['cat'])) for genre in crack.get_genres(): Addon.add_directory( { 'mode': 'list_types', 'cat': Addon.plugin_queries['cat'], 'genre': genre['id'], }, genre['name']) if mode == 'list_types': Addon.log('%s: cat=%s genre=%s' % (mode, Addon.plugin_queries['cat'], Addon.plugin_queries.get('genre', '')))
def pbs_stream(url): html = Addon.getRequest('%s?format=json' % url) a = json.loads(html) url = a.get('url') if url is not None: Addon.play(url) ##End PBS## if mode == 'main': Addon.add_directory({'mode': 'abc_main'}, 'ABC', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'abc_main.png'))) Addon.add_directory({'mode': 'cooking_main'}, 'Cooking Channel', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'cooking_main.png'))) Addon.add_directory({'mode': 'diy_main'}, 'DIY Network', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'diy_main.png'))) Addon.add_directory({'mode': 'food_main'}, 'Food Network', img=xbmc.translatePath(
Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] play = Addon.plugin_queries['play'] if play: Addon.log('play: %s mode: %s' % (play, mode)) if mode == 'vid': stream_url = freedo.resolve_video(play) else: stream_url = freedo.resolve_stream(play) Addon.resolve_url(stream_url) elif mode == 'main': Addon.log(mode) Addon.add_directory({'mode': 'list_live'}, Addon.get_string(30000)) Addon.add_directory({'mode': 'list_vid'}, Addon.get_string(30001)) elif mode == 'list_live': pn = int(Addon.plugin_queries.get('pn', 1)) Addon.log('mode: %s page: %d' % (mode, pn)) channels = freedo.get_channels(pn) for c in channels['channels']: Addon.add_video_item(c['id'], {'title': c['name']}, img=c['img']) if channels['more']: Addon.add_directory({'mode': 'list_live', 'pn': pn + 1}, Addon.get_string(30003)) elif mode == 'list_vid': pn = int(Addon.plugin_queries.get('pn', 1)) Addon.log('mode: %s page: %d' % (mode, pn))
else: Addon.set_setting('subscription', 'false') if premium == False: Addon.set_setting('quality_type', '0') quality_type = int(Addon.get_setting('quality_type')) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] Addon.log('plugin url: ' + Addon.plugin_url) Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] Addon.log(mode) if mode == 'main': Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'favorites'}, Addon.get_string(30006)) Addon.add_directory({'mode': 'tvguide'}, Addon.get_string(30007)) if premium == True: Addon.add_directory({'mode': 'scheduled'}, Addon.get_string(30111)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': channels = ustv.get_channels(quality_type, stream_type, True) if channels: for c in channels: rURL = "plugin://plugin.video.ustvnow/?name=" + c[ 'name'] + "&mode=play" logo = xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', c['name'] + '.png'))
tag = Addon.plugin_queries.get('tag', '') search = Addon.plugin_queries.get('search', '') mytag = Addon.plugin_queries.get('mytag', '') page = int(Addon.plugin_queries.get('page', 1)) if sort: if sort == EightTracks.SORT_LIKED: result = et.liked_mixes(page) else: result = et.mixes(sort, tag, search, page) mixes = result['mixes'] for mix in mixes: name = '%s by %s (%s)' % (mix['name'], mix['user']['login'], mix['tag_list_cache']) Addon.add_directory({'play': mix['id'], 'mix_name': mix['name'], 'img': mix['cover_urls']['max200'], 'user': mix['user']['login']}, name, mix['cover_urls']['max200'], folder=False) if result['next_page']: Addon.add_directory({'mode': 'mixes', 'sort': sort, 'tag': tag, 'search': search, 'page': result['next_page']}, Addon.get_string(30015)) else: if search: kb = xbmc.Keyboard('', Addon.get_string(30017), False) kb.doModal() if (kb.isConfirmed()): search = kb.getText() if mytag: kb = xbmc.Keyboard('', Addon.get_string(30018), False) kb.doModal() if (kb.isConfirmed()):
Addon.log('plugin url: ' + Addon.plugin_url) Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) addon_logo = xbmc.translatePath(os.path.join(plugin_path, 'tvaddons_logo.png')) mode = Addon.plugin_queries['mode'] if mode == 'main': try: playlists = source.Source().build_main() if playlists: for c in sorted(playlists): Addon.add_directory({'mode': c['title']}, c['title'], img=c['img']) if len(Addon.get_setting('notify')) > 0: Addon.set_setting('notify', str(int(Addon.get_setting('notify')) + 1)) else: Addon.set_setting('notify', "1") if int(Addon.get_setting('notify')) == 1: xbmcgui.Dialog().notification(addonname + ' is provided by:', 'www.tvaddons.co', addon_logo, 5000, False) elif int(Addon.get_setting('notify')) == 9: Addon.set_setting('notify', "0") except: dlg.ok(Addon.get_string(5000), Addon.get_string(8000)) exit()
player.setChannels(channels) w = tvWindow.tvWindow("tvWindow.xml", addon.getAddonInfo('path'), "Default") w.setPlayer(player) w.doModal() del w player = ustvnowPlayer.ustvnowPlayer() player.setChannels(channels) w = tvWindow.tvWindow("tvWindow.xml", addon.getAddonInfo('path'), "Default") w.setPlayer(player) w.doModal() Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': Addon.log(mode) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] channels = ustv.get_channels(int(Addon.get_setting('quality')), stream_type) if controlMode == 'true': for c in channels: Addon.add_directory({ 'mode': 'play', 'name': c['name'] }, '%s - %s' % (c['name'], c['now']['title']))
if videos == None: videos = [] mode = 'error' for v in videos: title = '%s: %s' % (v['artist'], v['title']) Addon.add_video_item(str(v['asset_id']), { 'title': title, 'plot': v['description'], 'duration': str(v['duration']), }, img=v['thumb']) Addon.add_directory( { 'mode': 'browse', 'genre': genre, 'page': page + 1, 'sort': sort }, Addon.get_string(30026)) else: Addon.add_directory({ 'mode': 'browse', 'genre': 'all' }, Addon.get_string(30028)) genres = muzu.get_genres() for g in genres: Addon.add_directory({ 'mode': 'browse', 'genre': g['id'] }, g['name'])
Addon.log(mode) if settingMode == 'true': stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] channels = ustv.get_channels(int(Addon.get_setting('quality')), stream_type) player = ustvnowPlayer.ustvnowPlayer() player.setChannels(channels) w = tvWindow.tvWindow("tvWindow.xml",addon.getAddonInfo('path'),"Default") w.setPlayer(player) w.doModal() Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': Addon.log(mode) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] channels = ustv.get_channels(int(Addon.get_setting('quality')), stream_type) if controlMode == 'true': for c in channels: Addon.add_directory({'mode': 'play', 'name': c['name']}, '%s - %s' % (c['name'], c['now']['title'])) else:
Addon.resolve_url(stream_url) elif mode == 'music' or mode == 'video': sort = Addon.plugin_queries.get('sort', False) page = int(Addon.plugin_queries.get('page', 1)) aux = Addon.plugin_queries.get('aux', '') if sort == 'search': kb = xbmc.Keyboard('', Addon.get_string(30027), False) kb.doModal() if (kb.isConfirmed()): query = kb.getText() if query: display_songs(mode, rr.search(mode, query)) elif sort: if (sort == 'most_played' or sort == 'least_played') and not aux: Addon.add_directory({'mode': mode, 'sort': sort, 'aux': 'week'}, Addon.get_string(30010)) Addon.add_directory({'mode': mode, 'sort': sort, 'aux': 'month'}, Addon.get_string(30011)) Addon.add_directory({'mode': mode, 'sort': sort, 'aux': 'year'}, Addon.get_string(30012)) Addon.add_directory({'mode': mode, 'sort': sort, 'aux': 'all'}, Addon.get_string(30013)) else: if aux == 'all': aux = '' for x in range(4): songs = rr.list_media(mode, sort, page, aux) display_songs(mode, songs) page += 1 Addon.add_directory({'mode': mode, 'sort': sort, 'page': page, 'aux': aux},
page = int(Addon.plugin_queries.get('page', 1)) if sort: if sort == EightTracks.SORT_LIKED: result = et.liked_mixes(page) else: result = et.mixes(sort, tag, search, page) mixes = result['mixes'] for mix in mixes: name = '%s by %s (%s)' % (mix['name'], mix['user']['login'], mix['tag_list_cache']) Addon.add_directory( { 'play': mix['id'], 'mix_name': mix['name'], 'img': mix['cover_urls']['max200'], 'user': mix['user']['login'] }, name, mix['cover_urls']['max200'], folder=False) if result['next_page']: Addon.add_directory( { 'mode': 'mixes', 'sort': sort, 'tag': tag, 'search': search, 'page': result['next_page'] }, Addon.get_string(30015)) else: if search:
Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] play = Addon.plugin_queries['play'] if play: Addon.log('play ' + play) video_url = crack.resolve_movie(play) xbmcplugin.setResolvedUrl(Addon.plugin_handle, True, xbmcgui.ListItem(path=video_url)) if mode == 'main': Addon.log(mode) for cat in crack.get_categories(): Addon.add_directory({'mode': 'list_genres', 'cat': cat['id']}, cat['name']) if mode == 'list_genres': Addon.log('%s: cat=%s' % (mode, Addon.plugin_queries['cat'])) for genre in crack.get_genres(): Addon.add_directory({'mode': 'list_types', 'cat': Addon.plugin_queries['cat'], 'genre': genre['id'], }, genre['name']) if mode == 'list_types': Addon.log('%s: cat=%s genre=%s' % (mode, Addon.plugin_queries['cat'], Addon.plugin_queries.get('genre', ''))) types = crack.get_types(Addon.plugin_queries['cat']) if not types:
sort = dialog.select(Addon.get_string(30029), [Addon.get_string(30030), Addon.get_string(30031), Addon.get_string(30032)]) sort = ['views', 'recent', 'alpha'][sort] videos = muzu.browse_videos(genre, sort, page, res_per_page) for v in videos: title = '%s: %s' % (v['artist'], v['title']) Addon.add_video_item(str(v['asset_id']), {'title': title, 'plot': v['description'], 'duration': str(v['duration']), }, img=v['thumb']) Addon.add_directory({'mode': 'browse', 'genre': genre, 'page': page + 1, 'sort': sort}, Addon.get_string(30026)) else: Addon.add_directory({'mode': 'browse', 'genre': 'all'}, Addon.get_string(30028)) genres = muzu.get_genres() for g in genres: Addon.add_directory({'mode': 'browse', 'genre': g['id']}, g['name']) elif mode == 'jukebox': Addon.log(mode) mode = 'main' dialog = xbmcgui.Dialog() jam = dialog.select(Addon.get_string(30038), [Addon.get_string(30039), Addon.get_string(30040)]) kb = xbmc.Keyboard('', Addon.get_string(30035), False)
Addon.plugin_handle = int(sys.argv[1]) Addon.plugin_queries = Addon.parse_query(sys.argv[2][1:]) email = Addon.get_setting('email') password = Addon.get_setting('password') ustv = ustvnow.Ustvnow(email, password) Addon.log('plugin url: ' + Addon.plugin_url) Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] if mode == 'main': Addon.log(mode) Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': Addon.log(mode) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] channels = ustv.get_channels(int(Addon.get_setting('quality')), stream_type) for c in channels: Addon.add_video_item( c['url'], { 'title': '%s - %s' % (c['name'], c['now']['title']), 'plot': c['now']['plot'] }, img=c['icon'])
Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] play = Addon.plugin_queries['play'] if play: Addon.log('play: %s mode: %s' % (play, mode)) if mode == 'vid': stream_url = freedo.resolve_video(play) else: stream_url = freedo.resolve_stream(play) Addon.resolve_url(stream_url) elif mode == 'main': Addon.log(mode) Addon.add_directory({'mode': 'list_live'}, Addon.get_string(30000)) Addon.add_directory({'mode': 'list_vid'}, Addon.get_string(30001)) elif mode == 'list_live': pn = int(Addon.plugin_queries.get('pn', 1)) Addon.log('mode: %s page: %d' % (mode, pn)) channels = freedo.get_channels(pn) for c in channels['channels']: Addon.add_video_item(c['id'], {'title': c['name']}, img=c['img']) if channels['more']: Addon.add_directory({ 'mode': 'list_live', 'pn': pn + 1 }, Addon.get_string(30003)) elif mode == 'list_vid':
def pbs_stream(url): html = Addon.getRequest('%s?format=json' % url) a = json.loads(html) url = a.get('url') if url is not None: Addon.play(url) ##End PBS## if mode == 'main': Addon.add_directory({'mode': 'cooking_main'}, 'Cooking Channel', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'cooking_main.png'))) Addon.add_directory({'mode': 'diy_main'}, 'DIY Network', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'diy_main.png'))) Addon.add_directory({'mode': 'food_main'}, 'Food Network', img=xbmc.translatePath( os.path.join(plugin_path, 'resources', 'images', 'food_main.png'))) Addon.add_directory({'mode': 'freeform_main'}, 'Freeform', img=xbmc.translatePath(
elif mode == 'music' or mode == 'video': sort = Addon.plugin_queries.get('sort', False) page = int(Addon.plugin_queries.get('page', 1)) aux = Addon.plugin_queries.get('aux', '') if sort == 'search': kb = xbmc.Keyboard('', Addon.get_string(30027), False) kb.doModal() if (kb.isConfirmed()): query = kb.getText() if query: display_songs(mode, rr.search(mode, query)) elif sort: if (sort == 'most_played' or sort == 'least_played') and not aux: Addon.add_directory({ 'mode': mode, 'sort': sort, 'aux': 'week' }, Addon.get_string(30010)) Addon.add_directory({ 'mode': mode, 'sort': sort, 'aux': 'month' }, Addon.get_string(30011)) Addon.add_directory({ 'mode': mode, 'sort': sort, 'aux': 'year' }, Addon.get_string(30012)) Addon.add_directory({ 'mode': mode, 'sort': sort,
Addon.plugin_handle = int(sys.argv[1]) Addon.plugin_queries = Addon.parse_query(sys.argv[2][1:]) email = Addon.get_setting('email') password = Addon.get_setting('password') ustv = ustvnow.Ustvnow(email, password) Addon.log('plugin url: ' + Addon.plugin_url) Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] if mode == 'main': Addon.log(mode) Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': Addon.log(mode) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] channels = ustv.get_channels(int(Addon.get_setting('quality')), stream_type) for c in channels: Addon.add_video_item(c['url'], {'title': '%s - %s' % (c['name'], c['now']['title']), 'plot': c['now']['plot']}, img=c['icon']) elif mode == 'recordings':
videos = muzu.browse_videos(genre, sort, page, res_per_page, Addon.get_setting('country')) if videos == None: videos = [] mode = 'error' for v in videos: title = '%s: %s' % (v['artist'], v['title']) Addon.add_video_item(str(v['asset_id']), {'title': title, 'plot': v['description'], 'duration': str(v['duration']), }, img=v['thumb']) Addon.add_directory({'mode': 'browse', 'genre': genre, 'page': page + 1, 'sort': sort}, Addon.get_string(30026)) else: Addon.add_directory({'mode': 'browse', 'genre': 'all'}, Addon.get_string(30028)) genres = muzu.get_genres() for g in genres: Addon.add_directory({'mode': 'browse', 'genre': g['id']}, g['name']) elif mode == 'jukebox': Addon.log(mode) #dialog = xbmcgui.Dialog() #jam = dialog.select(Addon.get_string(30038), [Addon.get_string(30039), Addon.get_string(30040)]) kb = xbmc.Keyboard('', Addon.get_string(30035), False) kb.doModal() if (kb.isConfirmed()):
else: Addon.set_setting('subscription', 'false') if premium == False: Addon.set_setting('quality_type', '0') quality_type = int(Addon.get_setting('quality_type')) stream_type = ['rtmp', 'rtsp'][int(Addon.get_setting('stream_type'))] Addon.log('plugin url: ' + Addon.plugin_url) Addon.log('plugin queries: ' + str(Addon.plugin_queries)) Addon.log('plugin handle: ' + str(Addon.plugin_handle)) mode = Addon.plugin_queries['mode'] Addon.log(mode) if mode == 'main': Addon.add_directory({'mode': 'live'}, Addon.get_string(30001)) Addon.add_directory({'mode': 'favorites'}, Addon.get_string(30006)) Addon.add_directory({'mode': 'tvguide'}, Addon.get_string(30007)) if premium == True: Addon.add_directory({'mode': 'scheduled'}, Addon.get_string(30111)) Addon.add_directory({'mode': 'recordings'}, Addon.get_string(30002)) elif mode == 'live': channels = ustv.get_channels(quality_type, stream_type, True) if channels: for c in channels: rURL = "plugin://plugin.video.ustvnow/?name="+c['name']+"&mode=play" logo = xbmc.translatePath(os.path.join(plugin_path, 'resources', 'images', c['name']+'.png')) item = xbmcgui.ListItem(path=rURL) name = c["name"]; sname = c["sname"];
Addon.get_string(30032) ]) sort = ['views', 'recent', 'alpha'][sort] videos = muzu.browse_videos(genre, sort, page, res_per_page) for v in videos: title = '%s: %s' % (v['artist'], v['title']) Addon.add_video_item(str(v['asset_id']), { 'title': title, 'plot': v['description'], 'duration': str(v['duration']), }, img=v['thumb']) Addon.add_directory( { 'mode': 'browse', 'genre': genre, 'page': page + 1, 'sort': sort }, Addon.get_string(30026)) else: Addon.add_directory({ 'mode': 'browse', 'genre': 'all' }, Addon.get_string(30028)) genres = muzu.get_genres() for g in genres: Addon.add_directory({ 'mode': 'browse', 'genre': g['id'] }, g['name'])