X-Git-Url: https://git.rvb.name/vpproxy.git/blobdiff_plain/25a9fce214d07b28f97dd0ee4ea5cc714d359569..e8629c323dc1fa377574b3bcaecb351d1d3116e9:/plugins/m3u_plugin.py diff --git a/plugins/m3u_plugin.py b/plugins/m3u_plugin.py index 2070206..636ad4e 100644 --- a/plugins/m3u_plugin.py +++ b/plugins/m3u_plugin.py @@ -38,7 +38,7 @@ import os class M3u(VPProxyPlugin): - handlers = ('m3u', 'm3ut', 'm3uw', "list", "play", "index") + handlers = ('m3u', 'm3ut', 'm3uw', 'm3uo', 'list', 'play', 'index') logger = logging.getLogger('plugin_m3u') playlist = None @@ -52,9 +52,11 @@ class M3u(VPProxyPlugin): if self.splitted_path[1]=='m3u': prefix='get' elif self.splitted_path[1]=='m3uw': - prefix='webm' + prefix='ogg' elif self.splitted_path[1]=='m3ut': prefix='mp4' + elif self.splitted_path[1]=='m3uo': + prefix='ogv' elif self.splitted_path[1] in ("list","play","index"): None else: @@ -104,7 +106,6 @@ class M3u(VPProxyPlugin): elif self.splitted_path[1]=="play": channel=self.splitted_path[len(self.splitted_path)-1] channel=urllib.unquote(channel).decode('utf-8') - print channel if len(self.splitted_path)<=4: prefix="get" elif len(self.splitted_path)==5: @@ -117,10 +118,8 @@ class M3u(VPProxyPlugin): for record in playlist: if record.title.decode('utf-8').replace('/','')==channel: url=record.path.decode('utf-8') - print url if url: redirect='/'+prefix+'/'+url - print redirect connection.send_response(302) connection.send_header('Location', redirect) connection.end_headers() @@ -147,21 +146,24 @@ class M3u(VPProxyPlugin): exported = "" for record in playlist: - exported = exported + "" + record.title.decode('utf-8').replace('/','') + "\n" + if record.title: + exported = exported + "" + record.title.decode('utf-8').replace('/','') + "\n" else: playlistgen = PlaylistGenerator() for record in playlist: - channel=dict() - channel['name']=record.title.decode('utf-8') - channel['url']=record.path.decode('utf-8') - playlistgen.addItem(channel) + if record.title: + channel=dict() + channel['name']=record.title.decode('utf-8') + channel['url']=record.path.decode('utf-8') + playlistgen.addItem(channel) exported = playlistgen.exportm3u(hostport,prefix) - + exported = exported.encode('utf-8') + connection.wfile.write(exported) def getparam(self, key):