Skip to content

Instantly share code, notes, and snippets.

@benmcnelly
Forked from HansMayer/default.py
Created August 8, 2012 00:50
Show Gist options
  • Select an option

  • Save benmcnelly/3291027 to your computer and use it in GitHub Desktop.

Select an option

Save benmcnelly/3291027 to your computer and use it in GitHub Desktop.

Revisions

  1. @HansMayer HansMayer revised this gist Mar 4, 2012. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -92,7 +92,7 @@ def listVideos(src=0,lang=''):
    newS.append(stream)
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' live=1 '+stream.findtext('advanced').replace('-v','').replace('live=1','')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' live=1 '
    if HAS_UPDATED_LIBRTMP:
    rtmplink += stream.findtext('advanced').replace('-v','').replace('live=1','').replace('-x ',"swfsize=").replace('-w ','swfhash=')
    else:
  2. @HansMayer HansMayer revised this gist Mar 3, 2012. 1 changed file with 5 additions and 0 deletions.
    5 changes: 5 additions & 0 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -10,6 +10,7 @@
    #'http://localhost/links.xml',
    #'file:///home/yourname/list.xml',
    ]
    HAS_UPDATED_LIBRTMP=False

    try:
    from xml.etree import ElementTree
    @@ -92,6 +93,10 @@ def listVideos(src=0,lang=''):
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' live=1 '+stream.findtext('advanced').replace('-v','').replace('live=1','')
    if HAS_UPDATED_LIBRTMP:
    rtmplink += stream.findtext('advanced').replace('-v','').replace('live=1','').replace('-x ',"swfsize=").replace('-w ','swfhash=')
    else:
    rtmplink += stream.findtext('advanced').replace('-v','').replace('live=1','')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
  3. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 16 additions and 11 deletions.
    27 changes: 16 additions & 11 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -5,7 +5,12 @@

    import xbmc, xbmcgui, xbmcplugin, xbmcaddon

    #from xml.etree import ElementTree
    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    #'http://localhost/links.xml',
    #'file:///home/yourname/list.xml',
    ]

    try:
    from xml.etree import ElementTree
    except:
    @@ -16,11 +21,6 @@
    dlg.ok('ElementTree missing', 'Please install the elementree addon.',
    'http://tinyurl.com/xmbc-elementtree')
    sys.exit(0)

    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    #'http://localhost/links.xml',
    ]

    def addFolder(source=None, lang='', totalItems=0):
    if not lang:
    @@ -100,11 +100,16 @@ def listVideos(src=0,lang=''):
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def getURL( url ):
    print 'RTMPGUI --> common :: getURL :: url = '+url
    cj = cookielib.LWPCookieJar()
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    opener.addheaders = [('User-Agent', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2;)')]
    usock=opener.open(url)
    if url[:7] == "file://":
    print 'RTMPGUI --> common :: getURL :: file = '+url[7:]
    usock=open(url[7:],'r')
    else:
    print 'RTMPGUI --> common :: getURL :: url = '+url
    cj = cookielib.LWPCookieJar()
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    opener.addheaders = [('User-Agent', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2;)')]
    usock=opener.open(url)

    response=usock.read()
    usock.close()
    return response
  4. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 1 addition and 5 deletions.
    6 changes: 1 addition & 5 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -91,11 +91,7 @@ def listVideos(src=0,lang=''):
    newS.append(stream)
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    adv=stream.findtext('advanced')
    if adv.find('-v') != -1 or not adv.find('live=1') in [-1,0]:
    adv='live=1 '+adv.replace('-v','')+adv.replace('live=1','')
    rtmplink += ' '+adv
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' live=1 '+stream.findtext('advanced').replace('-v','').replace('live=1','')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
  5. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -93,8 +93,8 @@ def listVideos(src=0,lang=''):
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    adv=stream.findtext('advanced')
    if adv.find('-v') != -1:
    adv='live=1 '+adv.replace('-v','')
    if adv.find('-v') != -1 or not adv.find('live=1') in [-1,0]:
    adv='live=1 '+adv.replace('-v','')+adv.replace('live=1','')
    rtmplink += ' '+adv
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
  6. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 4 additions and 5 deletions.
    9 changes: 4 additions & 5 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -92,11 +92,10 @@ def listVideos(src=0,lang=''):
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    if stream.findtext('advanced'):
    adv=stream.findtext('advanced')
    if adv.find('-v'):
    adv='live=1 '+adv.replace('-v','')
    rtmplink += ' '+adv
    adv=stream.findtext('advanced')
    if adv.find('-v') != -1:
    adv='live=1 '+adv.replace('-v','')
    rtmplink += ' '+adv
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
  7. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -91,7 +91,7 @@ def listVideos(src=0,lang=''):
    newS.append(stream)
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    if stream.findtext('advanced'):
    adv=stream.findtext('advanced')
    if adv.find('-v'):
  8. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 6 additions and 1 deletion.
    7 changes: 6 additions & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -91,7 +91,12 @@ def listVideos(src=0,lang=''):
    newS.append(stream)
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '+stream.findtext('advanced')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '
    if stream.findtext('advanced'):
    adv=stream.findtext('advanced')
    if adv.find('-v'):
    adv='live=1 '+adv.replace('-v','')
    rtmplink += ' '+adv
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
  9. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 16 additions and 13 deletions.
    29 changes: 16 additions & 13 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -22,7 +22,7 @@
    #'http://localhost/links.xml',
    ]

    def addFolder(source=None, lang=''):
    def addFolder(source=None, lang='', totalItems=0):
    if not lang:
    title=BASE[source]
    else:
    @@ -31,7 +31,7 @@ def addFolder(source=None, lang=''):
    u=sys.argv[0]+"?src="+str(source)+"&lang="+lang
    item=xbmcgui.ListItem(title, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": title })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True,totalItems=totalItems)

    def get_params():
    param=[]
    @@ -52,11 +52,11 @@ def get_params():

    def listSources():
    if len(BASE) < 2:
    listVideos()
    listLanguages()
    return

    for source in BASE:
    addFolder(BASE.index(source))
    addFolder(BASE.index(source),totalItems=len(BASE))
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def listLanguages(src=0):
    @@ -66,7 +66,7 @@ def listLanguages(src=0):
    languages = []
    for stream in streams:
    language = stream.findtext('language').strip()
    if not language in languages:
    if not language in languages and language.find('Link Down') == -1:
    languages.append(language)

    languages = list(set(languages))
    @@ -76,24 +76,27 @@ def listLanguages(src=0):
    return

    for lang in languages:
    addFolder(src, lang)
    addFolder(src, lang, totalItems=len(languages))
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )


    def listVideos(src=0,lang=''):
    xml=getURL(BASE[int(src)])
    tree = ElementTree.XML(xml)
    streams = tree.findall('stream')
    newS=[]
    for stream in streams:
    language = stream.findtext('language').strip()
    if language == lang and language.find('Link Down') == -1 :
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '+stream.findtext('advanced')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False)
    newS.append(stream)
    for stream in newS:
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '+stream.findtext('advanced')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False,totalItems=len(newS))
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def getURL( url ):
  10. @HansMayer HansMayer revised this gist Mar 1, 2012. 1 changed file with 11 additions and 2 deletions.
    13 changes: 11 additions & 2 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -6,7 +6,16 @@
    import xbmc, xbmcgui, xbmcplugin, xbmcaddon

    #from xml.etree import ElementTree
    from elementtree import ElementTree
    try:
    from xml.etree import ElementTree
    except:
    try:
    from elementtree import ElementTree
    except:
    dlg = xbmcgui.Dialog()
    dlg.ok('ElementTree missing', 'Please install the elementree addon.',
    'http://tinyurl.com/xmbc-elementtree')
    sys.exit(0)

    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    @@ -79,7 +88,7 @@ def listVideos(src=0,lang=''):
    language = stream.findtext('language').strip()
    if language == lang and language.find('Link Down') == -1 :
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')+' '+stream.findtext('advanced')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
  11. @invalid-email-address Anonymous revised this gist Feb 28, 2012. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -78,7 +78,7 @@ def listVideos(src=0,lang=''):
    for stream in streams:
    language = stream.findtext('language').strip()
    if language == lang and language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    title = stream.findtext('title')
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    item=xbmcgui.ListItem(title, iconImage=logo)
  12. @invalid-email-address Anonymous revised this gist Feb 26, 2012. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -81,7 +81,6 @@ def listVideos(src=0,lang=''):
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    print logo
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
  13. @invalid-email-address Anonymous revised this gist Feb 26, 2012. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -56,7 +56,7 @@ def listLanguages(src=0):
    streams = tree.findall('stream')
    languages = []
    for stream in streams:
    language = stream.findtext('language')
    language = stream.findtext('language').strip()
    if not language in languages:
    languages.append(language)

    @@ -76,7 +76,7 @@ def listVideos(src=0,lang=''):
    tree = ElementTree.XML(xml)
    streams = tree.findall('stream')
    for stream in streams:
    language = stream.findtext('language')
    language = stream.findtext('language').strip()
    if language == lang and language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
  14. @invalid-email-address Anonymous revised this gist Feb 25, 2012. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion default.py
    Original file line number Diff line number Diff line change
    @@ -101,7 +101,7 @@ def getURL( url ):
    #listVideos()
    parms=get_params()

    if "src" in parms and 'lang' in parms:
    if "src" in parms and 'lang' in parms and parms['lang']:
    listVideos(parms['src'], parms['lang'])
    elif 'src' in parms:
    listLanguages(parms['src'])
  15. @invalid-email-address Anonymous revised this gist Feb 25, 2012. 1 changed file with 67 additions and 19 deletions.
    86 changes: 67 additions & 19 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -10,38 +10,82 @@

    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    'http://localhost/italiani.xml',
    #'http://localhost/links.xml',
    ]

    def addFolder(source=None, lang=''):
    if not lang:
    title=BASE[source]
    else:
    title=lang

    u=sys.argv[0]+"?src="+str(source)+"&lang="+lang
    item=xbmcgui.ListItem(title, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": title })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)

    def get_params():
    param=[]
    paramstring=sys.argv[2]
    if len(paramstring)>=2:
    params=sys.argv[2]
    cleanedparams=params.replace('?','')
    if (params[-1]=='/'):
    params=params[0:-2]
    pairsofparams=cleanedparams.split('&')
    param={}
    for i in pairsofparams:
    splitparams={}
    splitparams=i.split('=')
    if (len(splitparams))==2:
    param[splitparams[0]]=splitparams[1]
    return param

    def listSources():
    if len(BASE) < 2:
    listVideos()
    return

    for source in BASE:
    print source
    u=sys.argv[0]+"?src="+str(BASE.index(source))
    item=xbmcgui.ListItem(source, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": source })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)
    addFolder(BASE.index(source))
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def listLanguages(src=0):
    xml=getURL(BASE[int(src)])
    tree = ElementTree.XML(xml)
    streams = tree.findall('stream')
    languages = []
    for stream in streams:
    language = stream.findtext('language')
    if not language in languages:
    languages.append(language)

    languages = list(set(languages))
    languages.sort()
    if len(languages) < 2:
    listVideos(src, languages[0])
    return

    for lang in languages:
    addFolder(src, lang)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    # Root listing
    def listVideos(src=0):

    def listVideos(src=0,lang=''):
    xml=getURL(BASE[int(src)])
    tree = ElementTree.XML(xml)
    streams = tree.findall('stream')
    for stream in streams:
    language = stream.findtext('language')
    if language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    print logo
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False)
    if language == lang and language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    print logo
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def getURL( url ):
    @@ -55,7 +99,11 @@ def getURL( url ):
    return response

    #listVideos()
    if len(sys.argv[2]) >= 6:
    listVideos(sys.argv[2][5:])
    parms=get_params()

    if "src" in parms and 'lang' in parms:
    listVideos(parms['src'], parms['lang'])
    elif 'src' in parms:
    listLanguages(parms['src'])
    else:
    listSources()
  16. @invalid-email-address Anonymous revised this gist Feb 25, 2012. 1 changed file with 6 additions and 4 deletions.
    10 changes: 6 additions & 4 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -10,7 +10,7 @@

    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    #'http://localhost/list.xml',
    'http://localhost/italiani.xml',
    ]

    def listSources():
    @@ -36,7 +36,9 @@ def listVideos(src=0):
    if language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    item=xbmcgui.ListItem(title)
    logo=stream.findtext('logourl', default="DefaultTVShows.png")
    print logo
    item=xbmcgui.ListItem(title, iconImage=logo)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False)
    @@ -54,6 +56,6 @@ def getURL( url ):

    #listVideos()
    if len(sys.argv[2]) >= 6:
    listVideos(sys.argv[2][5:])
    listVideos(sys.argv[2][5:])
    else:
    listSources()
    listSources()
  17. @invalid-email-address Anonymous revised this gist Feb 25, 2012. 1 changed file with 11 additions and 11 deletions.
    22 changes: 11 additions & 11 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -14,17 +14,17 @@
    ]

    def listSources():
    if len(BASE) < 2:
    listVideos()
    return

    for source in BASE:
    print source
    u=sys.argv[0]+"?src="+str(BASE.index(source))
    item=xbmcgui.ListItem(source, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": source })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )
    if len(BASE) < 2:
    listVideos()
    return

    for source in BASE:
    print source
    u=sys.argv[0]+"?src="+str(BASE.index(source))
    item=xbmcgui.ListItem(source, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": source })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    # Root listing
    def listVideos(src=0):
  18. @invalid-email-address Anonymous revised this gist Feb 25, 2012. 1 changed file with 4 additions and 0 deletions.
    4 changes: 4 additions & 0 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -14,6 +14,10 @@
    ]

    def listSources():
    if len(BASE) < 2:
    listVideos()
    return

    for source in BASE:
    print source
    u=sys.argv[0]+"?src="+str(BASE.index(source))
  19. @invalid-email-address Anonymous created this gist Feb 25, 2012.
    55 changes: 55 additions & 0 deletions default.py
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,55 @@
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import urllib, urllib2, cookielib
    import string, os, re, time, datetime, sys

    import xbmc, xbmcgui, xbmcplugin, xbmcaddon

    #from xml.etree import ElementTree
    from elementtree import ElementTree

    BASE = [
    'http://apps.ohlulz.com/rtmpgui/list.xml',
    #'http://localhost/list.xml',
    ]

    def listSources():
    for source in BASE:
    print source
    u=sys.argv[0]+"?src="+str(BASE.index(source))
    item=xbmcgui.ListItem(source, iconImage="DefaultFolder.png")
    item.setInfo( type="Video", infoLabels={ "Title": source })
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=item,isFolder=True)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    # Root listing
    def listVideos(src=0):
    xml=getURL(BASE[int(src)])
    tree = ElementTree.XML(xml)
    streams = tree.findall('stream')
    for stream in streams:
    language = stream.findtext('language')
    if language.find('Link Down') == -1 :
    title = stream.findtext('title')+' ('+language+')'
    rtmplink = stream.findtext('link')+' playpath='+stream.findtext('playpath')+' swfurl='+stream.findtext('swfUrl')+' pageurl='+stream.findtext('pageUrl')
    item=xbmcgui.ListItem(title)
    item.setInfo( type="Video", infoLabels={'title':title})
    item.setProperty('IsPlayable', 'true')
    xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=rtmplink,listitem=item,isFolder=False)
    xbmcplugin.endOfDirectory( handle=int( sys.argv[ 1 ] ) )

    def getURL( url ):
    print 'RTMPGUI --> common :: getURL :: url = '+url
    cj = cookielib.LWPCookieJar()
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))
    opener.addheaders = [('User-Agent', 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2;)')]
    usock=opener.open(url)
    response=usock.read()
    usock.close()
    return response

    #listVideos()
    if len(sys.argv[2]) >= 6:
    listVideos(sys.argv[2][5:])
    else:
    listSources()